Important Entities Watchdog: Verfügbarkeit von Home-Assistant-Entitäten überwachen

Übersicht des Important Entities Watchdog in Home Assistant: getrackte Entitäten mit Status, Zeitpunkt der letzten Meldung und Verlauf.

Der Important Entities Watchdog ist eine Custom-Integration für Home Assistant, die überwacht, ob wichtige Entitäten noch Daten senden – und sichtbar macht, wenn ein Gerät verstummt. Anders als der eingebaute Zustand unavailable erkennt er auch Sensoren, die einen alten Wert eingefroren weitermelden.

Das Problem

Home Assistant zeigt ein Gerät erst dann als unavailable, wenn die Integration den Ausfall aktiv meldet. Viele Geräte tun das nie: Die Batterie ist leer, das WLAN weg oder ein Token abgelaufen – die Entität behält einfach ihren letzten Wert. Über die Standard-Anzeige ist das kaum zu erkennen.

Der Watchdog prüft deshalb nicht den Wert, sondern den Zeitpunkt der letzten Meldung (last_reported) und vergleicht ihn gegen ein konfigurierbares Zeitfenster.

Funktionsumfang

  • Überwacht alle Entitäten, die ein bestimmtes Home-Assistant-Label tragen
  • Legt pro Entität einen Binärsensor an (device_class: connectivity): an = hat im Zeitraum gemeldet, aus = verstummt
  • Summary-Sensor je Konfiguration: Anzahl plus Liste der stummen Geräte (silent_entities-Attribut)
  • Dynamische Mitgliedschaft: Label setzen/entfernen erzeugt bzw. löscht die Sensoren automatisch
  • Zwei Auswertungsmodi: Echtzeit und Polling
  • Historie bleibt über Reloads erhalten (stabile unique_ids)
  • Oberfläche auf Deutsch und Englisch

Installation

Über HACS (geplant): Repository als Custom-Integration hinzufügen, installieren, Home Assistant neu starten.

Manuell: Ordner custom_components/important_entities_watchdog/ nach config/custom_components/ kopieren, Home Assistant neu starten, anschließend unter Einstellungen → Geräte & Dienste → Integration hinzufügen einbinden.

Konfiguration

Pro Kombination aus Label und Zeitraum wird ein Eintrag angelegt:

  1. Home-Assistant-Label auswählen (z. B. critical)
  2. Zeitraum wählen: 1m, 10m, 1h, 6h, 12h, 24h oder 7d
  3. Optional den Echtzeit-Modus aktivieren

Eine Entität gilt als stumm, wenn sie innerhalb des Zeitraums nichts mehr gemeldet hat. Einstellungen lassen sich später ändern, ohne die Historie zu verlieren.

Erzeugte Entitäten

Für das Label critical mit Zeitraum 24h entstehen:

  • je überwachter Entität ein Binärsensor binary_sensor.important_entities_watchdog_critical_<quelle>_24h
  • ein Summary-Sensor sensor.important_entities_watchdog_silent_critical_24h – Status = Anzahl stummer Geräte, Attribut silent_entities = Liste der Entity-IDs (zusätzlich u. a. tracked_entities, tracked_count, period_seconds, next_check, tick_seconds)
  • ein Aufräum-Button für verwaiste Sensoren button.important_entities_watchdog_clean_orphans_critical_24h

Auswertungsmodi

Polling (Standard): Die Auswertung läuft im Takt von Zeitraum/10 (bei 24h also etwa alle 2,4 h). Schont die Ressourcen bei häufig sendenden Quellen; die Erkennung verzögert sich um maximal einen Takt.

Echtzeit: Der Watchdog abonniert die State-Change-Events und erkennt Ausfälle sofort, mit einem Sicherheits-Tick alle 60 Sekunden. Sinnvoll für kurze Zeiträume und kritische Geräte.

Beispiel-Automationen

Täglicher Report stummer Geräte:

automation:
  - alias: "Watchdog – Morgens-Report"
    trigger:
      - platform: time
        at: "08:00:00"
    condition:
      - condition: numeric_state
        entity_id: sensor.important_entities_watchdog_silent_critical_24h
        above: 0
    action:
      - service: notify.mobile_app_handy
        data:
          title: "Stille Geräte"
          message: >
            {{ states('sensor.important_entities_watchdog_silent_critical_24h') }}
            Gerät(e) melden nicht mehr:
            {{ state_attr('sensor.important_entities_watchdog_silent_critical_24h',
               'silent_entities') | join(', ') }}

Sofort-Alarm, sobald ein neues Gerät verstummt:

automation:
  - alias: "Watchdog – Sofort-Alarm"
    trigger:
      - platform: state
        entity_id: sensor.important_entities_watchdog_silent_critical_24h
    condition:
      # nur wenn die Zahl steigt, nicht beim Erholen
      - condition: template
        value_template: >
          {{ trigger.to_state.state | int(0) > trigger.from_state.state | int(0) }}
    action:
      - service: notify.mobile_app_handy
        data:
          title: "Gerät verstummt"
          message: >
            Neu stumm:
            {{ state_attr('sensor.important_entities_watchdog_silent_critical_24h',
               'silent_entities') | join(', ') }}

Grenzen

  • Neustart-Fehlalarme: Nach einem HA-Neustart wird last_reported zurückgesetzt – kurz nach dem Start können Geräte fälschlich als stumm erscheinen. Für Sofort-Alarme empfiehlt sich eine kleine Karenzzeit nach dem Boot.
  • Polling-Latenz: Im Polling-Modus beträgt die Erkennungsverzögerung bis zu einen Takt (Zeitraum/10).
  • Pro-Entität-Uptime (Verfügbarkeit in Prozent) ist noch nicht implementiert.
  • Getestet mit Home Assistant 2024.x und 2025.x.

Quellcode und Doku unter MIT-Lizenz auf GitHub – Issues und Pull Requests willkommen. Passend dazu: unsere Advanced Entity Selector Card, um die zu überwachenden Entitäten erst zu finden und zu labeln.