39_gassistant.pm (Google Assistant, Google Home)

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

Vorheriges Thema - Nächstes Thema

dominik

Aus welchen Grund moechtest du einen dummy statt des originalen Devices? Ich moechte es den Leuten immer so einfach wie moeglich machen und daher ist es mir immer lieber Devices zu unterstuetzen statt ueber dummys zu arbeiten.

Wenn du dennoch den dummy nutzen moechtest, probier es mal mit 2 Readings:
temperature (IST)
desiredTemperature (SOLL)

Danach sollte es als Thermostat erkannt werden.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

MarvinLu

#1126
Grund ist einfach nur der, dass ich Ist- und Soll-Temperatur von verschiedenen Geräten beziehe und die in verschiedene Dinge eingebunden sind.
Da ist es das einfachste einen Dummy anzulegen der dann alles in der gHome Oberfläche steuert.

Vielen Dank für die Hilfe, werde ich morgen früh direkt ändern. Schön, dass es so einfach ist :-))

Edit:
Klasse, es funktioniert!
Wenn es jetzt noch eine Möglichkeit gäbe, dass das Google Thermostat nicht voreingestellt 18.5 grad vorgibt sondern den desired-wert übernimmt bin ich wunschlos glücklich.. Hast du bzw. hat da jemand schon eine Lösung für gefunden?

Liebe Grüße, Marvin

Larusso

Hallo zusammen,

ich habe gerade den gassistant eingerichtet und scheitere leider an der LoginURL

gassistantFHEM.loginURL

auch nachdem ich meinen benutzernamen und mein passwort von meiner web fhem instanz angelegt habe bekomme ich nicht den link. iIn der Raspberry Konsole bekomme ich bei dem Aufruf aus dem Wiki :"gassistant-fhem" folgende Fehlermeldung:

