Автоматизовані сповіщення в Telegram дозволяють отримувати миттєві повідомлення про критичні події в домашній автоматизації, скорочуючи час реагування на аварійні ситуації з 15 хвилин до 2.
Контекст і проблема
Відсутність своєчасних сповіщень про витік газу, затоплення або спрацювання датчика диму може призвести до значних збитків та навіть загрози життю. Багато власників Home Assistant намагаються налаштувати сповіщення, але стикаються з незрозумілими конфігураційними файлами та обмеженнями стандартних рішень. Ручне перевіряння логів Home Assistant на предмет проблемних подій займає до 30 хвилин на тиждень, що є неефективним використанням часу.
Практична реалізація
Для налаштування сповіщень в Telegram, нам знадобиться Telegram Bot та API Token. Створіть бота через BotFather у Telegram, скопіюйте токен та збережіть його. Далі налаштуємо інтеграцію в Home Assistant.
# configuration.yaml (або файл вашої інтеграції)
telegram_bot:
bot_token: YOUR_TELEGRAM_BOT_TOKEN
chat_id: YOUR_TELEGRAM_CHAT_ID # Можна використовувати ID бота або свій chat ID
# automation.yaml (приклад автоматизації для виявлення витоку води)
- alias: "Сповіщення про витік води"
trigger:
- platform: state
entity_id: binary_sensor.water_leak_sensor # Замініть на ID вашого датчика витоку
to: 'on'
action:
- service: telegram_bot.send_message
data:
message: "УВАГА! Виявлено витік води!"
language: uk # Можна змінити на іншу мову
- alias: "Сповіщення про критичну температуру"
trigger:
- platform: numeric_state
entity_id: sensor.temperature_living_room # Замініть на ID вашого датчика температури
above: 35 # Температура вище 35 градусів
action:
- service: telegram_bot.send_message
data:
message: "Критична температура в вітальні! Температура: {}°C".format({{state}}))
language: uk
# Можна використовувати template для динамічних повідомлень
- alias: "Сповіщення про відсутність звязку з Home Assistant"
trigger:
- platform: event
event_type: homeassistant_unavailable
action:
- service: telegram_bot.send_message
data:
message: "Home Assistant не відповідає!"
language: uk
Цей код використовує інтеграцію `telegram_bot` для відправки повідомлень та автоматизації для реагування на певні події. Зверніть увагу на використання `YOUR_TELEGRAM_BOT_TOKEN` та `YOUR_TELEGRAM_CHAT_ID`, які потрібно замінити на ваші реальні значення.
Типові помилки
- Неправильний Chat ID: Сповіщення не надходять, тому що бот не знає, куди їх відправляти. Перевірте Chat ID, використовуючи бота, який надсилає тестове повідомлення. Переконайтеся, що використовуєте ID бота або свій Chat ID.
- Неправильний Bot Token: Бот не може підключитися до Telegram API. Перевірте токен на наявність помилок друку та переконайтеся, що він не змінився.
- Проблеми з YAML: Неправильний синтаксис YAML призводить до помилок при завантаженні конфігурації Home Assistant. Використовуйте YAML validator онлайн для перевірки синтаксису.
Результат
Після налаштування сповіщень, час виявлення проблемних подій зменшується з 30 хвилин до 2-3 хвилин, що дозволяє швидше реагувати на непередбачувані ситуації. Автоматизовані сповіщення економлять до 20 хвилин на тиждень, звільняючи час для інших завдань.