Обработка отсутствия связи с устройством

Коллеги, добрый день! Подскажите пожалуйста как в правилах обрабатывать отсутствие связи с цифровым устройством (будь то Modbus, 1-Wire и т.д)? Под отсутствием связи понимаю состояние устройства, когда его топики в устройствах подсвечены красным.
Спасибо!

Добрый день.
Топики meta описаны в документации.
Достаточно, в общем случае подписаться на них - и реагировать на изменения.

Помогите пожалуйста привести пример какой ни будь? Не могу разобраться с описанием.
Например отслеживание связи с реле WB-MR6C v.2. Если нет связи->Alarm, и/или если нет связи var a = false
Спасибо!

В документации есть подобный пример — Обработка ошибок в работе с serial-устройствами

1 лайк

С примером разобрался, спасибо! Подскажите как “задемпфировать” событие об отсутствии связи. Например, если нет связи 20 сек, то…
Спасибо!

Использовать таймер setTimeout(), например так:

var timeout;

defineRule("error", {
    whenChanged: "wb-mr3_31/K1#error",
    then: function (newValue, devName, cellName) {
        if(newValue == "r") {
          timeout = setTimeout(function () {
            log("error");
          }, 20000);
        } else {
          clearTimeout(timeout);
        }
    }
});