Здравствуйте.
Подобную задачу уже видел обсуждали и не одну. Но саму даже с подсказками из этих обсуждений справиться не получилось.
В общем задача такая чтобы подсветка включалась только ночью т.е. в определенный временной промежуток при наличии движения.
Сейчас на временной интервал внимание можно не обращать, это в целях тестирования чисто.
var motion_timer_1_timeout_ms = 10 * 1000;
var motion_timer_1_id = null;
var motion = 50;
var autolight = false;
defineRule("Start circulation cron job", {
when: cron("0 0 6,14 * * *"),
then: function () {
autolight = true;
}
});
defineRule("Stop circulation cron job", {
when: cron("0 0 8,18 * * *"),
then: function () {
autolight = false;
}
});
defineRule("motion_detector_1", {
whenChanged: "wb-msw-v4_36/Current Motion",
then: function (newValue) {
if (autolight === true) {
if (newValue > motion) {
dev["wb-mr6c_122/K1"] = true;
if (motion_timer_1_id) {
clearTimeout(motion_timer_1_id); //если на входе что то будет, то К1 включится, а счетчик сбросится, т.е. if проверяет переменную и если она отлична от null то срабатывает сброс
}
motion_timer_1_id = setTimeout(function () { //через время 10с, К1 будет отключенно, а переменная станет не задана
dev["wb-mr6c_122/K1"] = false;
motion_timer_1_id = null;
}, motion_timer_1_timeout_ms);
}
}
},
});