39_gassistant.pm (Google Assistant, Google Home)

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

Vorheriges Thema - Nächstes Thema

dominik

Die Logik fuer die einzelnen Modes ist noch nicht perfekt. Aktuell wird die minimale Temperatur fuer off verwendet und hardcoded 21Grad fuer heizen.

Ich werde mir das nochmals genauer anschauen, damit man die Modes auch bei Bedarf selbst definieren kann.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

wk2000

Hallo allerseits,

was sind denn die nötigen Schritte um ein Device zu ändern?

- Brauche ich ein "Hey google syncronisiere Geräte"?
- Brauche ich ein gassistant reload?
- Brauche ich einfach nur 2 Minuten Geduld?

Hintergrund: Ich hatte mal eine Steckdose mit "genericDeviceTyp = switch" angebunden, jetzt hängt da ne Lampe dran und ich wollte das als "light" haben.
Ich habe jetzt einfach alles oben genannte gemacht nachdem ich das Attribut geändert habe und das hat funktioniert.

Aber brauche ich das wirklich alles tun?

dominik

Zitat von: a_quadrat am 22 Juni 2019, 23:23:41
Die Dunstabzugshaube hat 4 Stufen.

Die Woche sollte ich den FanSpeed Trait (https://developers.google.com/actions/smarthome/traits/fanspeed) fertig haben - in der Testumgebung kann ich bei meinem Ventilator die Stufen bereits regeln :)

Zitat von: wk2000 am 03 Juli 2019, 12:29:21
Hallo allerseits,

was sind denn die nötigen Schritte um ein Device zu ändern?

- Brauche ich ein "Hey google syncronisiere Geräte"?
- Brauche ich ein gassistant reload?
- Brauche ich einfach nur 2 Minuten Geduld?

Hintergrund: Ich hatte mal eine Steckdose mit "genericDeviceTyp = switch" angebunden, jetzt hängt da ne Lampe dran und ich wollte das als "light" haben.
Ich habe jetzt einfach alles oben genannte gemacht nachdem ich das Attribut geändert habe und das hat funktioniert.

Aber brauche ich das wirklich alles tun?

Nur reload und 2 Minuten warten, es dauert leider teilweise sehr lange bis die Home App refreshed. Manchmal hilft ein Home App Neustart um es zu beschleunigen.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

a_quadrat

Zitat von: dominik am 03 Juli 2019, 22:02:24
Die Woche sollte ich den FanSpeed Trait (https://developers.google.com/actions/smarthome/traits/fanspeed) fertig haben - in der Testumgebung kann ich bei meinem Ventilator die Stufen bereits regeln :)

Sehr schön  :).

Ich habe noch eine Frage zur Alarmanlage. Der Befehl, "deaktiviere Alarmanlage" ,ist das nicht etwas zu einfach? Eine Passwortabfrage gibt es noch nicht, oder?

VG Andreas

Chaos

Ahoi,
Zitat von: a_quadrat am 05 Juli 2019, 11:39:53
Sehr schön  :).

Ich habe noch eine Frage zur Alarmanlage. Der Befehl, "deaktiviere Alarmanlage" ,ist das nicht etwas zu einfach? Eine Passwortabfrage gibt es noch nicht, oder?

VG Andreas
das sollte der letzte Stand sein:
Zitat von: dominik am 03 Mai 2019, 19:51:51
Geplant ja, aber im Moment nicht Prio 1. Ich habe dazu auch ein paar Issues auf github gesehen, duerfte also noch nicht 100% funktionieren.

Hast du einen speziellen Use Case wo es Sinn macht? Ausser Tuerschloesser ist mir nicht viel eingefallen.
Auf Dominiks Liste. Deshalb bind ich meine Haustür auch noch nicht darüber ein ;-)

MfG
Manuel

dominik

#1010
Update FanSpeed
FanSpeed wird nun unterstützt, damit könnt ihr Geräte wie z.B. Ventilatoren (bei den aktuellen Temperaturen sehr hilfreich :) ) steuern.

Alle die homebridgeMapping verwenden, bitte ENTER als Trenner zwischen 2 Mappings verwenden und kein Leerzeichen.

Für FanSpeed müsst ihr ein homebridgeMapping im JSON Format hinterlegen (Beispiel):
Ventilator mit folgenden Commands:
set ventilator low
set ventilator mid
set ventilator high
Aktueller Status jeweils im state Reading

Das homebridgeMapping dazu:
FanSpeed={"reading": "state", "speeds": { "S1": { "cmd": "low", "value":"low", "synonyms": {"de": ["langsam", "stufe 1"], "en": ["slow", "speed 1"]}},"S2": { "cmd": "mid", "value":"mid", "synonyms": {"de": ["mittel", "stufe 2"], "en": ["medium", "speed 2"]}},"S3": { "cmd": "high", "value":"high","synonyms": {"de": ["maximum", "stufe 3"], "en": ["maximum", "speed 3"]}}}, "ordered": true, "reversible": false}

Formatierter Code zum besseren Verständnis
{
   "reading":"state",
   "speeds":{
      "S1":{
         "cmd":"low",
         "value":"low",
         "synonyms":{
            "de":[
               "langsam",
               "stufe 1"
            ],
            "en":[
               "slow",
               "speed 1"
            ]
         }
      },
      "S2":{
         "cmd":"mid",
         "value":"mid",
         "synonyms":{
            "de":[
               "mittel",
               "stufe 2"
            ],
            "en":[
               "medium",
               "speed 2"
            ]
         }
      },
      "S3":{
         "cmd":"high",
         "value":"high",
         "synonyms":{
            "de":[
               "maximum",
               "stufe 3"
            ],
            "en":[
               "maximum",
               "speed 3"
            ]
         }
      }
   },
   "ordered":true,
   "reversible":false
}


