Rauchmelder-Benachrichtigungen für Home Assistant

Node-RED Lösung mit Multi-Gruppen-Support

Features

  • Gruppen-System - Mehrere Häuser/Bereiche komplett isoliert (z.B. Haus 1, Haus 2)
  • Alarm nur für betroffene Gruppe - Rauchmelder in Gruppe A benachrichtigt nur Geräte in Gruppe A
  • STOPP pro Gruppe - Benachrichtigungen und Sirenen separat pro Gruppe stoppen
  • Settings-Seite - Alles zentral konfigurieren (auch als Dashboard-Karte)
  • KEIN Helper nötig - Kein YAML editieren, keine Entities erstellen
  • Sirene pro Rauchmelder - Jeder Rauchmelder kann seine eigene Sirene haben
  • Dropdown-Auswahl - Entities werden automatisch aus Home Assistant geladen
  • iOS Critical Alerts - Laute Benachrichtigungen auch bei Stumm-Modus
  • Android TTS - Sprachausgabe über Alarm-Stream
  • Visuelles Debugging - Node-RED Debug-Panel

Voraussetzungen

  • Home Assistant
  • Node-RED Add-on
  • Mobile App auf allen Geräten (iOS & Android)

Installation

1. Settings-Seite in Home Assistant ablegen

Kopiere node-red/settings-smoke-notify.html nach /config/www/settings-smoke-notify.html

Die Datei ist dann erreichbar unter:

http://homeassistant.local:8123/local/settings-smoke-notify.html

2. Node-RED Flow importieren

  1. Öffne Node-RED
  2. Menü (☰) → Import
  3. Kopiere Inhalt von node-red/flows/smoke_detector.json
  4. Importieren → Deploy

3. Long-Lived Token erstellen

  1. Home Assistant → Profil (unten links) → Sicherheit
  2. Runterscrollen zu "Langlebige Zugriffstokens"
  3. Token erstellen → Name: Rauchmelder Settings
  4. Token kopieren (sieht so aus: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3Mi...)

4. Home Assistant Server verbinden

Einmalig Token einrichten:

  1. Doppelklick auf einen blauen Node
  2. Stift-Symbol neben Server
  3. Base URL: http://homeassistant.local:8123
  4. Access Token: Den eben erstellten Token einfügen
  5. Update → Done

Alle blauen Nodes konfigurieren:

Danach musst du jeden blauen Node einzeln durchgehen und den Server auswählen:

  1. Doppelklick auf den blauen Node
  2. Bei Server: Wähle den zweiten Eintrag in der Liste (der mit deiner URL)
  3. Done
  4. Wiederhole für alle blauen Nodes

Hinweis: Den Token musst du nur einmal eingeben. Aber jeder blaue Node muss manuell auf den Server verweisen.

Wenn alle Nodes konfiguriert sind: Deploy

5. Settings-Seite öffnen

Option A: Direkt im Browser

http://homeassistant.local:8123/local/settings-smoke-notify.html?token=DEIN_TOKEN

Option B: Als Dashboard-Karte (iframe) - Empfohlen!

Dashboard bearbeiten → Karte hinzufügen → Webpage:

type: iframe
url: /local/settings-smoke-notify.html?token=DEIN_TOKEN
aspect_ratio: 100%

Option C: Als Seitenleisten-Panel

Hinweis: Seit Home Assistant 2024.4.0 ist panel_iframe über YAML deprecated. Nutze stattdessen Option B (Dashboard-Karte) oder erstelle ein eigenes Dashboard:

  1. Einstellungen → Dashboards → Dashboard hinzufügen
  2. Name: Rauchmelder, Icon: mdi:fire
  3. In Seitenleiste anzeigen aktivieren
  4. Dashboard öffnen → Dashboard bearbeiten → Karte hinzufügen → Webpage
  5. URL: /local/settings.html?token=DEIN_TOKEN

6. Konfigurieren & Testen

  1. Konfiguriere alles in der Settings-Seite:

    • Benachrichtigungstext
    • TTS Intervall & Sprache
    • Rauchmelder (aus Dropdown wählen)
    • Sirene pro Rauchmelder (optional)
    • Anzeigenamen (optional)
    • Geräte (iOS/Android)
  2. Klicke "Speichern"

  3. Die Config wird automatisch an Node-RED gesendet

  4. Nutze den Test-Button oder setze einen Rauchmelder auf on


