Home assistant строку в число

Иногда появлятеся необходимость создать в Home Assistant новый сенсор значение которого — это
что-то расчетное. Например, может понадобиться создать сенсор значение которого — это атрибут другого сенсора
или результат какой-то математическкой операции. Для это существует специальный инструмент — template сенсор — шаблонный сенсор.

В Home Assistant активно используется инструмент для работы с шаблонами который называется Jinja2.
Это не собственная разрабтка Home Assistant, это весьма привычная вещь для языка
программирования питон. Jinja2 — достаточно большой и сложный инструмент, но в двух словах —
нужно записывать выражение внутри фигурных скобок, вот пример:

Результат этого шаблона — это число 5.

Перед тем как использовать шаблон в template сенсоре очень удобно его протестировать в специальном
инструменете которые есть в Home Assistant. Он находится по адресу
homeassistant.local:8123/developer-tools/template


Home assistant строку в число

Дополнительная информация про использование шаблонов есть в этой статье.

В системе умного дома Home Assistant в куче мест используются шаблоны (templates).
Например, можно отправить сообщение в мессенджер и там указать значение
какого-нибудь сенсора. Или создать новый сенсор значение которого это будет
атрибут другого сенсора.


Home assistant строку в число

Давайте, начнем с самого начала.

Итак, есть какая штука в Home Assistant. У этой штуки есть 2 вещи:


Home assistant строку в число

next_dawn: ‘2020-04-08T04:23:05+00:00’
next_dusk: ‘2020-04-07T18:59:37+00:00’
next_midnight: ‘2020-04-07T23:42:09+00:00’
next_noon: ‘2020-04-08T11:42:16+00:00’
next_rising: ‘2020-04-08T04:58:27+00:00’
next_setting: ‘2020-04-07T18:24:22+00:00’
elevation: 12.51
azimuth: 266.07
rising: false
friendly_name: Sun

Before version 0.55 this component was known as input_slider and did not have the mode configuration option. Also, service select_value is now set_value.

# Example configuration.yaml entry

Numeric Input Box

Содержание

Configuration Variables

Alias for the input. Multiple entries are allowed.

min max nameFriendly name of the input. initialInitial value when Home Assistant starts. Default value: 0 stepStep value for the slider. Smallest value 0.001. Default value: 1 modeDefault value: slider unit_of_measurementUnit of measurement in which the value of the slider is expressed in. iconIcon to display in front of the box/slider in the frontend. Refer to the Customizing devices page for possible values.

Restore State

This component supports the restore_state function which restores the state after Home Assistant has started to the value it has been before Home Assistant stopped. To use this feature please make sure that the recorder component is enabled and your entity does not have a value set for initial. Additional information can be found in the Restore state section of the recorder component documentation.

Automation Examples

Here’s an example of input_number being used as a trigger in an automation.

# Example configuration.yaml entry using ‘input_number’ as a trigger in an automation

Bedroom Light – Adjust Brightness

# Note the use of ‘data_template:’ below rather than the normal ‘data:’ if you weren’t using an input variable

Another code example using input_number, this time being used in an action in an automation.

# Example configuration.yaml entry using ‘input_number’ in an action in an automation

Bedroom Light – Custom

# Again, note the use of ‘data_template:’ rather than the normal ‘data:’ if you weren’t using an input variable.

Example of input_number being used in a bidirectional manner, both being set by and controlled by an MQTT action in an automation.

# Example configuration.yaml entry using ‘input_number’ in an action in an automation

Target Heater Temperature Slider

# This automation script runs when a value is received via MQTT on retained topic: setTemperature
# It sets the value slider on the GUI. This slides also had its own automation when the value is changed.

Set temp slider

# This automation script runs when the target temperature slider is moved.
# It publishes its value to the same MQTT topic it is also subscribed to.

Temp slider moved

Здравия всем! В этой заметке я расскажу о первой настройке Home Assistant после установки.

Я делаю резервные копии системы, при любых установка модулей или больших изменениях. Для этого перейдем в раздел Резервные копии

И нажмем кнопку Создать резервную копию

Можно написать осмысленное название

, а можно ничего не писать, резервная копия все равно создаться. И нажать кнопку Создать

Теперь вернемся в раздел Дополнения

и нажмем кнопку Магазин дополнений

Найдем в открывшемся магазине File editor.

Откроется описание модуля File editor, нажмем кнопку Установить.

Во время установки, поверх кнопки будет крутится кружок.

