[ghome-fhem] HowTo: Google Home/Assistant Integration

Begonnen von dominik, 27 November 2018, 21:56:29

Vorheriges Thema - Nächstes Thema

dominik

Zitat von: vbs am 01 Januar 2019, 14:46:30
Was mir am meisten fehlt, ist Lautstärkesteuerung und Steuerung eines MediaPlayers (Start/Stop/Pause/Zurück/Vor etc.). Hat jemand eine Idee, warum es das nicht gibt? Strategie von Google?

Es gibt eine Indikation auf github, dass Google das zukünftig unterstützen wird. Angeblich funktioniert schon der Device Type SPEAKER und Trait Volume :)
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

vbs


yrwyddfa

Hallo zusammen,

ich bin mittlerweile auch wieder dazu gekommen, weiter einzurichten, scheitere aber derzeit  daran, fhem mit google bekannt zu machen:
pi@raspberrypi:~/.ghome $ ./gactions update --action_package action.json --project fhem-connector-XXXXX
ERROR: Failed to update the app for the Assistant
ERROR: Request contains an invalid argument.
Field Violations:
#  Field  Description
1         URL for conversation is invalid 'xxxxxx.ddns.net'
2019/01/08 20:18:15 Server did not return HTTP 200


(ausgeXtes ist per c&p eingetragen bzw. doppelt geprüft)


Wenn ich den daemon separat starte, kommt dies:

pi@raspberrypi:~/ghome-fhem/bin $ ./ghome &
[1] 1272
pi@raspberrypi:~/ghome-fhem/bin $ [2019-1-8 20:24:01] using /home/pi/.ghome/config.json
[2019-1-8 20:24:01] ---
[2019-1-8 20:24:01] this is alexa-fhem 0.3.4
[2019-1-8 20:24:01] Fetching FHEM devices...
[2019-1-8 20:24:01] [FHEM] starting longpoll: http://127.0.0.1:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1546975441444
[2019-1-8 20:24:01] Server listening on: https://:::3000
[2019-1-8 20:24:01] [FHEM] Checking devices and attributes...
[2019-1-8 20:24:01] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=%7BAttrVal(%22global%22,%22userattr%22,%22%22)%7D&XHR=1
[2019-1-8 20:24:01] [FHEM]   executing: http://127.0.0.1:8083/fhem?cmd=jsonlist2%20TYPE=ghome&XHR=1
[2019-1-8 20:24:01] [FHEM] Fetching FHEM devices...
[2019-1-8 20:24:01] [FHEM] fetching: http://127.0.0.1:8083/fhem?cmd=jsonlist2%20room=GoogleHome&XHR=1
[2019-1-8 20:24:01] [FHEM] got: 1 results
[2019-1-8 20:24:01] [FHEM] testlamp is switch
[2019-1-8 20:24:01] [FHEM] testlamp has


Mein Device hat ein folgendes list in Fhem:

Internals:
   NAME       testlamp
   NR         1237
   STATE      off
   TYPE       dummy
   READINGS:
     2019-01-08 20:17:33   state           off
Attributes:
   genericDeviceType switch
   room       GoogleHome,9.98_Alphatest


Über den Browser lässt sich https://xxxxx.ddns.net aufrufen (Schloss ist grün, Zertifikat wird also erkannt):


Cannot GET /


https://xxxxx.ddns.net/oauth:

response_type undefined must equal "code"


https://xxxxx.ddns.net/token


missing required parameter

Wo kann ich denn weiter prüfen bzw. habe ich irgendwo einen Denkfehler drin? Danke nochmals fürs drüberschauen!
If every day has its number, Monday would be a zero division.

dominik

Bitte schick mir eine kurze PN mit deiner gmail Adresse, dann schalte ich dich als Beta Tester frei. Das erspart mir den Support für die alte Version und hilft mir beim Testen :)
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

hermann1514

Hi,

habe die ghome App nun einmal auf meinem FHEM Server installiert und soweit alles laut Anleitung konfiguriert.
Sobald ich in der Google Home APp FHEM verbinden will, erscheint die Website mit dem Button Login - kann aber keine Zugangsdaten eingeben. Die Felder sind nicht vorhanden.
Klicke ich auf "login" erhalte ich

Error: No default engine was specified and no extension was provided.

Habe auch schon versucht die App unter einem anderen User laufen zu lassen - aber das gleiche Problem.
Wenn ich die Seite lokal aufrufe habe ich genau dasselbe Problem.

Jemand eine Idee?

Danke.
Gruß
Hermann

hermann1514

Hi.

Habe noch einmal alles kontrolliert. Beim bower install hat es wohl Probleme gegeben, da ich dieses als sudo ausgeführt habe. Nun habe ich es als normalen User ausgeführt und die Website usw. wird nun angezeigt.

Jedoch erhalte ich nach Eingabe des User und Passworts wieder die Google Home App Seite und der Account wurde nicht verbunden. Auch nach mehrmaligen Versuchen.

