Ankündigung

Einklappen
Keine Ankündigung bisher.

Alexa Custom Skill für EDOMI (LBS 19000646 und 19000647)

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

    Zitat von hartwigm Beitrag anzeigen

    bekomme ich im Feld Service Request " Unable to generate request for your skill"

    Auf welcher Seite kann da noch ein Fehler liegen?
    Ist dein Skill denn grundsätzlich aus dem Internet erreichbar? (alexa.php)

    Was hast du denn beim Service Request eingetragen?

    Kommentar


      ist frei aus dem Internet erreichbar.

      bei Enter Utterance habe ich

      wie in der PDF "starte Edomi" eingetragen und dann Ask Edomi
      Gruß Hartwig

      Kommentar


        in der alexa.php

        für mich nicht ganz klar, war die Anlkeitung zur alexa.php

        dort habe ich IP und Port 2 x bei $targets eingetragen

        ebenso habe ich die AmazonID sowohl bei UserId und ApplikationID eingetragen.



        $applicationIdValidation = 'amzn1.ask.skill.###########';
        $userIdValidation = 'amzn1.ask.account.#########';


        Gruß Hartwig

        Kommentar


          $userIdValidation sollte in der nachfolgenden Zeile auf false gesetzt werden. Damit wird dies deaktiviert, d.h. der Inhalt ist egal.
          Die userID wird bei jedem erneuten Aktivieren eines Skills in der Alexa App neu vergeben. Du siehst diese im Log, wenn du einen Befehl abgesetzt hast. Danach kannst du diese einfach in alexa.php kopieren. Dadurch wird dann sichergestellt, dass Befehle nur von deinen Echo Devices kommen würfen. Ist aber eher unkritisch, daher für den Test erstmal auf "FALSE" belassen.

          ApplicationID ist korrekt.

          Der von dir beschriebene Fehler tritt meist dann auf wenn du den Namen des Skills falsch geschrieben hast. Also noch mal auf der Seiten "Skill Information" unter Invocation Name prüfen, ob du ihn wirklich edomi genannt hast.

          Hast du den Skill in deiner Alexa App denn auch aktiviert? (Skills -> Meine Skills -> edomi)

          EDIT: In targets reicht es, wenn du einen Eintrag hast. Mehrere sind nur dann wichtig, wenn du mehrere EDOMI Instanzen mit Alexa Receivern hast, dann bekommen beide die Kommandos. Wichtig: wenn du nur einen Eintrag hast, dann setze bei dem 'status' => true.

          Kommentar


            Ich bin jetzt alle Einstellung nochmal durchgegangen und habe alles nochmals überschrieben.

            Nun komme ich soweit, dass der Servie Request ausgeführt wird.

            in Service Response bekomme ich nun:

            The remote endpoint could not be called, or the response it returned was invalid.

            von Amazon bekomme ich einen Request apache2\accesslog

            72.21.217.182 - - [05/Mar/2017:15:21:20 +0100] "POST /edomi/admin/lbs/alexa.php HTTP/1.1" 200 3411 "-" "Apache-HttpClient/UNAVAILABLE (Java/1.8.0_112)"

            Die Meldung ist identisch ob ich nun required all granted aktiviere oder sperre!
            Gruß Hartwig

            Kommentar


              nun geht auch der response

              danke für die Hilfe. Hatte noch einen Tippfehler bei der ID
              Gruß Hartwig

              Kommentar


                Und das passiert bei Eingabe von "Starte edomi" im Service Simulator?
                Ich würde auf jeden Fall mal "all granted" einstellen, bis es wirklich funktioniert.

                interessanter wäre das log in /usr/local/edomi/www/data/log/alexa.log

                Kommentar


                  Zitat von hartwigm Beitrag anzeigen
                  nun geht auch der response

                  danke für die Hilfe. Hatte noch einen Tippfehler bei der ID
                  OK.

                  Kommentar


                    Leider bleibe ich nochmals an einen Stolperstein hängen.

                    Ansagen funktionieren und werden auch richtig interpretiert. In der Alexa.log schlagen diese korrekt auf. Dann aber kommt eine Fehlermeldung.
                    Port habe ich schon mal von 8000 auf 8010 in der alexa.php und dem Baustein geändert.

                    Array
                    (
                    [group] => licht schalten
                    [name] => licht
                    [location] => büro ute
                    [value] => 0
                    )

                    File: /usr/local/edomi/www/admin/lbs/alexa.php | Error: 2 | Line: 189 | stream_socket_client(): unable to connect to tcp://192.168.135.42:8010 (Connection refused)
                    File: /usr/local/edomi/www/admin/lbs/alexa.php | Error: 2 | Line: 190 | stream_set_timeout() expects parameter 1 to be resource, boolean given
                    File: /usr/local/edomi/www/admin/lbs/alexa.php | Error: 2 | Line: 191 | stream_set_blocking() expects parameter 1 to be resource, boolean given
                    Gruß Hartwig

                    Kommentar


                      Hallo Andre,

                      auch von meiner Seite vielen Dank für die tolle Arbeit sehr gut und detailliert beschriebene Anleitung. Ich bin bereits seit einigen Monaten stiller Mitleser dieses Themas und freue mich wie ein kleines Kind über jeden Fortschritt oder die eine oder andere signifikante Änderung. Da ich noch voll im Umbau unseres Eigenheims stecke und manche Gewerke wie der Elektrik im Rückstand sind, habe ich etwas Zeit mit meinem Amazon Dot zu experimentieren. Versuche gerade den intelligenten Assistenten in meine KNX-Anlage einzubinden mit dem Problem, dass ich an folgender Stelle deiner Anleitung stecken bleibe.

                      Schritt 8: "Edomi Server konfigurieren"
                      Nachdem ich die Befehle eingegeben und das Script erstellt habe und nun von außen die Seite "https://<"meine ddns">/edomi/phpinfo.php" aufrufen will, kommt folgender Fehler "The requested URL /edomi/phpinfo.php was not found on this server."

                      Ich verwende nginx als Reverse Proxy. Hoffe Du kannst mir weiterhelfen.

                      Vielen Dank im Voraus,
                      Eneriko

                      Kommentar


                        schau dir mal das logfile des nginx an, da müsstest Du sehen, ob der Aufruf reinkommt.

                        Beim Apache sind das die var/log/access.log ../error.log
                        Gruß Hartwig

                        Kommentar


                          Hallo Hartwig,

                          Danke, dass Du Dich meiner annimmst ;o).

                          im error.log steht folgendes:

                          2017/03/05 15:21:14 [error] 723#0: *30 open() "/var/www/html/favicon.ico" failed (2: No such file or directory), client: 194.208.151.213, server: xyz , request: "GET /favicon.ico HTTP/1.1", host: xyz , referrer: xyz

                          Da ich leider nur Anwender bin, kann ich nicht eruieren an was es liegt, dass ich keine Verbindung aufbauen kann.

                          LG Eneriko

                          Kommentar


                            Im Service Simulator der Developer Amazon Seite kommt in der Testumgebung beim Eintrag von "starte Edomi" folgender response; "There was an error calling the remote endpoint, which returned HTTP 404 : Not Found", was ja eigentlich klar ist.

                            Kommentar


                              kannst du den phpinfo.php aus dem Lan heraus aufrufen?
                              Gruß Hartwig

                              Kommentar


                                Ist die gleiche Fehlermeldung. Ohne die Pfaderweiterung um ".../edomi/phpinfo.php" funktionierts, dann kommt das nginx Startfenster, aus dem LAN oder außerhalb.

                                Kommentar

                                Lädt...
                                X