19. Объекты в Home Assistant. Часть 1.
В процессе настройки системы управления умным домом Home Assistant очень часто придётся иметь дело с тем, что называют сущностями (entity), атрибутами и состояниями. Попробуем разобраться что это такое.
Возьмём для примера обычную розетку с энергомониторингом, подключаемую по протоколу зигби. На сервере управления устройствами Zigbee2mqtt она отображается как один объект, однако в интеграции MQTT этот же объект имеет несколько второстепенных объектов.
сущности 2, 3, 4, 11, 12, 13, 14 отключены
В данном случае розетка является объектом, а каждый из пронумерованных элементов - её сущностями.
При этом, у каждой из сущностей в системе Home Assistant могут быть свои состояния и атрибуты.
Рассмотрим для примера пятый элемент 😀
Это виртуальный выключатель связанный с физическим выключателем в розетке.
Из официальной документации:
Каждая интеграция в Home Assistant имеет уникальный идентификатор: домен. Все сущности и объекты, доступные в Home Assistant, предоставляемые интеграциями принадлежат к какому либо домену. Первая часть сущности или объекта перед точкой показывает домен, к которому она принадлежат. Например, light.kitchen – это сущность в домене light из интеграции light, а hue.activate_scene – это служба activate_scene для домена hue, который принадлежит интеграции Hue.
Итак, у нас есть объект - розетка, включающий в себя несколько сущностей.
Каждая сущность принадлежит к какому-то домену, и вместе с этим имеет свои атрибуты и состояние.
Есть большое количество типов доменов, для примера некоторые из них:
- Вентилятор
- Выключатель
- Двоичный сенсор
- Замок
- Зона
- Кодовая панель
- Плеер
- Погода
- Пульт управления
- Пылесос
- Свет
- Сенсор
- Термостат
- Шторка (двери гаража, жалюзи, шторы и т.д.)
Для примера возьмём другую сущность - самодельные сенсоры курса валют.
Это две сущности в домене сенсор. Атрибутами каждой из них являются система измерения и отображаемое имя. А состояние - текущий курс валюты со страницы главного банка. Эти сущности не привязаны к какому-либо старшему объекту (только к самой системе).
При подключении системы умного дома Tuya, Ikea, MiHome и других, в Home Assistant попадают именно сущности устройств, а не сами устройства. И работа, как системы так и пользователя, происходит именно с сущностями, основываясь на их состояниях и атрибутах.
То же самое при подключении этих систем в Google Home. В него попадают только отдельные домены сущностей устройств, необходимые для управления.
И последний, но не менее важный объект это платформа.
Платформа - это некий блок, который находится в системе благодаря одной из установленных интеграций. И его могут использовать другие интеграции.
Например объект из домена сенсор, использует платформу интеграции известного сервиса для отслеживания посылок.
И уже благодаря работе этой платформы, в системе появляются сущности домена сенсор:
Сколько посылок в пути, сколько доставлено или нет, сколько готовы к забору из почтового отделения и т.д.
Важно учесть ключевой момент. Т.к. ХА является системой с открытым исходным кодом, то править свою конфигурацию под себя может абсолютно каждый. Для решения некоторых задач не всегда есть возможность использовать удобный интерфейс, в котором можно выбрать необходимые пункты, отметить что-то точкой или галочкой и сохранить. Единственным решением может оказаться написание кода вручную. И первым шагом к такому кодингу как раз и служит понимание структуры объектов и их логические связи.
Подытожим. Все объекты являются сущностями. Домен - определяет что может делать эта сущность. Сущность имеет статус и атрибуты. Платформа позволяет работать определённым сущностям из определённых доменов.
На основе статусов и атрибутов сущностей можно создавать свои, максимально гибкие, автоматизации. О них подробнее в следующей статье.
Комментарии
Отправить комментарий