Добрый день. У меня вопрос, как обработать в правилах случай когда модбас устройство становиться не доступным. То-есть например шину модбас повредили, и все топики устройств стали красными.
Мне нужно получить эту информацию в правилах, и передать ее в виртуальное устройство.
Например
defineRule("Нет связи", {
whenChanged: "Fancoil_1/error",
then: function (newValue, devName, cellName) {
if(newValue != 0){
dev["Устройство"]["КодОшибки"] = 2;
}
}});
В инструкции есть немного про это, например про топик meta/error
Но нигде не написано как это в правилах обработать.
Спасибо!
Отлично, это подходит. еще один маленький вопрос. В инструкции написано что /devices/+/controls/+/meta/error темы могут содержать комбинацию значений. Это значит что там могут быть в некоторых случаях сразу 2 значения? Или в этом топике в любом случае может быть только одна буква, или отсутствовать значение?
Значения в топике могут быть (сейчас) три:
r - ошибка чтения
w - ошибка записи
p - драйвер не укладывается в установленный период времени опроса, это следствие длинной очереди при недостаточной пропускной способности шины.
Два значения могут быть одновременно, да. Например когда есть ошибка чтения и при этом в очереди драйвера есть значение на запись - rw