Вот бьюсь, бьюсь, а все равно накладки случаются.
За основу взял следующий вариант - есть таймер (30 мин), который включает режим НикогоНетДома. При любом движении, при любом удачном пинге девайсов кого-то из членов семьи таймер сбрасывается и начинается отсчет заново.
Код: Выделить всё
ClearTimeOut("nobodyHome"); // очищаем таймер события "никого нет дома"
SetTimeOut("nobodyHome","callmethod('nobodyHome.activate');", 1*30*60);
Спим, никто не движется.
Спим, никто не движется и по таймеру вырубается телефон (ночью не нужен)