Когда модуль установится, я включаю кнопку Показывать на боковой панели

для удобства.


Home assistant строку в число

Осталось только нажать кнопку Запустить

, чтобы дополнение заработало.

В правом верхнем углу, кружочек наглядно меняется с красного на зеленый.

Я предпочитаю, по старинке, настраивать Home Assistant через конфигурационные файлы. Мне так проще искать ошибки.

Перейдем в File editor, для этого на боковой панели, щелкнем значок с ключом

При открытии File editor открывает последний открытый файл. Чтобы выбрать нужный файл для редактирования щелкнем по кнопке, с изображением папки.

Откроем главный файл конфигурации configuration.yaml. Home Assistant перечитывает его каждый раз перед запуском.


Home assistant строку в число

Файл состоит из разделов. Название раздела начинаются с новой строки без пробелов, и ограничено двоеточием. За названием, идет описание раздела. Обязательно либо продолжить после двоеточий, либо с новой строки, но с отступом пробелов. Язык Yaml, на котором написана конфигурация Home Assistant, очень требователен к пробелам. Каждый раздел, должен начинаться с того же положения, что и предыдущий раздел или подраздел. Количеством пробелов определяется степень вложенности.

Для удобства работы, Home Assistant поддерживает вынос разделов и подразделов, в разные файлы и папки.


Home assistant строку в число

В стандартной конфигурации разделы Группы (groupe), Автоматизации(automation), Скрипты(script) и Сцены (scene) уже вынесены в отдельные файлы. Рассмотрим как происходит вынос в отдельные файлы на примере Групп.


Home assistant строку в число

после названия раздела идет команда !include, потом название файла. Если перед названием файла, ничего нет, значит файл лежит в той же папке, что и файл configuration.yaml.


Home assistant строку в число

Есть в Home Assistant специальный файл секретов. Называется он secrets.yaml и находится в той же папке, что и configuration.yaml.


Home assistant строку в число

Чтобы из файла конфигурации обратиться к паролю welcome, нужно прописать следующее:

password: !secret some_password

Где password: некий элемент, которому нужно задать пароль. Для этого после двоеточий ставим специальную команду !secret, а за ней название элемента из секретного файла some_password

Настройка Home Assistant

Настроим наш Home Assistant. Начнем редактировать файл configuration.yaml. В самом начале вставим конфигурацию:

homeassistant:
name: My Iot Home
latitude: !secret latitude_coord
longitude: !secret longitude_coord
elevation: 125
unit_system: metric
time_zone: Europe/Moscow

Как понятно из примера, мы задаем имя нашего Home Assistant, координаты дома, высоту над уровнем моря, систему единиц и временную зону. Координаты дома, нужны к примеру, для точного определения восхода и заката Солнца.

После внесения изменений, File editor автоматически, проверяет синтаксис пробелов. О чем свидетельствует иконка в правом верхнем углу. Для сохранения введенных данных, нажмем появившуюся кнопку дискеты.

В примере используется секретный файл. Откроем на редактирование файл /config/secrets.yaml и вставим туда следующие строки:

latitude_coord: 55.799353
longitude_coord: 37.670753

При этом, точные координаты дома определяются по яндекс или гугл картам. Сохраним изменения.

Проверка конфигурации Home Assistant

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


Home assistant строку в число

Если проверка не пройдена, то появится красная надпись Ошибка в конфигурации, и место и строка ошибки


Home assistant строку в число

Исправляем ошибку, сохраняем конфигурацию и снова проверяем.

Применение конфигурации Home Assistant

Для применения конфигурации, после успешной проверки нажмем кнопку, Перезапустить


Home assistant строку в число

Нажимаем, ОК и ждем перезагрузки. В левом нижнем углу браузера, отображается статусы перезагрузки Home Assistant

Перезагрузка части конфигурации

Home Assistant позволяет перезагрузить не весь сервер, а только какую то отдельную функцию. Для этого в том же разделе идем ниже и видим Перезагрузка конфигурации YAML

При нажатии на соответствующую кнопку, будет перезагружен соответствующий раздел конфигурации. Но нужно учитывать, что при такой перезагрузки, может не применить какой то код. При такой перезагрузке Home Assistant не будет запускать скрипты при инициализации.

На этом первый этап настройки Home Assistant закончен. В дальнейшей настройке, проверка и перезагрузка как всей конфигурации или её части, дойдет до автоматизма. Настройка Home Assistant это очень занимательная, хотя порой, однотипная работа.

