Ankündigung

Einklappen
Keine Ankündigung bisher.

Alexa Smarthome Skill (Payload Version 3)

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

    Zitat von jonofe Beitrag anzeigen
    Mach mal als root ein

    Code:
    mv /etc/pip.conf /etc/pip.conf.save
    Und dann das Zertifikatsupdate noch mal starten. Bitte Rückmeldung, ob es geholfen hat.
    Danke jonofe das hat funktioniert. Vielen Dank.

    Kommentar


      Hi,

      dies wird mal die Miktrotik Fraktion betreffen die einen haben und den Alexa Smarthome Skill nutzen
      Hat schon einmal jemand probiert die Let’s Encrypt Zertifikate mit dem Miktrotik erstellen zu lassen? Wie würde das Ganze dann ablaufen. Ich würde die Zertifikate erstellen und was mache ich dann, wie würde es dann weitergehen? Oder hätte jemand Lust das ansonsten mit mir zusammen auszuprobieren und ich schreibe dann eine Anleitung darüber.

      Grüße

      Kommentar


        Zitat von skyacer Beitrag anzeigen
        dies wird mal die Miktrotik Fraktion betreffen
        Was genau wird die Mikrotik Fraktion betreffen?
        Der Reverse Proxy ist nicht der MikroTik Router sondern ein "Server" (z.B. RPi) in der DMZ hinter dem MikroTik.
        Dem MikroTik ist das Letsencrypt Zertifikat grundsätzlich egal, er leitet einfach den Port 443 durch an den ReverseProxy, der das LetsEncrypt Zertifikat enthält und sich auch um dessen Update kümmert.

        Kommentar


          Naja ich dachte eher das ich das LetsEncrypt Zertifikat auf dem MT erstellen lasse und nicht auf den RPi. So müsste man nicht den Port 443 und 80 nach aussen auf haben. Aber hab mich da mal weiter reingelesen und ich müsste erst einen MetaRouter installieren etc....

          Kommentar


            Ein Metarouter ist eine virtuelle RouterOS Instanz. Wie sollte der zum ReverseProxy werden? Und wie willst du das Letsencrypt-Update-Skript zur Zertifikatserneuerung auf einem MT Router installieren. Selbst wenn du ein letsEncrypt Zertifikat auf einem MikroTik Router nutzen willst, benötigst du einen Linux Rechner, der das Zertifikat dann generiert und auf den Mikrotik Router published. Bringt aber nichts für einen ReverseProxy.
            Der Port 80 und 443 muss immer nach außen auf sein, ob nun direkt auf den MT Router oder weitergeleitet auf den ReverseProxy. Von Außen ist das kein Unterschied, du landest nur entweder auf dem MT oder dem ReverseProxy.

            Kommentar


              Hi
              ich habe das hier im Log:
              Code:
              2019-07-11 18:45:01	099062	?	23927	Datei: /usr/local/edomi/www/data/liveproject/lbs/LBS19001201.php | Fehlercode: 8 | Zeile: 1401 | Undefined variable: eventGatewayRegion	ERROR
              Habt ihr das auch? (eigentlich funktioniert alles... inklusive tunable white controller :-) )

              Gruß
              Thorsten

              Kommentar


                Eigentlich sollte dieser Fehler nicht auftreten. Voraussetzng ist allerdings, dass in der alexa-config-PLv3.php die eventGatewayRegion definiert ist:

                Code:
                $eventGatewayRegion       = 'DE';
                Wichtig, diese Definition muss schon bei Aktivierung des Skills vorhanden gewesen sein.
                Wenn dies der Fall war, dann sollte die eventGatewayRegion auch in der Datei /usr/local/edomi/www/admin/lbs/alexa/eventGatewayConfig.php
                definiert sein und somit sollte der Fehler nicht auftauchen.

                Allerdings steht derzeit sehr wahrscheinlich noch eine

                Code:
                $eventGatewayRegion       = NULL;
                in dieser Datei. Dies ist einem kleinen Fehler in der Datei edomi-smarthome-skill-PLv3.php geschuldet. Dort muss in der Funktion handleAcceptGrantRequest() die eventGatewayRegion noch als globale Variable deklariert werden.

                PHP-Code:

                function handleAcceptGrantRequest($event)
                {
                    global 
                $eventGatewayClientId$eventGatewayClientSecret$eventGatewayRegion
                Also, am besten wie folgt vorgehen:
                1. Die zuletzte beschriebene Änderung vornehmen.
                2. Prüfen ob eventGatewayRegion in alexa-config-PLv3.php definiert ist (s.o.)
                3. Skill deaktivieren
                4. Skill neu aktivieren
                Habe dies gerade bei mir getestet und es hat reibungslos funktioniert. Im nächsten Update ist diese Änderung dann enthalten. Grundsätzlich gibt es aber funktional ohne diese Änderung keine Probleme, da dann per Default das eventGateway für die Region DE verwendet wird.

                Kommentar


                  Ich habe alle Änderungen eingepflegt, habe jetzt aber das Problem dass ohne
                  PHP-Code:
                  //if (validate_token($token) === false)
                  // fail('OAUTH Access Token invalid'); 
                  nix mehr geht.

                  Auch die UserID finde ich in den Logs nicht mehr, somit kann ich diese in der Config nicht eintragen.

                  Auch eine Datei eventGatewayConfig.php habe ich nicht.



                  Kommentar


                    Was genau hast du in welcher Reihenfolge gemacht und was steht im Skillskript-Log?

                    Kommentar


                      Hi
                      ich hab die änderungen vorgenommen und den skill deaktiviert und neu aktiviert... der fehler bleibt bestehen... funktioniert aber sonst soweit.
                      Ich habe auch gerade nochmal nachgeschaut: in dem Baustein aus dem Download gibt es die Gateway-definition in der config-datei garnicht...
                      Bist du sicher das wir von dem selben "release" ausgehen?

                      Gruß
                      Thorsten

                      PS: muss das nicht in die eventGatewayConfig.php?
                      Code:
                       $eventGatewayRegion       = 'DE';
                      Zuletzt geändert von ThorstenGehrig; 13.07.2019, 19:14.

                      Kommentar


                        Ich habe ja extra geschrieben, dass es in der Config drin sein muss. Also einfach eintragen und dann sollte es funktionieren. Oder hast du das gemacht und es taucht trotzdem nicht auf?

                        Kommentar


                          Ah - ok... jetzt sehe ich es. Ich war etwas verwirrt weil ich mit config and die alexa-config gedacht habe - die du ja auch in Schritt 2 referenziert hast:
                          Prüfen ob eventGatewayRegion in alexa-config-PLv3.php definiert ist (s.o.)

                          Der Fehler ist geblieben als ich in der Alexa config war - ist jetzt aber weg nach eintrag in der eventGatewayConfig.php. Ein =NULL eingtrag war übriegens nicht da - es hat einfach gefehlt...

                          Gruß
                          Thorsten

                          Kommentar


                            Zitat von jonofe Beitrag anzeigen
                            Was genau hast du in welcher Reihenfolge gemacht und was steht im Skillskript-Log?
                            Zitat von jonofe Beitrag anzeigen
                            • Die zuletzte beschriebene Änderung vornehmen. -> (Ja)
                              • Prüfen ob eventGatewayRegion in alexa-config-PLv3.php definiert ist (s.o.) -> (Habe ich eingetragen)
                            • Skill deaktivieren -> (Ja)
                            • Skill neu aktivieren -> (Ja, geht aber nach wie vor nur wenn ich in der Alexa Development Console > Skills > Edomi > Send Alexa Events: deaktiviere)

                            In dem Log bekomme ich OAuth Token Invalid, darum habe ich den OAuth Token check vorerst auskommentiert.

                            Es wundert mich nun dass ich in den Logs meine User_ID nicht mehr finde und eben auch dass ich die Datei eventGatewayConfig.php nicht habe.
                            Wie bekomme ich diese Datei?

                            Besten Dank!

                            Kommentar


                              Zitat von millo Beitrag anzeigen
                              Wie bekomme ich diese Datei?
                              Diese sollte generiert werden, wenn du den Skill neu aktivierst. Hast du das versucht?

                              Vorher aber die Zeile:
                              PHP-Code:
                                $eventGatewayRegion       'DE'
                              in die Datei alexa-config-PLv3.php eintragen

                              Zitat von millo Beitrag anzeigen
                              Skill neu aktivieren -> (Ja, geht aber nach wie vor nur wenn ich in der Alexa Development Console > Skills > Edomi > Send Alexa Events: deaktiviere)
                              Okay, das ist dann das Problem. Denn die Message, welche das File erzeugt, wird genau von dieser Option ausgelöst.

                              Kommentar


                                Damit wir alle wieder von den gleichen Voraussetzungen ausgehen, habe ich mal alle aktuellen Files in der Version 0.5.1 hochgeladen.
                                Auf Seiten Amazon hat sich nichts geändert, d.h. es reicht, die
                                • alexa-config-PLv3.php zu checken und ggf. anzupassen
                                • 19001200_lbs.php neu in EDOMI zu importieren
                                • edomi-smarthome-skill-PLv3.php auf dem EDOMI Server zu ersetzen

                                Danach habt ihr auf jeden Fall dieselbe Version wie ich, bei der die Skillaktivierung auch bei eingeschaltetem EventGateway funktioniert.

                                Kommentar

                                Lädt...
                                X