Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS19002160/2061 - Virtual HUE Device for Alexa

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

    #16
    Echo Geräte stehen mehr als genug rum Dot 2,3,4,Show5,Show8,Studio,Input

    anderer Typ hat nichts gebracht, hab bisher mit on,sw und dim getestet

    Auf die http-Request bekomme ich eine leere Antwort.

    ein Auszug aus dem access_log:
    192.168.4.6 - - [14/Jan/2021:08:46:47 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:46:47 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:46:47 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
    192.168.4.6 - - [14/Jan/2021:08:46:52 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
    192.168.4.6 - - [14/Jan/2021:08:46:52 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:46:52 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:46:52 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
    192.168.4.6 - - [14/Jan/2021:08:46:57 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
    192.168.4.6 - - [14/Jan/2021:08:46:57 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:46:57 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:46:57 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
    192.168.4.6 - - [14/Jan/2021:08:47:02 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
    192.168.4.6 - - [14/Jan/2021:08:47:02 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:47:02 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
    192.168.4.9 - - [14/Jan/2021:08:47:02 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"

    Liegt also meiner Meinung nach irgendwie dran, dass keine Antwort gesendet wird, oder?

    Kommentar


      #17
      Zitat von Winni Beitrag anzeigen
      ein Auszug aus dem access_log:
      192.168.4.6 - - [14/Jan/2021:08:46:47 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
      192.168.4.9 - - [14/Jan/2021:08:46:47 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
      192.168.4.9 - - [14/Jan/2021:08:46:47 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
      192.168.4.6 - - [14/Jan/2021:08:46:52 +0100] "POST /api HTTP/1.1" 200 34 "-" "-"
      192.168.4.6 - - [14/Jan/2021:08:46:52 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-" "-"
      Also Alexa hat schonmal die Bridge erkannt und fragt nach verfügbaren lights. Bekommt darauf aber keine Antwort.

      Zitat von Winni Beitrag anzeigen
      Auf die http-Request bekomme ich eine leere Antwort.
      Meinst du im browser? Auf /api/edomi/lights sollte eigentlich was zurück kommen.

      Dann versuch mal im EXEC Teil des LBS 19002161 zusätzliche echo Ausgaben einzubauen.
      $request wäre interessant.
      Auch $lightState, ob eventuell das File nicht gelesen werden kann.

      Kommentar


        #18
        Ich hoffe ich konnte Remote richtig testen, aber irgendwie tut sich da nichts im LOG.
        Kann es sein, dass hier eine auskommentierte Zeile evtl. doch nicht reicht:?
        // the following commented line is necessary for edomi to create EXEC file
        // logic_callExec(LBSID, $id);

        Winni

        Kommentar


          #19
          Zitat von philipp900 Beitrag anzeigen
          Für die korrekte Funktion ist lediglich eine kleine Anpassung am Webserver von Edomi nötig.
          Alle Anfragen an http://IP_VON_EDOMI:80/api... müssen an den LBS19002161 weitergeleitet werden.
          Dies geht am einfachsten über eine .htaccess Datei im www Verzeichnis.
          Eine Beispieldatei ist im ZIP enthalten. Eventuell muss im Webserver noch die Weiterleitung durch .htaccess Dateien erlaubt werden.
          Kannst du hierzu vielleicht noch etwas ins Detail gehen? Ich denke für DAUs (einschl. mir) wäre das nicht ganz verkehrt.
          Entferne ich einfach den Dateinamen von 19002161.htaccess.zip in 19002161.htaccess und für es im www Ordner hinzu? Wie kann ich mir den Inhalt der Datei anzeigen lassen? Mit "_Textmade" auf dem Mac klappt es leider nicht.
          Danke schon mal im Voraus
          Gruß David

          Kommentar


            #20
            Zitat von Winni Beitrag anzeigen
            Kann es sein, dass hier eine auskommentierte Zeile evtl. doch nicht reicht:?
            // the following commented line is necessary for edomi to create EXEC file
            // logic_callExec(LBSID, $id);
            Nein, das passt schon so.
            Die description.xml wurde bei dir ja bereits richtig ausgeliefert.

            Füg mal im EXEC Teil, so in Zeile 347 folgendes ein und ruf dann mit dem Browser /api/edomi/lights auf:
            Code:
            echo "Request URL: " . $request . "\n light State: ";
            print_r($lightState);
            Dann müsste auf jeden Fall was ausgegeben werden.


            Zitat von shortyle Beitrag anzeigen
            Kannst du hierzu vielleicht noch etwas ins Detail gehen? Ich denke für DAUs (einschl. mir) wäre das nicht ganz verkehrt.
            Entferne ich einfach den Dateinamen von 19002161.htaccess.zip in 19002161.htaccess und für es im www Ordner hinzu?
            Zip öffnen und die darin enthaltene .htaccess in den www Ordner kopieren.
            Je nach eingesetztem Betriebsystem und Webserver sind aber Anpassungen an dessen Config nötig damit .htaccess Dateien verarbeitet werden.
            Dazu bitte für den jeweils eingesetzen Server im Internet darüber nachlesen.


            Kommentar


              #21
              Zitat von philipp900 Beitrag anzeigen
              Zip öffnen und die darin enthaltene .htaccess in den www Ordner kopieren.
              Leider lässt sich diese 19002161.htaccess.zip aber nicht entpacken (probiert mit MacOS -> Standardarchivierungsprogramm, Keka und TheUnarchiver -> bei allen erfolgt kein Output) daher die Idee die Zip Endung zum entfernen.

              Sind denn, für die Standardinstallation unter CentOS6.5 bzw. 7.6 mit Apache Webserver, Anpassungen notwendig?

              Davon abgesehen, wenn ich den Bridge LBS starte (Projektaktivierung ist auch erfolgt) und dann nach neuen Geräten such, bringt er keine neuen Geräte, Sollte hier die Bridge zu finden sein, oder werden nur wirklich die virtuellen Devices angezeigt, sofern diese über den entsprechenden LBS eingerichtet wurden?
              Zuletzt geändert von shortyle; 14.01.2021, 12:25.
              Gruß David

              Kommentar


                #22
                Da die .htaccess mit einem Punkt beginnt, wird sie bei UNIX und vermutlich auch MacOS als versteckte unsichtbare Datei behandelt.

                Da ich keine Standardinstallation habe, kann ich das nicht beantworten.
                Vermutlich musst du für Apache2 im httpd.conf unter
                Code:
                <Directory "/usr/local/edomi/www">
                AllowOverride All
                setzen.

                Die Bridge selber wird nicht als Device gefunden, sondern lediglich die einzelnen Devices.

                Kommentar


                  #23
                  Dank dir für den Tipp mit den versteckten Datein. Hab diese nun gefunden und in www kopiert.

                  in der /etc/httpd/conf/httpd.conf folgendes angepasst
                  Code:
                  <Directory "/usr/local/edomi/www">
                  AllowOverride All
                  Allerdings findet Alexa nicht das Gerät was ich mit dem LBS 2161 hinzufügen wollte.

                  Code:
                  http://10.0.xxx.xxx/api/description.xml
                  liefert leider auch nur einen Fehler
                  Code:
                  Not Found
                  The requested URL /api/description.xml was not found on this server.
                  Der Log von LBS 2160 sagt auch nicht wirklich viel
                  Code:
                   
                  2021-01-14 13:40:07 377576 27842 debug LBS19002160 [v0.2]: Daemon is not running (2009)
                  2021-01-14 13:40:07 378324 27842 debug LBS19002160 [v0.2]: Starting Hue Emulate Receiver daemon... (2009)
                  2021-01-14 13:40:07 392744 27842 debug LBS19002160 [v0.2]: Daemon is not running (2009)
                  2021-01-14 13:40:07 393354 27842 debug LBS19002160 [v0.2]: Starting daemon ... (2009)
                  2021-01-14 13:40:07 440651 27870 debug EXE19002160 [v0.2]: Waiting for data ... (2009)
                  Gruß David

                  Kommentar


                    #24
                    Hast du den httpd Dienst bzw. den Server danach auch neugestartet?
                    Wie gesagt solange http://xxx/api/description.xml keine XML Datei als Ausgabe bringt, funktioniert die Weiterleitung nicht.
                    Da dies je nach OS und Webserver unterschiedlich zu konfigurieren ist, kann ich keine allgemeine Anleitung geben.

                    Kommentar


                      #25
                      Ja habe de service auch neu gestartet per
                      Code:
                      systemctl restart httpd.service
                      Nutze Edomi 2.02 mit CentOS7 und habe per
                      Code:
                      nano /etc/httpd/conf/httpd.conf
                      die folgende Zeile angepasst
                      Code:
                      <Directory "/usr/local/edomi/www">
                      AllowOverride ALL
                      # Allow open access:
                      Require all granted
                      </Directory>
                      zuvor stand dort none

                      Anschließend den Service neugestartet.

                      Leider ohne Erfolg
                      Zuletzt geändert von shortyle; 14.01.2021, 14:54.
                      Gruß David

                      Kommentar


                        #26
                        Du musst auch das Apache modul mod_rewrite aktiviert haben.
                        Code:
                        sudo a2enmod rewrite
                        Zur Sicherheit vielleicht mal den gesamten Server nicht nur den Dienst neustarten.

                        Kommentar


                          #27
                          Zitat von philipp900 Beitrag anzeigen
                          Du musst auch das Apache modul mod_rewrite aktiviert haben.
                          Ist wohl standardmäßig aktiviert, sagt zumindest der passende Eintrag
                          Code:
                          LoadModule rewrite_module modules/mod_rewrite.so
                          in der Datei
                          Code:
                          /etc/httpd/conf.modules.d/00-base.conf
                          .

                          Habe jetzt aber den Fehler gefunden. In der
                          Code:
                          /etc/httpd/conf/httpd.conf
                          gibt es zwei Absätze die sich mit den Verzeichnis "/usr/local/edomi/www" befassen.
                          Ich hatte die Anpassung in folgendem vorgenommen, was jedoch nicht geklappt hat

                          Code:
                          # Relax access to content within /var/www.
                          #
                          <Directory "/usr/local/edomi/www">
                          AllowOverride none
                          # Allow open access:
                          Require all granted
                          </Directory>
                          stattdessen muss im zweiten Absatz die entsprechende Änderung vorgenommen werden
                          Code:
                          # Further relax access to the default document root:
                          <Directory "/usr/local/edomi/www">
                          #
                          # Possible values for the Options directive are "None", "All",
                          # or any combination of:
                          # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
                          #
                          # Note that "MultiViews" must be named *explicitly* --- "Options All"
                          # doesn't give it to you.
                          #
                          # The Options directive is both complicated and important. Please see
                          # http://httpd.apache.org/docs/2.4/mod/core.html#options
                          # for more information.
                          #
                          Options Indexes FollowSymLinks
                          #
                          # AllowOverride controls what directives may be placed in .htaccess files.
                          # It can be "All", "None", or any combination of the keywords:
                          # Options FileInfo AuthConfig Limit
                          #
                          AllowOverride All
                          #
                          # Controls who can get stuff from this server.
                          #
                          Require all granted
                          </Directory>
                          #
                          Nun klappt es auch mit der XML. Jedoch findet er noch immer keine neuen Geräte. Testweise ein "sw" und ein "on" Gerät mit je einem LBS 2161 konfiguriert.
                          Woran könnte das noch liegen?

                          edit: in der Datei .alexa-hue-status.json werden die Devices auch aufgelistet, soweit passt alles schon einmal.
                          und hier die einzigen beiden Einträge nach einem Server Neustart und anschließender Gerätesuche auf der Alexa

                          Code:
                          10.0.xxx.xxx - - [14/Jan/2021:20:32:18 +0100] "GET /data/log/CUSTOMLOG_Virtual_HUE_Bridge-LBS19002160.htm?20210114203216 HTTP/1.1" 200 5002 "http://10.0.xxx.xxx/admin/?login=xxx&pass=xxx" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.2 Safari/605.1.15"
                          
                          10.0.10.188 - - [14/Jan/2021:20:32:18 +0100] "GET /favicon.ico HTTP/1.1" 404 209 "http://10.0.xxx.xxx/data/log/CUSTOMLOG_Virtual_HUE_Bridge-LBS19002160.htm?20210114203216" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.2 Safari/605.1.15"
                          Zuletzt geändert von shortyle; 14.01.2021, 21:26.
                          Gruß David

                          Kommentar


                            #28
                            Bei dir scheint es sich um ein anderes Problem wie bei Winni zu handeln.
                            Im access_log scheint bei dir kein einziger Eintrag zu /api auf. Sollte eigentlich so wie in Post #16 aussehen
                            Das bedeutet die Bridge läuft nicht richtig oder wird nicht gefunden.
                            Ruf mal /api/edomi/lights im Browser auf und schau ob das zumindest funktioniert.

                            Kommentar


                              #29
                              http://10.0.xxx.xxx/api/edomi/lights

                              liefert lediglich eine weiße Seite.

                              im Anschluss habe ich nochmal im access_log geschaut mit folgenden Output (habe es jetzt auch mal etwas zusammengekürzt

                              Code:
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:22 +0100] "GET /api/description.xml HTTP/1.1" 200 1122 "-"
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:31 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-"
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:31 +0100] "GET /favicon.ico HTTP/1.1" 404 209 "http://10.0.xxx.xxx/api/edomi/lights"
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:42 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-"
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:44 +0100] "GET /api/ HTTP/1.1" 200 - "-"
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:49 +0100] "GET /api/description.xml HTTP/1.1" 200 1122 "-"
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:57 +0100] "GET /api/description.xml HTTP/1.1" 200 1122 "-"
                              10.0.xxx.xxx - - [14/Jan/2021:21:24:59 +0100] "GET /api/ HTTP/1.1" 200 - "-"
                              10.0.xxx.xxx - - [14/Jan/2021:21:25:02 +0100] "GET /api/edomi/lights HTTP/1.1" 200 - "-"
                              Was mich irritiert sind die fehlenden POST Einträge, was vermutlich auf die Bridge zurückzuführen ist.
                              Zuletzt geändert von shortyle; 14.01.2021, 21:39.
                              Gruß David

                              Kommentar


                                #30
                                Wenn die GET requests auf /api von einer Alexa IP kommen funktioniert die Bridge.
                                Wenn /api/edomi/lights allerdings nur eine leere Seite bringt passt im webserver oder im 2161 was nicht.
                                Jetzt scheinst du gleich weit zu sein wie Winni.

                                Bitte ändere mal den Code wie in Post #20 vorgeschlagen und ruf die Seite nochmal mit dem Browser auf.
                                Ich muss wohl noch mehr logging einbauen.

                                Kommentar

                                Lädt...
                                X