Ankündigung

Einklappen
Keine Ankündigung bisher.

Neuer Baustein: Fritz TR-064 (14102)

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

    Hi!

    Hab es hinbekommen. Mit dem Baustein 13316 Textfinder prüfe ich vor dem Zerlegen des XML, ob in dem XML eine der Rufnummern drin ist, die ich in der Anrufliste haben will. Wenn ja, kopiere ich das XML auf ein Hilfsobjekt, was ich dann in einen Ringspeicher schiebe. Die XMLs am Ausgang des Ringspeichers zerlege ich dann über XML2Mix in die Einzelobjekte.
    Möchte den Komfort meiner Installation nicht mehr missen!

    Kommentar


      So, weiter geht es...

      Mit

      Code:
      {"serviceType":"urn:dslforum-org:service:WLANConfiguration:1", "action_name":"GetSecurityKeys","argumentList":{}}
      bekomme ich den WLAN-Schlüssel (mit SetSecurityKeys kann man ihn auch ändern) - aber nur den für das normale WLAN. Interessanter wäre hier, den Schlüssel für das Gäste-WLAN auszulesen und ändern zu können - jemand dazu schon irgendwas gefunden?

      Möchte den Komfort meiner Installation nicht mehr missen!

      Kommentar


        Was passiert, wenn du WLANConfiguration:2 usw. abfragen würdest?

        Kommentar


          Zitat von SirTom Beitrag anzeigen
          Was passiert, wenn du WLANConfiguration:2 usw. abfragen würdest?
          Jau, genau das ist es! WLAN 3 ist das Gast-WLAN!

          So, jetzt hab ich alles zusammen, außer VPN - also die Statusinfo, ob gerade ein aktiver VPN-Zugang besteht/gerade jemand über VPN angemeldet ist. Aber da hab ich in den ganzen Dokumenten nichts zu gefunden!
          Möchte den Komfort meiner Installation nicht mehr missen!

          Kommentar


            So, hab jetzt fast alles so laufen, wie es soll... nur den WLAN-Schlüssel setzen klappt noch nicht :-( SSID dagegen klappt!

            Für das Setzen des Keys schicke ich folgenden SOAP request:

            Code:
            {"serviceType":"urn:dslforum-org:service:WLANConfiguration:3", "action_name":"SetSecurityKeys","argumentList":{"NewKeyPassphrase":"123456789"}}
            Nix passiert... für die SSID funktioniert es aber und da ist der Aufruf sehr ähnlich:

            Code:
            {"serviceType":"urn:dslforum-org:service:WLANConfiguration:3", "action_name":"SetSSID","argumentList":{"NewSSID":"MEINESSID"}}
            Wo liegt mein Denkfehler?

            Oder muss man bei einer Aktion, die mehrere Argumente hat, alle Argumente schicken, auch wenn man nur eins (hier den Key) ändern will?

            EDIT:
            So es funktioniert!

            Man muss tatsächlich alle 6 Attribute mitschicken, auch wenn man nur eines ändern will. Also erst die aktuellen Werte ermitteln, extrahieren, Befehl wieder zusammenbauen mit dem geänderten Wert und den anderen nicht geänderten.
            Zuletzt geändert von Hightech; 03.05.2021, 11:33.
            Möchte den Komfort meiner Installation nicht mehr missen!

            Kommentar


              Hallo Tobias,

              Frage : der Baustein läuft bei mir immer so ca. 1 Tag und "hängt" sich dann auf. Ich frage nur 3 Iphone auf Anwesenheit ab, was soweit auch eine Zeitlang funktioniert. Intervall steht fest auf 70 s.

              HS ist 4.7 ( liegt es eventuell daran)
              Fritz ist aktuell


              Folgender Debug Eintrag

              05.02.2022 11:04:15 (38)
              14102 setSoapAction: <?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>714</errorCode>
              <errorDescription>NoSuchEntryInArray</errorDescription>
              </UPnPError>
              </detail>
              </s:Fault>
              </s:Body>
              </s:Envelope>

              Danke vorab

              VG Thorsten

              Kommentar


                Zitat von ThorstenW Beitrag anzeigen
                Frage : der Baustein läuft bei mir immer so ca. 1 Tag und "hängt" sich dann auf.
                Das ist natürlich ein super blöder Fehler, weil schwer zu reproduzieren.
                • Was ändert sich ihn der Zwischenzeit?
                • woran merkst du, dass der BS hängt?
                • Welche Version hat der Baustein (soll: 1.02)
                • Poste doch mal ein Bild der umgebenden Logik
                Die Fehlermeldung legt nahe, dass etwas angefragt wird, dass es nicht gibt. Nutzt du generische SOAP Aktionen?

                Kommentar


                  Es ändert sich soweit dort nix

                  Ich lasse mir über die Visu als Text anzeigen zu Haus oder abwesend , bis zum "aufhängen klappt das auch und ich kann das auch "simulieren" ( Iphone an / aus )

                  Baustein ist Version 0.8 aus dem Downloadbereich >> wo finde ich den neuen?

                  Logik kann ich dann posten, würde es aber erstmal mit der neuen Version testen

                  Danke!!!

                  Kommentar


                    Oha, im Moment hier:
                    https://github.com/En3rGy/14102_Frit...ases/tag/v1.02

                    Kommentar




                      Es kommt leider trotzdem der gleiche Fehler im Debug
                      Die Nachgeschaltene "Logik" kann da ja aber keinen Einfluss drauf haben.








                      Logik.jpg

                      Kommentar


                        Zitat von ThorstenW Beitrag anzeigen
                        <errorCode>714</errorCode>
                        <errorDescription>NoSuchEntryInArray</errorDescription>
                        Wenn die MAC Adresse nicht gefunden wird, kommt eine andere "Fehlermeldung", nämlich:
                        Code:
                        <errorCode>402</errorCode>
                        <errorDescription>Invalid Args</errorDescription>
                        Ich vermute, deine FritzBox mag Aktionen der regelmäßigen Abfrage nicht. Dort habe ich ein bisschen mehr Abfragen & Debugging eingebaut: https://github.com/En3rGy/14102_Frit...ases/tag/v1.03
                        Sollte dort de Fehler liegen, wäre es plausibel, dass die Anwesenheits-Abfrage nicht mehr funktioniert. Dies sollte nun behoben sein, wenn der Fehler bei der Abfrage des Wifi-Status liegt. Wenn dem so wäre, fragt sich, was bei deiner FRitzBox anders ist...

                        Poste (ggf. privat) doch auch den kompletten Abschnitt der HS-Debug-Seite von:
                        Achtung: Evtl. stehen dort persönliche Daten in Klartetxt.
                        • Exception
                        • HSL 2.0 > Exceptions
                        • HSL 2.0 > hsl20_3_FritzBox.

                        Kommentar


                          Neuer Versuch mit neuer Version:
                          https://github.com/En3rGy/14102_Frit...ases/tag/v1.04

                          In der Log-Ausgabe sollte nun auch der aufrufende Befehl stehen. Mal schauen, was den Fehler auslöst.

                          Kommentar


                            Zwischenstandsbericht:

                            Bis jetzt läuft der Baustein unter der 1.04 durch und meldet auch zuverlässig anwesend abwesend

                            Schon mal vielen Dank!!

                            VG Thorsten

                            Kommentar


                              Hallo!

                              En3rGy:

                              Wäre das für Dich ein großer Aufwand, den Baustein auf 10 Mac-Adressen zu erweitern? Oder noch besser einen generischen Ausgang, der alle verbundenen Mac-Adressen zurückliefert? Das könnte man dann mit dem Baustein "Textfinder" auf die einzelnen Mac-Adressen analysieren.

                              Bin ja bekennender Nicht-Code-Versteher, aber wenn ich mir Deinen Code auf github anschaue, sind es in meinen Augen folgende Anpassungen:

                              Beim Python-Code weiß ich nicht, welche der Dateien man erweitern muss :-(

                              config.xml: Definition der Ein- und Ausgänge erweitert

                              Code:
                              <?xml version="1.0" encoding="utf-8"?>
                              <config>
                              <modules>
                              <module category="Datenaustausch" context="hsl20_3_FritzBox" id="14102" name="Fritz TR-064 (14102)" version="1.04">
                              <inputs>
                              <input type="string" const_name="sUId" init_value="">1: Benutzer</input>
                              <input type="string" const_name="sPW" init_value="">1: Passwort</input>
                              <input type="string" const_name="sFBIP" init_value="">1: FritzBox IP</input>
                              <input type="number" const_name="bWifi1On" init_value="0">2: WLAN 1 E/A</input>
                              <input type="number" const_name="bWifi2On" init_value="0">2: WLAN 2 E/A</input>
                              <input type="number" const_name="bWifi3On" init_value="0">2: WLAN 3 E/A</input>
                              <input type="number" const_name="bWifiGuestOn" init_value="0">2: Gast-WLAN E/A</input>
                              <input type="string" const_name="sMac1" init_value="">3: MAC-Addr 1</input>
                              <input type="string" const_name="sMac2" init_value="">3: MAC-Addr 2</input>
                              <input type="string" const_name="sMac3" init_value="">3: MAC-Addr 3</input>
                              <input type="string" const_name="sMac4" init_value="">3: MAC-Addr 4</input>
                              <input type="string" const_name="sMac5" init_value="">3: MAC-Addr 5</input>
                              <input type="string" const_name="sMac6" init_value="">3: MAC-Addr 6</input>
                              <input type="string" const_name="sMac7" init_value="">3: MAC-Addr 7</input>
                              <input type="string" const_name="sMac8" init_value="">3: MAC-Addr 8</input>
                              <input type="string" const_name="sMac9" init_value="">3: MAC-Addr 9</input>
                              <input type="string" const_name="sMac10" init_value="">3: MAC-Addr 10</input>
                              <input type="string" const_name="sTelNo" init_value="">4: Rufnummer</input>
                              <input type="number" const_name="bDial" init_value="0">4: Dial/Hang-Up (1/0)</input>
                              <input type="number" const_name="bAbEA" init_value="0">4: AB1 E/A</input>
                              <input type="number" const_name="bReboot" init_value="0">5: Reboot</input>
                              <input type="string" const_name="nSoapJson" init_value="">6: Gen. SOAP Aktion</input>
                              <input type="number" const_name="nUpdateRate" init_value="0">7: Update-Rate (s)</input>
                              </inputs>
                              <outputs>
                              <output type="string" const_name="sWifi1SSID" init_value="">2: SSID WLAN 1</output>
                              <output type="number" const_name="bRmWlan1OnOff" init_value="0">2: RM WLAN 1 E/A</output>
                              <output type="string" const_name="sWifi2SSID" init_value="">2: SSID WLAN 2</output>
                              <output type="number" const_name="bRmWlan2OnOff" init_value="0">2: RM WLAN 2 E/A</output>
                              <output type="string" const_name="sWifi3SSID" init_value="">2: SSID WLAN 3</output>
                              <output type="number" const_name="bRmWlan3OnOff" init_value="0">2: RM WLAN 3 E/A</output>
                              <output type="string" const_name="sWifiGuestSSID" init_value="">2: SSID Gast-WLAN</output>
                              <output type="number" const_name="bRmWlanGuestOnOff" init_value="0">2: RM Gast-WLAN E/A</output>
                              <output type="number" const_name="bMac1Avail" init_value="0">3: MAC-Addr 1 angem.</output>
                              <output type="number" const_name="bMac2Avail" init_value="0">3: MAC-Addr 2 angem.</output>
                              <output type="number" const_name="bMac3Avail" init_value="0">3: MAC-Addr 3 angem.</output>
                              <output type="number" const_name="bMac4Avail" init_value="0">3: MAC-Addr 4 angem.</output>
                              <output type="number" const_name="bMac5Avail" init_value="0">3: MAC-Addr 5 angem.</output>
                              <output type="number" const_name="bMac6Avail" init_value="0">3: MAC-Addr 6 angem.</output>
                              <output type="number" const_name="bMac7Avail" init_value="0">3: MAC-Addr 7 angem.</output>
                              <output type="number" const_name="bMac8Avail" init_value="0">3: MAC-Addr 8 angem.</output>
                              <output type="number" const_name="bMac9Avail" init_value="0">3: MAC-Addr 9 angem.</output>
                              <output type="number" const_name="bMac10Avail" init_value="0">3: MAC-Addr 10 angem.</output>
                              <output type="number" const_name="bGuestAvail" init_value="0">3: Gast angem.</output>
                              <output type="number" const_name="bAbEA" init_value="0">4: AB1 E/A</output>
                              <output type="string" const_name="sSoapRply" init_value="0">5: Gen. Soap Antw.</output>
                              <output type="number" const_name="instance_id" init_value="0">6: Instance Id</output>
                              </outputs>
                              <remanent_variables>
                              </remanent_variables>
                              <imports>
                              </imports>
                              </module>
                              </modules>
                              </config>
                              Zuletzt geändert von Hightech; 27.06.2022, 13:49.
                              Möchte den Komfort meiner Installation nicht mehr missen!

                              Kommentar


                                Ich habe jetzt eine neue Fritzbox bekommen. Läuft der Baustein mit der aktuellsten Firmware (7.29)?

                                Kommentar

                                Lädt...
                                X