Smart home Russia
675 subscribers

Уведомления в telegram из умного дома

136 full reads

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

Translation to English is here. Также новостной канал в telegram

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

Итак, приступим. Нам потребуются несколько вещей.

1. Создадим бота. Напишем к @BotFather.
Выполним команды "/start", затем "/newbot"; нас спросят, как мы его хотим назвать. А потом придумываем имя пользователя. Теперь выполняем команды "/mybots" и в меню выбираем API токен. Копируем его. Отлично, теперь у нас есть бот и его ключ. Ищем его в поиске контактов и пишем ему "привет" или любое другое слово. Это не важно. Главное, чтобы диалог начался. Это даст права нашему боту писать нам.

2. Если вы хотите, чтобы бот писал человеку, то нужно узнать его id. Пишем "@getidsbot" и он сообщит вам ваш ID. Теперь мы знаем достаточно информации.

Уведомления в telegram из умного дома

3. Переходим на страничку HA и читаем мануал. Все понятно, там написаны первые 2 пункта этой статьи и много конфигураций. Открываем наш файл configuration.yaml и пишем следующее

# Example configuration.yaml entry for the Telegram Bot
telegram_bot:

- platform: polling
api_key:
YOUR_API_KEY
allowed_chat_ids:
-
CHAT_ID_1 # example: 123456789 for the chat_id of a user
-
CHAT_ID_2 # example: -987654321 for the chat_id of a group
-
CHAT_ID_3
# Example configuration.yaml entry for the notifier
notify:

- platform: telegram
name:
NOTIFIER_NAME
chat_id:
CHAT_ID_1

Конфигурация выше - для примера, лучше скопируйте строки из официальной инструкции. На сколько я помню, конфигурация чувствительна к пробелам, регистрам и новым строчкам. Если я ошибся, то у Вас не заработает бот. Но, я старался не ошибится.

- Вместо YOUR_API_KEY пишем апи нашего бота
- Вместо
CHAT_ID_1...3 пишем id тех людей или групп, которым можно писать
- Вместо
NOTIFIER_NAME пишем название нашего сервиса. Мы его позже найдем

4. Переходим на страничку нашего HA и перезагружаем его. После перезагрузки проверяем отсутствие ругательств в логах. Далее переходим последоватиельно Панель разработчика → службы → Находим службу "Send messege" → вводим текст → и нажимаем "вызвать службу"

Уведомления в telegram из умного дома

Если все ОК то вы получите сообщение от бота.

Поздравляю, Вы справились!

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

Также публикации можно найти на других площадках: Instagram, telegram (RU, EN, DE), Medium, LiveJournal, YouTube.

Мой блог является некоммерческим, поэтому позитивный комментарий, лайк или репост поможет публикациям выходить чаще ☺.