Ankündigung

Einklappen
Keine Ankündigung bisher.

CometVisu auf weiterer Hardware

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

    Ich habe die Timeoutzeit in der cometvisu-client.js mal von 60 auf 310 Sek. erhöht.
    Es gibt keine Verbindungsabrüche mehr und da der eibread-cgi Prozess den Timeout nach 300 Sek. auslöst kommt es nicht mehr zu den toten read-Prozessen. Für mich sieht das jetzt stimmiger aus.

    Gibts es bestimmte Gründe warum die Zeit auf 60 Sek. festgelegt wurde?

    Kommentar


      Das mag das Symptom reduzieren - aber nicht lösen. Wenn sich nämlich der Client einfach so verabschiedet (z.B. Runterfahren) passiert genau das gleiche...

      Daher müssen beide Seiten robust darauf reagieren, dass der andere sich mit Ankündigung oder still verabschiedet.

      Der Timeout sollte so hoch sein, das er normalerweise nicht auftritt (denn das Wiederherstellen kostet ja auch nur Ressourcen). Andererseits natürlich so kurz, dass eine gestorbene Verbindung nicht wirklich auffällt.
      Außerdem sollte das Client Timeout kürzer sein, als das auf dem Server, denn der Client baut ja die Verbindungen auf und sollte daher das Heft in der Hand haben.
      TS2, B.IQ, DALI, WireGate für 1wire so wie Server für Logik und als KNX Visu die CometVisu auf HomeCockpit Minor. - Bitte keine PNs, Fragen gehören in das Forum, damit jeder was von den Antworten hat!

      Kommentar


        Da ich eibd über ft12 an den KNX-Buss anschliesse (über die Serielle Schnitstelle vom Raspberry), musste ich eibd neu kompilieren.
        Das hat auch funktioniert, groupswrite, vbusmonitor1, grouplisten funktionieren zuverlässig. Ich habe die Dateien eibread-cgi und eibwrite-cgi, die Links r, w wurden gesetzt, die Datei l ist vorhanden.
        Bin jetzt auf eibd 0.0.5. und habe auch Cometvisu 0.6.2 + lighttpd + php5 am laufen, cgi fastcgi fastcgi-php sind enabled.
        Linknx ist derzeit nicht installiert (habe alles von Anfang an neu installiert).

        Soweit sogut, Cometvisu funktioniert aber ...nur schreibend, nicht lesend.
        Beispiel:
        http://IP/cgi-bin/w?a=0/0/11&v=80 => funktioniert, bekomme {'success':1}, Licht wird geschaltet und das ganze kann von vbusmonitor1 überwacht werden.

        Leider:
        http://IP/cgi-bin/r?s=SESSION&a=0/0/11&t=0 => keine Antwort ...(sagt mir die Chrome java-Konsole)
        Rechte sind völlig relaxed:
        pi@raspberrypi:/usr/lib/cgi-bin$ ls -la
        total 7036
        drwxr-xr-x 2 root root 4096 Feb 13 18:39 .
        drwxr-xr-x 71 root root 12288 Feb 13 18:28 ..
        -rwxrwxrwx 1 root root 92 Feb 13 21:15 l
        lrwxrwxrwx 1 root root 29 Feb 13 18:29 php -> /etc/alternatives/php-cgi-bin
        -rwxr-xr-x 1 root root 7181916 Feb 1 12:31 php5
        lrwxrwxrwx 1 root root 26 Feb 13 18:38 r -> /usr/local/bin/eibread-cgi
        lrwxrwxrwx 1 root root 27 Feb 13 18:38 w -> /usr/local/bin/eibwrite-cgi
        pi@raspberrypi:/usr/local/bin$ ls -la eib*cgi
        -rwxrwxrwx 1 root staff 27349 Feb 13 15:29 eibread-cgi
        -rwxrwxrwx 1 root staff 27182 Feb 13 15:29 eibwrite-cgi

        Die Datei /tmp/eib ist auch da und hat die srwxrwxrwx-Rechte.

        Als Info noch die Parameter meines eibds:

        pi@raspberrypi:~$ ps -ef | grep eibd
        root 1998 1 0 07:38 ? 00:00:27 /usr/local/bin/eibd --trace=2 -D -T -R -S -i -u --eibaddr=0.0.1 --daemon=/var/log/eibd.log --pid-file=/var/run/eibd.pid ft12:/dev/ttyAMA0


        Was mache ich falsch so nah am Ziel ?
        Demo macht das Gleiche (bekommt keine Antwort bei Read, nur bei Write).
        Komischerweise wird auch nichts angezeigt beim "Format Test" , es steht nur "Format "xx.xx": - ", keine Zahlen.
        Alles wird in meinem Chrome-Browser alles perpekt angezeigt fals ich auf CometVisu-Client gehe oder hier CometVisu-Client den "Format Test" durchführe.

        Danke für die nützlichen Tips aus diesem freundlichen Forum.

        Kommentar


          Hallo,

          von den Rechten sieht das eigentlich gut aus, hier sonst mal meine.

          Code:
          /usr/local/bin$ ls -l [URL="http://redaktion.knx-user-forum.de/lexikon/eib/"][U][COLOR=#0066cc]eib[/COLOR][/U][/URL]*
          -rwxr-xr-x 1 root staff 1831547 Dez 19 16:48 [URL="http://redaktion.knx-user-forum.de/lexikon/eibd/"][U][COLOR=#0066cc]eibd[/COLOR][/U][/URL]
          -rwxr-xr-x 1 root staff  354543 Dez 19 16:48 eibnetdescribe
          -rwxr-xr-x 1 root staff  354911 Dez 19 16:48 eibnetsearch
          -rwxr-xr-x 1 root staff   28756 Dez 19 16:48 eibread-cgi
          -rwxr-xr-x 1 root staff   28004 Dez 19 16:48 eibwrite-cgi
          Ich vermute mal, dass da irgendwas bei der Installation der Visu nicht richtig gelaufen ist. Hast Du da mal die Verzeichniss und Rechte überprüft?

          Sonst gibt es hier auch noch eine gute Anleitung.

          Gruß
          Michael

          Kommentar


            Besten Dank Michael für diese schnelle Antwort: zumindest fühlt man sich nicht alleine in diesem Chaos!

            Ja genau diese Anleitung habe ich auch gefolgt.

            Zur Sicherheit habe ich jetzt nochmal Cometvisu installiert und auch das Kommando durchgeführt: chown -R www-data:www-data visu , hat aber nichts gebracht.

            Firebug spuckt mir folgendes heraus als Error:
            "The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must to be declared in the document or in the transfer protocol."

            Dieser Fehler existiert NICHT auf CometVisu-Client
            Wie ist soetwas möglich?
            Könnte es etwas mit Spracheinstellung zu tun haben?

            Kommentar


              Hallo,,

              ich kann dir hier auch nicht mehr weiter helfen, das muß jemand anders machen.
              Nur soviel, hast du mit dem raspi-config mindestens den Zeichensatz en_US.UTF-8 oder zusätzlich de_DE.UTF-8 ausgewählt?
              Das sollte man schon machen.

              Gruß
              Michael

              Kommentar


                Danke für den Tip Michael, ich war gerade am experimentieren in diese Richtung. Habe alles ausprobiert mit diesen Sprachen:
                de_DE.ISO-8859-1... done
                de_DE.UTF-8... done
                de_DE.ISO-8859-15@euro... done
                en_GB.ISO-8859-1... done
                en_GB.ISO-8859-15... done
                en_GB.UTF-8... done
                en_US.ISO-8859-1... done
                en_US.ISO-8859-15... done
                en_US.UTF-8... done
                fr_FR.ISO-8859-1... done
                fr_FR.UTF-8... done
                fr_FR.ISO-8859-15@euro... done.
                Bin nicht weitergekommen, Format Test der demo geht auch nicht.

                Aber egal, das wichtigste ist dass ich die Rückmeldungen bekomme. Solange http://192.168.1.38/cgi-bin/r?s=SESSION&a=0/0/11&t=0 keine Antwort bekommt ist das unmöglich.
                Ich versuche jetzt die Scripts eibwrite-cgi und eibread-cgi direkt auf dem Raspberry auszuführen: ist das machbar ?
                So geht es nicht: /usr/local/bin/eibwrite-cgi a=0/0/11;v=80
                Kennt jemand die richtige Syntax ?

                Kommentar


                  das Problem liegt definitiv an der eibread-cgi:

                  pi@raspberrypi:/usr/lib/cgi-bin$ export QUERY_STRING="a=0/0/11&v=81"
                  pi@raspberrypi:/usr/lib/cgi-bin$ export REQUEST_METHOD="GET"
                  pi@raspberrypi:/usr/lib/cgi-bin$ /usr/local/bin/eibwrite-cgi
                  Content-Type: text/plain

                  {'success':1}

                  ==> eibdwrite funktioniert (Lampe wird auch geschaltet)

                  pi@raspberrypi:/usr/lib/cgi-bin$ export QUERY_STRING="a=0/0/11&t=1"
                  pi@raspberrypi:/usr/lib/cgi-bin$ /usr/local/bin/eibread-cgi
                  Content-Type: text/plain


                  ==> da kommt nichts zurück, auch wenn man die Zeit t=1 auf 50 Sekunden setzt.

                  Über was kommuniziert eibread-cgi mit eibd ? /tmp/eib socket ? Existiert und hat die Rechte 777 bei mir...
                  Ich habe eibd 0.0.5 auf dem Raspberry (der mittels fti12 am KNX hängt), ist das ok?
                  Muss ich irgendwelche TCP-ports konfigurieren damit diese Verbindung (eibdread-cgi nach eibd) funktioniert?

                  Kommentar


                    nun endlich !!!!!!!!!!

                    Habe es geschafft nach paar Tagen/Nächten.
                    So eine Sch**********

                    Endlich werden jetzt die Zustände der Objekte angezeigt. Format Test geht nicht und Firebug mault, ist aber egal.

                    Ich konnte auch eibdread-cgi direct auf der Kommando-Zeile testen:
                    pi@raspberrypi:~$ export REQUEST_METHOD="GET"
                    pi@raspberrypi:~$ export QUERY_STRING="a=0/0/11&t=0"
                    pi@raspberrypi:~$ /usr/local/bin/eibread-cgi
                    Content-Type: text/plain

                    {"d": {"0/0/11":"00"},"i":20}


                    ==> damit testet man die Verbindung von eibdread-cgi zu eibd unabhänig von java, web-server & co, vielleicht hilft das bei anderen.

                    So was war es ? Zwei kleine ASCII-Zeichen...
                    Es steht in keiner Anleitung und hatte noch nie davon in den Diskussionen gehört. Bestimmt klemmt es bei anderen an der gleichen Sache.

                    Jetzt sollen mal die Experten Ihre Meinung geben (in meinen früheren Posts ist der "Fehler" zu erkennen).

                    Kommentar


                      Was war es denn genau?
                      Gruß,
                      Oliver

                      Kommentar


                        Hallo ecotech,

                        Zitat von ecotech Beitrag anzeigen
                        nun endlich !!!!!!!!!!

                        Habe es geschafft nach paar Tagen/Nächten.

                        So was war es ? Zwei kleine ASCII-Zeichen...
                        Es steht in keiner Anleitung und hatte noch nie davon in den Diskussionen gehört. Bestimmt klemmt es bei anderen an der gleichen Sache.

                        Jetzt sollen mal die Experten Ihre Meinung geben (in meinen früheren Posts ist der "Fehler" zu erkennen).
                        man hat versucht dir in diesem Forum zu helfen, ob es nun für dich erfolgreich war oder auch nicht, das spielt hier erst einmal keine Rolle.

                        Aber wir sind hier nicht bei "Rate mal mit Rosenthal"
                        Wenn du weißt wo der Fehler war, dann poste es bitte auch.
                        Andere User werden es dir dann sicher danken.

                        Gruß
                        Michi

                        Kommentar


                          Da ist eine Diskrepanz mit dem timeout (und den Zombies im BE), das ist auch seit längerem bekannt, spielte aber bisher keine grosse Rolle..
                          Wollt ihr uns nun auch mit der "Lösung" beglücken?

                          Makki
                          EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
                          -> Bitte KEINE PNs!

                          Kommentar


                            Zitat von makki Beitrag anzeigen
                            Da ist eine Diskrepanz mit dem timeout (und den Zombies im BE)
                            aha...interessant. Um welchen Timout geht es da genau? Kann man den einstellen irgendwo ? Ist es der Timout bis das Javascript eine Antwort bekommt vom Server ?

                            Es lag an der eibd Konfig. Dort fehlte ein "-c". Wichtig ist aber nicht das Ergebniss, sondern wie ich zum Ziel gekommen bin (über Shell-Kommando-Zeilen(siehe davor) um festzustellen, dass es am eibread-cgi hing, ergo auch an dem was eibd an eibdread-cgi liefern sollte, von daher habe ich alle eibd-Parameter ausprobiert, die einen Einfluss haben könnten auf die "eibd-outputs").

                            Fazit der Sache:
                            - linknx braucht man zuerst mal nicht :da habe ich Zeit verloren am Anfang, da jeder in seinem Tutorial linknx installiert ohne zu sagen, dass es für Cometvisu gar nicht notwendig war. Genau weil die Rückmeldungen nicht kamen, dachte ich es lag an linknx, der das KNX-Protokoll auspioniert (war aber nicht der Fall, nur eibdread-cgi+eibdwrite-cgi+/tmp/eib werden benötigt soviel ich kappiert habe).
                            - bevor man Web-server und Java-Debugger einsetzt, sollten zuerst die Scripts eibdread-cgi und eibdwrite-cgi getestet werden auf Kommando-Zeile (siehe meine Tests davor).

                            Kommentar


                              Hmm, hat jemals irgendjemand behauptet, das man linknx für die CV braucht? Belege
                              Das man den eibd-Cache anschalten sollte (nicht muss! ist dann halt nur a*-langsam), hmm, naja: das tut das BE uvm. wenn man da mitspielen will darf ich davon ausgehen, das man etwas gelesen hat (hier + bcusdk-devel) und das weiss, oder?
                              Sorry, OSS ist *gerne* kostenlos aber nicht umsonst - was denken angeht..

                              Ehrlich, ich habe da kein schlechtes Gewissen: Wenn man weiss was man tut und gurgeln kann, lässt sich das (gewollt wohlwollend) von der Dreambox, via Fritzbox bis zum 20€ OpenWRT-Router bauen.

                              Also, da habe ich schon Wochen an Zeit verloren ohne jeglichen persönlichen Nutzen, noch Fragen?

                              Makki

                              PS: Konkrete Fragen werden sicherlich beantwortet, nicht nur von mir..
                              EIB/KNX & WireGate & HS3, Russound,mpd,vdr,DM8000, DALI, DMX
                              -> Bitte KEINE PNs!

                              Kommentar


                                Das Thema ist ziemlich komplex: auch nach 21 Seiten gibt es noch Fragen.
                                Von daher fand ich es nützlich linknx zuerst mal auf der Seite zu lassen, um sich auf das wesentliche zu konzentrieren damit man Cometvisu ans laufen bekommt.
                                Das war aber nur ein Tip für diejenige, die das Abenteuer wagen.

                                "konkret" würde ich gerne wissen warum ich "-c" in meinem Fall unbedingt benötige (sonst liefert eibdread-cgi kein Ergebniss).
                                Hat es etwas damit zu tun, weil mein eibd über ft12 am KNX hängt?

                                Kommentar

                                Lädt...
                                X