39_gassistant.pm (Google Assistant, Google Home)

Begonnen von dominik, 29 Januar 2019, 21:59:53

Vorheriges Thema - Nächstes Thema

dominik

Hi,

das ist nicht möglich, da Google (zum Glück aus Datenschutzsicht) nur die technische Information dazu schickt was zu tun ist.

Sieht dann bei einem ein-/ausschalten so aus:
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "inputs": [{
    "intent": "action.devices.EXECUTE",
    "payload": {
      "commands": [{
        "devices": [{
          "id": "456",
          "customData": {
            "fooValue": 36,
            "barValue": false,
            "bazValue": "moarsheep"
          }
        }],
        "execution": [{
          "command": "action.devices.commands.OnOff",
          "params": {
            "on": true
          }
        }]
      }]
    }
  }]
}
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Ma_Bo

Ok Schade...
Dann bleibe ich bei meinem Umweg von Google Home -> IFTTT -> io.Adafruit -> MQTT (Mosquitto) -> FHEM

Damit erhalte ich (wenn auch mit 1-3 Sekunden Verzögerung) mein gesprochenes als Text (Vorraussetzung ist ein wenig Bastelarbeit mit den Applets bei IFTTT), aber damit kann ich mir bisher jedes erdenkliche an FHEM als Text schicken lassen...

Grüße Marcel
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

dominik

Brauchst du den Text um bestimmte Befehle in FHEM auszufuehren? Wenn ja, dann sollten wir dazu eine Anfrage bzgl. neuer Geraete oder Funktionalitaeten bei Google einreichen. Wenn du mir ein Beispiel gibst, ueberlege ich mir das.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Ma_Bo

Also im Moment nutze ich z.B.

OK Google...

schalte... schalte den Fernseher ein

fahre... fahre alle Rollos zu

setze... setze Pudding auf die Einkaufsliste

schließe... schließe die Tür ab

ich bin... ich bin fertig mit duschen

welche... welche Mülltonne wird als nächstes abgeholt

was... was kostet der Diesel im Moment

wo... wo ist der Staubsauger

wann... wann wird der Müll abgeholt

sind... sind noch Fenster geöffnet

wer... wer hat demnächst Geburtstag

wie... wie warm ist es im Büro

sage Haussteuerung... <---- hier kann ich ja dann auf alles reagieren, wie ich es möchte

sage Fernseher... <---- hier kann ich ja dann auf alles reagieren, wie ich es möchte

frage Haussteuerung... <---- hier kann ich ja dann auf alles reagieren, wie ich es möchte
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

Ma_Bo

Ich habe das ganze über IFTTT so gemacht, dass ich auch per Reading angezeigt bekomme, von welchem Google Home Gerät der Befehl kommt und kann somit auch die Antwort per Sprachausgabe an das entsprechende Gerät geben...

Input:
Google Home -> IFTTT -> io.Adafruit -> MQTT -> FHEM

Output:
FHEM -> Nodered -> Google Home
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

dominik

Hi,

danke fuer deine ausfuehrliche Aufstellung. Hier meine Einschaetzung was geht und was nicht.

schalte... schalte den Fernseher ein
=> geht, sogar stelle den Fernseher auf ARD geht, mache Fernseher lauter/leiser geht in ein paar Tagen

fahre... fahre alle Rollos zu
=> geht

setze... setze Pudding auf die Einkaufsliste
=> nur in Verbindung mit Google Keep, ueber FHEM nicht moeglch

schließe... schließe die Tür ab
=> geht

ich bin... ich bin fertig mit duschen
=> als Routine in Google moeglich

welche... welche Mülltonne wird als nächstes abgeholt
=> im Moment nicht moeglich, du koenntest eine Routine draus machen und dann per GOOGLECAST Modul die Ausgabe am Google Home machen

was... was kostet der Diesel im Moment
=> im Moment nicht moeglich, du koenntest eine Routine draus machen und dann per GOOGLECAST Modul die Ausgabe am Google Home machen

