Ankündigung

Einklappen
Keine Ankündigung bisher.

AVM Plugin

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

    psilo

    Kurze Frage:
    Ich bekomme ein XML als repsonse:
    Code:
    <devicelist version="1" fwversion="7.27"><device identifier="11963 0521424" id="19" functionbitmask="320" fwversion="03.54" manufacturer="AVM" productname="Comet DECT"><present>1</present><txbusy>0</txbusy><name>OG Bad</name><battery>1</battery><batterylow>1</batterylow><temperature><celsius>235</celsius><offset>0</offset></temperature><hkr><tist>47</tist><tsoll>38</tsoll><absenk>32</absenk><komfort>42</komfort><lock>0</lock><devicelock>0</devicelock><errorcode>0</errorcode><windowopenactiv>0</windowopenactiv><windowopenactiveendtime>0</windowopenactiveendtime><boostactive>0</boostactive><boostactiveendtime>0</boostactiveendtime><batterylow>1</batterylow><battery>1</battery><nextchange><endperiod>0</endperiod><tchange>42</tchange></nextchange><summeractive>0</summeractive><holidayactive>0</holidayactive></hkr></device><device identifier="11960 1033848" id="20000" functionbitmask="320" fwversion="03.54" manufacturer="AVM" productname="Comet DECT"><present>1</present><txbusy>0</txbusy><name>UG Bad</name><battery>80</battery><batterylow>0</batterylow><temperature><celsius>210</celsius><offset>5</offset></temperature><hkr><tist>42</tist><tsoll>26</tsoll><absenk>28</absenk><komfort>40</komfort><lock>0</lock><devicelock>0</devicelock><errorcode>0</errorcode><windowopenactiv>0</windowopenactiv><windowopenactiveendtime>0</windowopenactiveendtime><boostactive>0</boostactive><boostactiveendtime>0</boostactiveendtime><batterylow>0</batterylow><battery>80</battery><nextchange><endperiod>0</endperiod><tchange>40</tchange></nextchange><summeractive>0</summeractive><holidayactive>0</holidayactive></hkr></device><device identifier="11960 1001624" id="20001" functionbitmask="320" fwversion="03.54" manufacturer="AVM" productname="Comet DECT"><present>1</present><txbusy>0</txbusy><name>UG Gästezimmer</name><battery>80</battery><batterylow>0</batterylow><temperature><celsius>195</celsius><offset>0</offset></temperature><hkr><tist>39</tist><tsoll>26</tsoll><absenk>28</absenk><komfort>40</komfort><lock>0</lock><devicelock>0</devicelock><errorcode>0</errorcode><windowopenactiv>0</windowopenactiv><windowopenactiveendtime>0</windowopenactiveendtime><boostactive>0</boostactive><boostactiveendtime>0</boostactiveendtime><batterylow>0</batterylow><battery>80</battery><nextchange><endperiod>0</endperiod><tchange>40</tchange></nextchange><summeractive>0</summeractive><holidayactive>0</holidayactive></hkr></device><device identifier="11960 1033080" id="20002" functionbitmask="320" fwversion="03.54" manufacturer="AVM" productname="Comet DECT"><present>1</present><txbusy>0</txbusy><name>UG Flur</name><battery>70</battery><batterylow>0</batterylow><temperature><celsius>195</celsius><offset>0</offset></temperature><hkr><tist>39</tist><tsoll>26</tsoll><absenk>24</absenk><komfort>40</komfort><lock>0</lock><devicelock>0</devicelock><errorcode>0</errorcode><windowopenactiv>0</windowopenactiv><windowopenactiveendtime>0</windowopenactiveendtime><boostactive>0</boostactive><boostactiveendtime>0</boostactiveendtime><batterylow>0</batterylow><battery>70</battery><nextchange><endperiod>0</endperiod><tchange>40</tchange></nextchange><summeractive>0</summeractive><holidayactive>0</holidayactive></hkr></device></devicelist>
    Beschrieben ist das in Kapitel 3.2 der Protokollbeschreibung.

    Wie kann ich das am besten in ein dict wandeln?

    Kommentar


      Zitat von Sisamiwe Beitrag anzeigen
      Wie kann ich das am besten in ein dict wandeln?
      So wie das Plugin es schon tut.

      Falls ein Plugin noch kein XML nutzt, würde ich das Python Package xmltodict empfehlen. Es ist simple in der Handhabung und kann das was man normalerweise braucht.
      Da das AVM Plugin schon XML nutzt:
      Code:
      from xml.dom import minidom
      ist xml.dom das zu nutzende Package. Wie das genutzt wird, kannst Du ja an mehreren Stellen im Plugin Code sehen.
      Viele Grüße
      Martin

      There is no cloud. It's only someone else's computer.

      Kommentar


        Hallo,
        ich habe das AHA-Interface im avm-plugin modifiziert und diverse Smarthome-Geräte sowie die passenden structs eingefügt. Das WebIF ist noch nicht ganz fertig.
        Erstmal als Entwurf / Draft zum testen. Es ist hier zu finden.
        Es ist sicher noch einiges zu tun, wie Reduzierung auf eine lib zum parsen der XML, etc. Nichtsdestotrotz funktioniert es bereits und es kann getestet werden.

        "Meine" avm_smarthome Plugin ist somit nicht mehr nötig, da die Funktionen integriert wurden.

        Beste Grüße
        Michael

        Kommentar


          Sisamiwe ich versuchs bis Ende des Wochenende anzuschauen. Ein PR wäre etwas einfacher, da ich dann das DIFF easy auf Github sehe und kommentieren kann. Kanns aber auch lokal vergleichen.

          Kommentar


            Zitat von psilo Beitrag anzeigen
            ich versuchs bis Ende des Wochenende anzuschauen.
            Prima. Keine Eile, bin jetzt erstmal im Urlaub.

            Zitat von psilo Beitrag anzeigen
            Ein PR wäre etwas einfacher, da ich dann das DIFF easy auf Github sehe und kommentieren kann
            Git und Ich sind noch keine Freunde. Es wird noch.

            Kommentar


              Zitat von psilo Beitrag anzeigen
              ich versuchs bis Ende des Wochenende anzuschauen.
              Konntest Du schon mal drüber schauen?

              Kommentar


                Konntest Du schon mal drüber schauen?
                Sorry nicht wirklich. Sind jetzt auch erstmal 2.5 Wochen in Urlaub, sofern es unser Staat möchte ;-)

                Uns läuft ja nix davon.

                Kommentar


                  Hallo zusammen,

                  kann es sein das die Doku für das AVM Plugin nicht ganz passt?

                  geht nicht bei mir:
                  Code:
                  avm:    
                      devices:
                  
                          wlan_repeater_1750:
                  
                              GalaxyS5:
                                  avm_mac@wlan_repeater_1750: xx:xx:xx:xx:xx:xx
                                  avm_data_type@wlan_repeater_1750: network_device
                                  type: bool
                                  cache: 'yes'
                                  visu_acl: ro

                  funktioniert:
                  Code:
                  avm:    
                      devices:
                  
                          wlan_repeater_1750:
                  
                              GalaxyS5:
                                  mac: xx:xx:xx:xx:xx:xx
                                  avm_data_type@wlan_repeater_1750: network_device
                                  type: bool
                                  cache: 'yes'
                                  visu_acl: ro
                  Ist öfters so im Example. Wer kann das bitte ändern?


                  Bei wlan hab ich auch Probleme gehabt.

                  geht nicht:
                  Code:
                      
                  
                  avm:
                  
                      wlan:
                  
                          gf_wlan_1:
                              type: bool
                              visu_acl: rw
                              avm_data_type@fritzbox_7490: wlanconfig    # 2,4ghz
                              avm_wlan_index@fritzbox_7490: 1
                  
                          gf_wlan_1_ssid:
                              type: str
                              visu_acl: ro
                              avm_data_type@fritzbox_7490: wlanconfig_ssid    # 2,4ghz
                              avm_wlan_index@fritzbox_7490: 1
                  geht:
                  Code:
                   
                  avm:
                  
                      wlan:
                  
                          gf_wlan_1:
                              type: bool
                              visu_acl: rw
                              avm_data_type@fritzbox_7490: wlanconfig # 2,4ghz
                              avm_wlan_index 1
                  
                          gf_wlan_1_ssid:
                              type: str
                              visu_acl: ro
                              avm_data_type@fritzbox_7490: wlanconfig_ssid    # 2,4ghz
                              avm_wlan_index: 1

                  Kann das jemand bestätigen?

                  Gruß Danny
                  Zuletzt geändert von danny; 17.09.2021, 00:11.

                  Kommentar


                    danny welche version des plugins? dass diese attribute instanzspezfisch abgefragt werden, ist erst seit kurzem (mehrere Monate) drin.
                    Die Doku die bei Dir nicht passt, sieht veraltet aus.

                    In der aktuellen Version heißt das daher auch avm_mac und nicht mac .

                    Siehe bspw im Master: https://github.com/smarthomeNG/plugi...nit__.py#L1772
                    https://github.com/smarthomeNG/plugins/blob/master/avm/README.md
                    (nach avm_mac suchen)
                    Zuletzt geändert von psilo; 17.09.2021, 05:57.

                    Kommentar


                      psilo

                      Das veränderte Plugin (Anbindung der Smarthomegeräte über AHA-Inteface) und die Implementierung der Rufumleitung mit TR-064 Interface habe ich hier abgelegt.

                      Wer es nutzen/testen möchte, findet hier eine Anleitung, die entsprechend zu verwenden ist.

                      Kommentar


                        psilo . Danke der Fehler liegt auf einer ganz anderen Seite.Frage nach der Version hat hier schon alles erklärt. Habe Docker im NAS neu aufgesetzt und beim Image von Henfri auf latest gestellt. Der zieht dann Version 7.2 von SmarthomeNG und den Plugins.(Warum auch immer?) Werde das mal gerade biegen und dann sollte es auch wieder mit der avm_mac laufen wie zuvor.

                        Danke für die Hilfe!

                        Gruß Danny

                        Kommentar


                          Sisamiwe ja da war noch was... inzwischen ist der Sommerurlaub vorbei. Ich komm schon noch dazu.. Schande über mich..

                          Kommentar


                            Zitat von Sisamiwe Beitrag anzeigen
                            Das veränderte Plugin (Anbindung der Smarthomegeräte über AHA-Inteface) und die Implementierung der Rufumleitung mit TR-064 Interface
                            Heute gab es nochmal ein größeres Update inkl. aktualisierter Doku. Darin ist auch ein grobes Changelog beschrieben.

                            Kommentar


                              Hallo,

                              ich habe eine neue Version des AVM-Plugins vorbereitet und suche nun auf diesem Weg Tester dafür, bevor ich einen PR stelle.
                              Die wesentlichen funktionalen Änderungen sind:
                              • Anbindung von FritzSmarthome Geräten via AHA-Interface (bspw Thermostate); (damit ist u.a. der Batteriestand abrufbar)
                              • Rufumleitungen an der Fritzbox setzen, Ein- und Ausschalten
                              • Besseres Fehlerhandling, wenn die Fritzbox nicht erreichbar ist.
                              • Es stehen nun diverse structs zur Verfügung
                              Zudem wurden:
                              • Dokumentation verbessert
                              • Code optimiert
                              Bei mir läuft die Version seit 2 Monaten stabil. bmx hat auch bereits mal getestet.

                              Die neue Version des Plugins ist hier zu finden.
                              Wie ihr das am Besten in Eurer System einbindet, wurde hier beschrieben

                              Also probiert das Plugin bitte mal aus und schreibt mir Kommentare, Issues, etc.

                              ​​​​​​​Danke und Gruß

                              Kommentar


                                Ich lande langsam im Urlaubsmodus und werde es mir zusammen mit dem neuen OWM Plugin die nächsten Tage mal reinladen und testen.

                                Kommentar

                                Lädt...
                                X