Здравия всем! Когда я первый раз поставил Home Assistant, после того как несколько лет сидел на MajorDomo, встал вопрос: А где и как хранить переменные и константы? Я мучился 2 недели. Никак в официальной документации и в рунете не мог найти упоминание. В рунет в основном описано как сделать то или другое, как подключить оборудование?

И вот в одном из описаний мне попалась информация как автор использовал Input Number. Я начал изучать его в документации и меня осенило! Вот же шь авторы Home Assistant. Я потратил 2 недели поисков, а ларчик просто открывался. В Home Assistant есть несколько типов Input :

Как видим из названий, нам доступно 5 типов переменных, это булевы переменные, время, список, числовой и текстовый. Рассмотрим их подробнее.

Input Boolean может принимать два значения 0/1 или False/True. Очень удобно использовать этот тип данных в автоматизации. И в зависимости от значения запускать её или нет.

Для того чтобы использовать Input Boolean надо его определить в конфигурации

input_boolean:
garden_auto:
name: Сад автополив
icon: mdi:water-check

После перезагрузки конфигурации Home Assistаnt у нас появится переключатель


Home assistant строку в число

Этот переключатель можно щелкать в интерфейсе:


Home assistant строку в число

а можно в коде. Включить:

service: input_boolean.turn_on
target:
entity_id: input_boolean.garden_auto

service: input_boolean.turn_off
target:
entity_id: input_boolean.garden_auto

service: input_boolean.toggle
target:
entity_id: input_boolean.garden_auto

Состояние переключателя сохраняется при перезагрузки

Самое интересное, это использование, например в автоматизациях. Добавим в нашу конфигурацию

automation:
#Включаем автополив в 21:00
– alias: garden_auto_tap
initial_state: true
trigger:
– platform: time
at: “21:00”
condition:
– condition: state
entity_id: input_boolean.garden_auto
state: ‘on’
action:
– service: switch.turn_on
entity_id: switch.garden_tap_1

Данная автоматизация, включает авто полив сада в заданное ! При этом секции condition происходит проверка условия, разрешен ли автополив.

Input Datetime может быть определен тремя разными способами:

Для того чтобы использовать Input Datetime надо его определить в конфигурации

input_datetime:
garden_tap_on_1:
name: “Время полива сада”
has_date: false
has_time: true

garden_day:
name: “Время последнего полива”
has_date: true
has_time: true

После применения настроек, у нас появится новые объекты


Home assistant строку в число

Home assistant строку в число

Можно выставить время в интерфейсе:

Либо можно изменять его в коде:

Давайте поменяем в автоматизации, из примера Input Boolean, время включения на Input Datetime

automation:
#Включаем автополив в 21:00
– alias: garden_auto_tap
initial_state: true
trigger:
– platform: time
at: input_datetime.garden_tap_on_1
condition:
– condition: state
entity_id: input_boolean.garden_auto
state: ‘on’
action:
– service: switch.turn_on
entity_id: switch.garden_tap_1

Теперь, не нужно лезть в автоматизацию, чтобы поменять время включения авто полива.

Как видно из названия, Input Select определяет список.

Определим наш список в конфигурации:

input_select:
garden_auto:
name: Режим полива сада
options:
– Отключен
– Ручной
– Автоматический


Home assistant строку в число

Управление через интерфейс:


Home assistant строку в число

automation:
– alias: garden_auto_off
initial_state: true
trigger:
– platform: state
entity_id: input_select.garden_auto
to: ‘Отключен’
action:
service: input_boolean.turn_off
target:
entity_id: input_boolean.garden_auto

Данная автоматизация, при изменении списка на «Отключен», выключает Input Boolean полива

Как видно из названия Input Number хранит данные в числовом значении. Он может хранить как целые числа, так и дробные.

Определим наш Input Number. При инициализации нам нужно определить минимальное, максимальное значение. Так же при инициализации автоматически определяется шаг: 1 Если нам нужен другой, меняем его на нужный.

input_number:
target_temp:
name: Температура термостата
min: 1
max: 30
step: .1
icon: mdi:target


Home assistant строку в число

Изменять значение можно как в интерфейсе:


Home assistant строку в число

так и в коде:

service: input_number.set_value
target:
entity_id: input_number.target_temp
data:
value: 10.8

Данная автоматизация устанавливает значение слайдера, из MQTT топика.