wo... wo ist der Staubsauger
=> geht, inkl. Saugmodus setzen

wann... wann wird der Müll abgeholt
=> im Moment nicht moeglich, du koenntest eine Routine draus machen und dann per GOOGLECAST Modul die Ausgabe am Google Home machen

sind... sind noch Fenster geöffnet
=> geht, bzw erweitert: wie ist der Status der Alarmanlage. Da bekommst du dann Rueckmeldung zu allen Tueren/Fenstern die noch offen sind.

wer... wer hat demnächst Geburtstag
=> im Moment nicht moeglich, du koenntest eine Routine draus machen und dann per GOOGLECAST Modul die Ausgabe am Google Home machen

wie... wie warm ist es im Büro
=> geht
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Ma_Bo

Nächste Woche hab ich Urlaub, da werde ich mir das mit gassistant mal anschauen...
Danke für die Auflistung was geht und was nicht...

Bei den Routinen muss ich aber genau festlegen, was ich sage oder kann ich da auch festlegen "OK Google ich bin $text"
Hab mich mit Routinen usw. noch nie beschäftigt, weil das mit meinem Umweg mit IFTTT schon sehr lange läuft und funktioniert...
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

dominik

Gerne, wenn du dann Fragen hast, einfach melden.

Bei den Routinen musst du den Text 1:1 genau angeben den du sagst, leider besteht da keine Moeglichkeit per Platzhalter einen Text weiter zu reichen.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Raudi

Die Einrichtung bei meinem Vater hat super geklappt. Lediglich die Doorbird Torsteuerung kommt nicht direkt mit dem Gassistant klar. Was er gerne hätte, wäre das Schalten des Relais 1 (Zum Öffnen/Schließen des Tors) durch einen Sprachbefehl.

dominik

Poste das jsonlist2 von diesem Device, dann kann ich es integrieren.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Raudi

