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

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

Vorheriges Thema - Nächstes Thema

FEHMPiDi

Achso,

Hat vielleicht jemand eine Idee wie ich bei mir weiter kommen kann? Ich versteh immer noch nicht wieso mein Staubsauger nicht startet. Ich vermute das Problem liegt daran das Ghome das Kommando on verwendet, der Staubsauger aber das Kommando Start erwartet.

Bei dem rbg Mi-light habe ich keine Idee woran es liegen kann.

Danke und guten Rutsch



Gesendet von meinem VTR-L09 mit Tapatalk

FHEM5.7@RaspPi.3|NanoCUL868-HM|NanoCUL868-Max|SDuino|DS18B20|1xHM-Sen-MDIR-WM55|   
2xHM-LC-Sw1PBU-FM|HM-LC-SW4-DR|I2C_MCP23017|2xMAX-ShutterContact|11xHM-LC-Bl1PBU-FM|CTW600|VCONTROL|1xHM-Sen-MDIR-O|2xMilight

SouzA

#121
Hi,
Ich glaube, dein Schlagwort für den Staubsauger ist Homebridgemapping.
Für Alexa und Siri gibt es dafür Beispiele.
Allerdings weiß ich nicht 100%tig, ob die auch komplett von ghome unterstützt werden. Dominik arbeitet ja darauf hin, dass keine Mappings verwendet werden müssen.
Ich weiß zZ nicht woraus ghome die Möglichkeiten des Devices zieht. Ggf vll noch aus der setlist...

Einen Versuch ist es dennoch wert. Ich kann mich entsinnen, mit dem Mapping auch schon gespielt zu haben.

Bis denn
SouzA

Anbei mal eine Definition von einem RGB-Device von mir.
Dies lässt sich per Sprache an/aus/dim/farbe steuern.

defmod ku_LED_auf_Schrank_color HUEDevice 6  IODev=HUEBridge
attr ku_LED_auf_Schrank_color userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr ku_LED_auf_Schrank_color IODev HUEBridge
attr ku_LED_auf_Schrank_color alias Schrankbeleuchtung Farbe
attr ku_LED_auf_Schrank_color color-icons 2
attr ku_LED_auf_Schrank_color devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr ku_LED_auf_Schrank_color group Beleuchtung Wozi/Küche
attr ku_LED_auf_Schrank_color icon light_led_stripe_rgb
attr ku_LED_auf_Schrank_color model FLS-PP3
attr ku_LED_auf_Schrank_color realRoom Küche
attr ku_LED_auf_Schrank_color room GoogleHome,HUEBridge,Küche
attr ku_LED_auf_Schrank_color subType extcolordimmer
attr ku_LED_auf_Schrank_color webCmd rgb:rgb ff0000:rgb DEFF26:rgb 0000ff:ct 490:ct 380:ct 270:ct 160:toggle:on:off
Raspi 4, EnOcean TCM310 USB, HM-MOD-UART-USB, Jeelink, hue, AMAD, fully, FRITZBOX, Signalbot, VIERA, Presence BT/Mac, TPLink, Gassistant, Shelly, fhempy, ZigBee

Chaos

Hi,

Zitat von: SouzA am 31 Dezember 2018, 00:53:23
Gar nicht, das war aus dem log von chaos...  ;D

[2018-12-22 10:34:04] [FHEM] Please add undefined to a room in FHEM.
/opt/ghome-fhem/lib/server.js:220
    device.ghomeName = device.ghomeName.replace(/\+/g, ' ');
                                       ^

TypeError: Cannot read property 'replace' of undefined


mir war auch nicht klar, dass das ne Antwort auf meine Frage war :-D
Unsorted hab ich nicht und ein Device namens undefined auch nicht ;-)

ghome läuft wunderbar, einzig nach nem "shutdown restart" vom fhem muss ich manuell den ghome Dienst neustarten, da er den o.g. Fehler bringt und nicht mehr funktioniert.

MfG
Manuel

dominik

Der Xiaomi Vacuum benötigt keine homebridgeMappings und auch keinen genericDeviceType. Das wird automatisch erkannt.

Bitte generell immer zuerst OHNE homebridgeMapping und genericDeviceType die Geräte testen. Erst wenn dann nichts geht, könnt ihr beides einrichten. Wenn es danach läuft, gebt mir bitte Bescheid, dann baue ich das im Code ein damit weitere User kein Einstellungen mehr treffen müssen.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

kadettilac89

Zitat von: Chaos am 31 Dezember 2018, 11:41:53
Hi,

mir war auch nicht klar, dass das ne Antwort auf meine Frage war :-D
Unsorted hab ich nicht und ein Device namens undefined auch nicht ;-)

ghome läuft wunderbar, einzig nach nem "shutdown restart" vom fhem muss ich manuell den ghome Dienst neustarten, da er den o.g. Fehler bringt und nicht mehr funktioniert.

MfG
Manuel

Fehler suchen hat natürlich Vorrang, du schreibst, du musst den Dienst neu starten nach Fhem reboot ...

Teste mal und ändere mal das systemd-script mit den u. g. 2 Zeilen ab ... damit wird der Dienst automatisch neu gestartet wenn er crasht. Du hast aber eine Fehlermeldung im Log. RestartSec ... verzögert den Dienst etwas damit fhem auch sicher online ist.

