JINJA‐трансформации - d51x/openhab-docs-russian GitHub Wiki
Преобразование данных на лету (математические операции и не только).
В основном, использую как входящую трансормацию в mqtt thing, либо как профиль линковки item'a с каналом.
Примеры
JINJA:{{ (value | int > 10000) ? 0 : value }}
Если входящее значение более 10 000, то заменяем его нулем.
Понадобилось сделать так, потому что одно из старых устройств на esp8266 иногда вместо нормальных данных присылает какие-то огромные значения. А чтобы они не портили картину на графиках, то просто зануляем.
JINJA:{{ value | float | round(0) }}
Если данные приходят дробные 224.5
, то их можно округлить до целых "на лету".
JINJA:{{ value | float | round(1) }}
Если данные приходят дробные 224.53
, то их можно сделать с одним знаком после "запятой".
{{ (value / 10) | round(1) }}
А еще входящее число можно поделить на 10 и оставить один знак после запятой.