Custom Skill läuft, SmartHome Skill nicht mehr

Begonnen von Prof. Dr. Peter Henning, 19 Februar 2017, 05:42:03

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Nachdem ich immer noch im Dunklen tappe, fasse ich das hier noch einmal zusammen.

Erster Post von mir:

Mein Custom Skill läuft wunderbar - von der Statusabfrage des Hauses bis zum Setzen der Weckzeit oder einer bestimmten Beleuchtung. Der SmartHome Skill lief bis vor wenigen Tagen auch bestens. Plötzlich aber werden die SmartHome-Geräte nicht mehr erkannt, der einfachere SmartHome Skill kennt keinerlei Geräte. Habe ich beim Wechsel auf Version 0.2.0 irgendetwas übersehen ? Die Lambda-Funktion jedenfalls macht keinerlei Probleme

Anwort von André
Zitat@pah: 2.: das ist weiter oben im thread ein paar anderen auch schon passiert. nach einer weile ging es dann wieder. ich tippe auf ein problem auf amazon seite.

Sieht so aus.

Ich habe jetzt:
a.) den alten SmartHome Skill gelöscht und einen neuen aufgebaut => Problem besteht weiter
b.) eine zweite Lambda-Funktion angelegt, ohne Schnickschnack wie anderern Port, anderes Verzeichnis etc., vorbei an meinem ReverseProxy => Problem besteht weiter

Einziger Hinweis bisher im Log von Alexa-Fhem:

Wenn ich die zweite Lambda-Funktion direkt teste, mit einem der vorkonfigurierten Testfälle, finde ich im Log:
Zitat2017-02-19 05:02:32] event not supported
[2017-02-19 05:02:32] ERROR: UnsupportedOperationError from ::ffff:34.250.153.161
response :{"header":{"name":"UnsupportedOperationError","payloadVersion":"2","namespace":"Alexa.ConnectedHome.Control","messageId":"982038d4-ebfc-4bc9-8a6a-6f9bffb1e563"},"payload":{}}
Das ist vollkommen richtig, hier ist ja kein korrekter Event geliefert worden.

Starte ich dann die Alexa-Gerätesuche, finde ich im Log von Alexa-Fhem
ZitatGot error: getaddrinfo ENOTFOUND api.amazon.com api.amazon.com:443
[2017-02-19 05:05:16] ERROR: InvalidAccessTokenError from ::ffff:34.250.153.161
response :{"header":{"name":"InvalidAccessTokenError","payloadVersion":"2","namespace":"Alexa.ConnectedHome.Control","messageId":"41d074a4-e1f0-4874-bba3-037034749da4"},"payload":{}}

Leicht irre, keinen Schimmer, was hier nicht läuft - denn der  Custom Skill tut munter weiter.

LG

pah

Carsten

In der server.js wird in verifyToken die Adresse https://api.amazon.com/auth/O2/tokeninfo?access_token=<Token> aufgerufen.
Hast du mal überprüft, ob der PC, auf dem das bei dir läuft, die Adresse auflösen kann?

Wenn ich Andre richtig verstanden habe, findet bei Custom-Skills kein Auth-Token-Check ( mangels Auth-Token ) statt, bei Smarthome aber schon. Bin aber nicht sicher, ob das diese Stelle ist, vermute es allerdings. Das würde zumindest erklären, warum der Customskill läuft.

meggih

Hey,

ich habe bei mir gerade das gleiche Problem.

Ich hab eben nach Tutorial die Standard Skills eingerichtet, dass ich meine IT Lampen steuern kann und mich dann erstmal riesig gefreut, dass das auch funktioniert :)

Dann wollte ich für die Rolladen einen Custom Skill erstellen und war dabei das Turorial durchzuarbeiten, dann hab ich aber aufgegeben und den Skill aus Lambda erstmal wieder gelöscht, weil ich schon zu müde war und das in Ruhe angehen wollte.

ein "alexa" in FHEM habe ich im zuge dessen auch erstellt.

Und dann ist mir aufgefallen, dass die Geräte in der Amazon App offline erscheinen. Hab den Raspberry Pi rebootet und dann sie vorher mal gelöscht.
Und jetzt hab ich auch neue Geräte hinzugefügt, aber er erkennt nun absolut kein Gerät mehr. :(

Ich hatte es vorher zunächst mit meiner echten IP laufen in Lambda, später auch mit einer DynDNS. Port 3000 natürlich freigegeben, wird von PortCheckern auch nach wie vor so erkannt (hat ja auch ein paar Stunden funktioniert). Dann las ich eben was im Forum von IPv4 Adressen/Unitymedia, was ich auch habe, ABER: es hat ja eben alles funktioniert per Sprachbefehl.

Und ausser, dass ich versucht habe, in Lambda einen Skill zu erstellen und in FHEM angefangen hatte an einer alexa-Instanz was zu basteln, hab ich nichts verändert :(

Master_Nick

#3
Was meinst du mit "offline" erscheinen?
Bei mir stehen die Geräte da (großteils IT) und dann noch das Atrribut n= (name) und r= (raum), ansonsten kann man nur verwerfen klicken.

Du kannst da nix drin machen (aus meiner Sicht) schalten tut man ja per Alexa/Echo.
Wichtig ist halt, dass du dein Skill aktiviert hast. Ansonsten starte doch mal alexa-fhem neu und suche die Geräte nochmal - was sagt es denn und was sagt die Console vom Raspi?

Ansonsten mit Kabel Deutschland/BW/Unitymedia und  DS-Lite musst du den Workaround nutzen: https://forum.fhem.de/index.php/topic,60244.msg518276.html#msg518276

Rancher K8s Cluster mit nanoCUL (a-culfw) | IObroker | IT(V1&V3), IT-PIR, THGR122NX |Co² | alexa-fhem | WOL | NFC | Harmony UltimateHub | Anwesenheitserkennnung | Roomba | 10" Touch mit Node-Red | SonOff S20 | SonOff Touch | SonOff Dual | Rolladen | Und ganz viel anderes tolles Gerödel.... ;-)

meggih

#4
Also die Geräte sind jetzt natürlich weg, da ich sie verworfen habe, aber nie wieder angezeigt bekommen habe.

Es stand da genau wie Du sagst der Name und die r/n Attribute und da hinter dann "(offline)", das war dann schon als sie nicht mehr funktionierten.

Ich habe zwar ein Unitymedia Anschluss aber dennoch eine richtige IPv4 Adresse (glaube ich) (Ich meine die haben das geändert, früher war das so ein DS-Lite Tunnel).

In der Fritzbox steht: "Dynamic DNS aktiviert, xxx.ddnss.de, IPv4-Status: erfolgreich angemeldet"
IPv4, verbunden seit 17.02.2017, 21:34 Uhr
IP-Adresse: x.x.x.x
Portfreigabe: alexa_fhem   TCP   3000   rasp   3000

Und Game/Voice-Server auf meiner IP können erreicht werden.

Den Skill hab ich sogar zwischendurch mal deaktiviert und wieder aktiviert. Ändert leider auch nichts.

alexa-fhem hab ich natürlich auch gefühlt 700x neugestartet, so wie den ganzen raspberry.

Das mit der Konsole vom raspberry verstehe ich nicht, ich greife mit Putty und Filezilla drauf zu, der steht auf dem Dachboden bei uns.
Das Starten von Alexa mache ich in FHEM mit dem Foren-Skript von hier.

Ich hab mal alexa manuell gestartet in der Putty Konsole, schaffe es aber nicht, den Code zu kopieren.
Deswegen 3 Bilder :)

PS: Wenn ich im Netzwerk auf https://192.168.178.102:3000/ gehe, kommt dann
{"header":{"name":"UnsupportedOperationError","payloadVersion":"2","namespace":"Alexa.ConnectedHome.Control","messageId":"ee814197-6abb-468a-84c4-27b12e539e65"},"payload":{}}

PPS: Ich habe noch ein Bild angehängt, wie es bei mir aussieht in FHEM, also eine Lampe, die erst ging und später nicht.

KölnSolar

das device Holger_Ambiente ist aber nicht im Raum alexa. Deshalb wird es auch nicht gefunden("got 0").
Sicht eines alexa-newbies.
Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Master_Nick

Zitat von: KölnSolar am 20 Februar 2017, 11:04:45
das device Holger_Ambiente ist aber nicht im Raum alexa. Deshalb wird es auch nicht gefunden("got 0").
Sicht eines alexa-newbies.
Grüße Markus

Das könnte tatsächlich schon dein komplettes Problem sein.  ;)
Solange du in der Config angegeben hast der Filter ist Raum alexa, müssen die zu steuernden und erkennenden Geräte dort ebenfalls vorhanden sein.
Rancher K8s Cluster mit nanoCUL (a-culfw) | IObroker | IT(V1&V3), IT-PIR, THGR122NX |Co² | alexa-fhem | WOL | NFC | Harmony UltimateHub | Anwesenheitserkennnung | Roomba | 10" Touch mit Node-Red | SonOff S20 | SonOff Touch | SonOff Dual | Rolladen | Und ganz viel anderes tolles Gerödel.... ;-)

Prof. Dr. Peter Henning

#7
@Carsten:
ZitatHast du mal überprüft, ob der PC, auf dem das bei dir läuft, die Adresse auflösen kann?
Natürlich nicht, wer denkt denn an so etwas ?? Und genau das wars, danke für den Hinweis.

Aus irgendeinem Grund war die resolv.conf verschwunden und in der Tat kein Zugriff auf einen Nameserver mehr möglich (Alexa-Fhem läuft bei mir auf einem separaten Raspberry Pi).

Edir: Ursachenforschung hat ergeben: Ein Absturz eines Repeaters im Netzwerk hat den dhcp-Server lahmgelegt, auf dem Alexa-Rechner wurde die /etc/resolv.conf nicht korrekt befüllt und damit der Name des Amazon-Servers nicht mehr aufgelöst.

LG

pah