Re: Подключение контроллера MegaD-328
Добавлено: Пн апр 28, 2014 10:00 pm
Спасибо, заработало.Lewcom писал(а):у меня заработало с кодом
Спасибо, заработало.Lewcom писал(а):у меня заработало с кодом
С таким кодом не заработает, и перед тем как предложить решение, напишу почему данное смотрится плохоStunt писал(а):Доброго дня всем.
Столкнулся вот с какой необходимостью, надо определять включен ли где либо в доме свет.
Если везде все выключено - ставим 0, если где-то что-нибудь светит (подключенное к MegaD) - ставим - 1
Создал для этого доп.свойство globalStatus и объект globalStatusLight:
Код: Выделить всё
$objects = getObjectsByClass("Light");
$globalStatus = false;
foreach ($objects as $obj) {
$globalStatus = $globalStatus || getGlobal($obj['TITLE'].'.enabled');
}
setGlobal('ThisComputer.globalStatus', $globalStatus);
Если использовать классы Megadevice и Light из этой ветки, то просто создать объект класса Light, но имя дайте ему ДатчикДвижения например, и в метод switchOn вставить код из той статьи. Клас Light объдиняет в себе кнопку (датчик движения) и выполнение команды.Vit писал(а): Подскажите пожалуйста, как обработать вход с подключенным датчиком движения по примеру страницы http://ab-log.ru/smart-house/ethernet/megad-alarm.
Вызов скрипта прописан последней строкой в этих методах? Суть в том чтоб вызвать скрипт после того как устанавливается свойство enabled ($this->setProperty('enabled', 1);)Stunt писал(а): Прописал вызов в методы switchOn, switchOff.
Код: Выделить всё
$log = getLogger();
$log->trace(sprintf('%s = %d', $obj['TITLE'], getGlobal($obj['TITLE'].'.enabled')));Vit писал(а):dimitrystd приветствую. Сделал в классе light объект датчик движения . В методе switchon этого объекта прописал вызов метода другого объекта с изменением статуса на 1 не работает. Подскажи пожалуйста в чем проблема? Может выложишь как у тебя датчик движения обрабатывается для примера . Понять принцип . Заранее благодарен.