Automation/Templates: различия между версиями

Материал из HOMEd Wiki
мНет описания правки
мНет описания правки
Строка 28: Строка 28:
Имя триггера, вызвавшего срабатывание автоматизации:
Имя триггера, вызвавшего срабатывание автоматизации:
{{#tag:pre|<nowiki>{{ triggerName }}</nowiki>}}
{{#tag:pre|<nowiki>{{ triggerName }}</nowiki>}}
== Адаптивное освещение ==
В случае, если в [[Automation/Configuration|конфигурации]] указаны корректные координаты местоположения, можно использовать шаблон <code class="value">colorTemperature</code> в связке с триггером <code class="value">interval</code>


== Математические выражения ==
== Математические выражения ==

Версия от 20:18, 24 октября 2024

HOMEd > Automation > Шаблоны

Общие сведения

Шаблоны позволяют использовать свойства устройств, данные из 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 }}

Адаптивное освещение

В случае, если в конфигурации указаны корректные координаты местоположения, можно использовать шаблон colorTemperature в связке с триггером interval

Математические выражения

Помимо прочего, шаблоны могут содержать математические выражения. Каждое выражение может содержать любые математические операции (сложение, вычитание, умножение, деление, возведение в степень), включая операции в скобках, некоторые функции, а так же любые другие шаблоны. Если выражение некорретно, результатом вычислений будет nan. Список досутпных функций можно посмотреть здесь.

Примеры:

[[ sqrt(2 ^ 2) ]]
[[ {{ state | counter }} + 1 ]]
[[ {{ property | zigbee/sensor | temperature }} * 0.99 ]]

Вложенные шаблоны

В каждом условии или действии может быть использовано любое количество шаблонов и математических операций. Кроме того, шаблоны могут быть вложены друг в друга, например:

{{ property | zigbee/myFavoriteSensor | {{ triggerName }} }}

Единственным исключением для вложенных шаблонов является значение топика для шаблона mqtt, топик должен быть константой, иначе сервис не сможет на него подписаться.