Страница 1 из 1

Индикация света в доме

Добавлено: Сб дек 15, 2018 12:31 pm
John
Всем доброго времени суток, не бейте ногами за такие простые вопросы....
Первые шаги в majordomo, и с PHP первые знакомства ))))
Кто-нибудь наверняка делал индикацию света в доме (горит ли в доме хоть где-нибудь свет)
Поделитесь пожалуйста исполнением

Re: Индикация света в доме

Добавлено: Сб дек 15, 2018 1:56 pm
VladPTZ
У меня отображается через состояние выключателя в меню управления.
В меню управления элемент выключатель в нем привязываем объект выключателя и свойство например status (которое зависит от состояния выключателя)

Re: Индикация света в доме

Добавлено: Сб дек 15, 2018 2:11 pm
John
В доме будет около 30 источников света и выключателей соответственно, как я понимаю, нужен сценарий который будет регулярно опрашивать все указанные объекты и суммировать их статусы, если сумма больше 0, то где-то в доме свет горит и у созданного объекта (например HomeLightOn появляется статус 1), но вот как это реализовать программно....

Re: Индикация света в доме

Добавлено: Сб дек 15, 2018 5:26 pm
Chainik
Если все источники света/выключатели не разбросаны хаотично по Мажордомо, а собраны в один класс (например, "Lighting"), то можно сделать так
(Их статусы, естественно, должны быть или "0" или "1".)

Код: Выделить всё

$objects=getObjectsByClass("Lighting");
foreach($objects as $obj) {
   $value = gg($obj['TITLE'].".Status");
   $Light = $Light + $value;
}
if($Light <> 0) {
//ЧТО-ТО ТАМ ДЕЛАЕМ, например, установим статус
sg('HomeLightOn.Status', 1);}

Re: Индикация света в доме

Добавлено: Вс дек 16, 2018 2:27 am
John
Огромное спасибо, буду пробовать!

Re: Индикация света в доме

Добавлено: Вс дек 16, 2018 7:05 am
Logrus
Chainik писал(а):
Сб дек 15, 2018 5:26 pm
Если все источники света/выключатели не разбросаны хаотично по Мажордомо
а они разбросаны, можно массив классов конечно задавать, но ...
вчера решал эту задачу через getObjectsByProperty пару часов убил, много нового узнал