Input Text хранит значения в текстовом виде. Может принимать форму для ввода пароля.

При инициализации Input Text определяются его входные параметры:

Поменяем значение в коде:

– service: input_text.set_value
target:
entity_id: input_text. Text1
data:
value: “Привет мир!”

Как видно из этой заметки, в Home Assistant есть всё, чтобы облегчить себе настройку и работу. Настраиваются эти вспомогательные объекты, как через конфигурацию, так и через web интерфейс. В самом начале меня сбили названия Input. Но самое главное, они выполняют свою функцию, они хранят текущие значения переменных и констант в базе данных. И при пропадании электричества, восстанавливают значения, если при инициализации не указано какое нибудь значение!

Здравия всем! Что же, пришло время познакомится с ESPHome. В этой статье я расскажу как настроить ESPHome после установки, как создать новую прошивку и залить её в устройство как по USB, так и по воздуху. Как подключить наше устройство к Home Assistant. Что же начнем!

Свои первые устройства для автоматизации я собирал на контроллерах Arduino Uno и Arduino Mega теперь уже в далеких 2011-2013 годах. С тех времен утекло много воды. Когда появился теперь уже народный чудо контроллер ESP8266, мир поменялся. Он сразу на борту имел WiFi и Flash память на 512кб — 4мб. И практически сразу был портирован на Arduino SDK.

Главная прелесть ESP8266, в том, что его один раз нужно прошить прошивкой через USB подключение к компьютеру, а последующие изменения можно вносить по воздуху с так называемым OTA режимом.

Первые прошивки для ESP8266 я писал на Arduino SDK. Но после перехода на Home Assistant, я перешел на ESPHome, который разрабатывается специально для подключения к Home Assistant, через API. По этому добавление любого датчика и исполняющего устройства в Home Assistant стало очень просто. Я практически не использую MQTT брокера. Который раньше был узким местом в системе, если MQTT брокер падал вместе с сервером умного дома, происходил коллапс. И приходилось делать прошивки, которые продолжали работать без MQTT брокера.

ESPHome это система для создания прошивок (Firmware) с помощью конфигурационных файлов, написанных на языке Yaml. После освоения его в Home Assistant, написание прошивок на ESPHome дело очень легкое. Для конфигурирования, компиляции и управления ESPHome использует понятный Web интерфейс. Давайте же разберемся с ним

После установки ESPHome, описанной в этой статье, откроем наш web интерфейс.

Как видим из приведенного изображения, вначале у нас список устройств пуст. Но есть 2 функциональные кнопки: NEW DEVICE и SECRET.

Щелкнем сверху на кнопку SECRET


Home assistant строку в число

Откроется редактор файла secrets.yaml. Этот файл, аналогичен файлу secrets.yaml в Home Assistant. Он нужен для хранения персональной информации, к примеру, название WiFI сети и паролем доступа к ней.

Заполним поля wifi_ssid и wifi_password своими данными. И нажмем кнопку SAVE, чтобы применить настройки.

Создание первого устройства

Щелкнем по кнопке NEW DEVICE, откроется мастер создания нового устройства.

У нас появится первое устройство. Откроем редактор конфигурации, нажав кнопку EDIT

Откроется редактор нашего устройства в файле конфигурации esptest.yaml

Как видно из изображения, используется язык разметки YAML. В редакторе встроена проверка синтаксиса. И если мы что то не правильно ввели, редактор нам сразу же об этом скажет красным квадратом в правом верхнем углу. Если на него навести курсор мыши, всплывет подсказка в какой строке у нас ошибка.


Home assistant строку в число

Не забывайте сохранять изменения перед выходом, автоматически они не сохраняются.

Первая программа на ESPHome

Под общим названием ESP8266 скрывается обширный набор устройств, отличающихся количеством памяти, тактовой частотой процессора и количеством портов, доступных пользователю.

ESPHome работает на основе фраймворка PlatformIO, соответственно какие платы поддерживаются размещены на сайте. Посмотрев таблицу, понимаем, что большинство плат на чипе ESP-12E и ESP-12F идут под общим названием nodemcuv2.

Я в своих тестах использую плату Nodemcu V3 на чипе ESP-12F


Home assistant строку в число

Откроем снова редактор нашего нового устройства и отредактируем нашу конфигурацию и изменим плату на nodemcuv2

esp8266:
board: nodemcuv2

Если в WiFi сети, где будет расположено устройство работает DHCP Server, то можно компилировать прошивку.