#1705
Zitat von: dominik am 10 April 2020, 13:29:47
Poste das jsonlist2 von diesem Device, dann kann ich es integrieren.
Das wäre natürlich perfekt. Dann muss ich das nicht mehr über einen Dummy und Notify machen, der das Relais "Open_Door 1" aktiviert, damit das Tor auf oder zu geht.
{
  "Arg":"Tor",
  "Results": [
  {
    "Name":"Tor",
    "PossibleSets":"Open_Door:1,2 OpsMode: Restart:noArg Transmit_Audio Receive_Audio Live_Video:on,off Light_On:noArg Live_Audio:on,off ",
    "PossibleAttrs":"alias comment:textField-long eventMap:textField-long group room suppressReading userReadings:textField-long verbose:0,1,2,3,4,5 do_not_notify:1,0 header PollingTimeout:slider,1,1,20 MaxHistory:slider,0,1,50 KeepAliveTimeout UdpPort:6524,35344 ImageFileDir AudioFileDir VideoFileDir VideoFileFormat:mpeg,mpg,mp4,avi,mov,dvd,vob,ogg,ogv,mkv,flv,webm VideoDurationDoorbell VideoDurationMotion VideoDurationKeypad EventReset SessionIdSec:slider,0,10,600 WaitForHistory OpsModeList disable:1,0 loglevel:slider,0,1,5 event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading assistantName:textField cmdIcon devStateIcon:textField-long devStateStyle gassistantName:textField genericDeviceType:ac_unit,aircondition,airfreshener,airpurifier,awning,bathtub,bed,blender,blinds,boiler,camera,charger,closet,coffee_maker,coffeemaker,cooktop,curtain,dehumidifier,dehydrator,dishwasher,door,drawer,dryer,fan,faucet,fireplace,fryer,garage,gate,grill,heater,hood,humidifier,kettle,light,lock,mop,mower,microwave,multicooker,outlet,oven,pergola,petfeeder,pressurecooker,radiator,refrigerator,scene,securitysystem,sensor,shutter,shower,sousvide,sprinkler,standmixer,switch,thermostat,vacuum,valve,washer,waterheater,window,yogurtmaker homebridgeMapping:textField-long icon realRoom:textField sortby webCmd webCmdLabel:textField-long widgetOverride userattr",
    "Internals": {
      "DEF": "192.168.178.79 crypt:****crypt:****",
      "FD": "4",
      "FUUID": "****",
      "NAME": "Tor",
      "NOTIFYDEV": "global,",
      "NR": "33",
      "NTFY_ORDER": "50-Tor",
      "RevisonAPI": "0.26",
      "STATE": "connected",
      "TYPE": "DoorBird",
      "reusePort": "1"
    },
    "Readings": {
      "BUILD_NUMBER": { "Value":"15825378", "Time":"2020-04-10 13:07:23" },
      "ContactLostSince": { "Value":"", "Time":"2020-04-10 13:31:28" },
      "DEVICE-TYPE": { "Value":"DoorBird D2101V", "Time":"2020-04-10 13:07:23" },
      "FIRMWARE": { "Value":"000124", "Time":"2020-04-10 13:07:23" },
      "Firmware-Status": { "Value":"up-to-date", "Time":"2020-04-10 13:07:24" },
      "RelayAddr_01": { "Value":"1", "Time":"2020-04-10 13:07:23" },
      "RelayAddr_02": { "Value":"2", "Time":"2020-04-10 13:07:23" },
      "SIP_ANC": { "Value":"1", "Time":"2020-04-10 13:07:24" },
      "SIP_AUTOCALL_DOORBELL_URL": { "Value":"", "Time":"2020-04-10 13:07:24" },
      "SIP_AUTOCALL_MOTIONSENSOR_URL": { "Value":"", "Time":"2020-04-10 13:07:24" },
      "SIP_CALL_TIME_LIMIT": { "Value":"180", "Time":"2020-04-10 13:07:24" },
      "SIP_DTMF": { "Value":"1", "Time":"2020-04-10 13:07:24" },
      "SIP_ENABLE": { "Value":"1", "Time":"2020-04-10 13:07:24" },
      "SIP_INCOMING_CALL_ENABLE": { "Value":"1", "Time":"2020-04-10 13:07:24" },
      "SIP_LASTERRORCODE": { "Value":"200", "Time":"2020-04-10 13:07:24" },
      "SIP_LASTERRORTEXT": { "Value":"OK", "Time":"2020-04-10 13:07:24" },
      "SIP_LIGHT_PASSCODE": { "Value":"123", "Time":"2020-04-10 13:07:24" },
      "SIP_MIC_VOLUME": { "Value":"33", "Time":"2020-04-10 13:07:24" },
      "SIP_PRIORITIZE_APP": { "Value":"1", "Time":"2020-04-10 13:07:24" },
      "SIP_REGISTER_AUTH_ID": { "Value":"", "Time":"2020-04-10 13:07:24" },
      "SIP_REGISTER_PASSWORD": { "Value":"****", "Time":"2020-04-10 13:07:24" },
      "SIP_REGISTER_URL": { "Value":"Fritz.box", "Time":"2020-04-10 13:07:24" },
      "SIP_REGISTER_USER": { "Value":"****", "Time":"2020-04-10 13:07:24" },
      "SIP_RELAIS_01": { "Value":"456", "Time":"2020-04-10 13:07:24" },
      "SIP_RELAIS_02": { "Value":"789", "Time":"2020-04-10 13:07:24" },
      "SIP_RING_TIME_LIMIT": { "Value":"180", "Time":"2020-04-10 13:07:24" },
      "SIP_SPK_VOLUME": { "Value":"70", "Time":"2020-04-10 13:07:24" },
      "WIFI_MAC_ADDR": { "Value":"****", "Time":"2020-04-10 13:07:23" },
      "motion_sensor": { "Value":"idle", "Time":"2020-04-10 13:31:29" },
      "motion_snapshot": { "Value":"/opt/fhem//20200410-133124_motionsensor.jpg", "Time":"2020-04-10 13:31:29" },
      "state": { "Value":"connected", "Time":"2020-04-10 13:31:29" }
    },
    "Attributes": { }
  }  ],
  "totalResultsReturned":1
}