fhem-connect: ../deps/uv/src/unix/core.c:168: uv_close: Assertion `0' failed.
Abgebrochen


Komischerweise habe ich auf meinem zweiten Raspberry wo ich ein Testsystem von fhem laufen habe nach basic auth direkt den link bekommen. Da aber mein Hauptsystem schon ziemlich groß ist und viel am Debian installiert wurde kann ich nicht einfach mein Testsystem nehmen und dieses über ein Backup vom Hauptsystem nutzen. Wäre super wenn mir jemand bei dem Fehler weiter helfen kann.
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

dominik

@MarvinLu, der Soll Wert wird automatisch aus desiredTemperature genommen. 18.5 klingt eigenartig, das kommt nicht von Google. Hast du im Reading auch wirklich nur die Temperatur stehen und kein Grad Zeichen oder aehnliches?

@Larusso, der Fehler ist mir neu. Ich habe mal gegoogelt und konnte zumindest einige aehnliche Fehler finden, jedoch noch keine Loesung. Welche nodejs Version nutzt du?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Larusso

#1129
Hallo dominik,

bin in der Zwischenzeit ein bisschen weiter gekommen, node war uralt V4... nun habe ich alle was npm angeht auf aktuellen stand gebracht und nochmal update und upgrade gemacht. hier meine npm und node version:

pi@raspberrypi:~ $ npm -v
6.10.3
pi@raspberrypi:~ $ node -v
v10.16.2


von der Version her bin ich auf dem gleichen Stand wie mein Test Raspberry, jetzt kommt der Folgefehler....

pi@raspberrypi:~ $ gassistant-fhem
Loading cli.js...
Loading version.js...
Loading server.js...
Loading user.js...
Loading logger.js...
Loading fhem.js...
Loading database.js...
/usr/local/lib/node_modules/gassistant-fhem/node_modules/vm2/lib/main.js:451
                        throw this._internal.Decontextify.value(e);
                        ^

Error: Failed to load gRPC binary module because it was not installed for the current system
Expected directory: node-v64-linux-arm-glibc
Found: [node-v48-linux-arm-glibc]
This problem can often be fixed by running "npm rebuild" on the current system
Original error: Cannot find module '/usr/local/lib/node_modules/gassistant-fhem/node_modules/grpc/src/node/extension_binary/node-v64-linux-arm-glibc/grpc_node.node'
    at Object.<anonymous> (/usr/local/lib/node_modules/gassistant-fhem/node_modules/grpc/src/grpc_extension.js:53:17)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/usr/local/lib/node_modules/gassistant-fhem/node_modules/grpc/src/client_interceptors.js:144:12)
    at Module._compile (internal/modules/cjs/loader.js:778:30)



jetzt bräuchte ich nochmal Unterstützung, ich denke aus dem Log bekommt man ein bisschen mehr Infos als aus dem letzten Fehler. Ich versuche parallel zum Forum weiter zu kommen aber denke hier benötige ich Hilfe.

npm rebuilt habe ich schon laufen lassen und auch gRPC habe ich installiert, leider ohne Erfolg.......Ach ja den Raspberry habe ich nach den Updates und Installationen logischerweise immer mit sudo reboot neu gestartet.......
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

Larusso

So Problem gelöst, Nachdem ich die node auf neuen stand gebracht hatte musste ich noch im Verzeichniss cd /usr/local/lib/node_modules/ ein rebuilt ausführen dann lief alles

sudo npm rebuild --unsafe-perm
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

MarvinLu

Zitat von: dominik am 15 August 2019, 08:57:02
@MarvinLu, der Soll Wert wird automatisch aus desiredTemperature genommen. 18.5 klingt eigenartig, das kommt nicht von Google. Hast du im Reading auch wirklich nur die Temperatur stehen und kein Grad Zeichen oder aehnliches?

Hallo Dominik,
aus den 18.5 Grad sind jetzt 23 geworden..
Ein Gradzeichen habe ich nicht im Reading, siehe unten.

Mein Dummy-Thermostat:
Internals:
   FUUID      5d505c92-f33f-dc26-aa21-1850be6ef8e8d458
   NAME       thermostat_SZ
   NR         143
   STATE      21.7 °C
   TYPE       dummy
   READINGS:
     2019-08-16 10:43:33   desiredTemperature 22
     2019-08-16 10:43:51   temperature     21.7
Attributes:
   genericDeviceType thermostat
   group      Heizung
   icon       sani_heating
   readingList temperature desiredTemperature
   realRoom   Schlafzimmer
   room       2_Schlafzimmer,GoogleAssistant
   setList    desiredTemperature:slider,5,0.5,30,1
   stateFormat {sprintf("%.1f"." °C",ReadingsVal("thermostat_SZ","temperature",1))}
   webCmd     desiredTemperature


Sobald ich die Home-App einmal neustarte, erscheint als desired-Wert 23 Grad. Mein Dummy jedoch bleibt bei der vorher definierten Temperatur.
Sobald ich dann über die App die Soll-Temperatur verändere, wird das auch in fhem korrekt erkannt und an den PID weitergegeben..
Wenn ich allerdings den Soll-Wert im Dummy-Thermostat verändere, passiert in der Anzeige der App erstmal garnichts. Starte ich dann die App neu, steht sie wieder auf 23 Grad..

Im Logfile taucht auch kein Fehler oder derartiges auf.

Liebe Grüße, Marvin

Falkenstein

Hallo...

Kann mal jemand eine Beispiel Config von der gassistant-fhem.cfg hier einstellen,zur Unterstützung mehrerer FHEM Instanzen.Ich würde das sehr gern nutzen wollen.Ich habe in der Suche leider nichts gefunden...vielleicht aber auch überlesen.

Schon mal vielen dank im voraus,

Beste Grüße
Falkes

TL60

@Falkenstein
siehe mal meine Antwort 1024 vom 08.07.19. Die da gepostete cfg sollte eigentlich, nachdem Dominik das gassistant Modul entsprechend erweitert hat, so funktionieren.
Du kannst ja mal vergleichen:
{
   "connections" : [
      {
         "name" : "FHEM",
         "webname" : "fhem",
         "filter" : "room=GoogleAssistant",
         "port" : "8083",
         "server" : "127.0.0.1"                   
      },
  {
         "name" : "FHEM",
         "webname" : "fhem",
         "filter" : "room=GoogleAssistant",
         "port" : "8083",
         "server" : "192.168.178.20"
      },
  {
         "name" : "FHEM",
         "webname" : "fhem",
         "filter" : "room=GoogleAssistant",
         "port" : "8083",
         "server" : "192.168.178.137"
      }
   ],
   "gassistant" : {
      "description" : "FHEM Connect"
   }
}

das ist meine aktuelle cfg rennt seid mehreren Wochen problemlos.
Grüße Thomas

Falkenstein

Oh...das hab ich glatt übersehen. :o Vielen dank Thomas,das hilft mir voll und ganz  :)

Beste Grüße
Falkes

TL60


bc-hagbard

Hallo,

mein FHEM läuft unter Windows.
Lässt sich das Modul auch unter Windows installieren?
Wüsste nicht wie und habe bisher nur Anleitungen gesehen, die das Linux Paket installieren.

Danke!
FHEM,Win,RasPi4,HM CULv3
BSB-LPB-LAN,LMU64,ArduinoMega
GardenaBridge,Google Home

Jutis001

#1137
Hallo Dominik,

ein tolles Feature, dieses Modul. Es läuft jetzt perfekt mit meinen HomeMatic-Geräten.

Zwei allgemeine Fragen:

Ist geplant, auch die Luftfeuchtigkeit in die Abfragen zu integrieren? Für mich wäre das ein Mehrwert. Abfragen kann ich das ja sogar über Google. Es sind eben nur immer 0%, was nicht richtig ist ;)

Kann ich auch Nachrichten aus FHEM an Google übergeben, so dass die Google Minis das wiedergeben?

Viele Grüße
Jonas

MarvinLu

Hallo Jonas,

wie hast du denn das Hygrometer in fhem integriert, damit es zumindest mit 0% rel. Luftfeuchtigkeit angezeigt wird?

Ich hab's über ein Dummy mit genericDeviceType HumiditySensor und dem Reading CurrentRelativeHumidity versucht, aber leider wird es nichtmal in gHome angezeigt..

Quelle: Stefans-ITBlog (https://stefans-itblog.de/liste-der-genericdevicetype-fuer-fhem/)

Liebe Grüße, Marvin

SouzA

Mahlzeit,
Ich hätte da gerne auch noch eine Auffälligkeit.
Seit zwei Tagen sagt mir bei dem Befehl:"Schalte Steckdose XY aus/ein." die Antwort:"Sorry, I didn't get any response."
Der Schaltvorgang wird aber immer korrekt ausgeführt.
Es handelt sich bei mir um Zwei Steckdosen.
In der App werden die An/Aus Zustände korrekt angezeigt.
Alle anderen Komponenten im Haus haben das "response-Problem" nicht.

Weiterhin ist mir aufgefallen, dass manchmal beim schalten Licht nur noch ein "ding" als Meldung von Google kommt.
Oftmals aber "Ich schalte Licht XY ein/aus"...
Kriegt man das irgendwie komplett auf die Rückmeldung "ding".

Vielen Dank und 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