Скомпилируем прошивку, нажав кнопку Install


Home assistant строку в число

Откроется мастер создания прошивок

Откроется окно в котором будет вестись лог компиляции прошивки. После завершения компиляции появится кнопка Download, и файл сам начнет скачиваться.


Home assistant строку в число

Заливаем первую прошивку через USB

Осталось залить прошивку в наше устройство. Подключим нашу плату по USB к компьютеру. Для прошивки будем использовать утилиту ESPHome Flasher. Скачаем её с гитхаба и запустим.

С недавних пор Windows 10 ужесточило запуск программ. По этому может вылезти такое предупреждение.

Откроется главное окно программы


Home assistant строку в число

Выберим нужный Serial Port, на котором весит наше устройство. Нажмем кнопку Browse и выберим нашу прошивку. Осталось нажать кнопку Flash ESP. Начнется проверка и заливка прошивки.


Home assistant строку в число

После удачной заливки, наше устройство перезагрузится и выведет информацию о текущем подключении


Home assistant строку в число

Можно закрывать приложение. Дальнейшая настройка будет происходить на web интерфейсе ESPHome.

Настройка нового устройства

После тога, как мы залили прошивку в наше устройство и оно перезагрузилось, поменялся интерфейс ESPHome

Как видим, наше устройство поменяло статус с OFFLINE на ONLINE. Кнопка LOGS стала информативной, при ее нажатии происходит коннект к устройству и забирается последний лог

На каждой ESP12 есть распаянный светодиод на 2 порту. Давайте его сделаем аналогом лампы.

esphome:
name: esptest

esp8266:
board: nodemcuv2

# Enable logging
logger:

# Enable Home Assistant API
api:
encryption:
key: “ONenF3FmMEBZD0V5u15E+wp4rNoN3RfqZ3cPJtl10D4=”

ota:
password: “1bcebac7181111892d02a04ea4867d3b”

wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password

# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: “Esptest Fallback Hotspot”
password: “p1Tkhye6thDA”

captive_portal:

output:
– platform: gpio
id: led
pin: GPIO02
inverted: true

light:
– platform: binary
id: in_led
output: led
name: Test Lamp

Сохраним настройки и скомпилируем прошивку. Но в этот раз прошьем по воздуху. Для этого нажмем кнопку Wirelessly


Home assistant строку в число

Сразу же откроется окно компиляции и загрузки прошивки по воздуху

Дождемся загрузки новой прошивки


Home assistant строку в число

Видим, что наш новый светильник появился в логе.

Интеграция в Home Assistant

Для добавления устройства на ESPHome, нам нужны 2 вещи. Это IP адрес устройства и ключ шифрования, указанный в конфигурации. Чтобы узнать IP, если он не был указан в конфигурации, откроем окно лога устройства. Находим поле IP Address и записываем его


Home assistant строку в число

Теперь идем в редактор конфигурации и ищем поле key: в подразделе encryption: раздела api: и записываем наш ключ шифрования


Home assistant строку в число

Home assistant строку в число

Нажимаем кнопку ДОБАВИТЬ ИНТЕГРАЦИЮ


Home assistant строку в число

Откроется мастер добавления интеграции

На этом интеграция устройства на ESPHome закончена. Данные теперь прилетают по API в наш Home Assistant. Перейдем на вкладку Устройства и выберем наше устройство esptest


Home assistant строку в число

Как видим, наша лампа появилась в интерфейсе и ей можно сразу же и управлять и настраивать.

В этой статье я рассказал как настроить ESPHome после установки, как создать новую прошивку и залить её в устройство как по USB, так и по воздуху. Как подключить наше устройство к Home Assistant. Как понятно из статьи делать это очень легко и просто. В дальнейшем я покажу различные свои устройства, которые я использую в повседневной работе.

Новый синтаксис

В 2021 году в Home Assistant появился новый синтаксис для описания template сенсоров, вот пример:

У этого способа описания есть большой недостаток — он не работает при использовании в packages.

Про это постоянно пишут тикета на GitHub (например, вот пример тикета),
но разработчки HA говорят что это не баг, а так и задуманно и похоже что не собираются это исправлять.

У меня есть большие сомнения что нужно использовать новый синтаксис.

Создать сенсор со значением атрибута

У меня есть zigbee розетка BlitzWolf BW-SHP13.
Она подключена в Home Assistant с помощью zigbee2mqtt. В Home Assistant автоматически появляется
несколько разных сенсоров, например sensor.0x842e14fffe1393a2_power Вот как выглядит этот сенсор
в инструменте проверки состояния:


