Courses

Smart Home – openHAB 2 Enigma2 Integration

Smart Home – openHAB 2 Enigma2 Integration

Dieser Beitrag beschreibt wie ihr in openHAB 2 Enigma2 Boxen wie z.B. eine VU, Octagon, Xtrend oder Gigablue integriert. Es wird Schritt für Schritt beschrieben wie ihr Kommandos wie z.B. Stumm schalten oder andere an die Enigma Box sendet. Weiterhin wird beschrieben wie aktuelle Informationen angezeigt werden z.B. aktueller Sender oder aktuelles Programm. Als weiteren Integrationspunkt erfahrt ihr wie Ihr eine Meldung an die Box sendet, so dass ihr z.B. über wichtige Informationen aus Eurem Smart Home direkt im Bilde seid. Das ganze funktioniert per HTTP Binding und und RegEx Transformation. Einzige Voraussetzung für die Box ist ein Betriebssystem mit openWebIf. Ich nutze auf meiner Box noch openATV 4.2. Die Version ist zwar alt aber läuft bei mir super zuverlässig und daher gibt es für mich keine Grund ein Update zu machen.

Smart Home – openHAB 2 Enigma2 Hardware

Wie bereits angedeutet könnt ihr im Grunde jede Enigma2 Box steuern. Ich habe mich vor einiger Zeit mal auf die Suche nach einer guten Enigma2 Box gemacht.  Folgende Boxen kamen in die engere Auswahl. Ich finde die Boxen immer noch sehr gut.

Enigma2 Box DVB-S2 (SAT)

  • Produkt
  • Features
  • Fotos

VU+ Duo² 2x DVB-S2 Tuner PVR Ready Twin Linux Receiver Full HD...

Versandfertig in 1 - 2 Werktagen
Last update was on: 9. Dezember 2019 8:45
  • Produkt
  • Features
  • Fotos

GigaBlue HD Quad PLUS schwarz 2x DVB-S2 HDTV Linux HbbTV LAN Sat...

Versandfertig in 1 - 2 Werktagen
Last update was on: 9. Dezember 2019 8:45

Enigma2 Box DVB C/T2 (Kabel/Antenne)

  • Produkt
  • Features
  • Fotos

GigaBlue HD Quad Plus Linux HDTV Receiver + 1x Hybrid Tuner DVB/C...

Versandfertig in 1 - 2 Werktagen
Last update was on: 9. Dezember 2019 8:45
  • Produkt
  • Features
  • Fotos

VU+ Duo² 2x DVB-C/T2 Tuner PVR Ready Twin Linux Receiver Full HD...

Versandfertig in 1 - 2 Werktagen
Last update was on: 9. Dezember 2019 8:45

Ich persönlich habe mich für eine Gigablue HD Quad Plus entschieden. Das Modell ohne Festplatte reicht eventuell auch, da ihr auch direkt auf eine NAS aufnehmen könnt. Ich betreibe die Gigablue an einer Synology Diskstation und dies läuft sehr zuverlässig und die Aufnahmen stehen so direkt im Netzwerk zur Verfügung. Auf den folgenden Boxen könntet ihr auch direkt openHAB installieren.

Synology Diskstation

  • Produkt
  • Features
  • Fotos

Synology DS216PLAY NAS-System

Versandfertig in 1 - 2 Werktagen
Last update was on: 9. Dezember 2019 8:45
249.95 529.80
  • Produkt
  • Features
  • Fotos

Synology DS216+ 2-Bay NAS-Gehäuse

Der Artikel ist bald verfügbar. Sichern Sie sich jetzt Ihr Exemplar! & Versandkostenfrei
Last update was on: 9. Dezember 2019 8:45
  • Produkt
  • Features
  • Fotos

Synology DS216 2-Bay NAS-Gehäuse

Versandfertig in 1 - 2 Werktagen
Last update was on: 9. Dezember 2019 8:45
3,645.48

openHAB 2 Enigma2 – Paper UI Binding und Transformation

openHAB 2 Enigma2 Konfiguration – HTTP Binding

Ihr installiert als erstes das HTTP Binding über die Paper UI. Ruft Extensions und Bindings auf.

Im Anschluss installiert das Binding mit einen Klick auf Install neben dem Binding. Hat alles geklappt, sieht es wie folgt aus.

openhab-2-engima2-http-binding

 

openHAB 2 Enigma2 Konfiguration – RegEx Transformation

Klickt nun auf auf Transformations und installiert weiterhin die RegEx Transformation.

openhab-2-engima2-regex-transformation

openHAB 2 Enigma2 Konfiguration – SmartHome Designer

Zur Steuerung über openHAB 2 benötigen wir nun entsprechende Items, die Anpassung der Sitemap und Regeln.

openHAB 2 Enigma2 – SmartHome Designer Item

Legt am besten wieder eine in Eurer Items Konfiguration eine Gruppe an, in der ihr die Funktionen bündelt.

Im Anschluss definiert ihr die Items. Die ersten beiden Items holen per HTTP Request und RegEx Transformation die Informationen aus OpenWebIf. Hier gibt es sehr viele Möglichkeiten auf Informationen aus der Enigma2 Box zuzugreifen. Unter folgendem Link findet ihr eine gute Referenz zum Webinterface. Das zweite Item löst eine Regel aus, die später erklärt wird.

Doch was passiert hier in den ersten beiden Items?

  • Der erste Teil ist der HTTP Request über das HTTP Binding { http=“<[]“ } führt das HTTP Binding aus und liefert den Wert (<) der URL in den eckigen Klammern an das Item zurück
  • http://<ENIGMA_BOX_IP>:<PORT>/web/getcurrent ist die eigentliche URL, die einen XML formatierten Text aus OpenWebIf zieht.
  • der folgende Teil  „:3000:REGEX(.*?<e2eventname>(.*?)</e2eventname>.*)“ ist erst mal sehr kryptisch und nicht gerade selbsterklärend. Diese Passage sorgt dafür, dass per RegEx Transformation der entsprechende Inhalt aus der XML extrahiert und an das Item als Wert übergeben wird.