dominik

Kannst du mir bitte noch helfen was welcher Befehl macht?
Open_Door 1
Sendet zum Relais1 ein öffnen, oder? Sieht man dann im Reading auch irgendwo den Status ob gerade das Relais zieht oder nicht?

Ich könnte mit einem anderen Befehl auch noch LiveVideo on/off senden oder Resatrt, das unterstützt Google auch. Wenn du mir alle sinnvollen Befehle beschreibst, bau ich dir diese ein.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Raudi

#1707
Zitat von: dominik am 10 April 2020, 14:18:50
Kannst du mir bitte noch helfen was welcher Befehl macht?
Open_Door 1
Sendet zum Relais1 ein öffnen, oder? Sieht man dann im Reading auch irgendwo den Status ob gerade das Relais zieht oder nicht?

Ich könnte mit einem anderen Befehl auch noch LiveVideo on/off senden oder Resatrt, das unterstützt Google auch. Wenn du mir alle sinnvollen Befehle beschreibst, bau ich dir diese ein.
Es ist eine Türsprechanlage mit Klingel, Bewegungsmelder, Audio und Video Übertragung usw. Die Torsteuerung an sich ist aber leider sehr dumm. Es gibt 2 Relais. Relais 1 öffnet und schließt das Tor. Relais 2 macht das Licht an. Die Anlage weiß leider nicht, ob das Ding gerade auf, zu, oder sonst was ist. Ist anscheinend ein stinknormaler Tor Motor, dem bei der ersten Einrichtung gesagt wurden, wie weit er fahren kann. Und statt mit einem Knopf auf einer Fernbedienung, kann man das halt auch über das Relais steuern. Finde ich auch sehr beschränkt.
Die restlichen Befehle beziehen sich glaube ich alle nur auf das übertragen/speichern von Audio/Video. Wäre natürlich sehr nett, wenn Audio und Video auch übertragen werden würden.

dominik

Passt folgendes? (Annahme dass das Device Tuer heisst)
Open_Door 1: oeffne die Tuer.
Open_Door 2: schalte das Licht der Tuer ein/aus
Restart: starte die Tuer neu (klingt komisch, aber wenn man es Tuersprechanlage nennt, klingen die anderen Befehle eigenartig...)
Live_Video on: schalte die Videouebertragung der Tuer ein (wird da auf einem anderen Device das Video im Haus gestartet?)
Live_Audio on: schalte die Audiouebertragung der Tuer ein (wird das auf einem anderen Device im Haus gestartet?)

Sollte das Video per Stream verfuegbar sein, koennte man das auch auf einen Chromecast uebertragen.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Raudi

Zitat von: dominik am 10 April 2020, 16:28:33
Passt folgendes? (Annahme dass das Device Tuer heisst)
Open_Door 1: oeffne die Tuer.
Open_Door 2: schalte das Licht der Tuer ein/aus
Restart: starte die Tuer neu (klingt komisch, aber wenn man es Tuersprechanlage nennt, klingen die anderen Befehle eigenartig...)
Live_Video on: schalte die Videouebertragung der Tuer ein (wird da auf einem anderen Device das Video im Haus gestartet?)
Live_Audio on: schalte die Audiouebertragung der Tuer ein (wird das auf einem anderen Device im Haus gestartet?)

Sollte das Video per Stream verfuegbar sein, koennte man das auch auf einen Chromecast uebertragen.
Den Restart habe ich noch nie benutzt. Wie genau das abläuft, kann ich nicht sagen. Sonst passt es im Grunde genommen.
Video und Audio werden nur per Stream übertragen. Wenn man z. B. live video über die web Oberfläche aktiviert, dann sieht man es direkt in der FHEM Web Oberfläche.