Ankündigung

Einklappen
Keine Ankündigung bisher.

AVM Plugin

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

    #31
    @ivande: welches FB Modell? Firmare geupdated?

    Allgemein: Check mal die Settings zu den Heimnetzfreigaben hier - das 3te ist nicht zwingend nötig, je nachdem was Du ausliest:
    You do not have permission to view this gallery.
    This gallery has 1 photos.

    Kommentar


      #32
      Guten Morgen psilo,
      Fritzbox 7490 FritzOS 06.51
      die Einstellungen aus #31 waren bereits aktiviert.

      Gruß Ivan

      Kommentar


        #33
        @ivande: Mal mit ssl false und http port (49000) probiert? Wie sieht die Plugin.conf aus (Passwort halt durch "..." ersetzen bevor Du postest)

        Ist bspw. http://fritz.box:49000/x_homeplugSCPD.xml im browser erreichbar?

        Das im Anhang kannste auch mal checken...

        Last but not least probier mal diesen CURL und poste, was zurück kommt:
        Code:
        curl "https://fritz.box:49443/upnp/control/wancommonifconfig1" -H "Content-Type: text/xml; charset="utf-8"" -H "SoapAction:urn:dslforum-org:service:WANCommonInterfaceConfig:1#GetTotalPacketsReceived" -d "@test.xml" -k
        test.xml:
        Code:
        <?xml version="1.0" encoding="utf-8" ?>
        <s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
          <s:Body>
            <u:GetTotalPacketsReceived xmlns:u="urn:dslforum-org:service:WANCommonInterfaceConfig:1" />
          </s:Body>
        </s:Envelope>
        Angehängte Dateien
        Zuletzt geändert von psilo; 08.04.2016, 08:04.

        Kommentar


          #34
          Hallo psilo,

          meine Plugin.conf:

          Code:
          [fb1]
              class_name = AVM
              class_path = plugins.avm
              username = smarthome
              password = 1234oderso
              host = fritz.box
              port = 49000    #port = 49443 oder 49000    
              cycle = 240
              ssl = False     # use https or not # ssl = True oder False
              verify = False # verify ssl certificate
              call_monitor = True
              avm_identifier = fritzbox_1
          http://fritz.box:49000/x_homeplugSCPD.xml ​ ist erreichbar (es erscheint ein .xml Dokument im Browser)

          dann habe ich test.xml angelegt. curl musste ich erst installieren, das Ergebnis davon:

          PHP-Code:
          <?xml version="1.0"?>
          <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
          <s:Body>
          <s:Fault>
          <faultcode>s:Client</faultcode>
          <faultstring>UPnPError</faultstring>
          <detail>
          <UPnPError xmlns="urn:dslforum-org:control-1-0">
          <errorCode>502</errorCode>
          <errorDescription>XML error</errorDescription>
          </UPnPError>
          </detail>
          </s:Fault>
          </s:Body>
          </s:Envelope>smarthome@debian32:/usr/local/smarthome$
          Gruß Ivan

          Kommentar


            #35
            Zu obigem hätte zumindest ein
            Code:
            <HTML><HEAD><TITLE>401 Unauthorized (ERR_ACCESS_DENIED)</TITLE></HEAD><BODY><H1>401 Unauthorized</H1><BR>ERR_ACCESS_DENIED<HR><B>Webserver</B> Fri, 08 Apr 2016 12:17:31 GMT</BODY></HTML>
            kommen müssen. Sicher dass das Testfile im gleichen Folder war, wo Du den CURL aufgerufen hast?

            Zwischenfrage: geht das hier:
            Code:
            curl "http://fritz.box:49000/igdupnp/control/WANIPConn1" -H "Content-Type: text/xml; charset="utf-8"" -H "SoapAction:urn:schemas-upnp-org:service:WANIPConnection:1#GetExternalIPAddress" -d "<?xml version='1.0' encoding='utf-8'?> <s:Envelope s:encodingStyle='http://schemas.xmlsoap.org/soap/encoding/' xmlns:s='http://schemas.xmlsoap.org/soap/envelope/'> <s:Body> <u:GetExternalIPAddress xmlns:u='urn:schemas-upnp-org:service:WANIPConnection:1' /> </s:Body> </s:Envelope>" -s | grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>'

            Kommentar


              #36
              Halt... Der Fehler bei Dir ivande tritt wohl bei Verbindungsversuch auf den CallMonitor der FB auf.. Der muss natürlich noch eingeschaltet werden:
              http://www.computerhilfen.de/info/ca...ktivieren.html

              Ich nehme das mal in die Readme auf..

              Alternative:
              Probier als ersten Hotfix mal, die Items zum Monitor rauszunehmen. Dann dürfte er den Thread und die Connection gar nicht erst versuchen. Achso genau und natürlich in der plugin.conf:

              call_monitor = False

              Ansonsten: mach mal ein "telnet fritz.box 1012" und poste was passiert.. Und wenn kein Fehler kommt mach mal nen Anruf und schaue, ob dann irgendwelche Textzeilen kommen.
              Zuletzt geändert von psilo; 08.04.2016, 13:31.

              Kommentar


                #37
                Neuster stand im DEV hat jetzt ein gefixtes Exceptionhandling wenn auf den CallMonitor Dienst der FB connected wird und dieser deaktiviert wurde / deaktiviert ist:

                Code:
                        try:
                            self.conn.connect((self._host, self._port))
                            self._listen_thread = threading.Thread(target=self._listen, name="MonitoringService_%s" % self._avm_identifier).start()
                        except Exception as e:
                            self.conn = None
                            logger.error("MonitoringService: Cannot connect to "+self._host+" on port: "+str(self._port)+", CallMonitor activated by #96*5*? - Error: "+str(e))
                            return

                Kommentar


                  #38
                  Danke
                  die Fehlermeldung wird mit der neuen Version angezeigt (bei nicht aktiven CallMonitor).

                  mit aktiven Callmonitor startet das Plugin nun ohne Fehlermeldungen :-)
                  Jetzt muss ich noch das Widget ins SmartVisu basteln.


                  Kommentar


                    #39
                    psilo hab das Plugin endlich angebunden. Läuft ganz gut. Ich habe auch eine Performance Verbesserung commitet.
                    Mir ist noch aufgefallen, dass im Log öfters folgendes auftaucht:
                    Code:
                    2016-04-09 02:09:55 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:09:55 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:09:56 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:09:57 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:09:57 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:09:58 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:09:59 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:09:59 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:10:00 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:10:01 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:10:02 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    2016-04-09 02:10:03 INFO     avm_fritzbox_1 Resetting dropped connection: fritz.box
                    Das kommt aus "urllib3.connection", ich schaue mal morgen nach der Ursache

                    Kommentar


                      #40
                      Sieht mir so aus, als hält er aktuell die Session nicht am Leben. Lese auch mal bischen nach.

                      PS: aktuell nicht reproduzierbar bei mir. Wie oft taucht das auf?
                      Zuletzt geändert von psilo; 09.04.2016, 06:03.

                      Kommentar


                        #41
                        Hat zufällig jemand einen Fix für dieses SV Problem: https://knx-user-forum.de/forum/supp...-null-ausgeben ? Mein Callmonitor Widget verliert deswegen die führende 0 wenn Telefonnummern nicht zu Namen aufgelöst werden können...

                        @alle die das Ding aktuell testen: gibt es neue Issues?

                        Kommentar


                          #42
                          Kann ich mit dem avm Plugin auch das phone.list widget benützen?

                          Auf der Doku-Seite steht leider nicht wie man dieses konfiguriert?

                          http://docu.smartvisu.de/2.7/index.p...get_phone.list

                          Gruß Ivan

                          Kommentar


                            #43
                            @ivande: ich weiss nicht - hab ich nie versucht. Ich habe die calllist Methode des alten Plugins neu implementiert, wenn das damit ging sollte es weiterhin gehen. Vielleicht komme ich die Woche oder am Wochenende dazu, mir das mal anzusehen. Aktuell schlägt der "echte" Job aber wieder ziemlich ein. Gerne kann das jemand selber mal ausprobieren..

                            Update: soweit ich die Phone-Implementierung in der SV sehe, liest diese irgendein CSV ein (private function handlecsv()), da müsste sich halbwegs schnell was bauen lassen. Vor dem Wochenende geht aber wirklich nichts..

                            Code:
                            private function handlecsv()
                                {
                                    /*
                                    [0] => Typ
                                    [1] => Datum
                                    [2] => Name
                                    [3] => Rufnummer
                                    [4] => Nebenstelle
                                    [5] => Eigene Rufnummer
                                    [6] => Dauer
                                    */
                            [...]
                            PS: was man immer machen kann ist eine Logik schreiben, die die calllist holt, html daraus baut und in ein str item schreibt. das kannst Du dann einfach in der SV einblenden.. Was ich toll fände wären items die "Arrays" halten und über die die SV iterieren kann. das sind aber wohl arge umbauten...
                            Zuletzt geändert von psilo; 13.04.2016, 04:28.

                            Kommentar


                              #44
                              Anbei die Implementierung um die Calllist des AVM Plugins in SV zu integrieren.

                              Siehe: https://github.com/smarthomeNG/smarthome/wiki/AVM
                              Zuletzt geändert von psilo; 14.04.2016, 19:33.

                              Kommentar


                                #45
                                PS: bei meiner Datenzulieferungs-Variante für phone.list usw. braucht ihr in SV keinerlei IP oder Zugangsdaten zu hinterlegen, da ja auf ein von der SH.py Logik generiertes CSV zugegriffen wird. Ggf. muss der Austauschort des CSVs aber angepasst werden. In Zukunft könnte man auch eine REST API von SH.py direkt anfragen

                                Kommentar

                                Lädt...
                                X