alexa-fhem: amazon alexa smart home skill für fhem, api version 3

Begonnen von justme1968, 19 Dezember 2017, 22:16:30

Vorheriges Thema - Nächstes Thema

justme1968

bitte schau dir mal die aktuelle version von GitHub an:

- das reading in fhem heisst nicht mehr personId sondern nur noch person

- du kannst im alexa device ein persons attribut anlegen um die id 'normalen' namen zuzuordnen.
  format wie bei echoRooms.
  du musst das attribut per userattr bekannt machen bis ich es ins modul eingebaut habe.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

cs-online

D.h. Wieder die server.js kopieren oder was muss ich machen ?
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

cs-online

FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

cs-online

#619
ähm, ich habe das personID- Reading von Hand gelöscht. Das person-Reading wird zwar angelegt, hat aber immer unknown als Inhalt und das ändert sich auch nicht (nicht mal kurz), egal ob ich den Skill starte oder eine Funktion aufrufe.

Das Userreading habe ich so angelegt:

attr MyAlexa userattr persons

und dann befüllt:

attr MyAlexa persons amzn1.ask.person.AHAWTLSCA7S6UULEKK3OJOCUVSEQZJFAZYSWMDZAEF2MOPI22AEM6O433GF24DV7HZGFGOIRRZNECHNJFZW7DP6XB47NXXXXXXXXXXX=Christian\
amzn1.ask.person.AHAWTLSCA7S6UULEKK3OJOCUVSEQZJFAZYSWMDZAEF2MOPI22AEM7GV3AOQIDVLLVUNQEJADH6ILDMGC2TY5LS3DV3GHXXXXXXXXXXXX=Tanja


Wieder die Datei von gestern zurück kopiert, wird die personID wieder gefüllt....

Aber eins verstehe ich auch nicht, bei den rooms ist das doch auch so, dass die echoID ausgegeben wird und dann über das echorooms-Attribut dann in das Reading echoRoom gemappt, warum machst du das bei der personID dann nicht auch so ? Ich frage, weil du schriebst, du hättest die personID in person umbenannt...
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

justme1968

es war noch ein copy&paste fehler drin. bitte noch mal probieren.

der grund ist das es wahrscheinlicher ist das du alle personen im mapping hast als das du alle echos drin hast und ich wollte nicht jedes mal all zu viele readings setzen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

cs-online

...wenn ich nicht wieder was falsch gemacht habe, dann ist hier leider ein Fehler drin:

2019.11.29 20:12:53 3: MyAlexa: starting
2019.11.29 20:12:53 3: MyAlexa: using logfile: Alexa.log
2019.11.29 20:12:54 5: MyAlexa: read: /usr/lib/node_modules/alexa-fhem/lib/server.js:1529
2019.11.29 20:12:54 5: MyAlexa: read:     if( this.personOfId[personId;
2019.11.29 20:12:54 5: MyAlexa: read:                                 ^
2019.11.29 20:12:54 5: MyAlexa: read:
2019.11.29 20:12:54 5: MyAlexa: read: SyntaxError: Unexpected token ;
2019.11.29 20:12:54 5: MyAlexa: read:     at createScript (vm.js:80:10)
2019.11.29 20:12:54 5: MyAlexa: read:     at Object.runInThisContext (vm.js:139:10)
2019.11.29 20:12:54 5: MyAlexa: read:     at Module._compile (module.js:617:28)
2019.11.29 20:12:54 5: MyAlexa: read:     at Object.Module._extensions..js (module.js:664:10)
2019.11.29 20:12:54 5: MyAlexa: read:     at Module.load (module.js:566:32)
2019.11.29 20:12:54 5: MyAlexa: read:     at tryModuleLoad (module.js:506:12)
2019.11.29 20:12:54 5: MyAlexa: read:     at Function.Module._load (module.js:498:3)
2019.11.29 20:12:54 5: MyAlexa: read:     at Module.require (module.js:597:17)
2019.11.29 20:12:54 5: MyAlexa: read:     at require (internal/module.js:11:18)
2019.11.29 20:12:54 5: MyAlexa: read:     at Object.<anonymous> (/usr/lib/node_modules/alexa-fhem/lib/cli.js:4:14)
2019.11.29 20:12:54 3: MyAlexa: read: end of file reached while sysread
2019.11.29 20:12:54 3: MyAlexa: stopped
2019.11.29 20:12:55 4: MyAlexa: last run duration was only 1 sec, restarting with delay


...ich habe nur die Server.js getauscht oder hätte ich noch andere Dateien tauschen müssen ? mit der alten geht's dann wieder...
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

cs-online

kein Problem, ich teste das gerne ;-) Also nun wird im Reading "person" wieder die personid (also das lange kriptische) eingetragen. Wenn ich dich aber richtig verstanden habe, sollte dort doch jetzt der Name der Stimme auftauchen, die im Attribut persons gemappt wurde oder ? Ich würde das schon sinnig finden, analog zum room beide Readings darzustellen, sonst wird das auch schwierig, aus dem Log die personID herauszusuchen. Mich stört das nicht, wenn ein Device ein paar mehr Readings hat...
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

volschin

#624
Ho zusammen,
Ich bin derzeit beim Ausbau meiner Routinen und habe gelesen, dass Kontakt und Bewegungssensoren als Trigger dienen können. Ich habe daher versucht, mal welche für Alexa sichtbar zu machen. Klappt aber bisher nicht.
Ich habe hier bisher auch noch nichts dazu gelesen, dass das mit Alexa-fhem geht. Ist das so?

Was möchte ich tun? Sowas hier:
https://www.baynado.de/blog/amazon/10-alexa-routinen-erstellen-die-spas-machen
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

volschin

Ich habe meinen Fehler entdeckt. Das schöne Feature ist nur verfügbar, wenn der Bewegungsmelder an einem Echo mit Hub direkt angelernt wird. Schade.[emoji853]
Intel NUC+Ubuntu 24.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7690, Echo Dots+Show8, HomeBridge

justme1968

#626
@cs-online: bist schau mal die ausgabe beim start an. da sollte etwas mit personOfId stehen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

justme1968

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

cs-online

Hi Andre,

jetzt klappt das, im person steht jetzt der Name drin. Sehr cool ! Wenn kein Mapping passt, wird dann die ID dort ausgegeben ? Was mir allerdings jetzt bei der Testerei aufgefallen ist: Seit dem wir das testen, kommt öfters mal direkt (also praktisch eine halbe Sekunde nach dem Aufruf) wenn man etwas mit dem Skill aufruft die Meldung: "Beim Aufruf des angeforderten Skills ist ein Problem aufgetreten". Nochmal probiert geht's dann. Ist aber auch nicht nachstellbar.

Erstmal super vielen Dank, ich werde das mal weiter ausbauen und testen und berichten.

Schönes Wochenende,

Grüße

Christian
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266/32 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20+S26,Shelly1/2/2.5, Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV+Speicher, alles auf einem RPI und da geht noch mehr

justme1968

ja genau. wenn keine name gefunden wird steht die id im reading.

schau mal ins log wenn die fehlermeldung kommt.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968