добрый день!
сегодня воспроизвёл одну проблемку
у меня есть wb-led со slave-id 25
я удалил все правила кроме одного
setInterval(function(){
log("wb-led_25/Channel 2 is {}".format(dev["wb-led_25/Channel 2"]))
}, 1000)
после рестарта сервиса wb-rules в логе вижу значение false
хотя в mqtt-топиках вижу true
я почитал похожую тему Некорректное определение значения топика в wb-rules - #3 от пользователя BrainRoot
и так понял, что это прогнозируемое поведение, при рестарте mosquitto wb-mqtt-serial wb-rules одновременно проблема уходит, значение в логе становится равным топику mqtt
в принципе, это воспроизводится не только с wb-led, глянул на лампочку, которая управляется через виртуальное устройство, там у реального девайса значение тоже не совпадает аналогичным образом (в логе false, а на самом деле оно true и лампочка горит), а вот с виртуальным устройством такой проблемы нет, даже при рестарте wb-rules оно одинаковое что в топиках что в логе
это нормальное поведение, или может быть, всё-таки, я наткнулся на какой-то баг?
там стоит тестинг, который был прям на кануне стейбл bullseye
root@wirenboard-AFYS6PYF:~# wb-release
Wirenboard release staging.latest (as testing), target wb7/bullseye
You can get this info in scripts from /usr/lib/wb-release.
вот версии пакетов
root@wirenboard-AFYS6PYF:~# dpkg -l |grep wb-
ii python-wb-io 1.2.3 armhf A module to control WB IO channels.
ii python3-wb-common 2.1.1 all Wiren Board Python common library and helpers
ii python3-wb-diag-collect 1.5.3 all python3 library for one-click diagnostic data
ii python3-wb-mcu-fw-updater 1.7.1 all Wiren Board modbus devices firmware update and modbus bindings python libraries (python 3)
ii python3-wb-mqtt-metrics 0.3.0 all python3 library for sending metrics to mqtt-channels
ii python3-wb-nm-helper 1.20.0 all Wirenboard network configuration python3 library
ii python3-wb-test-suite-deps 1.17.0 all Wiren Board test-suite dependencies (python3 packages)
ii python3-wb-update-manager 1.3.1 all Wirenboard software updates and release management tool - python3 library
ii wb-configs 3.10.4 all Default common config files for Wiren Board
ii wb-device-manager 1.5.5 all Wiren Board modbus devices manager (python3 service; backend)
ii wb-diag-collect 1.5.3 all one-click diagnostic data collector for Wiren Board,
ii wb-dt-overlays 1.6.0+wb1 all Device tree overlays for Wiren Board devices
ii wb-engine 0.2.19 armhf WB Engine and HomeAssistant integration
ii wb-essential 1.17.0 all Wirenboard essential packages
ii wb-hwconf-manager 1.57.1 all Provides infrastructure for hardware re-configuration via Device Tree overlays
ii wb-knxd-config 1.1.2 all knxd configurator for Wiren Board
ii wb-mcu-fw-flasher 1.2.1 armhf Firmware update tool for Wiren Board Modbus devices (WB-M*)
ii wb-mcu-fw-updater 1.7.1 all Wiren Board modbus devices firmware update tool (python 3)
ii wb-mqtt-adc 2.6.1 armhf Wiren Board Smart Home MQTT ADC driver compatible with HomA conventions
ii wb-mqtt-confed 1.12.0 armhf Wiren Board Configuration Editor Backend
ii wb-mqtt-dac 1.2.1 all wb-rules-based IIO DAC driver for WB MQTT
ii wb-mqtt-db 2.8.8 armhf Wiren Board database logger
ii wb-mqtt-db-cli 1.4.4 all CLI for wb-mqtt-db
ii wb-mqtt-gpio 2.11.1 armhf Wiren Board Smart Home MQTT generic sysfs GPIO driver compatible with HomA conventions
ii wb-mqtt-homeui 2.57.0 all Wiren Board Web UI web interface
ii wb-mqtt-knx 1.12.0 armhf Wiren Board MQTT to KNX gateway
ii wb-mqtt-logs 1.4.1 armhf Wiren Board journald to MQTT gateway
ii wb-mqtt-mbgate 1.5.0 armhf Wiren Board MQTT to Modbus gateway
ii wb-mqtt-metrics 0.3.0 all Wirenboard tool for sending metrics to mqtt-channels
ii wb-mqtt-opcua 1.0.4 armhf Wiren Board MQTT to OPC UA gateway
ii wb-mqtt-serial 2.80.1 armhf Wiren Board Smart Home MQTT serial protocol driver
ii wb-mqtt-w1 2.2.5 armhf Wiren Board Smart Home MQTT generic 1-Wire (w1) driver compatible with HomA conventions
ii wb-nm-helper 1.20.0 all Wirenboard network configuration backend for wb-mqtt-confed.
ii wb-release-info 1.0-testing~wb7+bullseye~20230310162405 all release information package for Wirenboard
ii wb-rules 2.18.1 armhf Wiren Board Rule Engine
ii wb-rules-system 1.9.2 all Default system rules for Wiren Board
ii wb-suite 1.17.2 all Wirenboard vendor software set
ii wb-update-manager 1.3.1 all Wirenboard software updates and release management tool
ii wb-update-notifier 0.1.0 all Wiren Board update notifier
ii wb-utils 4.7.1 all Wiren Board command-line utils
есть еще один нюанс, может удастся тоже воспроизвести, если рестартнуть только wb-rules, то невозможно записать значение в топик dev, то есть я пишу true, а оно всё равно будет false, опять же, это поведение поменяется только при рестарте всех трёх сервисов.
могу, в принципе, на стейбл переехать, не сделал только потому, что хочется потенциальный баг за хвост схватить
тут оно выглядит таким образом, что я вижу по дебагу что в правило-то я попадаю, оно должно свичнуть состояние топика в dev, а оно не свитчится, и группа освещения не реагирует, соответственно, пока я не дёрну вручную контрол на дашборде по умолчанию, потом всё нормализуется, всё работает
слушайте, я обновился через фит-образ на стейбл и теперь правда не воспроизводится.
значит всё-таки что то в тестинге было не так
и ошибки всякие разные про passing raw ‘’ ушли