Контроль уровня заряда батареек в xiaomi девайсах

Скрипт выборкой с помощью регулярного выражения «/zigbee.*?.battery$/» подписывается на все объекты «battery» ветки «zigbee» и при любом изменении любого из объекта «battery» проверяет текущий уровень заряда и если он меньше 35% отправляет уведомление в телеграм и оповещает голосом. Функция «alert» находится в ветке global и содержит различные условия для уведомлений. Уведомление о заряде отправляются не чаще 43200000 миллисекунд или 12 часов.

var time_alert = false;
on({id: /zigbee.*?.battery$/, change: 'any'}, function (obj) {
    if(obj.state.val < 35){
        var dev = obj.id.replace('.battery', '');
        var devobj = getObject(dev);
        if(!time_alert){
            alert('Уровень заряда батарейки в устройстве "' + devobj.common.name + '" = ' + obj.state.val + '%, нужно заменить батарейку.', 1);
        }
        time_alert = true;
        setTimeout(function() {
            time_alert = false;
        }, 43200000);
    }
});
Подписаться
Уведомлять
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Поделиться своими мыслямиx