Zur besseren Erklärung gibt es ein kleineres Beispiel. Wird die URL http://<ENIGMA_BOX_IP>:<PORT>/web/vol aufgerufen, so erhaltet ihr gemäß Referenz zum Webinterface folgenden XML Text.

Nun besteht die Möglichkeit die Werte aus der XML Struktur herauszulesen. Hierfür wird der Text aus dem Element gelesen, in dem ihr die entsprechende Syntax eingebt. Wollen wir z.B. den Status „Stumm“ in openHAB anzeigen, würden wir folgenden Syntax verwenden.

Dies sorgt dafür, dass der gesamte Inhalt zwischen <e2ismuted> und </e2ismuted> gelesen wird. Die Syntax ist nicht ganz einfach aber logisch aufgebaut. Folgende Hilfestellungen kann ich Euch empfehlen. Im Wiki zum Thema Regulärer Ausdruck findet ihr allgemeine Informationen zum Thema. Auf der Seite RegEx 101 ist ein sehr nütlziches Tool zum Testen Eurer Abfragen. Hier gibt es auch Beispiele.

Geht im Tool wie folgt vor.

openhab-2-engima2-regex-interpreter

  1. Wählt auf der rechten Seite bei Flavor den Punkt pyhton aus. Dies erspart sogenannte Escapezeichen, die ihr beim Beispiel oben für den Slash verwendet müsst, wenn ihr nicht umstellt.
  2. Tragt den RegEx Ausdruck ein. In unserem Fall:
  3. Tragt den RegEx Text ein, aus dem ihr lesen wollt.
  4. Schaut Euch das Ergebnis an. Hier seht ihr das Ergebnis in den Klammern als Group 1. Die Engima2 Box wäre in diesem Fall nicht Stumm (ismuted = False)

openHAB 2 Enigma2 – SmartHome Designer Sitemap

Bindet innerhalb eines Frames in Eurer Sitemap nun die Gruppe ein.

Sobald ihr dies getan habt seht ihr auch schon die Items innerhalb der Gruppe mit den entsprechenden Werten, wenn Eure Enigma2 Box angeschaltet ist.

openhab-2-engima2-items

 openHAB 2 Enigma2 – SmartHome Designer Regel

In den nächsten beiden Kapitel wird eine Regel zum Senden eines Kommandos und zum Senden einer Nachricht definiert.

 openHAB 2 Enigma2 Regel – Kommando senden

Unten seht ihr die Regel für das dritte Item GB_sendMute. Immer wenn dieses Item ein Kommando erhält, wird die Regel ausgeführt. Wenn das Kommando ON (case ON 🙂 oder OFF (case OFF 🙂 ist, wird das HTTP Reguest sendHttpGetRequest(„http://192.168.0.219:219/web/vol?set=mute“) gesendet. Dies sorgt nun dafür, dass Eure Enigma2 Box stumm geschaltet wird. Es ist in beiden Fällen das gleiche HTTP Request. So wird zwischen stumm / nicht stumm umgeschaltet, sobald der Schalter in der Sitemap betätigt wird.

 openHAB 2 Enigma2 Regel – Sprachsteuerung

Folgendes Video demonstriert die Steuerung einiger Befehle per Sprachsteuerung. Wie ihr die Sprachsteuerung realisiert lest ihr im Beitrag Smart Home – openHAB 2 Sprachsteuerung Konfiguration.

 

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

PGlmcmFtZSB3aWR0aD0iODQwIiBoZWlnaHQ9IjQ3MyIgc3JjPSJodHRwczovL3d3dy55b3V0dWJlLW5vY29va2llLmNvbS9lbWJlZC9RUTc3aFFueWxVST9mZWF0dXJlPW9lbWJlZCIgZnJhbWVib3JkZXI9IjAiIGFsbG93ZnVsbHNjcmVlbj48L2lmcmFtZT4=

Zur Steuerung der Enigma 2 Box per Sprache openHAB nutz z.B. folgendes Item.

Nun hinterlegt ihr noch eine entsprechende Regel.

Sobald das Item einen Befehl erhält, wird die Regel ausgeführt. Wird das Kommando AN empfangen, schalte ich per HTTP Request die Box um. So könnt ihr Eure Box komplett per Sprache steuern.

Noch ein Tipp, der von Jörg kommt. Er musste bei seiner Box noch den User und das Passwort mitgeben. Solltet ihr Probleme haben, versucht es daher mit der Ergänzung in der Adresse wie folgt.http://root:passwort@192.168.xxx.xxx:80/…

 openHAB 2 Enigma2 Regel – Nachricht senden

Auch für das Senden einer Nachricht verwenden wir eine Regel. Ich habe mir hier Folgendes überlegt. Wenn ich entspannt und vertieft vor der Glotze sitze, kriege ich nicht mit, wenn jemand kommt. Daher wird überprüft, ob der Bewegungsmelder auf der Einfahrt auslöst. Wenn dies der Fall ist, sende ich eine entsprechende Nachricht an die Box und sehe es auf dem Fernseher. Über eine Webcam kann ich mir dann überlegen, ob der Weg zur Tür lohnt. =)


Euch gefällt der Blog? Ich freue mich, wenn ihr für den Blog abstimmt. Unten sind ein Paar links zu Blog – Verzeichnissen. Danke und bis bald.
We will be happy to see your thoughts

      Hinterlasse einen Kommentar