Добрый день!
Сделал виртуальное устройство для установки целевой температуры в помещении.
Написал правило wb-rules для гистерезиса с учетом датчика температуры в этом помещении и управлением сервоприводом.
Все работает в пределах WirenBoard.
Теперь пытаюсь прикрутить HomeAssistant. Пытаюсь управлять этим виртуальным устройством через MQTT-топик. В результате контрол появился в HA:
Управление работает - в WB изменения пробрасываются:
И после изменения в HA:
Но правило на это изменение не реагирует - сервопривод должен был улететь в 0…
Пробовал в правиле отслеживать изменение MQTT-топика и явно задавать значение этого топика в виртуальное устройство:
defineRule("copy_MQTT_to_DEV", {
whenChanged: ["/devices/fl1gost-controls/controls/fl1gostTargetTemp"],
then: function() {
dev["fl1gost-controls/fl1gostTargetTemp"] = dev["/devices/fl1gost-controls/controls/fl1gostTargetTemp"];
}
});
Всё равно не работает… Само правило содержит:
defineRule("setTempOnChange", {
whenChanged: ["fl1gost-controls/fl1gostTargetTemp", "fl1kitch-TmpHumSensor/temperature", "fl2bath-TmpHumSensor/temperature"],
then: function() {
adjustHeating();
}
});
В этот блок в whenChanged тоже пытался добавлять “/devices/fl1gost-controls/controls/fl1gostTargetTemp”
Хочется понять - это бага или фича? ))) Как мне заставить правило отрабатывать не только по изменению контрола, но и по изменению MQTT-топика?
В качестве управлялки сервоприводом используется WB-MAO4



