Новая версия движка правил

Важно: доступно только для Wiren Board 6

Попробуйте пожалуйста:

apt update
apt install wb-rules

Проверить версию (2.2 или старше):

dpkg -s wb-rules

Попробовал установить на “чистый” (без скриптов) WB-6.5. Весь софт обновлен.

  • Сразу в логе появились ошибки:

Dec 31 13:43:39 wirenboard-AWGNGB6Y daemon.info wb-rules[1822]: ERROR: control hwmon/CPU Temperature SetValue() error: can’t convert control value ‘54.645’ (type string) to datatype ‘temperature’
Dec 31 13:43:39 wirenboard-AWGNGB6Y daemon.info wb-rules[1822]: ERROR: control hwmon/Board Temperature SetValue() error: can’t convert control value ‘34.625’ (type string) to datatype ‘temperature’

  • Вижу, что теперь можно задать пути до файлов wbrules-persistent.db и wirenboard/wbrules-vdev.db. А вот для файла wbrules-vcells.db (к которому более всего обращений) - такой возможности нет?

  • И да - по прежнему wb-rules “насилует” флэш память - статистика iostat по прежнему показывает большое число перезаписываемых данных

Забыл добавить:
Спасибо за подарок!
Всех с Новым годом!

На сколько wb-rules 2.2 стабильна и совместима с предыдущей версией?
(если не брать в счет изолированное пространство имен для каждого файла)

спасибо,исправим

исправим отдельно, пока тестируем исправление.

Официально пока не стабильная, за пределами компании не тестировалась. Внутри компании тестировалась много.
Я рекомендую постепенно пробовать переходить на новый wb-rules всем, у кого были какие-то проблемы на wb-rules 1.x. wb-rules 2.x развивается, баги будут исправляться. Естественно, лучше не все продакшн-объекты в пятницу вечером переводить, а как-то осторожно и постепенно.

Полная совместимость не гарантируется, например вот уже ошибки даже из системных правил выше вылезли. Но изменения должны быть тривиальные.

Отличия частично перечислены тут: https://wirenboard.com/wiki/index.php/Движок_правил_wb-rules_2.0

Я предполагаю, что основные проблемы будут связаны с более строгими правилами работы с каналами: везде теперь учитывается тип, каналы без meta/type не работают и т.д.

Проверьте, что у вас установлена версия 1.6.3 wb-rules-system:
apt policy wb-rules-system

Если нет - установить можно следующим образом:
apt install wb-rules-system=1.6.3

Так и есть:

#apt policy wb-rules-system
wb-rules-system:
Installed: 1.6.2
Candidate: 1.6.2
Version table:
1.6.3 910
910 http://releases.contactless.ru/experimental/stretch stretch/main armhf Packages
910 http://releases.contactless.ru/experimental/stretch stretch/main all Packages
*** 1.6.2 990


Обновил. Ошибка пропала. Значения температуры а веб-интерфейсе появились.
Буду тестировать дальше - буду свои скрипты пробовать.

Есть ли поддержка определения доступности канала?

Мы используем zigbee2mqtt. Какие топики доп. информации нужны для правильного определения девайса в новых wb-rules?

Если вы про meta/error, то пока нет, но есть в ближайших планах.

meta/type только

meta/type должны иметь какие-то конкретные значения?

Да: https://github.com/contactless/homeui/blob/master/conventions.md

У меня в принципе проблем со старым движком нет, но очень хочется использовать модули. Стоит ли ставить новую версию? Просто немного опасаюсь после заявлений о том, что " wb-rules “насилует” флэш память". Я флешку точно не убью?