Settings-Seite

Die Settings-Seite bietet Gruppen - jede Gruppe enthält:

Bereich Optionen
Gruppen-Header Name der Gruppe (z.B. "Haus 1", "Ferienhaus"), Umbenennen, Löschen
Benachrichtigungen Text mit {detector} Platzhalter, TTS Intervall (5-60s), Sprache
Rauchmelder Dropdown-Auswahl der Rauchmelder-Sensoren aus HA
Sirene Pro Rauchmelder optional eine Sirene/Switch zuweisen
Namen Optionaler Anzeigename für jeden Rauchmelder
Geräte Android (Name + ID + TTS) oder iOS (Name + ID + Critical Alert)
Notfall-Buttons Benachrichtigungen stoppen / Sirenen ausschalten - nur für diese Gruppe

Gruppen-Konzept

  • Gruppe "Haus 1": Rauchmelder Küche, Flur → benachrichtigt Stefan, Maria
  • Gruppe "Ferienhaus": Rauchmelder Wohnzimmer → benachrichtigt nur Stefan

Wenn der Rauchmelder im Ferienhaus auslöst:

  • Nur Stefan bekommt Benachrichtigungen (nicht Maria)
  • Nur die Sirene im Ferienhaus geht an
  • Der STOPP-Button stoppt nur die Ferienhaus-Benachrichtigungen

iOS Setup (Critical Alerts)

Für iOS-Geräte werden Critical Alerts verwendet. Diese sind laute Benachrichtigungen die auch bei stummgeschaltetem Gerät durchkommen.

Critical Alerts aktivieren

  1. Home Assistant Companion App öffnen
  2. Einstellungen → Companion App → Benachrichtigungen
  3. Critical Alerts erlauben aktivieren

iOS Einstellungen prüfen

  1. iOS Einstellungen → Mitteilungen → Home Assistant
  2. Prüfe ob Kritische Hinweise aktiviert ist

Wie es funktioniert

  • Bei Rauchmelder-Alarm bekommt das iOS-Gerät einen Critical Alert
  • Der Alert spielt einen lauten Sound ab (auch bei Stumm-Modus!)
  • Die Nachricht zeigt an welcher Rauchmelder ausgelöst hat
  • Der Alert wiederholt sich alle X Sekunden bis STOPP gedrückt wird

Wichtig

  • Critical Alerts umgehen den Stumm-Modus und "Nicht Stören"
  • Der Sound ist laut - perfekt für Notfälle
  • Funktioniert auch im Hintergrund und bei gesperrtem Gerät

So funktioniert's

  1. Trigger: Rauchmelder geht auf on
  2. Gruppen-Filter: In welcher Gruppe ist dieser Rauchmelder?
  3. Sirene: Die zugehörige Sirene des Rauchmelders wird aktiviert (nur in dieser Gruppe)
  4. Benachrichtigungen: Nur Geräte dieser Gruppe bekommen:
    • Text-Notification mit STOPP-Button
    • TTS-Loop / Critical Alert (alle X Sekunden)
  5. STOPP: User drückt Button → TTS stoppt für dieses Gerät in dieser Gruppe
  6. Rauch weg: Nur Sirenen dieser Gruppe werden ausgeschaltet

Die Config wird als JSON-Datei gespeichert (/config/www/smoke_config.json) und bleibt auch nach Neustarts erhalten.


Troubleshooting

Problem Lösung
Config nicht geladen Öffne Settings-Seite und klicke "Speichern"
Keine Rauchmelder im Dropdown Klicke "Entities laden" - prüfe ob Sensoren device_class "smoke" haben
Benachrichtigung kommt nicht Prüfe Gerätename (muss mit Mobile App übereinstimmen)
TTS stoppt nicht Prüfe ob STOPP-Event ankommt (Debug-Panel)
Settings-Seite zeigt Fehler Prüfe Token in der URL
Sirene geht nicht an Prüfe ob die richtige Switch-Entity zugewiesen ist

Dateien

node-red/
├── flows/
│   └── smoke_detector.json    # Node-RED Flow
├── settings-smoke-notify.html    # Einstellungsseite (→ nach /config/www/ kopieren)
└── stop-smoke-notify-card.html   # STOPP-Karte für Dashboard (optional)

Lizenz

MIT

S
Description
No description provided
Readme
65 KiB
Languages
HTML 100%