hermes - 💡(How to fix) Fix Feature Request: Configurable `deliver` target for `watch_entities`/`watch_domains` in Home Assistant integration

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Currently, watch_entities and watch_domains under the homeassistant: platform config forward state-change events back into the Home Assistant platform (as persistent notifications). There is no way to redirect these events to another messaging platform (e.g., WhatsApp, Telegram, Signal) without using a separate webhook automation inside Home Assistant itself.

This feature request is to add an optional deliver field (or equivalent) to watch_entities/watch_domains configuration, allowing users to specify where event notifications should be routed — similar to how webhooks already support deliver: whatsapp.

Root Cause

  1. HA persistent notifications are invisible — They only appear inside the Home Assistant mobile app, behind a bell icon.
  2. Alexa announcements are unidirectional — Users hear the alert but cannot reply or interact with Hermes.
  3. Cross-platform consistency — Webhooks already support deliver.
  4. Security alerts need reliable delivery — Alarm or sensor events are time-sensitive.

Fix Action

Fix / Workaround

Workarounds Today

Code Example

homeassistant:
  enabled: true
  extra:
    watch_entities:
      - sensor.example_pet_camera
      - alarm_control_panel.example_alarm
    watch_domains:
      - person
      - cover

---

homeassistant:
  enabled: true
  extra:
    watch_entities:
      - sensor.example_pet_camera:
          deliver: whatsapp
      - alarm_control_panel.example_alarm:
          deliver: whatsapp
    watch_domains:
      - person:
          deliver: whatsapp
    default_deliver: homeassistant

---

homeassistant:
  enabled: true
  extra:
    watch_entities:
      - sensor.example_pet_camera
      - alarm_control_panel.example_alarm
    watch_domains:
      - person
      - cover
    deliver: whatsapp
RAW_BUFFERClick to expand / collapse

Summary

Currently, watch_entities and watch_domains under the homeassistant: platform config forward state-change events back into the Home Assistant platform (as persistent notifications). There is no way to redirect these events to another messaging platform (e.g., WhatsApp, Telegram, Signal) without using a separate webhook automation inside Home Assistant itself.

This feature request is to add an optional deliver field (or equivalent) to watch_entities/watch_domains configuration, allowing users to specify where event notifications should be routed — similar to how webhooks already support deliver: whatsapp.

Current Behavior

With this config:

homeassistant:
  enabled: true
  extra:
    watch_entities:
      - sensor.example_pet_camera
      - alarm_control_panel.example_alarm
    watch_domains:
      - person
      - cover

When sensor.example_pet_camera changes state, Hermes processes the event and responds back to Home Assistant (persistent notification / Alexa). The user receives the alert only if they have the HA app open or are actively listening to Alexa. There is no way to receive this on WhatsApp/Telegram without building a separate HA automation that calls a Hermes webhook.

Desired Behavior

Add a deliver field (or per-entity/domain routing):

homeassistant:
  enabled: true
  extra:
    watch_entities:
      - sensor.example_pet_camera:
          deliver: whatsapp
      - alarm_control_panel.example_alarm:
          deliver: whatsapp
    watch_domains:
      - person:
          deliver: whatsapp
    default_deliver: homeassistant

Or a simpler top-level approach:

homeassistant:
  enabled: true
  extra:
    watch_entities:
      - sensor.example_pet_camera
      - alarm_control_panel.example_alarm
    watch_domains:
      - person
      - cover
    deliver: whatsapp

Why This Matters

  1. HA persistent notifications are invisible — They only appear inside the Home Assistant mobile app, behind a bell icon.
  2. Alexa announcements are unidirectional — Users hear the alert but cannot reply or interact with Hermes.
  3. Cross-platform consistency — Webhooks already support deliver.
  4. Security alerts need reliable delivery — Alarm or sensor events are time-sensitive.

Suggested Implementation

In gateway/platforms/homeassistant.py, the handle_message() call at line ~318 currently forwards to the HA platform by default. Adding a deliver config option would allow the adapter to route to the specified platform instead of (or in addition to) the HA response.

Workarounds Today

Users must create a Home Assistant rest_command or automation that calls a Hermes webhook with deliver: whatsapp. This works but is redundant and more complex.

Environment

  • Hermes Agent version: latest (git-installed)
  • Platform: Home Assistant WebSocket integration
  • Messaging gateway: WhatsApp (also affects Telegram, Signal, etc.)

Labels

enhancement, home-assistant, gateway, cross-platform

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix Feature Request: Configurable `deliver` target for `watch_entities`/`watch_domains` in Home Assistant integration