Achtung: Das JSON muss in einer Zeile eingegeben werden, also nicht mit Enter formatiert

Sprachbefehle für Ventilatoren:
- Hey Google, stelle den Ventilator auf langsam.
- Hey Google, stelle den Standventilator auf Maximum.

Sprachbefehle Xiaomi Vacuum:
- Hey Google, stelle den Lüfter von Saugroboter auf Maximum.

Für den Xiaomi Vacuum sind 3 Stufen automatisch hinterlegt:
- leise
- mittel
- maximum


Zur Nutzung bei eigenen Devices einfach das homebridgeMapping hinterlegen und dann ein reload machen. 2 Minuten warten, danach die Commands per Sprache ausprobieren.

Wenn es noch weitere Standardgeräte mit einem Ventilator gibt, dann baue ich das gerne ein, damit es auch ohne homebridgeMapping funktioniert. Bitte gebt mir Bescheid, wenn ihr solche Devices kennt/habt.

Bitte an alle die noch Version <2.0.0 nutzen auf 2.0.0 aktualisieren! sudo npm install -g gassistant-fhem --unsafe-perm
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

kotaro

Hallo,
seit heute Abend funktioniert mein Fhem Connect nicht mehr. ich habe mal auf die aktuelle Version in beiden Instanzen aktualisiert...
leider kommt in der Google home App, nach den trennen und wieder verbinden mit Fhem connect und ich den Google Account auswähle ganz kurz "unauthorized" und dann geht es zurück in die Home-App
leider habe ich nur noch ein gerät: Setup info: ....
kannst du mir weiterhelfe?
vorher ging es super

dominik

#1012
Hi,
nenne mir mal bitte die ersten und letzten 3 Stellen der gassistant-fhem-uid, dann schau ich mir das an. Steht was im gassistant-fhem-lastServerError?

//Edit
Falls du homebridgeMapping irgendwo verwendest, stell bitte sicher, dass diese immer durch ein ENTER und nicht durch ein LEERZEICHEN getrennt sind.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

kotaro

#1013
Hey;

ja ich hatte tatsächlich.. und das habe ich auch schon mal geändert. daher kommt dort jetzt keine Fehlermeldung mehr..

//Edit:
meine uid: 118**345

dominik

Hast du an den homebridgeMappings in letzter Zeit etwas geaendert? Kannst du mal die Mappings beim Device HM_WT_Schlafzimmer entfernen und nochmals probieren?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

kotaro

Zitat von: dominik am 07 Juli 2019, 10:06:08
Hast du an den homebridgeMappings in letzter Zeit etwas geaendert? Kannst du mal die Mappings beim Device HM_WT_Schlafzimmer entfernen und nochmals probieren?

Oh man. Tatsächlich. Dort war auch noch ein zusätzliches Leerzeichen versteckt... nach den umwandeln in ein Enter klappte... aber ich habe es erst jetzt geändert, nachdem du es mir gesagt hast. In der Vorherigen Version ging es ohne Probleme mit den Leerzeichen.. aber jetzt weiß ich um das Problem.

Vielen Dank für deine ganzen Mühen immer.

dominik

Super, danke für die Rückmeldung!

Genau, Leerzeichen kann ich aufgrund der FanSpeed Implementierung und weiterer Implementierungen, wo der User selbst definieren kann wie etwas heißen soll, in Zukunft nicht unterstützen.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

Zur Info und zur Vorfreude...

Timer und "2 Faktor Authentifizierung" (PIN Code) geht wahrscheinlich noch heute online :)

Folgendes ist dann moeglich:
- Starte den Ventilator fuer 2 Stunden
- Starte die Badezimmerlampe fuer 10 Sekunden ("Starte" klingt zwar bloed, aber funktioniert)
- Deaktiviere die Alarmanlage -> Sagst du mir bitte deinen Sicherheitscode? -> 1234 -> Klar, Alarmanlage wird deaktiviert.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

a_quadrat

Das hört sich gut an, ich bin schon gespannt  :).

dominik

Timer und PIN sind live

Bitte unbedingt gassistant-fhem 2.0.0 verwenden.

Timer:
Funktioniert bei allen Geräten die on-for-timer Funktionalität haben. Der Timer lässt sich nur starten, nicht verändern. Zum Testen einfach ein Geraet mit on-for-timer hinzufuegen und ein reload machen.
Kommandobeispiele:
- Hey Google, starte den Ventilator für eine Stunde.
- Hey Google, starte die Außenbeleuchtung für zwei Stunden.

PIN:
Muss explizit im homebridgeMapping gesetzt werden. Beispiel:
On=pin=1234 (bei on/off Geräten)
ArmDisarm=pin=1234 (bei Alarmanlagen)
Danach ein reload machen.
Kommandobeispiele:
- Deaktiviere die Alarmanlage -> PIN wird abgefragt -> 1234 -> Alarmanlage deaktiviert

Der PIN wird sich auf den gesamten Trait aus, bedeutet, dass auch das Aktivieren der Alarmanlage einen PIN erwartet. Ich ueberlege mir noch wie ich das konfigurierbar mache, damit es z.B. nur beim Deaktivieren abgefragt wird.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik