Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. (solved) FRITZ!Box - Ereignisse bzw. Log auslesen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    302

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

(solved) FRITZ!Box - Ereignisse bzw. Log auslesen

Scheduled Pinned Locked Moved Blockly
blockly
21 Posts 6 Posters 14.3k Views 11 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • iobroker_RainerI iobroker_Rainer

    @gammler2003 ... man gibt die beschriebene Kommandozeile in den Datenpunkt "Command" eines installierten TR-064 Adapters ein. Als begleitende Lektüre kann ich "AVM TR-064 – First Steps" empfehlen - gibt es irgendwo in den Tiefen des AVM Webauftritts. Hilft das weiter?

    G Offline
    G Offline
    gammler2003
    wrote on last edited by
    #5

    @iobroker_rainer Ja genial, vielen Dank dir dafür!

    Ich würde gerne bei bestimmten Ereignissen im Log informiert werden. Dazu würde ich nun in bestimmten Abständen den gesamten Log auslesen, in eine Variable übernehmen und diese dann vergleichen, ob es neue Ereignisse gibt - etwas umständlich, aber könnte klappen.

    Oder gibt es hier noch einen einfacheren Weg, den ich bisher noch nicht kenne?

    Viele Grüße

    iobroker_RainerI 1 Reply Last reply
    0
    • G gammler2003

      @iobroker_rainer Ja genial, vielen Dank dir dafür!

      Ich würde gerne bei bestimmten Ereignissen im Log informiert werden. Dazu würde ich nun in bestimmten Abständen den gesamten Log auslesen, in eine Variable übernehmen und diese dann vergleichen, ob es neue Ereignisse gibt - etwas umständlich, aber könnte klappen.

      Oder gibt es hier noch einen einfacheren Weg, den ich bisher noch nicht kenne?

      Viele Grüße

      iobroker_RainerI Offline
      iobroker_RainerI Offline
      iobroker_Rainer
      wrote on last edited by
      #6

      @gammler2003
      Kann schon sein… welche Ereignisse sind es denn, die dich interessieren?

      G 1 Reply Last reply
      0
      • iobroker_RainerI iobroker_Rainer

        @gammler2003
        Kann schon sein… welche Ereignisse sind es denn, die dich interessieren?

        G Offline
        G Offline
        gammler2003
        wrote on last edited by
        #7

        @iobroker_rainer
        u.a. das hier - mein DSL spinnt zur Zeit und ich würde über den ioBroker gerne eine explizite Info erhalten, wenn der Fehler wieder auftritt.

        03.02.22 13:58:07 DSL antwortet nicht (Keine DSL-Synchronisierung).
        
        iobroker_RainerI M 2 Replies Last reply
        0
        • G gammler2003

          @iobroker_rainer
          u.a. das hier - mein DSL spinnt zur Zeit und ich würde über den ioBroker gerne eine explizite Info erhalten, wenn der Fehler wieder auftritt.

          03.02.22 13:58:07 DSL antwortet nicht (Keine DSL-Synchronisierung).
          
          iobroker_RainerI Offline
          iobroker_RainerI Offline
          iobroker_Rainer
          wrote on last edited by iobroker_Rainer
          #8

          @gammler2003 ... verstehe. Also ich würde als erstes mal die Doku AVM TR-064 – First Steps durchblättern. Könnte mir gut vorstellen, dass unter dem Service DeviceInfo die entsprechenden Daten verfügbar sind.
          Falls ja, dann könntest Du z.B. jede Minute das zugehörige Kommando ausführen und Dich im Fehlerfall via Telegram benachrichtigen lassen.

          1 Reply Last reply
          0
          • G gammler2003

            @iobroker_rainer
            u.a. das hier - mein DSL spinnt zur Zeit und ich würde über den ioBroker gerne eine explizite Info erhalten, wenn der Fehler wieder auftritt.

            03.02.22 13:58:07 DSL antwortet nicht (Keine DSL-Synchronisierung).
            
            M Offline
            M Offline
            Megawaldi
            wrote on last edited by
            #9

            @gammler2003
            Das sollte dir weiterhelfen:

            var lastQueryLog = undefined;
            
            async function getFritzboxLogs(){
                var command = {
                    "service": "urn:dslforum-org:service:DeviceInfo:1",
                    "action": "GetDeviceLog",
                    "params": {"NewDeviceLog":""}
                };
            
                var commandID = 'tr-064.0.states.command'/*command*/;
                var commandResultID = 'tr-064.0.states.commandResult'/*commandResult*/;
                
                console.log( "Query Fritzbox Log");
            
                setState(commandID,JSON.stringify(command));
                var resultJSON = (await getStateAsync(commandResultID)).val;
                var resultObj = JSON.parse(resultJSON);
                var result = resultObj.NewDeviceLog;
                
                var resArray = result.split(/\r\n|\r|\n/);
                resArray.reverse();
            
                for(var msg of resArray){
                    //console.log(msg);
                    if (lastQueryLog != undefined && lastQueryLog.includes(msg)) {
                        console.log( "Alter Log: "+msg);
                    } else {
            	        console.log("Neuer Log: "+msg);
            			// Hier muss dein Filter rein 
            			// sendMsgTo....
                    }
                }
                lastQueryLog = resArray.slice();
            
            }
            
            
            schedule('*/3 * * * *', async function () {
                getFritzboxLogs();
            });
            getFritzboxLogs();
            
            G 1 Reply Last reply
            0
            • M Megawaldi

              @gammler2003
              Das sollte dir weiterhelfen:

              var lastQueryLog = undefined;
              
              async function getFritzboxLogs(){
                  var command = {
                      "service": "urn:dslforum-org:service:DeviceInfo:1",
                      "action": "GetDeviceLog",
                      "params": {"NewDeviceLog":""}
                  };
              
                  var commandID = 'tr-064.0.states.command'/*command*/;
                  var commandResultID = 'tr-064.0.states.commandResult'/*commandResult*/;
                  
                  console.log( "Query Fritzbox Log");
              
                  setState(commandID,JSON.stringify(command));
                  var resultJSON = (await getStateAsync(commandResultID)).val;
                  var resultObj = JSON.parse(resultJSON);
                  var result = resultObj.NewDeviceLog;
                  
                  var resArray = result.split(/\r\n|\r|\n/);
                  resArray.reverse();
              
                  for(var msg of resArray){
                      //console.log(msg);
                      if (lastQueryLog != undefined && lastQueryLog.includes(msg)) {
                          console.log( "Alter Log: "+msg);
                      } else {
              	        console.log("Neuer Log: "+msg);
              			// Hier muss dein Filter rein 
              			// sendMsgTo....
                      }
                  }
                  lastQueryLog = resArray.slice();
              
              }
              
              
              schedule('*/3 * * * *', async function () {
                  getFritzboxLogs();
              });
              getFritzboxLogs();
              
              G Offline
              G Offline
              gammler2003
              wrote on last edited by
              #10

              @megawaldi genial, vielen Dank dir! Funktioniert auch soweit alles, bis auf dass ich beim Speichert/Neustart des Skripts direkt mehrere Telegramm-Benachrichtigungen erhalte. Gibt es eine Möglichkeit, dies beim Neustart des Skripts einmalig zu unterbinden?

              So sieht nun meine um die Telegramm-Benachrichtigung erweiterte Version:

              var lastQueryLog = undefined;
               
              async function getFritzboxLogs(){
                  var command = {
                      "service": "urn:dslforum-org:service:DeviceInfo:1",
                      "action": "GetDeviceLog",
                      "params": {"NewDeviceLog":""}
                  };
               
                  var commandID = 'tr-064.0.states.command'/*command*/;
                  var commandResultID = 'tr-064.0.states.commandResult'/*commandResult*/;
                  
                  console.log( "Query Fritzbox Log");
               
                  setState(commandID,JSON.stringify(command));
                  var resultJSON = (await getStateAsync(commandResultID)).val;
                  var resultObj = JSON.parse(resultJSON);
                  var result = resultObj.NewDeviceLog;
                  
                  var resArray = result.split(/\r\n|\r|\n/);
                  resArray.reverse();
               
                  for(var msg of resArray){
                      //console.log(msg);
                      if (lastQueryLog != undefined && lastQueryLog.includes(msg)) {
                         //console.log( "Alter Log: "+msg);
                      } else {
              	        //console.log("Neuer Log: "+msg);
              			// Hier muss dein Filter rein 
              			// sendMsgTo....
                          if (msg.includes('Internetverbindung wurde getrennt') == true)
                          {
                              var text = "Fritz! DSL Verbindung getrennt";
                              telegram (text);
                          }
                      }
                  }
                  lastQueryLog = resArray.slice();
               
              }
               
               
              schedule('*/3 * * * *', async function () {
                  getFritzboxLogs();
              });
              getFritzboxLogs();
              
              
              M 1 Reply Last reply
              0
              • G gammler2003

                @megawaldi genial, vielen Dank dir! Funktioniert auch soweit alles, bis auf dass ich beim Speichert/Neustart des Skripts direkt mehrere Telegramm-Benachrichtigungen erhalte. Gibt es eine Möglichkeit, dies beim Neustart des Skripts einmalig zu unterbinden?

                So sieht nun meine um die Telegramm-Benachrichtigung erweiterte Version:

                var lastQueryLog = undefined;
                 
                async function getFritzboxLogs(){
                    var command = {
                        "service": "urn:dslforum-org:service:DeviceInfo:1",
                        "action": "GetDeviceLog",
                        "params": {"NewDeviceLog":""}
                    };
                 
                    var commandID = 'tr-064.0.states.command'/*command*/;
                    var commandResultID = 'tr-064.0.states.commandResult'/*commandResult*/;
                    
                    console.log( "Query Fritzbox Log");
                 
                    setState(commandID,JSON.stringify(command));
                    var resultJSON = (await getStateAsync(commandResultID)).val;
                    var resultObj = JSON.parse(resultJSON);
                    var result = resultObj.NewDeviceLog;
                    
                    var resArray = result.split(/\r\n|\r|\n/);
                    resArray.reverse();
                 
                    for(var msg of resArray){
                        //console.log(msg);
                        if (lastQueryLog != undefined && lastQueryLog.includes(msg)) {
                           //console.log( "Alter Log: "+msg);
                        } else {
                	        //console.log("Neuer Log: "+msg);
                			// Hier muss dein Filter rein 
                			// sendMsgTo....
                            if (msg.includes('Internetverbindung wurde getrennt') == true)
                            {
                                var text = "Fritz! DSL Verbindung getrennt";
                                telegram (text);
                            }
                        }
                    }
                    lastQueryLog = resArray.slice();
                 
                }
                 
                 
                schedule('*/3 * * * *', async function () {
                    getFritzboxLogs();
                });
                getFritzboxLogs();
                
                
                M Offline
                M Offline
                Megawaldi
                wrote on last edited by
                #11

                @gammler2003
                Du kannst die Zeile 46 rausnehmen. Dann wird es nicht sofort beim Neustart ausgeführt. Aber beim ersten Durchlauf wird immer das ganze log als "neu" betrachtet. Danach nur noch die Logs die vorher noch nicht da waren...

                Q 1 Reply Last reply
                1
                • M Megawaldi

                  @gammler2003
                  Du kannst die Zeile 46 rausnehmen. Dann wird es nicht sofort beim Neustart ausgeführt. Aber beim ersten Durchlauf wird immer das ganze log als "neu" betrachtet. Danach nur noch die Logs die vorher noch nicht da waren...

                  Q Offline
                  Q Offline
                  quotschmacher
                  wrote on last edited by
                  #12

                  @megawaldi oder halt einfach ne bool-variable mit rein die dann beim ersten durchlauf eben nicht gesetzt ist, log wird quasi ignoriert und dann wird die variable gesetzt und das log ausgewertet.

                  M 1 Reply Last reply
                  1
                  • Q quotschmacher

                    @megawaldi oder halt einfach ne bool-variable mit rein die dann beim ersten durchlauf eben nicht gesetzt ist, log wird quasi ignoriert und dann wird die variable gesetzt und das log ausgewertet.

                    M Offline
                    M Offline
                    Megawaldi
                    wrote on last edited by
                    #13

                    @quotschmacher
                    Das muste mir nicht sagen. Ich wollte explizit, das beim ersten Durchgang alle Logs als neu betrachtet werden.

                    G 1 Reply Last reply
                    1
                    • M Megawaldi

                      @quotschmacher
                      Das muste mir nicht sagen. Ich wollte explizit, das beim ersten Durchgang alle Logs als neu betrachtet werden.

                      G Offline
                      G Offline
                      gammler2003
                      wrote on last edited by
                      #14

                      Vielen Dank für eure Rückmeldungen!

                      M 1 Reply Last reply
                      0
                      • G gammler2003

                        Vielen Dank für eure Rückmeldungen!

                        M Offline
                        M Offline
                        moeff
                        wrote on last edited by
                        #15

                        Hi,

                        das selbe suche ich für Ereignisse im Log für VPN "hergestellt" "getrennt" - gibt es hierzu ein gewisses DeviceQuery?

                        Grüße Marco

                        1 Reply Last reply
                        0
                        • R Offline
                          R Offline
                          reinhard-boehm
                          wrote on last edited by
                          #16

                          @moeff sagte in (solved) FRITZ!Box - Ereignisse bzw. Log auslesen:

                          DeviceQuery

                          Ich möchte auf dem oben beschriebenen Weg einen "Login" überwachen.
                          Welchen Befehl muss ich dann in den 'Command' in 'tr-064-ioBroker absetzen?

                          Gibt es eine Übersicht der möglichen Befehle ?
                          SuFu hat mir nichts gebracht.

                          iobroker_RainerI 1 Reply Last reply
                          0
                          • R reinhard-boehm

                            @moeff sagte in (solved) FRITZ!Box - Ereignisse bzw. Log auslesen:

                            DeviceQuery

                            Ich möchte auf dem oben beschriebenen Weg einen "Login" überwachen.
                            Welchen Befehl muss ich dann in den 'Command' in 'tr-064-ioBroker absetzen?

                            Gibt es eine Übersicht der möglichen Befehle ?
                            SuFu hat mir nichts gebracht.

                            iobroker_RainerI Offline
                            iobroker_RainerI Offline
                            iobroker_Rainer
                            wrote on last edited by
                            #17

                            @reinhard-boehm ... schau mal hier https://avm.de/fileadmin/user_upload/Global/Service/Schnittstellen/AVM_TR-064_first_steps.pdf.
                            Ich denke, da wirst du fündig ...

                            R 1 Reply Last reply
                            0
                            • iobroker_RainerI iobroker_Rainer

                              @reinhard-boehm ... schau mal hier https://avm.de/fileadmin/user_upload/Global/Service/Schnittstellen/AVM_TR-064_first_steps.pdf.
                              Ich denke, da wirst du fündig ...

                              R Offline
                              R Offline
                              reinhard-boehm
                              wrote on last edited by reinhard-boehm
                              #18

                              @iobroker_rainer Super, Danke.

                              Ich komme trotzdem nicht weiter.
                              Diese Meldung ( von einem externem falschen User ) möchte ich sofort wissen:

                              01.02.23 11:45:42
                              Anmeldung des Benutzers hse an der FRITZ!Box-Benutzeroberfläche von IP-Adresse 2.57.121.75 gescheitert (falsches Kennwort). [2 Meldungen seit 01.02.23 06:50:48]

                              Ich bekomme es nicht in "commandResultID" geschrieben :-(

                              1 Reply Last reply
                              0
                              • iobroker_RainerI Offline
                                iobroker_RainerI Offline
                                iobroker_Rainer
                                wrote on last edited by iobroker_Rainer
                                #19

                                hmmm. Ist der tr-064-Adapter für diese Fritzbox richtig konfiguriert? Gibt es IRGENDEIN Kommando, was ein plausibles Ergebnis liefert in commandresult? Versuch mal, das in command einzutragen. Was bekommst Du als Ergebnis?

                                {
                                "service": "urn:dslforum-org:service:DeviceInfo:1",
                                "action": "GetDeviceLog",
                                "params": {}
                                }

                                R 1 Reply Last reply
                                0
                                • iobroker_RainerI iobroker_Rainer

                                  hmmm. Ist der tr-064-Adapter für diese Fritzbox richtig konfiguriert? Gibt es IRGENDEIN Kommando, was ein plausibles Ergebnis liefert in commandresult? Versuch mal, das in command einzutragen. Was bekommst Du als Ergebnis?

                                  {
                                  "service": "urn:dslforum-org:service:DeviceInfo:1",
                                  "action": "GetDeviceLog",
                                  "params": {}
                                  }

                                  R Offline
                                  R Offline
                                  reinhard-boehm
                                  wrote on last edited by reinhard-boehm
                                  #20

                                  @iobroker_rainer Hallo Rainer,
                                  ich bekomme dann:

                                  {
                                  "NewDeviceLog": "01.02.23 05:45:54 Internetverbindung wurde erfolgreich hergestellt. IP-Adresse: 87.122.217.243, DNS-Server: 62.220.18.8 und 89.246.64.8, Gateway: 62.214.63.87, Breitband-PoP: dor1901aihr001, LineID:1UND1.DEU.NETCO.291692\n01.02.23 05:45:52 IPv6-Präfix wurde erfolgreich bezogen. Neues Präfix: 2001:16b8:a89:3a00::/56\n01.02.23 05:45:52 Internetverbindung IPv6 wurde erfolgreich hergestellt. IP-Adresse: 2001:16b8:b00:76fc:e228:6dff:fefc:f48c\n01.02.23 05:45:47 Internetverbindung wurde getrennt.\n01.02.23 05:45:47 Internetverbindung IPv6 wurde getrennt, Präfix nicht mehr gültig.\n01.02.23 05:45:43 Die Internetverbindung wird kurz unterbrochen, um der Zwangstrennung durch den Anbieter zuvorzukommen.\n31.01.23 16:58:59 Internettelefonie mit +498004763803 über Versatel.de war nicht erfolgreich. Ursache: Decline (603)\n31.01.23 10:40:29 Internettelefonie mit +498004763803 über Versatel.de war nicht erfolgreich. Ursache: Decline (603)\n31.01.23 05:46:54 Internetverbindung wurde erfolgreich hergestellt. IP-Adresse: 87.122.211.50, DNS-Server: 62.220.18.8 und 89.246.64.8, Gateway: 62.214.63.87, Breitband-PoP: dor1901aihr001, LineID:1UND1.DEU.NETCO.291692\n31.01.23 05:46:52 IPv6-Präfix wurde erfolgreich bezogen. Neues Präfix: 2001:16b8:a75:e700::/56\n31.01.23 05:46:52 Internetverbindung IPv6 wurde erfolgreich hergestellt. IP-Adresse: 2001:16b8:b03:ea80:e228:6dff:fefc:f48c\n31.01.23 05:46:47 Internetverbindung wurde getrennt.\n31.01.23 05:46:47 Internetverbindung IPv6 wurde getrennt, Präfix nicht mehr gültig.\n31.01.23 05:46:43 Die Internetverbindung wird kurz unterbrochen, um der Zwangstrennung durch den Anbieter zuvorzukommen."
                                  }

                                  Da sind aber keine Anmeldeversuche drin.

                                  Möglicherweise kann der TR064-Adapter nicht alle Daten aus den LogFiles auslesen, die FritzBox gibt sie aber her. Schade.

                                  iobroker_RainerI 1 Reply Last reply
                                  0
                                  • R reinhard-boehm

                                    @iobroker_rainer Hallo Rainer,
                                    ich bekomme dann:

                                    {
                                    "NewDeviceLog": "01.02.23 05:45:54 Internetverbindung wurde erfolgreich hergestellt. IP-Adresse: 87.122.217.243, DNS-Server: 62.220.18.8 und 89.246.64.8, Gateway: 62.214.63.87, Breitband-PoP: dor1901aihr001, LineID:1UND1.DEU.NETCO.291692\n01.02.23 05:45:52 IPv6-Präfix wurde erfolgreich bezogen. Neues Präfix: 2001:16b8:a89:3a00::/56\n01.02.23 05:45:52 Internetverbindung IPv6 wurde erfolgreich hergestellt. IP-Adresse: 2001:16b8:b00:76fc:e228:6dff:fefc:f48c\n01.02.23 05:45:47 Internetverbindung wurde getrennt.\n01.02.23 05:45:47 Internetverbindung IPv6 wurde getrennt, Präfix nicht mehr gültig.\n01.02.23 05:45:43 Die Internetverbindung wird kurz unterbrochen, um der Zwangstrennung durch den Anbieter zuvorzukommen.\n31.01.23 16:58:59 Internettelefonie mit +498004763803 über Versatel.de war nicht erfolgreich. Ursache: Decline (603)\n31.01.23 10:40:29 Internettelefonie mit +498004763803 über Versatel.de war nicht erfolgreich. Ursache: Decline (603)\n31.01.23 05:46:54 Internetverbindung wurde erfolgreich hergestellt. IP-Adresse: 87.122.211.50, DNS-Server: 62.220.18.8 und 89.246.64.8, Gateway: 62.214.63.87, Breitband-PoP: dor1901aihr001, LineID:1UND1.DEU.NETCO.291692\n31.01.23 05:46:52 IPv6-Präfix wurde erfolgreich bezogen. Neues Präfix: 2001:16b8:a75:e700::/56\n31.01.23 05:46:52 Internetverbindung IPv6 wurde erfolgreich hergestellt. IP-Adresse: 2001:16b8:b03:ea80:e228:6dff:fefc:f48c\n31.01.23 05:46:47 Internetverbindung wurde getrennt.\n31.01.23 05:46:47 Internetverbindung IPv6 wurde getrennt, Präfix nicht mehr gültig.\n31.01.23 05:46:43 Die Internetverbindung wird kurz unterbrochen, um der Zwangstrennung durch den Anbieter zuvorzukommen."
                                    }

                                    Da sind aber keine Anmeldeversuche drin.

                                    Möglicherweise kann der TR064-Adapter nicht alle Daten aus den LogFiles auslesen, die FritzBox gibt sie aber her. Schade.

                                    iobroker_RainerI Offline
                                    iobroker_RainerI Offline
                                    iobroker_Rainer
                                    wrote on last edited by
                                    #21

                                    @reinhard-boehm ... das ist wirklich eigenartig, Reinhard. Kann tatsächlich sein, dass nicht alles in das Log-file reingeschrieben wird. An der Stelle kann ich dann leider nicht weiterhelfen :-(

                                    1 Reply Last reply
                                    0
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes


                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    642

                                    Online

                                    32.7k

                                    Users

                                    82.5k

                                    Topics

                                    1.3m

                                    Posts
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                    ioBroker Community 2014-2025
                                    logo
                                    • Login

                                    • Don't have an account? Register

                                    • Login or register to search.
                                    • First post
                                      Last post
                                    0
                                    • Home
                                    • Recent
                                    • Tags
                                    • Unread 0
                                    • Categories
                                    • Unreplied
                                    • Popular
                                    • GitHub
                                    • Docu
                                    • Hilfe