Проблема в том, что свет то включается то выключается самопроизвольно. Это происходит после сработки детектора движения. После выключения света такого уже не происходит.
Убираем таймер, становится все нормально, но в этом случае лишаемся таймера.
Кто может в этом разобраться, почему такое происходит? Как заставить выключаться свет по таймеру?
Во избежание труднопредсказуемого поведения в функциях, фигурирующих в when , asSoonAs и whenChanged не рекомендуется использовать side effects, т.е. менять состояние программы (изменять значение глобальных переменных, значений параметров, запускать таймеры и т.д.) Следует особо отметить, что система не даёт никаких гарантий по тому, сколько раз будут вызываться эти функции при просмотрах правил.
тема старая, но дабы не плодить сущностей сверх необходимого пишу тут, так как вопрос появился при работе с Current Motion
А вопрос следующий:
есть достаточно пыльное помещение, в котором по графику движения встречаются одиночные пики высоких значений. В стандартном скрипте свет включается при однократном появлении такого пика. Пока экспериментирую секундным таймаутом на включение, но выглядит это так себе.
Может кто-то реализовывал это более красиво?
Перечитал скрипт ещё раз, у меня свет может включаться как по движению, так и кнопкой, так что таймаут на отключение не должен быть привязан к включение по движению
Если у вас есть какой-то вопрос по оборудованию, по неожиданному поведению ПО - то его целесообразно оформить новой темой в соответствии с правилами форума.