Home assistant строку в число

Есть статус (в данный момент — это число 0), и куча разных атрибутов. Я хочу создать отдельный
сенсор, значение которого — это значение атрибута energy. Для этого нужно написать вот такой
конфиг:

После перезпуска Home Assistant повяляется новый сенсор — sensor.total_energy_pump,
значение которого 77.13 — то же самое число которе содержится в атрибуте energy.


Home assistant строку в число

Как только меняется атрибут energy у сенсора sensor.0x842e14fffe1393a2_power значение нового сенсора автоматически меняется.

Использование регулярных выражений

Регулярные выражения — это очень мощный способ как-то преобразовать
строку. Достать ее часть или превратить во что-то другое. Вот пример использования
регулярного выражения:

Результат работы этого шаблона:

Получить дату-время в будущем

Вот пример как получить дату-время плюс два часа от текущего момента:

Перевести значение кВтч в рубли

Если у вас есть сенсор в котором содержится данные про то сколько было израсходовано кВтч за сегодня
(например, с помощью utility_meter,
то можно посчитать сколько это стоит в рублях с помощью следующих сенсоров.

При использовании однотарифного учета:

При использовании двухтарифного учета:

Создать timestamp из строки

Строка воспринимается как дата-время в часовом поясе который указан в настройках Home Assistant.

В том случае если в строке данные о дате и времени находятся в каком-то необычном порядке,
то нужно дополнительно использовать функцию strptime:

Создание template сенсора

В configuration.yaml записываем:

Перезапускаем HA и после этого в системе появляется новая сущность “sensor.solar_angle”
значение которого — это значение атрибута “elevation” у объекта “sun.sun”:


Home assistant строку в число

Разные способы получить фрагмент текущей даты-времени

Результат работы всех трех шаблонов одинаковой — текущий год.

Relative_time

Вот пример создания сенсора который рассчитывает абсолюную влажность в ванной.
Этот сенсор использует значения с двух сенсоров (у меня эти данные отдает
Aqara climate sensor):

Получить значение атрибута в шаблоне

Вот как получить значение атрибута ‘elevation’ элемента “sun.sun”:

Sun elevation is “12.51”

И для получения значения атрибута тоже есть другой способ (но который использовать не нужно):

Получить state в шаблоне

Вот пример шаблона, который отображает state:

И этот шаблон превратится в:

Sun state is “above_horizon”

Очень популярный формат представления даты-времени в компьютерах. Это число которое означает количество секунд с 00:00:00 1 января 1970 года.

Можно сделать это и другим способом:

Создание template сенсора с атрибутами

Можно создать сенсор и управлять не только содержимым стейта, но и тем что содержится в атрибутах. Вот пример:

Форматирование даты и времени

Пример использования функции strftime:

28 March 2021 13:48:00 MSK

Значения last_updated в разных форматах и часовых поясах

2021-04-30 08:51:07.797174+00:00
2021-04-30 08:51:07
2021-04-30 11:51:07

Первая и вторая строчка возращают дату-время в часовом поясе UTC. Вариант с timestamp_custom()
возвращает дату-время в часовом поясе Home Assistant.

Использование условий в шаблоне

Иногда необходимо чтобы результат работы шаблона как-то отличался
в зависимости от условий. Вот пример, который выдает разный текст в
зависимости от статуса элемента “sun.sun”:

Вообще, вроде как считается что более правильно проверку записывать иначе:

Разница только в первой строчке. Используется не оператор сравнения, а специальный метод, который возвращает True или False.
Но, насколько я знаю, оба эти варианта работает абсолютно одинаково. Мне проще
читать вариант с оператором сравнения, так что я обычно использую первый вариант.

Использование кавычек и других символов

Шаблон записывается в поле value_template. Обычно когда шаблон помещается в одну строчку, то он записывается в кавычках:

Разница между этими вариантами — это то как происходит работа с пробельными символами.
Подрбности есть на сайте https://yaml-multiline.info.

Получить текущую дату и время

Время отображается в часовом поясе который указан в настройках Home Assistant.

1 Звездаслабоватона троечкухорошо!просто отлично! (1 оценок, среднее: 4,00 из 5)
Загрузка...

Расскажите нам ваше мнение:

Ваш адрес email не будет опубликован. Обязательные поля помечены *