Уведомления Home Assistant через Echobell: мгновенные оповещения для умного дома

Подключите Home Assistant к Echobell через REST-команды, чтобы получать приоритетные push-уведомления или телефонные звонки по событиям безопасности и автоматизации.

Содержание

Встроенные мобильные уведомления Home Assistant теряются среди всего остального на телефоне. Echobell добавляет уровни приоритета — push, срочное уведомление или настоящий телефонный звонок, — чтобы критичные события умного дома не пропадали в общем потоке. Интеграция не требует кастомных компонентов: достаточно REST-команды и вашего URL вебхука.

Базовая настройка

  1. Скачайте Echobell / Google Play и создайте канал (например, «Home Alerts»)
  2. Скопируйте URL вебхука в настройках канала
  3. Добавьте REST-команду в configuration.yaml:
rest_command:
  echobell_home:
    url: "https://hook.echobell.one/t/<channel-token>"
    method: POST
    content_type: "application/json"
    payload: '{"title": "{{ title }}", "message": "{{ message }}"}'
  1. Перезапустите Home Assistant
  2. Вызывайте сервис из любой автоматизации

Проверьте работу на простой автоматизации с датчиком двери:

automation:
  - alias: "Door Open Test"
    trigger:
      - platform: state
        entity_id: binary_sensor.front_door
        to: "on"
    action:
      - service: rest_command.echobell_home
        data:
          title: "Front Door"
          message: "Door opened at {{ now().strftime('%H:%M') }}"

Примеры автоматизаций на практике

Мониторинг температуры со звонковым оповещением

Для датчиков, которые защищают продукты, оборудование или безопасность, задайте каналу Echobell тип Звонок, чтобы уведомление звонило как телефон:

automation:
  - alias: "Freezer Temperature Alert"
    trigger:
      - platform: numeric_state
        entity_id: sensor.freezer_temperature
        above: -10
        for:
          minutes: 15
    action:
      - service: rest_command.echobell_home
        data:
          title: "⚠️ Freezer Temperature Alert"
          message: "Freezer is at {{ states('sensor.freezer_temperature') }}°C for 15+ minutes"
          severity: "critical"

Умные оповещения безопасности

Передавайте контекстные переменные вместе с вебхуком, а фильтрацию на стороне канала выполняйте через условия Echobell:

automation:
  - alias: "Smart Security Alert"
    trigger:
      - platform: state
        entity_id:
          - binary_sensor.motion_living_room
          - binary_sensor.motion_bedroom
        to: "on"
    action:
      - service: rest_command.echobell_home
        data:
          title: "Security Event"
          message: "{{ trigger.to_state.attributes.friendly_name }} detected motion"
          alarm_state: "{{ states('alarm_control_panel.home_alarm') }}"
          hour: "{{ now().hour }}"

Условие канала: alarm_state == "armed_away" || (hour >= 22 || hour <= 7)

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

Оповещения о завершении работы техники

automation:
  - alias: "Laundry Done"
    trigger:
      - platform: state
        entity_id: sensor.washer_power
        to: "0"
        for:
          minutes: 3
    action:
      - service: rest_command.echobell_home
        data:
          title: "🧺 Laundry Complete"
          message: "Washing machine finished. Don't let it sit!"

Утренняя сводка

automation:
  - alias: "Morning Home Report"
    trigger:
      - platform: time
        at: "08:00:00"
    action:
      - service: rest_command.echobell_home
        data:
          title: "Good Morning - Home Status"
          message: >
            Temperature: {{ states('sensor.living_room_temperature') }}°C
            Humidity: {{ states('sensor.living_room_humidity') }}%
            Energy yesterday: {{ states('sensor.daily_energy') }} kWh
            All windows: {% if is_state('binary_sensor.window_group', 'off') %}Closed{% else %}OPEN{% endif %}

Расширенные возможности

Контекстные ссылки

Переменная externalLink добавляет кликабельную ссылку в историю уведомлений в Echobell:

action:
  - service: rest_command.echobell_home
    data:
      title: "Motion at Front Door"
      message: "Check the camera feed"
      externalLink: "https://my-home-assistant.duckdns.org/lovelace/security"

Стратегия с несколькими каналами

Используйте отдельные каналы с разными типами уведомлений:

  1. Home Routine (обычное): бытовая техника, ежедневные сводки
  2. Home Monitoring (срочное): температура, влажность, скачки энергопотребления
  3. Home Security (звонок): движение при включённой охране, датчики дверей, критические сбои

Защита URL вебхуков

Используйте механизм secrets в Home Assistant, чтобы URL вебхука не попадал в конфигурационные файлы:

# secrets.yaml
echobell_webhook: "https://hook.echobell.one/t/<channel-token>"

# configuration.yaml
rest_command:
  echobell_home:
    url: !secret echobell_webhook

Полная техническая документация, включая продвинутые шаблоны и решение проблем, собрана в руководстве по интеграции с Home Assistant. Другие интеграции: уведомления GitHub Actions и оповещения мониторинга Grafana.

Похожие статьи