мНет описания правки |
мНет описания правки |
||
Строка 39: | Строка 39: | ||
</nowiki>}} | </nowiki>}} | ||
В | == Вложенные шаблоны == | ||
В каждом условии или действии может быть использовано любое количество шаблонов и математических операций. Кроме того, шаблоны могут быть вложены друг в друга, например: | |||
{{#tag:pre|<nowiki>{{ property | zigbee/myFavoriteSensor | {{ triggerName }} }}</nowiki>}} | |||
Единственным исключением для вложенных шаблонов является значение топика для шаблона <code class="value>mqtt</code>, топик ''должен'' быть константой, иначе сервис не сможет на него подписаться. | |||
[[Category:Automation]] | [[Category:Automation]] |
Версия от 11:37, 15 октября 2024
Общие сведения
Шаблоны позволяют использовать свойства устройств, данные из MQTT-топиков, состояния и другие данные в некоторых условиях и действиях автоматизаций. Примеры шаблонов приведены ниже.
Показания датчика температуры:
{{ property | zigbee/kitchenThermometer | temperature }}
MQTT-сообщение целиком:
{{ mqtt | test/topic }}
Поле fieldName
из MQTT-сообщения, содержащего JSON:
{{ mqtt | test/json/topic | fieldName }}
Содержимое файла /home/user/file
:
{{ file | /home/user/file }}
Значение состояния myState
:
{{ state | myState }}
Текущеая метка времени (unix time):
{{ timestamp }}
Текущее время и дата в заданном формате:
{{ timestamp | dd.MM.yy hh:mm }}
Имя триггера, вызвавшего срабатывание автоматизации:
{{ triggerName }}
Математические выражения
Помимо прочего, шаблоны могут содержать математические выражения. Каждое выражение может содержать любые математические операции (сложение, вычитание, умножение, деление, возведение в степень), включая операции в скобках, некоторые функции, а так же любые другие шаблоны. Если выражение некорретно, результатом вычислений будет nan
. Список досутпных функций можно посмотреть здесь.
Примеры:
[[ sqrt(2 ^ 2) ]] [[ {{ state | counter }} + 1 ]] [[ {{ property | zigbee/sensor | temperature }} * 0.99 ]]
Вложенные шаблоны
В каждом условии или действии может быть использовано любое количество шаблонов и математических операций. Кроме того, шаблоны могут быть вложены друг в друга, например:
{{ property | zigbee/myFavoriteSensor | {{ triggerName }} }}
Единственным исключением для вложенных шаблонов является значение топика для шаблона mqtt
, топик должен быть константой, иначе сервис не сможет на него подписаться.