Raspberry Pi NodeRED Abfrage der Fenster und Türkontakte mit einer Pushbenachrichtigung über Pocket Control
Jedes Mal bevor ich meine Wohnung verlasse, schaue ich mir noch einmal alle Fenster und Schiebetüren an, ob diese wirklich verschlossen sind, um Einbrechern keine Möglichkeit zu geben. Bisher ging das in der Regel schneller, als die Stadien in der iOS App Pocket Control nachzusehen. Um diese lästige Routine endlich loszuwerden habe ich mir ein Skript einfallen lassen, welches über Node RED die Zustände abfragt und gebündelt als Text in eine Systemvariable schreibt, welche mit Pocket Control ausgegeben werden kann. Falls ihr schon andere Artikel von mir gelesen habt, solltet ihr auch in der Lage sein das Auslösen des Nodes über eine Homematic Variable oder ein Event, wie einen Tastendruck, zu realisieren.
Ausgabe aller zustände in einem gebündelten Text
In dem folgenden Beispiel zeige ich euch, wie ihr mit Node RED Homematic Gerätezustände abfragen und diese verarbeiten könnt. In der Regel sind viele Zustände von Homematic Geräten einer Nummer zugewiesen. Meiner Ansicht ist der Fenstergriffkontakt HmIO-SRH ein gutes Beispiel dafür, die verschiedenen Zustände vor zu stellen.
- Fenstergriffkontakt HmIP-SRH
- geschlossenes Fenster: 0
- geöffnetes Fenster: 1
- gekipptes Fenster: 2
Um die Zahlen in Texte zu verwandeln könnt ihr bei Node RED den change Node verwenden. Hier könnt ihr in einem Node direkt alle drei Zustände in einen String(Text) umwandeln.
Euch wird schnell auffallen, das ihr je nach Umfang eurer Abfragen viele verschiedene Ausgaben bekommen werdet, die ihr nicht alle über einzelne Benachrichtigungen ausgeben lassen wollt. Um all eure Zustände zusammenzufassen, gibt es den batcher Node, der die ganzen Ausgaben bündelt und in einem zusammengesetzten Text ausgeben kann.
Einrichtung
- Um die Funktion zu testen, verwende ich den Node inject
- Dieser sendet direkt aus der Node RED Oberfläche einen Befehl der die Variablen bei Homematic abfragt
- Um per Abfrage den Zustand eines Homematic Gerätes abfragen zu können empfehle ich euch den CCU Node get value zu verwenden. Hiermit könnt ihr einfach jeden Status von eurem Gerät abfragen, der euch interessiert.
- Hinter dem jeweiligen get value Node könnt ihr mit dem change Node die verschiedene Zustände in einen Text umwandeln. Wie bereits im Einleitungstext beschrieben werden die verschiedenen Zustände bei Homematic oft überzahlen ausgegeben
- Zu guter letzt wird ein Node verwendet, welches ich in meinen bisherigen Artikel noch nicht verwendet habe. Das batcher Node ist wirklich hilfreich um Texte zu bündeln und in einem kommagetrennten Text auszugeben. Der vollständie Name lautet wie folgt: node-red-contrib-batcher
Hinterlasse einen Kommentar
An der Diskussion beteiligen?Hinterlasse uns deinen Kommentar!