nano /lib/systemd/system/ghome.service

Restart=always   <-- Restart=on-failure muss dafür raus
RestartSec=2      <-- neu


Nach der Änderung noch ein "sudo systemctl daemon-reload" auf der Console ausführen.

dominik

Zur Info, es dürfte in nächster Zeit ein paar sehr interessante neue Traits und Device Typen geben die Google zukünftig unterstützt.

Zitat
Hi,
There is no support or documentation, but some traits and devices already exists :

action.devices.traits.OpenClose

action.devices.traits.UpDown

action.devices.traits.LockUnlock

action.devices.traits.ArmDisarm

action.devices.traits.Sensor

action.devices.traits.SensorState

action.devices.traits.Fill

action.devices.types.BLINDS

action.devices.types.DOOR

action.devices.types.GATE

action.devices.types.WINDOW

action.devices.types.LOCK

action.devices.types.SECURITYSYSTEM

action.devices.types.SENSOR

action.devices.types.BATHTUB

action.devices.types.CLOCK

action.devices.types.DOORBELL

action.devices.types.HUMIDIFIER

action.devices.types.DEHUMIDIFIER
Gerade auf github entdeckt :)
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

SouzA

Sehr cool,
Endlich Rolläden!  8)

Was meinen die mit traits?

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

dominik

Traits sind die Funktionen die man den Devices zuordnen kann. Z.B. Ein-/Ausschalten, Rauf-/Runter, Oeffnen/Schliessen, usw.. Ist eigentlich das, was man beim Assistenten als Funktion sagt. Der Geraetetyp ist bei Google fast nebensaechlich. Dient nur dazu, dass ein anderes Symbol in der Home App angezeigt wird und man die Devices auch ohne Namen ansprechen mit deren Typ (Licht, Geraet, Rolladen, Staubsauger, etc.) ansprechen kann.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Chaos

Hi,
Zitat von: kadettilac89 am 31 Dezember 2018, 12:09:18
Fehler suchen hat natürlich Vorrang, du schreibst, du musst den Dienst neu starten nach Fhem reboot ...

Teste mal und ändere mal das systemd-script mit den u. g. 2 Zeilen ab ... damit wird der Dienst automatisch neu gestartet wenn er crasht. Du hast aber eine Fehlermeldung im Log. RestartSec ... verzögert den Dienst etwas damit fhem auch sicher online ist.

nano /lib/systemd/system/ghome.service

Restart=always   <-- Restart=on-failure muss dafür raus
RestartSec=2      <-- neu


Nach der Änderung noch ein "sudo systemctl daemon-reload" auf der Console ausführen.

Gute Idee. Hab den Dienst jetzt mal auf systemd umgestellt (ohne restart=always) denn das war vorher noch init. Dabei fiel mir aber auf, dass da noch ein ghome prozess im Hintergrund lief, den ich mal manuell gestartet hab.
Über systemd gestarted blieb er jetzt zumindest laut Log auch nach fhem restart fehlerlos. Denke das Problem ist damit gelöst.

Danke Manuel

vbs

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?

kadettilac89

#130
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?

Habe mich vor einer Weile selber geärgert, habe dann letztendlich einen Chromecast für Spotify gekauft. Scheinbar damit auch der eigene Chromecast verkauft werden kann. Aus Marketing Sicht ist es nachvollziehbar wenn damit das eigene Produkt unnötig würde (sowohl Chromecast als auch google music).

edit: ach ja .... je nach Anwendung, Logitec Hub geht scheinbar mit Google Home, vielleicht als Workaround brauchbar

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?

Ich glaub das geht nur für Google Cast Geräte und das dürfte auch die Strategie von Google sein das bislang nicht für weitere Geräte anzubieten. Zumindest beim Chromecast und Google Home kann ich diese Kommandos sagen.

Aktuell nutze ich bei mir die Helligkeitsregelung für Volume. Start/Stop könnte man noch über das Start/Stop Trait implementieren, da geht dann sogar Pause. Vor und Zurück wäre noch über Modes umsetzbar und dann im Google Assistant einen Shortcut setzen "Spiele das nächste Lied" => "Stelle den Lautsprecher Modus auf next" oder so ähnlich.

Oder man streamt vom Home auf ein Bluetooth Gerät, dann geht es out of the Box. Weitere Möglichkeit ist noch ein Chromecast Audio.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Badflex

Hi, im Moment habe ich noch alexa im Einsatz, aber sobald das Google Assistupdate für meine Sonos one kommt will ich das hier natürlich auch mal testen.
Habe gerade vom vorherigen alexa selber bauen skill zum alexa fhemlazy geändert. Der kommt mit einem offiziellen Skill und einem super installer.
Lange Rede kurzer Sinn.
Wird es für den google Assistent auch mal so ein sikll/installer geben? Ist ja ähnlich!
Raspberry Pi, CUL868(SlowRF), FB 7490, SmartVisu, fast nur HomeMatic wenig FS20, Netatmo

kadettilac89



Zitat von: Badflex am 04 Januar 2019, 22:10:59

Wird es für den google Assistent auch mal so ein sikll/installer geben? Ist ja ähnlich!

Dominik arbeitet aktuell an was ähnlichem.


gvzdus

Ja. Ist ein anderer Ansatz, aber es wird auch funktionieren, habe ich selber testen können.
Alles wird gut :-)