Openhab Items per Google Assistent (oder Google Home) steuern
Wie in meinem letzten Post beschrieben, kann man Openhab via Sprachbefehle steuern.
Ich habe IFTTT ausprobiert und war erstaunt, dass man sogar eigene Befehle generieren kann, um alles zu steuern.
Seit neustem hat IFTTT sein Bezahlmodell geändert und man kann an Free User nur noch eine begrenzte Anzahl an Actions nutzen.
Daher habe ich mir nochmal myopenHAB angeschaut, und ich muss sagen: Das gefällt mir inzwischen sogar noch besser.
Denn hierüber ist es möglich eure Openhab Items sogar in der Google Home App anzuzeigen und zu steuern.
Installation
Klickt in der PaperUi von Openhab auf "Add-ons - MISC - openHAB Cloud Connector" und klickt auf "INSTALL".
Vorbereitung
Nun loggt ihr euch via SSH in Openhab ein und navigiert in den Ordner "/var/lib/openhab2" und öffnet die Datei "uuid".
Speicher euch den Inhalt der Datei ab.
Navigiert nun in den Ordner "/var/lib/openhab2/openhabcloud" und öffnet die Datei "secret". Auch diesen Inhalt speichert ihr euch.
Achtung: So sind die Pfade bei einer Openhabian Installation. Bei einer anderen Installationsart können die Pfade abweichen.
Anmeldung
Geht nun auf die Webseite https://myopenhab.org und tragt auf der rechten Seite die eure Daten zum Registrieren ein.
E-Mail und Passwort sollten klar sein. openHAB UUID und openhab Secret haben wir uns gerade gespeichert und können diese nun hier eintragen.
Konfiguration
Öffnet nun wieder eure PaperUi und klickt auf "Configuration - Services - IO - openHAB Cloud - Configure"
Bei Mode sollte "Notifications & Remote Access" bereits ausgewählt sein, wenn nicht, bitte auswählen.
Unter "Items to Expose" muss nichts ausgewählt werden.
Als Base URL tragen wir https://myopenhab.org/ ein.
Startet nun Openhab neu.
Verbindung überprüfen
Nach dem Neustart sollte loggt ihr euch in myopenHAB ein. In der oberen Leiste steht nun, dass ihr Online seid.
Konfig anpassen
Damit Google eure Geräte erkennen kann, muss die Items Config angepasst werden.
Anbei ein Beispiel mit einem Heizungsthermostat. Folgende Einträge werden benötigt:
- Gruppe ( ga="Thermostat" [ modes="heat=1,cool=11" ] )
Es ist zwingend notwendig, dass eine Gruppe verwendet wird, damit die Items zugeordnet werden können.
Mein Thermostat gibt die Werte 1 für Heizen und 11 für Kühlen Modus. Sollte euer Thermostat andere Werte verwenden, kann dies hier eingetragen werden. Standard sind "heat" und "cool".
- Ist-Temperatur ( ga="thermostatTemperatureAmbient" )
- Soll-Temperatur ( ga="thermostatTemperatureSetpoint" )
- Modus ( ga="thermostatMode", autoupdate="true" )
Ich bin mir nicht sicher, ob der autoupdate Modus immer auf "true" gesetzt werden muss. Bei mir hat es jedenfalls damit funktioniert.
Die Einträge sehen dann also in etwa so aus:
Group Wohnzimmer_Heizung "Heizung Wohnzimmer" { ga="Thermostat" [ modes="heat=1,cool=11" ] }
Number WohnzimmerCurrentTemp "Heizung Wohnzimmer Temp" <temperature> (Wohnzimmer_Heizung) {channel="zwave:device:XXXXX:node2:sensor_temperature", ga="thermostatTemperatureAmbient"}
Mit Google verbinden
Öffnet nun eure Google Home App und klickt oben links auf das "+" Zeichen und dann auf "Gerät einrichten - Mit Geräten von Google kompatibel" und wählt nun in der Langen Liste "openHAB" aus.
Hier loggt ihr euch nun mit eurer E-Mail/Passwort Kombination ein. Nach dem Login erlauben wir Google auf myopenhab zuzugreifen.
Ihr findet eure Geräte nun ganz unten auf der Startseite der Google Home App und könnt sie den Räumen zuweisen.
Fazit
Dies ist eine echt schöne Lösung auch von unterwegs seine openHAB Geräte steuern zu können.
Um andere Geräte hinzuzufügen, schaut euch bitte die openHAB Webseite an https://www.openhab.org/docs/ecosystem/google-assistant/
Labels: Google, Google Assistent, Google Home, Openhab, Openhab2