Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
ehrlich gesagt weis ich auch nicht was das bringt. Muss ich nicht eher bei amazon nach einem Fehler suchen und nicht auf dem edomi server?
Immerhin kann ich den Skill nicht aktivieren.
Du kannst den Skill nicht aktivieren, weil dein Skill nicht antwortet und er antwortet nicht, weil er die Authentisierungsanfrage nicht validieren kann.
Mach doch mal bitte folgendes:
Nach fehlerhafter Aktivierung im Logfile den letzten Eintrag "Validation URL:" suchen.
Diese URL dann per curl auf dem EDOMI Server in einem SH Terminal ausführen.
Und dann das Ergebnis hier posten. Dies ist genau der Aufruf, der aus PHP heraus nicht erfolgreich ist und kein Ergebnis liefert. Evtl. kann man im Terminal einen Fehler sehen.
Nach fehlerhafter Aktivierung im Logfile den letzten Eintrag "Validation URL:" suchen.
Diese URL dann per curl auf dem EDOMI Server in einem SH Terminal ausführen.
Und dann das Ergebnis hier posten. Dies ist genau der Aufruf, der aus PHP heraus nicht erfolgreich ist und kein Ergebnis liefert. Evtl. kann man im Terminal einen Fehler sehen.
Hier mein Ergebnis (ganz schön lang der Token. Kann ich den wo anders auch überprüfen auf richtigkeit?)
Code:
[COLOR=#373e3e][FONT=Amazon Ember Regular, Helvetica Neue, Arial, Helvetica, Roboto, sans-serif][SIZE=2][COLOR=#16191f][FONT=Amazon Ember, Helvetica Neue, Roboto, Arial, sans-serif][root@edomi log]# curl https://api.amazon.com/auth/O2/tokeninfo?access_token=Atza%7CIxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxx[/FONT][/COLOR][/SIZE][/FONT][/COLOR]
[COLOR=#373e3e][FONT=Amazon Ember Regular, Helvetica Neue, Arial, Helvetica, Roboto, sans-serif][SIZE=2][COLOR=#16191f][FONT=Amazon Ember, Helvetica Neue, Roboto, Arial, sans-serif]{"error_index":"XHxxxxxxxxxxxA-lIJYbcLBgAAAAAAAAAB0cawNdezoV7A9I5DSeGb37giFEaWJm-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx41JPnAIUxjvJ-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxvi3NKdF6M2dni3QxJTiKA==","error_description":"The request has an invalid parameter : access_token","error":"invalid_token"}[/FONT][/COLOR][/SIZE][/FONT][/COLOR]
invalid token. Hab ich da doch was falsch eingegeben wo?
Was ich bei der ganzen Einleitung nicht gemacht habe ist die $client_id wo einzutragen (bzw. zurzeit temporär) da diese nicht mehr vorhanden war wie in der Anleitung
ping funktioniert. Wobei ich hier im Forum ein extra Thema eröffnet habe das mein edomi Server ssh und sftp momentan sehr lange braucht zum reagieren bzw. einloggen.
Mir gehen so langsam die Ideen aus. Ist dein Amazon Account auf deutsch eingestellt und der Skill auch?
In welcher AWS Region läuft deine Lambda Function? (steht oben in der lambda Konsole; vermutlich Ireland oder Frankfurt)
müsste alles richtig sein. Lambda Ireland wie in der Beschreibung
Skill auf Deutsch. Hier sind noch zwei alte drin die nicht gehen vom Anfang des Jahres.
Lese hier im Forum schon eine ganze Weile mit, habe aber seither sehr wenig geschrieben. Daher kurz zu mir: WIr haben vor 3 Jahren gebaut, alles mit KNX ausgestattet, vor ca. 1 Jahr habe ich noch Edomi dazu aufgesetzt, auch das funktioniert seit dieer Zeit und die Logiken sind schon ganz schön angewachsen.
Jetzt versuche ich mich seit einiger Zeit an Alexa und habe im Download-Bereich diesen tollen Skill entdeckt. Leider habe ich bei der Installation so einige Probleme und hoffe, dass mir evt. jemand helfen kann, der ein ähnliches Problem hatte oder sich besser mit Linux auskennt. :-)
Ich versuche den Reverse-Proxy auf einem Raspberry Pi 1 aufzusetzen. Als erstes habe ich die Variante mit dem Apache2 verssucht. Dabei war allerdings die phpinfo-Seite zwar innerhalb meines Netzwerks erreichbar, aber nicht über den DynDNS bzw. aus dem Internet (ungefähr so wie in Eintrag 224 beschrieben). Wahrscheinlich war irgendwas an der Basis-Konfiguration des Apache-Servers falsch.
Nach einigen Versuchen habe ich abgebrochen und es noch einmal mit dem NGinx versucht. Dieser war auf Anhieb sowohl im Netzwerk als auch über DYNDNS bzw. Internet erreichbar. Da habe ich sofort mit dem SSL-Zertifikat weitergemacht. Letsencrypt lief auch durch und brachte am Ende eine Erfolgsmeldung, auch die Konfiguration der default.orig habe ich noch hinbekommen. Allerdings war ab diesem Moment der Nginx nicht mehr erreichbar, weder im Netzwerk, noch über Internet.
Das liegt daran, dass er gar nicht mehr gestartet werden kann, da der Startvorgang mit der Fehlermeldung abbricht, dass die beiden in der Konfiguration erwähnten Zertifikatsdateien fullchain.pem und privkey.pem nicht vorhanden sind. Schon das Verzeichnis live ist nicht vorhanden, bzw. wird mir aufgrund von nicht vorhandenen Rechten nicht angezeigt, keine Ahnung welche Variante wirklich zutrifft.
Was habe ich falsch gemacht, bzw. was muss ich ändern?
Ich habe den Alexa Smarthome LBS weitestgehend erfolgreich nach Eurer (Jonofe, tger977, Panzeron) Anleitung installiert und getestet. An dieser Stelle erst einmal vielen Dank für den LBS un die tolle Anleitung.
Grundsätzlich kann ich mit der Beispielkonfiguration aus Kapitel 6 eine Lampe schalten.
Einen Anbindung weiterer Smart-Home-Devices steht also "fast" nichts im Wege.
Fast, weil noch zwei/drei Dinge nicht ganz rund laufen:
Das Suchen nach Smart-Home-Geräten über die Alexa-Web-Seite führt genaus wenig zum Erfolg, wie die Aufforderung an Alexa "Alexa, finde meine Geräte", mit dem einen Unterschied, das beim Sprachdialog mit Alexa keine Logdatei durch die Lamda-Funktion erzeugt wird.
In beiden Fällen kann man aber in der "edomi-smarthome-skill-PLv3.log" sehen, dass EDOMI eine korrekte Antwort zurück schickt.
Im Fall der Suche über die Web-Seite, bei der eine Logdatei durch die Lamda-Funktion geschrieben wird, sind diese Daten auch dort zu sehen und identisch.
Trotz der akustsichen Rückmeldung durch Alexa, dass keine smarten Geräte gefunden wurden, bzw. der weiterhin leeren Geräte-Liste auf der Webseite, kann ich die "Test"-Lampe mit "Alexa, schalte test ein" bzw "...aus" schalten.
Wenn es Dir weiterhilft, kann ich Dir die entsprechenden Log's zur Verfügung stellen.
Eine kleine redaktionelle Unschärfe hat mich auch noch einige Zeit der Suche nach der Ursache gekostet. Die Log-Datei in die das LBS bzw. das php-Script schreibt ist nicht
"/usr/local/edomi/www/data/log/edomi-smarthome-skill.log" wie auf Seite 33 in Kapitel 6 beschrieben, sondern "/usr/local/edomi/www/data/log/edomi-smarthome-skill-PLv3.log". Mir ist das leider nicht aufgefallen, weil es die Datei "edomi-smarthome-skill.log" von den frühren Tests noch gab. Ein Blick in das aktuelle PHP-Script PLv3 war dann aber des Rätsels Lösung . ;-)
Hallo zusammen,
Nach einigen Versuchen habe ich abgebrochen und es noch einmal mit dem NGinx versucht. Dieser war auf Anhieb sowohl im Netzwerk als auch über DYNDNS bzw. Internet erreichbar. Da habe ich sofort mit dem SSL-Zertifikat weitergemacht. Letsencrypt lief auch durch und brachte am Ende eine Erfolgsmeldung, auch die Konfiguration der default.orig habe ich noch hinbekommen. Allerdings war ab diesem Moment der Nginx nicht mehr erreichbar, weder im Netzwerk, noch über Internet.
Das liegt daran, dass er gar nicht mehr gestartet werden kann, da der Startvorgang mit der Fehlermeldung abbricht, dass die beiden in der Konfiguration erwähnten Zertifikatsdateien fullchain.pem und privkey.pem nicht vorhanden sind. Schon das Verzeichnis live ist nicht vorhanden, bzw. wird mir aufgrund von nicht vorhandenen Rechten nicht angezeigt, keine Ahnung welche Variante wirklich zutrifft.
Was habe ich falsch gemacht, bzw. was muss ich ändern?
Vielen Dank im Voraus an alle Helfer.
Hi hab zwar nicht soviel Ahnung aber versuche mal mein Glück. Du kannst zunächst
Code:
sudo su
eingeben damit du alle weiteren Befehle als root ausführst.
Versuche dann mal in das live Verzeichnis zu kommen.
Wenn das nicht geht würde ich zunächst sagen bei der Erstellung von dem ssl Zertifikat ist was schief gelaufen.
Hier noch ein Zitat von der alten Anleitung
Code:
Dann kann die SSL Installation über folgenden Link getestet werden.
[URL]https://www.ssllabs.com/ssltest/analyze.html?d[/URL][COLOR=#0000ff][U]=[/U][/COLOR][COLOR=#ff3333][U]<DYNDNS_NAME>[/U][/COLOR][COLOR=#0000ff][U]&latest [/U][/COLOR]
Hier sollte nach einigen Minuten ein Overall Rating B herauskommen. (Anzeige im Browser)
Zuletzt geändert von lordofchaos; 10.12.2018, 22:03.
Grund: Tippfehler
Trotz der akustsichen Rückmeldung durch Alexa, dass keine smarten Geräte gefunden wurden, bzw. der weiterhin leeren Geräte-Liste auf der Webseite, kann ich die "Test"-Lampe mit "Alexa, schalte test ein" bzw "...aus" schalten.
Alexa sagt doch bestimmt, dass keine "neuen" Geräte gefunden wurde. Somit kannst du natürlich weiterhin auf bestehende Geräte zugreifen.
Auf welcher Webseite tauchen keine Geräte auf? Meinst du alexa.amazon.com? Wenn dort nichts auftaucht und du trotzdem was schalten kannst, dann wäre das kurios oder du befindest dich im falschen Account. Wie hast du denn die Leuchte gefunden, welche Du schalten kannst? Sicher dass du nicht noch den alten Skill laufen hast?
Hi hab zwar nicht soviel Ahnung aber versuche mal mein Glück. Du kannst zunächst
Code:
sudo su
eingeben damit du alle weiteren Befehle als root ausführst.
Versuche dann mal in das live Verzeichnis zu kommen.
Wenn das nicht geht würde ich zunächst sagen bei der Erstellung von dem ssl Zertifikat ist was schief gelaufen.
Danke schön, für Deine Antwort. Das Verzeichnis gibt es wirklich nicht, es gibt nur die Verzeichnisse accounts, csr, keys, renewal und renewal-hooks. Seltsam, dass letsencrypt dann mit einer Erfolgsmessung endet.
Dann kann die SSL Installation über folgenden Link getestet werden.
[URL]https://www.ssllabs.com/ssltest/analyze.html?d[/URL][COLOR=#0000ff][U]=[/U][/COLOR][COLOR=#ff3333][U]<DYNDNS_NAME>[/U][/COLOR][COLOR=#0000ff][U]&latest [/U][/COLOR]
Hier sollte nach einigen Minuten ein Overall Rating B herauskommen. (Anzeige im Browser)
Das habe ich natürlich ausprobiert und - wer hätte das erwartet - natürlich kein Rating B rausbekommen, sondern ein Rating T. Das widerrum bedeutet ja aber eigentlich, dass zumindest ein Zertifikat vorhanden sein müsste, sonst kann ja wahrscheinlich kein Rating raus kommen. Allerdings - und jetzt wird es ganz seltsam - stand dort dabei, dass das Zertifikat für eine Webseite www.traffic-exchanger.com gültig sei und es sich wohl um einen "Certificate name mismatch" handle....
Die IP-Adresse , die dort genannt wird, also auf die verwiesen wird, stimmt aber mit der meiner FritzBox überein. Und ich habe es mehrfach versucht, meine DynDNS stimmt auch, habe mich also nicht vertippt....
jonofe
OK. Das kann in der Tat sein, dass Alexa gesagt hate, keine "neuen" Geräte gefunden zu haben.
Ich habe mittlerweile in der App nachgeschaut. Dort wird die Lampe namens "test" angezeigt. Ich hatte das Gerät übrigens auf Verdacht angesprochen, da ich ja den Namen (test) veregeben hatte.
Auf der Web-Seite war ein explizites Neuladen der Seite notwendig. Dort wird jetzt "test" auch angezeigt.
Es funktioniert also doch alles wie es soll. ;-)
lordofchaos
Ja, ist korrekt.. Nach der ersten erfolgreichen Verbindungsaufnahme steht die user-id in der Logdatei. Da kannst Du sie dann raus kopieren.
Mal ne Frage, weil ich das Thema demnächst auch mal angehen will... Bei mir steht schon so viel "Kram" rum (Fritzbox, Switch, NAS, Server mit VMs, Echo Dot, ...). Muss ich mir jetzt für den Alexa Smarthome Skill echt noch nen Raspberry organisieren? Gibts da ne Alternative? Linux VM etc.?
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar