Что такое Home Assistant? Обзор Приложения для Организации Умного Дома
В этой статье:
- Что Такое Home Assistant?
- Как работает Home Assistant?
- Интеграции Home Assistant
- Интерфейс Home Assistant
- Автоматизация Home Assistant
- Сценарии Home Assistant
- Уведомления Home Assistant
Что Такое Home Assistant?
Home Assistant – это одна из самых популярных систем организации, автоматизации и управления устройствами умного дома и интернета вещей от большого количества различных брендов. Программа написана на языке программирования Python и имеет открытый исходный код.
С помощью Home Assistant вы можете, например, задать срабатывание будильника с восходом солнца или уведомление о завершении посудомоечной машины, настроить автоматизацию для освещения/отопления, включение/выключение вентилятора в зависимости от температуры и влажности или что-то посложнее. Список других популярных кейсов вы найдете в специальном разделе Examples на сайте приложения.
Одно из больших преимуществ сервиса – его доступность. Установить Home Assistant на Windows, macOS, Linux или даже на Raspberry Pi не составит труда. Система работает на устройствах с большинством ОС. А благодаря мобильному приложению установка возможна не только на стационарные компьютеры и ноутбуки, но и на смартфоны и планшеты на Android и iOS.
Как Работает Home Assistant?
Интеграции Home Assistant
Для управления устройствами HA использует отдельные компоненты (components) и интеграции (integrations). Приложение позволяет объединить IoT-устройства в рамках 1800 готовых интеграций в 50+ категориях – таких как Сигнализация, Автоматизация, Климат, Видеонаблюдение, Освещение, Обнаружение Присутствия и Здоровье.
Системы и устройства, которые вы можете подключить, включают Amazon Alexa, Google Nest и Google Assistant, Samsung SmartThings, ZHA (Zigbee Home Automation), Xiaomi, Яндекс Карты, Dyson и многие другие.
Количество интеграций “из коробки” впечатляет. Однако если среди всего этого многообразия вы не найдете нужной вам системы/устройства, вы можете без проблем реализовать стороннюю интеграцию. К тому же, скорее всего, это не отнимет много времени – плагины для многих девайсов уже создали до вас и залили в специальную тему в комьюнити. Если же устройство, которое вы хотите подключить, обдели вниманием и там, наличие навыков программирования на Python поможет решить этот вопрос самостоятельно.
Интерфейс Home Assistant
Интерфейс приложения вполне понятный и переведен на множество языков, включая русский. Каждый пользователь может менять карточки на панели управления на свой вкус. Протестировать это можно, запустив демо-версию.
Редактирование карточек возможно как в визуальном редакторе:
так и в текстовом:
Каждое подключенное к Home Assistant устройство будет выполнять свое действие по заранее заданной команде из автоматизаций.
Автоматизация Home Assistant
Автоматизации в Home Assistant позволяют задать действие, которое будет применяться в момент возникновения определенного события. Так, каждая автоматизация состоит из триггера и действия. Иногда сюда добавляется еще и условие.
В такой автоматизации “Когда Саша придет домой” – это триггер, “и солнце уже село:” – дополнительно условие, а “Включить освещение в гостиной” – действие.
В приложении вы можете выбрать уже готовые автоматизации (blueprint automations) или создать автоматизацию Home Assistant самостоятельно.
Сценарии Home Assistant
Сценарии позволяют объединить в одну комбинацию несколько автоматизаций. Этот инструмент значительно упрощает работу с приложением. Например, если вы хотите, чтобы когда Саша приходит домой, автоматически не только включался свет в гостиной, но и запускался чайник, вы можете не прописывать 2 разные автоматизации, а просто прописать эти действия и в дальнейшем вызывать сценарий.
Уведомления Home Assistant
Отправка пользователю умного дома сообщений о значительных событиях и сигналах от устройств не только важна, но и просто необходима для своевременной обратной реакции. И здесь HA предлагает несколько возможностей:
- Внутренние уведомления HA (persistent notifications) – позволяют настроить отправку уведомлений непосредственно в интерфейс Home Assistant.
- Встроенный компонент notify – позволяет отправлять уведомления в сторонние платформы через установку дополнительных интеграций – например, Slack, Telegram, Facebook Messenger.
На первый взгляд отправка уведомлений через notify кажется довольно привлекательным решением. Согласитесь, получать мгновенные нотификации о происходящих в вашем доме или офисе событиях в виде push-уведомлений на удобном девайсе или сообщений в популярном мессенджере очень удобно. Но есть одно НО. Большинство этих интеграций требуют сложной и небыстрой настройки – например, создания чат-бота через API и добавления специального кода в файл конфигурации HA.
У нас для вас хорошие новости! Есть простое решение – Notify.Events. Сервис в реальном времени собирает все уведомления из Home Assistant и направляет их в удобный вам получатель – выбирайте любой из 40+ мессенджеров, push-уведомлений, SMS и даже голосовых вызовов. Например, вы можете как получать уведомления из Home Assistant в Telegram, Viber, Slack и Discord, так и Home Assistant SMS-уведомления и т.д.
В связке с Home Assistant Notify.Events позволит вам узнавать о происходящих событиях у вас дома в максимально короткие сроки. Протечка в ванной, превышение уровня CO или подозрительное движение у вас под дверью – вы узнаете об этом первым и сможете оперативно отреагировать прямо из чата с оповещением.
Еще одно преимущество сервиса – возможность не только получать уведомления самому, но и настроить отправку членам вашей семьи или команды. Для этого им даже не нужно регистрироваться в системе. Перейдя по вашей специальной ссылке, они смогут самостоятельно выбрать подходящий получатель всего в пару кликов. К тому же вы можете настроить распределение сообщений между получателями по приоритету, типу события и времени.
А еще, помимо Home Assistant, Notify.Events позволяет получать нотификации из 40+ разных сервисов в нескольких категориях: Мониторинг, IoT и Умные дома, Сайты и Коммерция, CI/CD и Контроль версий и др. Так, вы, например, можете объединить в одном канале Home Assistant и Node-RED и создать отдельный канал для рабочих уведомлений из Zabbix, UptimeRobot, Jenkins и других сервисов, которые вы используете каждый день.
Настройка сервиса очень простая, быстрая и не требует никаких навыков программирования. Все что нужно – зарегистрироваться в системе Notify.Events, создать канал (ленту событий), добавить туда Home Assistant в качестве источника уведомлений и подходящий мессенджер в качестве получателя. Читайте подробнее, как получить свое первое уведомление в этой статье. А полную инструкцию по настройке интеграции Home Assistant вы найдете здесь.