Перекрытие клапана подачи воды при сработки датчика протечки

Перекрывает клапан воды через 3 сек после сработки датчика протечки и посылает Email

Задача

Событие:
— Сработка датчика протечки воды 

Выполнить:
— Перекрыть клапан подачи воды
— Послать сообщение по Email

Дополнительные условия:
1. Исключить перекрытие клапана подачи воды при кратковременной сработке датчика (случайно задели тряпкой).
2. Дать возможность заблокировать датчик протечки.

Скрипт

/** 
* @name Протечка с учетом блокировки датчика 
* @desc Перекрывает клапан воды через 3 сек после сработки датчика протечки
*       Работает, если датчик не заблокирован
*       Например, можно блокировать датчики на время уборки во избежание ложных сработок
* @version 4
*/

const actor  = Device("ActorD", "Клапан воды"); 
const sensor = Device("SensorD", "Датчик протечки");  

startOnChange([sensor,actor], !sensor.blk && sensor.isOn() && actor.isOn()); 

script ({
    start() {
     this.startTimer("T1", 3, "close");       
    },
    
    close() {
     actor.off();  
     this.info("email", "OWNER", 'Протечка! Клапан воды перекрыт!')
    }
});