Da ich jetzt seit Tagen damit rummache, einfach nicht weiter komme und es in einzelnen Themen auftaucht aber nie gebündelt wird, mach ich dieses Thema auf:
Alexa-fhem nach dieser Anleitung installiert:
https://wiki.fhem.de/wiki/Alexa-Fhem + tutorial 23 (https://haus-automatisierung.com/)
Beim manuellen starten con Alexa erhalte ich folgende Fehlermeldung. Habe viel im Forum recherchiert und ausprobiert aber das Resultat bleibt mehr oder weniger gleich.
[2017-7-28 09:34:53] [FHEM] longpoll ended, reconnect in: 200msec
[2017-7-28 09:34:53] [FHEM] There was a problem connecting to FHEM (http://127.0.0.1:8083/fhem?cmd=%7BAttrVal(%22global%22,%22userattr%22,%22%22)%7D&XHR=1).
[2017-7-28 09:34:53] [FHEM] 401: Authorization Required
[2017-7-28 09:34:53] [FHEM] There was a problem connecting to FHEM (http://127.0.0.1:8083/fhem?cmd=jsonlist2%20TYPE=alexa&XHR=1).
[2017-7-28 09:34:53] [FHEM] 401: Authorization Required
[2017-7-28 09:34:53] [FHEM] There was a problem connecting to FHEM
[2017-7-28 09:34:53] [FHEM] 401: Authorization Required
config.json ist angepasst und ergänzt um die auth Zeilen...
laut der fhem.cfg is basicAuth verwendet.
...
attr allowed_WEB basicAuth <xxxxxxx>
....
Der Port 3000 ist von aussen nicht erreichbar. Nach meinem Verstädnis kann er auch erst erreichbar sein, wenn der Dienst läuft, oder?
die prinzipielle Anmeldung per putty geht mit: wget --user jb --password <xxxx> http://127.0.0.1:8083/fhem
Ergebnis:
--2017-07-28 11:08:23-- http://127.0.0.1:8083/fhem
Verbindungsaufbau zu 127.0.0.1:8083... verbunden.
HTTP-Anforderung gesendet, warte auf Antwort... 401 Authorization Required
Wiederverwendung der bestehenden Verbindung zu 127.0.0.1:8083.
HTTP-Anforderung gesendet, warte auf Antwort... 200 OK
Länge: 6316 (6,2K) [text/html]
In »»fhem.1«« speichern.
Die config.json sieht so aus:
{
"alexa": {
"port": 3000,
"name": "Alexa",
"keyFile": "./key.pem",
"certFile": "./cert.pem",
"nat-pmp": "",
"nat-upnp": false,
"applicationId": "amzn1.ask.skill.xxxxxx",
"oauthClientID": "amzn1.application-oa2-client.xxxxxx"
},
"connections": [
"auth": {"user": "jb", "pass": "<xxxxxx>"}, {
"name": "FHEM",
"server": "127.0.0.1",
"port": "8083",
"ssl":false,
"webname": "fhem",
"filter": "room=Alexa"
}
]
}
Was kann ich noch einstellen/probieren?
Hi,
gib doch mal die gesamte Ausgabe beim Start hier an.
Bzw. welche Version von alexa-fhem hast du?
(Wird am Anfang beim Start ausgegeben)
EDIT: ok laut Signatur wohl 0.3.4, also aktuell...
Steht etwas im fhem Log?
EDIT2: evtl. mal einen weiteren Web-Zugang ohne auth, also zum Test... Wenn es dann geht, stimmt etwas mit user/passwort oder dem Eintrag in der config.json nicht...
Gruß, Joachim
Hallo, also hier mal meine funtktionierende config.json. Das einzige, was mir auffällt ist, daß die nat-pmp leer ist. Rein gehört da die Adresse des Routers (Fritzbox o.ä.)
pi@FHEM-Jessie:~ $ sudo nano ~/.alexa/config.json
GNU nano 2.2.6 Datei: /home/pi/.alexa/config.json
{
"alexa": {
"port": 3000,
"name": "MyAlexa",
"keyFile": "./key.pem",
"certFile": "./cert.pem",
"nat-pmp": "192.168.2.1",
"nat-upnp": false,
"applicationId": "amzn1.ask.skill.f40946ce-9e9f-4807-b41f-148f3c14261b",
"oauthClientID": "amzn1.application-oa2-client.b512b110e978460ea131f23c$
},
"connections": [
{
"name": "FHEM",
"server": "127.0.0.1",
"port": "8083",
"webname": "fhem",
"auth": {"user": "admin", "pass": "Tanja"},
"filter": "room=Alexa"
}
]
}
Wobei bei Dir hoffentlich die xxxxxxx bei "applicationId": "amzn1.ask.skill.xxx", und "oauthClientID": "amzn1.application-oa2-client.xxx durch die richtigen Werte deiner Amazon-Einstellungen ersetzt wurden ?!
nat-pmp leer ist schon ok...
...sofern man dann eben die Portweiterleitung/Freigabe selbst einrichtet...
Aber aktuell geht es wohl eher noch um den Kontakt zu fhem bzw. dort die Daten abzurufen...
Gruß, Joachim
Zitat{
"alexa": {
"port": 3000,
"name": "Alexa",
"keyFile": "./key.pem",
"certFile": "./cert.pem",
"nat-pmp": "",
"nat-upnp": false,
"applicationId": "amzn1.ask.skill.xxxxxx",
"oauthClientID": "amzn1.application-oa2-client.xxxxxx"
},
"connections": [
"auth": {"user": "jb", "pass": "<xxxxxx>"}, {
"name": "FHEM",
"server": "127.0.0.1",
"port": "8083",
"ssl":false,
"webname": "fhem",
"filter": "room=Alexa"
}
]
}
4
Ein { ist anscheinend gerutscht?
Versuch mit:
{
"alexa": {
"port": 3000,
"name": "Alexa",
"keyFile": "./key.pem",
"certFile": "./cert.pem",
"nat-pmp": "",
"nat-upnp": false,
"applicationId": "amzn1.ask.skill.xxxxxx",
"oauthClientID": "amzn1.application-oa2-client.xxxxxx"
},
"connections": [
{
"auth": {"user": "jb", "pass": "<xxxxxx>"},
"name": "FHEM",
"server": "127.0.0.1",
"port": "8083",
"ssl":false,
"webname": "fhem",
"filter": "room=Alexa"
}
]
}
Vielen Dank für die Hinweise, die { war verrutscht, habe ich korrigiert , allerdings ohne Veränderung des Resultates.
den Testweb zugang habe ich per
define TestWeb FHEMWEB 8088
eingerichtet, allerdings kann ich ihn im Browser nicht nutzen. Er findet die Seite nicht. Fehlt hier noch ne Konfiguration?
ZitatVielen Dank für die Hinweise, die { war verrutscht, habe ich korrigiert , allerdings ohne Veränderung des Resultates.
Und natürlich hast Du auch alexa-fhem neu gestartet?
Wenn wirklich immer noch die gleiche Fehlermeldung kommt, bitte dann alexa im debug mode starten und Auszug (anonymisiert) hier posten.
./bin/alexa --debug
ich bin nun einen schritt weiter. Allerdings kommt jetzt folgende Meldung beim start:
[2017-8-4 12:02:46] using /home/pi/.alexa/config.json
[2017-8-4 12:02:46] ---
[2017-8-4 12:02:46] this is alexa-fhem 0.3.4
[2017-8-4 12:02:47] Fetching FHEM devices...
[2017-8-4 12:02:47] [FHEM] starting longpoll: http://127.0.0.1:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON×tamp=1501840967041
[2017-8-4 12:02:47] Server listening on: https://:::3000
[2017-8-4 12:02:47] [FHEM] longpoll error: Error: read ECONNRESET, retry in: 5000msec
[2017-8-4 12:02:52] [FHEM] starting longpoll: http://127.0.0.1:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON×tamp=1501840972295
[2017-8-4 12:02:52] [FHEM] longpoll error: Error: read ECONNRESET, retry in: 10000msec
Die amazon parameter habe ich alle geprüft und scheinen zu stimmen. Die Suche im Forum hier hat mich noch nicht weiter gebracht. Noch Ideen?
Ist Fhem unter http://127.0.0.1:8083/fhem aus dem Rechner, wo Alexa installiert ist, in einem Browser erreichbar?
Hallo gibt es hierzu nun eine Lösung ?
Habe das selbe Problem
so wie im wiki, in der commandref und in diversen threads geschrieben: alexaFHEM-auth setzen.
im normal muss und sollte niemand das config file von hand anfassen. erst recht nicht bei der ersten installation.
alles weitere siehe hier: https://wiki.fhem.de/wiki/FHEM_Connector (https://wiki.fhem.de/wiki/FHEM_Connector)
Moin zusammen,
ich habe leider das auch das FHEM: connection failed: 401: Authorization Required Problem.
Bin exakt nach den Anweisungen im Web: https://wiki.fhem.de/wiki/FHEM_Connector_f%C3%BCr_Amazon_Alexa (https://wiki.fhem.de/wiki/FHEM_Connector_f%C3%BCr_Amazon_Alexa) vorgegangen und nach längerer Fehlersuche jetzt wirklich ratlos, was ich machen soll. Die Hinweise, die ich gefunden habe, das attr alexa-FHEM-auth zu setzen habe ich probiert in allen möglichen mir sinnvoll erscheinenden Kombinationen. Genommen habe ich den erst einmal den Usernamen pi dann : und dann das zugehörige Passwort. Funzt nicht. Auch andere user:passwd kombis wie z.B. der fürs web interface gehen nicht. Ich bin wirklich ratlos und wäre sehr dankbar für einen Tipp.
Gruß
Olli
alexaFHEM-auth heisst es (und nicht alexa-FHEM-auth)
Hier gehört natürlich nicht pi, sondern die Zugangsdaten von deiner FHEMWEB Instanz
Erreichst Du deine FHEMWEB Intanz mit http://127.0.0.1:8083/fhem
oder mit https://127.0.0.1:8083/fhem
? Wenn 2. dann auch ssl:true in config setzen
Wobei... das letzte sollte mit FHEM-Connector nicht nötig sein.
Danke für die schnelle Antwort.
Ich rufe die FHEM Instanzen (habe 2 am Laufen, die über fhem2fhem gekoppelt sind) mit der echten IP und über http auf.
Im Anhang 1x die logdatei anonymisiert.
Gruß
Olli
Ach so und wenn ich mit: attr alexaFHEM-host die echte IP (http://192.168.1xx.yy:8083/fhem eingebe bekomme ich im log: Unknown cipher type '/tmp/alexa-fhem.cfg'
Sorry, sorry, sorry.
Das Problem sass mal wieder vorm keyboard. Danke für den Hinweis mit dem FHEMWEB user.. Das war die Lösung. Wenn man den natürlich nicht richtig eingibt (mea culpa, groß und kleinbuchstaben sollte man auch nutzen, wenn vorhanden), dann funzt es auch nicht. So war es erst mal :-[.
Einmal richtig eingegeben und ich habe jetzt ein alexaFHEM.ProxyConnection running; SSH connected 8) ;D
Danke, danke.
Grüße
Olli
Moinsen,
danke erstmal für diesen Thread. Ich stand gerade vor dem gleichen Problem. Wollte gerade eine Anpassung am Wiki vornehmen und dies ergänzen. Dann fiel mir auf, dass darauf im Wiki eingegangen wird, meiner Ansicht nach aber an der falschen Stelle.
Erst nach "get <alexa> proxyKey" kommt der Hinweis, dass ggf. noch "attr alexa alexaFHEM-auth user:pass" zu setzen ist. Soweit habe ich aber gar nicht gelesen, da ich den ProxyKey noch nicht auslesen konnte.
Wie dem au sei... Ich würde im Wiki die auth-Thematik als Option direkt hinter das define schieben und dort auch nochmal die genaue Fehlermeldung "alexaFHEM stopped; failed to connect to fhem: 401: Authorization Required" aufführen.
Geht ihr da mit? Dann mache ich das.
Gruß Hoppel
Spät, aber: Nur zu!
Alles klar. Ich schaue mir das bei Gelegenheit nochmal im Wiki an und passe es an.
Ich würde irgendwo in der Einleitung auch noch ergänzen wollen, dass das Modul nicht ausschließlich mit Amazon Echo und Echo dot funktioniert, sondern auch mit Sonos One und Beam. Ich habe mir nämlich kürzlich ein Sonos System bestehend aus Beam, Sub und 2x One für's Wohnzimmer geholt und mir war bis zur Einrichtung nicht klar, ob das mit Sonos überhaupt funktionieren wird. Das geht auch aus dem Wiki Artikel zum FHEM Connector nicht hervor.
Aber gut, nun habe ich verstanden, wie die Einrichtung funktioniert und es war einfacher als gedacht. Die Erkenntnis war das alle Drittanbieter-Systeme, die eine Alexa Sprachunterstützung anbieten, funktionieren müssten, da das Modul ,,FHEM Connector" unabhängig von der eingesetzten Hardware funktioniert.
Habe ich das richtig verstanden?
Wenn ja, ergänze ich auch das im Wiki. ;)
Gruß Hoppel
OK, ich habe die beiden Änderungen vorgenommen:
- In den ersten Sätzen SONOS Beam und SONOS One als alternative Geräte zu Amazon Echo Devices aufgeführt
- Kapitel 2.3.1 Fehler bei der Aktivierung "erstellt" (inhaltlich war ja quasi schon alles da, ober so sieht man es evtl. schneller)
Ich hoffe, das geht so durch. ;)
Viel Spaß noch!
Gruß Hoppel