Hallo zusammen,
(Hinweis: alter Thread, aber leider immer noch aktuell - Update s. https://forum.fhem.de/index.php/topic,114573.msg1181010.html#msg1181010)
ich erweitere meine Gehversuche gerade in Richtung Alexa-Integration und scheitere in der Anleitung https://wiki.fhem.de/wiki/FHEM_Connector_f%C3%BCr_Amazon_Alexa (https://wiki.fhem.de/wiki/FHEM_Connector_f%C3%BCr_Amazon_Alexa) bereits kurz nach der Erstellung des Devices: statt Tokens etc. bekomme ich nur
STATE stopped; alexa-fhem not installed. install with 'sudo npm install -g alexa-fhem'.
Ich hatte zu meinen FHEM-Anfangszeiten (glaube ich) schon mal damit herumgespielt, das alles aber nicht weiter verfolgt. Die Lektüre diverser Threads hier haben mich veranlasst, alles nach eventuellen Überresten zu durchsuchen und diese zu beseitigen.
Aktueller Status:
- Hardware: Raspi 3
- Debian Buster (10.4)
- alle Updates installiert (keine Fehlermeldungen bzgl. fehlender Abhängigkeiten etc. vorhanden)
- mein Test-Device aus FHEM gelöscht
- FHEM auf den aktuellsten Stand gebracht
- alles, was mit "alexa" zu tun hat und von früheren Versuchen stammen könnte, eliminiert. Das da bleibt dann noch übrig:
root@smarthome.local:smarthome# find / -name "*alexa*"
/opt/fhem/FHEM/39_alexa.pm
/opt/fhem/restoreDir/2018-08-23/FHEM/39_alexa.pm
/opt/fhem/restoreDir/update/2020-09-12/FHEM/39_alexa.pm
/opt/fhem/www/images/fhemSVG/alexa.svg
/opt/fhem/www/images/fhemSVG/alexa2.svg
- nodeJS neu installiert und sudo npm install -g alexa-fhem ausgeführt: läuft ohne erkennbare Fehler durch, danach gibt's neue Ordner unter /usr/local/lib/node_modules/alexa-fhem
- node --version gibt v12.14.0 aus
- /opt/fhem/alexa-fhem.cfg (wird ebenfalls mit aktuellem Zeitstempel neu erstellt):
{
"connections" : [
{
"port" : "8083",
"server" : "127.0.0.1",
"name" : "FHEM",
"filter" : "alexaName=..*",
"webname" : "fhem",
"uid" : 999
}
],
"sshproxy" : {
"description" : "FHEM Connector",
"ssh" : "/usr/bin/ssh"
}
}
Dann erhalte ich die Device-Übersicht mit dem o.g. Status.
sudo npm install -g alexa-fhem kann ich ausführen so oft ich will, das ändert (erwartungsgemäß) nix.
Ich habe keine Idee mehr, was ich noch versuchen könnte, um der Lösung auf die Spur zu kommen und würde mich über ein paar zielführende Hinweise freuen!
Vielen Dank schon mal,
Matze
Nachtrag:
Das Device liefert diese Werte als "Internals":
CFGFN
FUUID 5f705d99-f33f-46a8-1bd0-33abe327073ad341
FVERSION 39_alexa.pm:0.216510/2020-04-12
NAME myAlexa
NOTIFYDEV global,global:npmjs.*alexa-fhem.*
NR 676
NTFY_ORDER 50-myAlexa
STATE stopped; alexa-fhem not installed. install with 'sudo npm install -g alexa-fhem'.
TYPE alexa
logfile ./log/alexa-%Y-%m-%d.log
Hi, Hier schon gelesen? vielleicht hilfts:
https://forum.fhem.de/index.php?topic=97870.0 (https://forum.fhem.de/index.php?topic=97870.0)
oder
https://forum.fhem.de/index.php?topic=104337.0 (https://forum.fhem.de/index.php?topic=104337.0)
Vielen Dank - die Links haben sich bisher noch meiner Aufmerksamkeit entzogen ::)
Ich fasse hier mal meine weiteren Erkenntnisse zu den dort genannten Vorschlägen zusammen (auch für mich selbst zur Dokumentation):
root@smarthome.local:smarthome# sudo id
uid=0(root) gid=0(root) groups=0(root)
root@smarthome.local:smarthome# node --version
v12.14.0
root@smarthome.local:smarthome# npm --version
6.14.8
alexa-fhem wurde nach /usr/local/lib/node_modules installiert, das binary liegt in /usr/local/lib/node_modules/alexa-fhem/bin (wobei das kein Binary ist, sondern ein Skript)
in /usr/local/bin gibt's ne Verknüpfung:
lrwxrwxrwx 1 root staff 40 Sep 27 11:28 alexa-fhem -> ../lib/node_modules/alexa-fhem/bin/alexa*
attr myAlexa alexaFHEM-cmd /usr/local/lib/node_modules/alexa-fhem/bin/alexa
attr myAlexa alexaFHEM-config /opt/fhem/alexa-fhem.cfg
...führen schon mal dazu, dass der ursprüngliche Fehler nicht mehr kommt.
Allerdings ist jetzt STATE=stopped :-(
das fhem.log sagt:
2020.09.30 18:22:17 2: myAlexa: starting alexa-fhem: /usr/local/lib/node_modules/alexa-fhem/bin/alexa -c /opt/fhem/alexa-fhem.cfg
2020.09.30 18:22:17 3: myAlexa: starting
2020.09.30 18:22:17 3: myAlexa: using logfile: ./log/alexa-2020-09-30.log
2020.09.30 18:22:17 3: myAlexa: read: end of file reached while sysread
2020.09.30 18:22:17 3: myAlexa: stopped
und in der alexaFHEM.log steht für jeden Startversuch:
/usr/local/lib/node_modules/alexa-fhem/lib/cli.js:15
let startupPromise = new Promise(function (resolve) {
^^^
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/usr/local/lib/node_modules/alexa-fhem/bin/alexa:17:1)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
Ich hab das Gefühl, dass die Lösung nicht mehr weit entfernt ist...
scheint ein node versionsproblem zu sein:
https://github.com/tj/connect-redis/issues/245 (https://github.com/tj/connect-redis/issues/245)
https://github.com/JeffreyWay/laravel-mix/issues/264 (https://github.com/JeffreyWay/laravel-mix/issues/264)
Hi,
Zitat von: mr_petz am 30 September 2020, 18:50:18
scheint ein node versionsproblem zu sein:
Danke für den Hinweis - aber was bedeutet das für mich jetzt? Da steht ziemlich viel Fach-Chinesisch drin :-[
Ich hab inzwischen
root@smarthome.local:smarthome# node --version
v12.18.4
root@smarthome.local:smarthome# npm --version
6.14.6
...am Ergebnis ändert sich da aber nix. Ich bin also weiterhin für Lösungsvorschläge offen 8)
Kann dir da leider auch nicht helfen. sorry
Hallo zusammen,
ich bin so frei und bringe mein Thema nochmal nach oben :) Jetzt wird's wieder kälter draußen und da kommen die verdrängten Themen wieder hoch!
Aktueller Stand:
Inzwischen wurde mein Raspi auf Debian 11.1 (bullseye) aktualisiert, Alexa läuft aber immer noch nicht.
root@smarthome.local:smarthome# npm --version
6.14.6
root@smarthome.local:smarthome# node --version
v12.18.4
Die Meldung in /opt/fhem/log/alexa-xxxxxx.log ist immer noch:
SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/usr/local/lib/node_modules/alexa-fhem/bin/alexa:17:1)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
/usr/local/lib/node_modules/alexa-fhem/lib/cli.js:15
let startupPromise = new Promise(function (resolve) {
^^^
... und "list myAlexa" sieht so aus:
Internals:
FUUID 5f705d99-f33f-46a8-1bd0-33abe327073ad341
FVERSION 39_alexa.pm:0.238200/2021-02-24
LAST_START 2021-10-20 15:21:01
LAST_STOP 2021-10-20 15:21:01
NAME myAlexa
NOTIFYDEV global,global:npmjs.*alexa-fhem.*
NR 117
NTFY_ORDER 50-myAlexa
PARTIAL
STARTS 1157
STATE stopped
TYPE alexa
logfile ./log/alexa-%Y-%m-%d.log
CoProcess:
cmdFn alexa_getCMD
name alexaFHEM
state stopped
READINGS:
2021-10-20 15:21:01 alexaFHEM stopped
helper:
Attributes:
alexaFHEM-auth crypt:5e095359425d530c730c5c591253760710
alexaFHEM-cmd /usr/local/lib/node_modules/alexa-fhem/bin/alexa
alexaFHEM-config /opt/fhem/alexa-fhem.cfg
alexaFHEM-log ./log/alexa-%Y-%m-%d.log
alexaMapping #Characteristic=<name>=<value>,...
On=verb=schalte,valueOn=an;ein,valueOff=aus,valueToggle=um
Brightness=verb=stelle,property=helligkeit,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent
Hue=verb=stelle,valuePrefix=auf,values=rot:0;grün:128;blau:200
Hue=verb=färbe,values=rot:0;grün:120;blau:220
Saturation=verb=stelle,property=sättigung,valuePrefix=auf,values=AMAZON.NUMBER
Saturation=verb=sättige,values=AMAZON.NUMBER
TargetPosition=verb=mach,articles=den;die,values=auf:100;zu:0
TargetPosition=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent
TargetTemperature=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=grad
Volume:verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent
#Weckzeit=verb=stelle,valuePrefix=auf;für,values=AMAZON.TIME,valueSuffix=uhr
alexaTypes #Type=<alias>[,<alias2>[,...]]
light=licht,lampen
blind=rolladen,rolläden,jalousie,jalousien,rollo,rollos
devStateIcon stopped:control_home@red:start stopping:control_on_off@orange running.*:control_on_off@green:stop
echoRooms #<deviceId>=<room>
fhemIntents #IntentName=<sample utterance>
gutenMorgen=guten morgen
guteNacht=gute nacht
persons #<personId>=<name>
room ALEXA
stateFormat alexaFHEM
Mein Gefühl sagt mir, dass das mit dem "Syntax error" in dem Logfile nicht wirklich gut ist ;)
Ich freue mich über Infos, wie ich hier sinnvoll weitermachen sollte - Vielen Dank!
LG,
Matze
Nabend, ist dein Problem noch immer aktuell?
Ich an deiner Stelle würde das Alexa Device löschen, anschließend npm und Node deinstallieren, und anschließend per "npmjs Modul" aus Fhem heraus sauber installieren. Dann das Device neu anlegen und nochmal ins Log schauen.
Wenn das nichts bringt, vll nochmal weg von Bullseye und testweise eine Version zurück.
Mit freundlichen Grüßen