Подскажите пожалуйста как правильно реализовать следующую задачу:
Сейчас связка такая MD -> Broadlink -> S1 -> ДатчикНужно в промежутке времени с 20:00 до 8:00 включать счет (простое устройство "Свет в тамбуре") и если движения нет более 3 минут свет выключать.
Что сделано:
1. Создано в модуле "Простые устройства" датчик.
2. В действиях у датчика следующий код:
Код: Выделить всё
if(timeBetween('20:00','08:00'))
{
sg("Relay06.command_on",'1');
clearTimeOut("TamburLight");
SetTimeOut("TamburLight",'sg("Relay06.command_off","1");',3*60);
}
в нашем датчике, в методе statusUpdated прописал следующее:
Код: Выделить всё
if ($params['NEW_VALUE'] == '1'){
$this -> callMethod('motionDetected');
}
Как хотел: По датчику включился свет, отработал 3 минуты ИИИИИ если нет движения, то выключаем.... Если движение присутствует, то таймер начинает считать сначала.