Ankündigung

Einklappen
Keine Ankündigung bisher.

AVM Plugin

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

  • ivande
    antwortet
    ideal wäre bei jedem Anruf :-)

    Einen Kommentar schreiben:


  • psilo
    antwortet
    Wie Du magst Ich mache das zyklisch aktuell jede Minute.. Vermutlich zu oft, weil die SV per Default auf 15 min refresh an der Stelle steht..

    Code:
    [CallListCSVLogic]
    filename = calllist_csv_logic.py
    crontab = * * * *

    Einen Kommentar schreiben:


  • ivande
    antwortet
    Hallo psilo,

    das ging ja schnell, und auch noch vor dem Wochenende :-)

    wie muss ich denn die logik triggern?

    Gruß Ivan

    Einen Kommentar schreiben:


  • psilo
    antwortet
    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

    Einen Kommentar schreiben:


  • psilo
    antwortet
    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.

    Einen Kommentar schreiben:


  • psilo
    antwortet
    @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.

    Einen Kommentar schreiben:


  • ivande
    antwortet
    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

    Einen Kommentar schreiben:


  • psilo
    antwortet
    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?

    Einen Kommentar schreiben:


  • psilo
    antwortet
    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.

    Einen Kommentar schreiben:


  • cmalo
    antwortet
    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

    Einen Kommentar schreiben:


  • ivande
    antwortet
    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.


    Einen Kommentar schreiben:


  • psilo
    antwortet
    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

    Einen Kommentar schreiben:


  • psilo
    antwortet
    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.

    Einen Kommentar schreiben:


  • psilo
    antwortet
    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}\>'

    Einen Kommentar schreiben:


  • ivande
    antwortet
    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

    Einen Kommentar schreiben:

Lädt...
X