Wenn ich dieses im Browser versuche, erhalte ich die Meldung "authCode Failed".
Steht auch im LOG File.

Kennt jemand eine Lösung?

Danke.
Gruß
Hermann

SouzA

Zitat von: SouzA am 19 Oktober 2018, 23:15:40
Funktioniert... die Webseite wird nun komplett in der App angezeigt. Allerdings funktioniert der "Login"-Button nicht mehr. Keine Reaktion bei Betätigung.
Schritt für Schritt und langsam ernährt sich...  :o ;D

Denkfehler!! Man lösche den Browsercache! Dann funzt das auch mit den bower und images. OHNE das ändern in der html. Synchronisierung funktioniert. Geräte sind wieder da  ;D

Was definitiv nicht mehr funktioniert: reverse proxy. Sobald man den wieder davor schaltet funktioniert nichts mehr. Mit der alten Konfig sowie mit deiner beiden locations /ghome und /ghome/

Bis denn
SouzA

Browsercache löschen...

Bis denn
SouzA
Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

pattex

Hi,

ich bekomme aktuell mit der Google Home App 2.8.15.6 die Geräte nicht mehr angezeigt/hinzugefügt. Bei der Einrichtung sieht alles normal aus, nach Username/Passwort Bestätigung springt er wieder in die Providerübersicht und es sind keine Geräte hinzugefügt. Im Log vom ghome sehe ich eine erfolgreiche oauth Authentifizierung aber danach keinen Gerätelisten Request. Kann jemand noch dieses Verhalten bestätigen? Ich habe das Actions Projekt bereits neu erstellt.

Danke!

dominik

#143
Hi,
probier bitte mit dem aktuellen Beta Action ob du dort auch das Problem hast. Schick mir dazu einfach eine PN mit deiner gmail Adresse und ich schalte dich dafür frei.

Zur Info, ich habe die Anleitung zur Nutzung des FHEM Connect Google Assistant Actions hier im Wiki publiziert:
https://wiki.fhem.de/wiki/Google_Assistant_FHEM_Connect

Aktuell benötige ich noch eure gmail Adresse per PN damit ich euch freischalte, da der Action noch nicht offiziell published ist.

Gruß,
Dominik
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

pattex

Leider exakt das gleiche mit dem neuen Service.
Könnte denn mir jemand bestätigen, das das komplette neu hinzufügen einer Verbindung aktuell funktioniert? Nachher liegt das an Google ?!?

dominik

Ich habe gerade im Log geschaut und kein einziges SYNC die letzte Stunde gesehen - also auch nichts von Google empfangen. Habe es mit meinen Devices nochmals getestet, da funktioniert es.

Starte bitte nochmals fhemconnect neu, warte dann ca. 2 Minuten und verbinde dann FHEM Connector Beta in der Home App.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

hermann1514

Hi,

habe die Beta nun auch einmal installiert. Erst habe ich die ApErweiterung FHEM Connect im der Home App gar nicht  gesehen.
Nachdem ich in Google Action Website den Test für das Projekt aktiviert habe, konnte ich die [test] FHEM Connect sehen.

Sobald ich mich aber damit verbinden will, erscheint in einem Fenster kurz "Account is now linked", springt dann aber wieder zum Einrichtungsfenster in der Home App zurück. Es wurde dann auch nichts verbunden.

Im LOG der fhemconnect App sehe ich:

SYNC UPDATED RECEIVED: {"syncactive":1}
SYNC UPDATED RECEIVED: {"disconnected":0,"syncactive":1}
GOOGLE MSG RECEIVED: {"id":"1123423470178334575911","msg":"RELOAD_DEVICES"}
**** Received firestore2fhem: {"id":"114256734578334575911","msg":"RELOAD_DEVICES"}
SYNC UPDATED RECEIVED: {"disconnected":0,"syncactive":0}
SYNC UPDATED RECEIVED: {"disconnected":0,"syncactive":1}



Idee?

Gruß
Hermann


dominik

Hi,

bitte sicherstellen, dass das Device auch ein on/off als Command akzeptiert - erkennbar wenn es im FHEM Web als Auswahl angezeigt wird. Dazu muss zumindest setList "on off" gesetzt sein wenn man ein Dummy Device verwendet.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

hermann1514

Uiuiui.... Das war's.
Umgestellt und angemeldet und funktioniert.

Perfekt. Danke.

Nochmal eine doofe Frage: Wie kann ich das Programm den als daemon letzten lassen?
Genauso wie mit der gHome App?

Danke nochmals für das Modul und den tollen Support.

Gruß
Hermann

dominik

Aktuell ist es am einfachsten über systemd.

Es kommt aber noch eine Lösung direkt in FHEM, justme wird dazu den Alexa Starter für Google Assistant bereitstellen und dann läuft es automatisch.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik