Ankündigung

Einklappen

Sammelbestellung ETS6 Vollversionen aktiv!

Sammelbestellung für ETS6 Vollversionen (Prof., Home, Lite) mit 40% Rabatt aktiv! Infos im Forum!
Mehr anzeigen
Weniger anzeigen

Alexa Smarthome Skill (Payload Version 3)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Aktor
    antwortet
    ok, danke. Es sieht so aus, als hätte ein Freund den Fehler gefunden. Sobald ich weiß was er gemacht hat, poste ich es hier.
    Zuletzt geändert von Aktor; 17.01.2021, 11:11.

    Einen Kommentar schreiben:


  • philipp900
    antwortet
    Falls du nur Lampen steuern willst, probier mal meinen neuen LBS, der läuft komplett lokal und erfordert keine Lambda Funktion und keine Kontoverknüpfung.

    Einen Kommentar schreiben:


  • Aktor
    antwortet
    ich habe in den Log Events folgendes gefunden. Weiß jemand wo hier der Fehler liegt bzw. was ich als nächstes testen sollte?


    2021-01-16T11:39:07.922+01:00 u'\ufeff{"event":{"header":{"messageId":"b7c06729-c292-4212-bc9a-9430a900847a","name":"AcceptGrant.Response","names pace":"Alexa.Authorization","payl...

    u'\ufeff{
    "event": {
    "header": {
    "messageId": "b7c06729-c292-4212-bc9a-9430a900847a",
    "name": "AcceptGrant.Response",
    "namespace": "Alexa.Authorization",
    "payloadVersion": "3"
    },
    "payload": {}
    }
    }'


    2021-01-16T11:39:07.942+01:00 No JSON object could be decoded: ValueError Traceback (most recent call last): File "/var/task/edomi-aws-lambda-skill-adapter-PLv3.py", line 28, in....

    No JSON object could be decoded: ValueErrorTraceback (most recent call last): File "/var/task/edomi-aws-lambda-skill-adapter-PLv3.py", line 28, in lambda_handler return json.loads(response.text) File "/usr/lib64/python2.7/json/__init__.py", line 339, in loads return _default_decoder.decode(s) File "/usr/lib64/python2.7/json/decoder.py", line 364, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/lib64/python2.7/json/decoder.py", line 382, in raw_decode raise ValueError("No JSON object could be decoded")ValueError: No JSON object could be decoded

    Einen Kommentar schreiben:


  • Aktor
    antwortet
    deRainer, Dankeschön.

    Es kommt die Meldung "Edomi konnte nicht mit Alexa verknüpft werden".

    Ich habe Deinen Tipp durchgeführt und den Edomi-Server neu gestartet. Leider hat dies nichts gebracht. Wenn das mit dem "Client Secret" normal ist, dann wird es das auch nicht sein. Gibt es noch andere Ideen woran es liegen bzw. was ich testen könnte?

    Einen Kommentar schreiben:


  • deRainer
    antwortet
    Hallo Aktor,
    was heißt den "die Kontoverknüpfung"? Meinst du, dass du den Edomi Skill in der Alexa App nicht aktivieren kannst?
    Hatte auch das Problem. Bei mir hat das geholfen

    curl https://curl.haxx.se/ca/cacert.pem -o /etc/pki/tls/cacert.pem

    Das "Client Secret" Feld wird glaube ich standardmäßig immer ausgeblendet. Das heißt aber nichts. Da steht schon was drin. Ist halt "Secret"

    Einen Kommentar schreiben:


  • Aktor
    antwortet
    Alexa App: Kontoverknüpfung fehlgeschlagen

    Erst einmal Danke für die Arbeit der Entwicklung und vor allem der klasse Anleitung! Da steckt sehr viel Arbeit drin, so dass ich als Laie damit gut klar komme.

    Trotzdem bräuchte ich bitte Eure Hilfe. Ich habe alles nach der Anleitung aufgesetzt und eigentlich sieht alles gut aus. Reverse Proxy usw. habe ich getestet. Nur leider schlägt trotzdem die Kontoverknüpfung in der Alexa App fehl.

    Was mir komisch vorkommt ist, dass das Feld bei "Client Secret" (S.19 in der Anleitung) immer wieder leer ist.
    Der Eintrag wird übernommen und die Speicherung bringt auch keine Fehler, aber wenn ich die Seite verlasse und wieder reingehe, ist das Feld wieder leer.

    Ist das normal bzw. weiß jemand woran das liegt?

    Danke schon einmal im Voraus

    Einen Kommentar schreiben:


  • HeMichael
    antwortet
    hmm der Gedanke mit der kleinen SSD ist vielleicht net mal der schlechteste, hab da sogar noch paar rumliegen die ich mal ausm server ausgebaut habt.

    Wald und Bäume und so

    Danke für den Zaunpfahl

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von HeMichael Beitrag anzeigen
    hab irgendwie Angst dass alte LBS nicht mehr Richtig funktionieren
    Naja, so kannst du sicher sein, dass viele neue LBS oder Updates der alten LBS nicht funktionieren.
    Du musst die alte Installation ja nicht direkt löschen, sondern kannst erst mal in einer VM oder mit dem Docker Image testen, ob es funktioniert.
    Oder aber einfach eine kleine SSD (128GB) für 20€ kaufen und DUAL Boot einrichten und so Schritt für Schritt auf CentOS7 umstellen.

    CentOS 6.5 ist aus meiner Sicht eine Sackgasse, denn ansonsten bist wirklich bei never-change-a-running-system, weil die Changes eben nicht mehr mit CentOS6.5 laufen.

    Einen Kommentar schreiben:


  • HeMichael
    antwortet
    hmm vielleicht eher der Gedanke: Never change a running System

    hab irgendwie Angst dass alte LBS nicht mehr Richtig funktionieren. Vielleicht ist das aber auch völlig unbegründet

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von HeMichael Beitrag anzeigen
    Ich mag eigentlich nicht auf Centos 7 updaten
    Das muss am Ende jeder für sich entscheiden, ob man auf einem EOL OS bleibt und dann bei vielen LBS selbst experimentieren muss, um es dann zum Laufen zu bekommen, oder ob man das Upgrade macht und nach entsprechenden erprobten Installationsanleitungen vorgehen kann.

    Meine Entscheidung ist da relativ klar, ich baue/update LBS nur noch für CentOS7 mit PHP7 und supporte auch nur noch diese Kombination, insbesondere seit einige Repos für CentOS 6.5 gar nicht mehr zur Verfügung stehen. Entscheidend ist dann am Ende, wie wichtig einem ein LBS ist und wieviel Aufwand man selber in Experimente oder Workarounds reinstecken will.

    Was sind denn eigentlich die Gründe nicht auf CentOS7 zu upgraden?

    Einen Kommentar schreiben:


  • HeMichael
    antwortet
    Zitat von Guidokoeller Beitrag anzeigen
    Hallo
    Ich hatte das gleiche Problem. Durch eine koplett neue Installation von Edomi auf Basis Cent OS 7 und das Importieren der Logikbausteine hat sich das Problem
    erledigt. Ich habe vorher auch alles versucht. Leider ohne Erfolg.
    Ich mag eigentlich nicht auf Centos 7 updaten, gibts denn wirklich keine andere Möglichkeit?

    Einen Kommentar schreiben:


  • philipp900
    antwortet
    Zitat von deRainer Beitrag anzeigen
    Da es hier unter Beitrag #838 diskutiert wurde, dachte ich "Alexa, fahre Jalousie Arbeitszimmer hoch (oder rauf)" würde auch funktionieren. Fände ich auch ganz nett, wenn beides ginge.
    @philipp900 hat das nicht bei dir so funktioniert?
    Ich habe das ehrlich gesagt dann nicht mehr weiter verfolgt, da mir der Skill über die Amazon Server zu viel Zeitverzögerung hat.

    Darauf habe ich mir einen LBS der ein HUE device simuliert und direkt im lokalen Netzwerk funktioniert programmiert.
    Damit kann man schalten, dimmen, Farbtemperatur und Prozentwerte direkt setzen.
    Wenn Interesse besteht werde ich den mal hochladen, sobald ich Zeit für die Doku habe.

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Bei den verschiedenen Semantics können schon unterschiedliche Device Namen zu unterschiedlichen Ergebnissen führen. Da ist der Alexa Smarthome Skill recht sensibel. Wenn du also an E1 ein AdjustRangeValue siehst, aber ein SetRangeValue erwartest, dann liegt das daran, dass Alexa den Befehl nicht so versteht, wie du ihn verstehst, da kann man dann auch wenig dran machen. Die Änderung 0/100 war ja nur die Änderung dessen, was der Skill bei einem SetRangeValue senden soll, darauf hat man Einfluss, aber nicht auf die Interpretation der Sprache in den entsprechenden Befehl.

    Einen Kommentar schreiben:


  • deRainer
    antwortet
    Device Name ist "Jalousien Arbeitszimmer"

    "Alexa, öffne Jalousien Arbeitszimmer" -> geht.
    "Alexa, Jalousien im Arbeitszimmer öffnen" -> geht auch.

    Da es hier unter Beitrag #838 diskutiert wurde, dachte ich "Alexa, fahre Jalousie Arbeitszimmer hoch (oder rauf)" würde auch funktionieren. Fände ich auch ganz nett, wenn beides ginge.
    @philipp900 hat das nicht bei dir so funktioniert?

    Hatte diese Beispiele auch in der offiziellen Alexa Hilfe gefunden:
    Alexa befehle.JPG
    Quelle:

    Anscheinend funktionieren die semantics dann bei mir nicht richtig...

    Ich glaube ich mache für heute erstmal Schluss. Sehe nur noch Alexa Befehle
    Danke schon mal für die Unterstützung!
    Rainer

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Wie heisst denn das Device?
    Verwende mal die Anweisung wie in der Hilfe des 1201 beschrieben:

    <Device Name> öffnen.
    <Device Name> schließen.

    Bsp:

    Rangecontroller Device mit Name "Jalousien im Arbeitszimmer"

    => Alexa, Jalousien im Arbeitszimmer öffnen.
    => Alexa, Jalousien im Arbeitszimmer schließen.

    Es funktioniert i.d.R. nicht neue Kombinationen durch Umstellung von Worten und Aktivitäten zu bilden, da man keine Kontrolle über Utterances bei einem Smarthome Skill hat. AdjustRangeValue bedeutet, dass er den Befehl als Anpassung um einen Prozentwert verstanden hat, in deinem Fall um +1%. Ändern lässt sich das nur, indem man die richtigen Sprachbefehle verwendet. Ggf. gibt es auch noch weitere Sprachbefehle, die man aber durch Try&Error rausfinden muss.

    Einen Kommentar schreiben:

Lädt...
X