Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Pegelwerte Fritzbox 6490 Cable auslesen?

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Pegelwerte Fritzbox 6490 Cable auslesen?

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sugram @ichderarnd last edited by

      @arndl
      Nun, daß glaube ich jetzt zwar mal nicht, denn aktuell bekommen alle möglichen das Update, aber selbst wenn es bei dir länger dauern würde, wäre es EXTREM Klasse, wenn du dir das ansehen könntest.
      Denn mangels Java Script Kenntnisse, kann ich mir da leider selbst nicht helfen.
      Denn das Monitoring hat wirklich mal bei einer Störung bei der Vodafone Hotline geholfen.
      Da man hier dann den exakten Zeitpunkt mitteilen kann, seit wann das Problem besteht.
      Da konnte der Mitarbeiter dann nämlich wirklich was feststellen.

      I 1 Reply Last reply Reply Quote 0
      • I
        ichderarnd @sugram last edited by

        @sugram
        In der Login-Funktion war ein blöder Fehler. Warum auch immer das mit der alten fritz.box Version funktioniert hat...
        Ich hatte das "login_sid.lua?username=" doppelt drin.

        Die URL im zweiten Request muss wie folgt aussehen:

                    url: loginURL + fritzBenutzer + '&response=' + challenge + '-' + challengeResponse,
        

        Die Login Prozedur sieht dann insgesamt so aus:

        var logging = true;
        const iconv = require('iconv-lite');
        const crypto = require('crypto');
        
        var sid;
        var fritzBenutzer = 'ioBroker';
        var fritzPasswort = '********';
        var loginURL = 'http://fritz.box/login_sid.lua?username=';
        
        function loginAndGetSID(){
        
            sid = null;
        
            // Challenge holen
            var options = {
                url: loginURL + fritzBenutzer,
                method: 'GET'
            };
            request(options, function(error, response, body) {
            if (!error && response.statusCode == 200) {
                //log('error: ' + error + ', response: ' + JSON.stringify(response) + ', body: ' + body, 'info');
                var result = parseXML(body);
                var challenge = result['SessionInfo.Challenge'];
                log(challenge);
        
                // Einloggen und SID holen
                var utf16le_encoded = iconv.encode(challenge + '-' + fritzPasswort, 'UTF-16LE', {addBOM: false});
                var challengeResponse = crypto.createHash('md5').update(utf16le_encoded).digest('hex');
        
                options = {
                    url: loginURL + fritzBenutzer + '&response=' + challenge + '-' + challengeResponse,
                    method: 'GET'
                };
                request(options, function(error, response, body) {
                    if (!error && response.statusCode == 200) {
                        var result = parseXML(body);
                        sid = result['SessionInfo.SID'];
                        if (logging) log('Logged in. SID = ' + sid, 'info');
                    }
                    else {
                        log('error: ' + error + ', response: ' + response.statusCode.toString(), 'info');
                    }
                });
            }
            else {
                log('error: ' + error + ', response: ' + response.statusCode.toString(), 'info');
            }
            });
        }
        
        S 1 Reply Last reply Reply Quote 0
        • S
          sugram @ichderarnd last edited by

          @arndl du bist der BESTE!!

          Klappt nun wieder. VIELEN DANK!!

          1 Reply Last reply Reply Quote 0
          • I
            ichderarnd last edited by

            @sugram
            🙂

            1 Reply Last reply Reply Quote 0
            • R
              Rand last edited by Rand

              @arndl

              Danke für den Fix - es wäre ggf sinnvoll das oben in den Original Quelltext mit einzubauen;) Hat mich ne gute halbe h gekostet;)
              Ein Hinweis das die States hinterher unter Javascript [instance] Internet... liegen und nicht unter Internet direkt wäre noch hilfreich (für Anfänger wie mich)
              Aber danke für das Skript, genau das was ich gesucht habe:) - (Bei mir übrigens mit einer freien 6591 unter 7.29 an Vodafone)

              Zu guter Letzt - kannst Du die Quellen Deines Grafana Dashboards teilen?:)

              Edit, vieleicht hilfreich:

              activateLogging("Internet.Docsis.DS."+ Channel +".CorrectableErrors","FritzBox.DS.30.Down." + Channel + ".CErrors");
              activateLogging("Internet.Docsis.DS."+ Channel +".UncorrectableErrors","FritzBox.DS.30.Down." + Channel + ".UCErrors");
              activateLogging("Internet.Docsis.DS."+ Channel +".PowerLevel","FritzBox.DS.30.Down." + Channel + ".PowerLevel");
              
              activateLogging("Internet.Docsis.US."+ Channel +".PowerLevel","FritzBox.US.30.Up." + Channel + ".PowerLevel");
              
              activateLogging("Internet.Docsis31.DS."+ "C01" +".PowerLevel","FritzBox.DS.31.Down." + "C01" + ".PowerLevel");
              
              activateLogging("Internet.Docsis31.US."+ "C00" +".PowerLevel","FritzBox.US.31.Up." + "C00" + ".PowerLevel");
              
              function activateLogging(dp,dpalias)
              {
                  var basepathjs="javascript.0";
                  var influxdpvar = basepathjs + "." +dp;
                  var myalias=dpalias;
              
                 extendObject(influxdpvar, {common: {custom: {"influxdb.0": {
                      "enabled": true,
                      "storageType": "Number",
                      "aliasId": myalias,
                      "changesOnly": false,
                      "debounce": 500,
                      "changesRelogInterval": "0",
                      "changesMinDelta": 0,
                      "retention": 15811200
                    }}}}); // aktivieren 
                  
              }
              

              Wollte jetzt nicht zuviel ändern, sonst hätte ich die Datenpunkte noch in Variablen ausgelagert, aber so ist es einfacher in den existierenden Code (innerhalb der jeweiligen createState Schleifen) einzubauen.

              S 1 Reply Last reply Reply Quote 0
              • S
                sugram @Rand last edited by sugram

                Hätte da mal ne Frage.

                Seit kurzer Zeit erhalte ich im Log jede Menge Warnmeldungen.
                Das Javascript lautet bei mir AVM, also kommt das von dem.
                Weiß aber aktuell nicht an was das liegt.

                javascript.0
                2021-12-17 21:19:00.390	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.385	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.384	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.384	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.384	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.384	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.384	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.383	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.383	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.383	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.382	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.369	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.369	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.368	warn	at script.js.AVM:273:25
                
                javascript.0
                2021-12-17 21:19:00.368	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.365	warn	State "Internet.Docsis.DS.C32.UncorrectableErrorsPerMinute" not found
                
                javascript.0
                2021-12-17 21:19:00.365	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.365	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.364	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.364	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.364	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.364	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.364	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.363	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.363	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.363	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.363	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.362	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.362	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.362	warn	at script.js.AVM:265:21
                
                javascript.0
                2021-12-17 21:19:00.362	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.359	warn	State "Internet.Docsis.DS.C32.UncorrectableErrors" not found
                
                javascript.0
                2021-12-17 21:19:00.359	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.358	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.358	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.358	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.358	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.357	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.357	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.357	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.357	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.357	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.356	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.356	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.356	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.355	warn	at script.js.AVM:261:47
                
                javascript.0
                2021-12-17 21:19:00.353	warn	getState "Internet.Docsis.DS.C32.UncorrectableErrors" not found (3)
                
                javascript.0
                2021-12-17 21:19:00.353	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.352	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.352	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.347	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.347	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.346	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.346	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.346	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.346	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.346	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.345	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.345	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.345	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.345	warn	at script.js.AVM:258:25
                
                javascript.0
                2021-12-17 21:19:00.345	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.342	warn	State "Internet.Docsis.DS.C32.CorrectableErrorsPerMinute" not found
                
                javascript.0
                2021-12-17 21:19:00.342	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.342	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.341	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.341	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.341	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.341	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.341	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.340	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.340	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.340	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.340	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.340	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.339	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.339	warn	at script.js.AVM:250:21
                
                javascript.0
                2021-12-17 21:19:00.339	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.336	warn	State "Internet.Docsis.DS.C32.CorrectableErrors" not found
                
                javascript.0
                2021-12-17 21:19:00.336	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.336	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.336	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.336	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.335	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.335	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.335	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.335	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.335	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.334	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.334	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.334	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.334	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.333	warn	at script.js.AVM:246:45
                
                javascript.0
                2021-12-17 21:19:00.331	warn	getState "Internet.Docsis.DS.C32.CorrectableErrors" not found (3)
                
                javascript.0
                2021-12-17 21:19:00.331	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.331	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.330	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.330	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.330	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.330	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.329	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.329	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.329	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.329	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.329	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.328	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.328	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.328	warn	at script.js.AVM:244:21
                
                javascript.0
                2021-12-17 21:19:00.328	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.325	warn	State "Internet.Docsis.DS.C32.Latency" not found
                
                javascript.0
                2021-12-17 21:19:00.325	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.325	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.325	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.324	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.324	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.324	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.324	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.323	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.323	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.323	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.323	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.322	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.318	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.318	warn	at script.js.AVM:243:21
                
                javascript.0
                2021-12-17 21:19:00.317	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.314	warn	State "Internet.Docsis.DS.C32.MSE" not found
                
                javascript.0
                2021-12-17 21:19:00.314	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.314	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.313	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.313	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.312	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.312	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.311	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.311	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.311	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.310	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.310	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.310	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.310	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.309	warn	at script.js.AVM:242:21
                
                javascript.0
                2021-12-17 21:19:00.308	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.305	warn	State "Internet.Docsis.DS.C32.PowerLevel" not found
                
                javascript.0
                2021-12-17 21:19:00.305	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.304	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.304	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.304	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.303	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.303	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.303	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.302	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.287	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.287	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.287	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.286	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.286	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.285	warn	at script.js.AVM:241:21
                
                javascript.0
                2021-12-17 21:19:00.284	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.281	warn	State "Internet.Docsis.DS.C32.Modulation" not found
                
                javascript.0
                2021-12-17 21:19:00.281	warn	at processTicksAndRejections (internal/process/task_queues.js:84:21)
                
                javascript.0
                2021-12-17 21:19:00.281	warn	at endReadableNT (_stream_readable.js:1241:12)
                
                javascript.0
                2021-12-17 21:19:00.281	warn	at IncomingMessage.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.280	warn	at IncomingMessage.emit (events.js:326:22)
                
                javascript.0
                2021-12-17 21:19:00.280	warn	at Object.onceWrapper (events.js:420:28)
                
                javascript.0
                2021-12-17 21:19:00.280	warn	at IncomingMessage.<anonymous> (/opt/iobroker/node_modules/request/request.js:1076:12)
                
                javascript.0
                2021-12-17 21:19:00.280	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.279	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.279	warn	at Request.<anonymous> (/opt/iobroker/node_modules/request/request.js:1154:10)
                
                javascript.0
                2021-12-17 21:19:00.279	warn	at Request.EventEmitter.emit (domain.js:483:12)
                
                javascript.0
                2021-12-17 21:19:00.279	warn	at Request.emit (events.js:314:20)
                
                javascript.0
                2021-12-17 21:19:00.278	warn	at Request.self.callback (/opt/iobroker/node_modules/request/request.js:185:22)
                
                javascript.0
                2021-12-17 21:19:00.278	warn	at Request._callback (/opt/iobroker/node_modules/iobroker.javascript/lib/request.js:27:17)
                
                javascript.0
                2021-12-17 21:19:00.278	warn	at script.js.AVM:240:21
                
                javascript.0
                2021-12-17 21:19:00.277	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1439:20)
                
                javascript.0
                2021-12-17 21:19:00.273	warn	State "Internet.Docsis.DS.C32.Frequency" not found
                

                Das scheint hier ein Problem zu sein

                State "Internet.Docsis.DS.C32.UncorrectableErrors" not found
                

                Denn den Kanal finde ich als Datenpunkt nicht (mehr)
                Weiß nicht ob es den vorher gegeben hat.

                Bild_2021-12-17_213854.png

                R 1 Reply Last reply Reply Quote 0
                • R
                  Rand @sugram last edited by

                  @sugram

                  Gibt es den Kanal auf der FB noch?
                  Bei mir fehlen die ersten 4 DS Kanäle seit ein paar Wochen... da hat Vodafone mal wieder umgebaut

                  S 1 Reply Last reply Reply Quote 0
                  • S
                    sugram @Rand last edited by

                    @rand
                    Nein, bei mir ist bei Kanal 28 in der FB Schluß.
                    Allerdings hat sich die FB heute aufgehängt und nach einem reboot sind jetzt keine warnings mehr vorhanden.
                    Keine Ahnung warum, denn die Kanäle sind immer noch die Selben.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      sugram @sugram last edited by

                      zu früh gefreut.
                      Seit heute sind die Meldungen wieder da.

                      R 1 Reply Last reply Reply Quote 0
                      • R
                        Rand @sugram last edited by

                        @sugram

                        Irgendwie ist das seltsam - meine Version des Skriptes geht nur bis Kanal 31 im loop? Da würde er gar kein 32er state anlegen oder versuchen zu befüllen.

                        Hmm,

                        wenn ich im Code schaue, dann steht da aber

                        DOCSIS30DSChannels = Object.entries(tableData.data.channelDs.docsis30).length;
                        

                        D.h. wenn aus irgendwelchen Gründen bei Dir ein Kanal 32 in der FB existiert dann würde er versuchen da drauf zu schreiben, und wenn es den State nicht gibt dann mag es zu dem gezeigten Fehler kommen.
                        Du müsstest also prüfen ob es in dem Augenblick den Kanal in der FB gibt, oder ob das Skript sich irgendwie verschluckt...

                        S 1 Reply Last reply Reply Quote 0
                        • S
                          sugram @Rand last edited by sugram

                          @rand
                          Hallo

                          Hier mal meine aktuellen Modemwerte.
                          Das geht wie gesagt nur bis 28

                          1.png

                          2.png

                          3.png

                          R 1 Reply Last reply Reply Quote 0
                          • R
                            Rand @sugram last edited by

                            @sugram

                            Und du hast aktuell den Fehler?

                            Schau mal was bei Dir im Skript die Zeile 240 ist

                            2021-12-17 21:19:00.278	warn	at script.js.AVM:240:21
                            

                            Bei mir ist das im Loop über

                            DOCSIS30DSChannels = Object.entries(tableData.data.channelDs.docsis30).length;
                            

                            aber das sollte eigentlich dynamisch aus den Rückgaben kommen... Du könntest mal die Länge ausgeben oder die ganze Tabelle
                            (etwas obendrüber die Zeile einkommentieren)

                            log(JSON.stringify(tableData), 'info');
                            
                            S 1 Reply Last reply Reply Quote 0
                            • S
                              sugram @Rand last edited by

                              @rand

                              Ja, ich habe aktuell den Fehler.
                              Aber ist dennoch seltsam, da ich diesen Fehler bisher noch nie hatte.
                              Seltsam ist, daß ich jetzt im Javascript auch Meldungen erhalte.
                              Hab es mal gestoppt und wieder gestartet.
                              Meldungen:

                              21.12.2021, 15:29:00.262	[warn ]: javascript.0 (1211)     at script.js.AVM:240:21
                              21.12.2021, 15:29:00.266	[warn ]: javascript.0 (1211)     at script.js.AVM:241:21
                              21.12.2021, 15:29:00.280	[warn ]: javascript.0 (1211)     at script.js.AVM:242:21
                              21.12.2021, 15:29:00.283	[warn ]: javascript.0 (1211)     at script.js.AVM:243:21
                              21.12.2021, 15:29:00.285	[warn ]: javascript.0 (1211)     at script.js.AVM:244:21
                              21.12.2021, 15:29:00.296	[warn ]: javascript.0 (1211)     at script.js.AVM:246:45
                              21.12.2021, 15:29:00.302	[warn ]: javascript.0 (1211)     at script.js.AVM:250:21
                              21.12.2021, 15:29:00.305	[warn ]: javascript.0 (1211)     at script.js.AVM:258:25
                              21.12.2021, 15:29:00.307	[warn ]: javascript.0 (1211)     at script.js.AVM:261:47
                              21.12.2021, 15:29:00.313	[warn ]: javascript.0 (1211)     at script.js.AVM:265:21
                              21.12.2021, 15:29:00.316	[warn ]: javascript.0 (1211)     at script.js.AVM:273:25
                              21.12.2021, 15:29:13.077	[info ]: javascript.0 (1211) Stop script script.js.AVM
                              21.12.2021, 15:29:20.339	[info ]: javascript.0 (1211) Start javascript script.js.AVM
                              21.12.2021, 15:29:20.391	[info ]: javascript.0 (1211) script.js.AVM: DocsisInfo starting
                              21.12.2021, 15:29:20.401	[info ]: javascript.0 (1211) script.js.AVM: registered 0 subscriptions and 1 schedule
                              21.12.2021, 15:29:20.569	[info ]: javascript.0 (1211) script.js.AVM: Logged in. SID = 85503109cd2490b7
                              21.12.2021, 15:30:00.289	[warn ]: javascript.0 (1211)     at script.js.AVM:240:21
                              21.12.2021, 15:30:00.292	[warn ]: javascript.0 (1211)     at script.js.AVM:241:21
                              21.12.2021, 15:30:00.294	[warn ]: javascript.0 (1211)     at script.js.AVM:242:21
                              21.12.2021, 15:30:00.297	[warn ]: javascript.0 (1211)     at script.js.AVM:243:21
                              21.12.2021, 15:30:00.299	[warn ]: javascript.0 (1211)     at script.js.AVM:244:21
                              21.12.2021, 15:30:00.302	[warn ]: javascript.0 (1211)     at script.js.AVM:246:45
                              21.12.2021, 15:30:00.304	[warn ]: javascript.0 (1211)     at script.js.AVM:250:21
                              21.12.2021, 15:30:00.307	[warn ]: javascript.0 (1211)     at script.js.AVM:258:25
                              21.12.2021, 15:30:00.312	[warn ]: javascript.0 (1211)     at script.js.AVM:261:47
                              21.12.2021, 15:30:00.315	[warn ]: javascript.0 (1211)     at script.js.AVM:265:21
                              21.12.2021, 15:30:00.318	[warn ]: javascript.0 (1211)     at script.js.AVM:273:25
                              

                              Ich poste hier mal das JavaScript

                              var logging = true;
                              const iconv = require('iconv-lite');
                              const crypto = require('crypto');
                               
                              var DOCSIS30DSChannels = 0;
                              var DOCSIS31DSChannels = 0;
                              var DOCSIS30USChannels = 0;
                              var DOCSIS31USChannels = 0;
                               
                              var sid;
                              var fritzBenutzer = 'ioBroker';
                              var fritzPasswort = 'athlonk7';
                              // var loginURL = 'http://192.168.0.6/login_sid.lua?username=';
                              var loginURL = 'http://192.168.0.6/login_sid.lua?username=';
                              var docsisURL = 'http://192.168.0.6/data.lua';
                               
                              // Downstream DOCSIS 3.0
                              for (var i = 1; i <= 31; i++){
                                  var Channel = 'C' + (i < 10 ? '0' + i.toString() : i.toString());
                                  createState('Internet.Docsis.DS.' + Channel + '.Frequency',                    0, false, {name: 'Frequency',  unit: 'MHz',      type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.Modulation',                   0, false, {name: 'Modulation', unit: 'QAM',      type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.PowerLevel',                   0, false, {name: 'PowerLevel', unit: 'dBmV',     type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.MSE',                          0, false, {name: 'MSE',        unit: 'dB',       type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.Latency',                      0, false, {name: 'Latency',    unit: 'ms',       type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.CorrectableErrors',            0, false, {name: 'CorrectableErrors',            type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.CorrectableErrorsPerMinute',   0, false, {name: 'CorrectableErrorsPerMinute',   type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.UncorrectableErrors',          0, false, {name: 'UncorrectableErrors',          type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.DS.' + Channel + '.UncorrectableErrorsPerMinute', 0, false, {name: 'UncorrectableErrorsPerMinute', type: 'mixed', role: 'state'});
                              }
                               
                              // Upstream DOCSIS 3.0
                              for (var i = 0; i <= 5; i++){
                                  var Channel = 'C0' + i.toString();
                                  createState('Internet.Docsis.US.' + Channel + '.Frequency',       0, false, {name: 'Frequency',  unit: 'MHz',  type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.US.' + Channel + '.Modulation',      0, false, {name: 'Modulation', unit: 'QAM',  type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.US.' + Channel + '.MultiplexMethod', 0, false, {name: 'MultiplexMethod',          type: 'mixed', role: 'state'});
                                  createState('Internet.Docsis.US.' + Channel + '.PowerLevel',      0, false, {name: 'PowerLevel', unit: 'dBmV', type: 'mixed', role: 'state'});
                              }
                               
                              // Downstream DOCSIS 3.1
                              createState('Internet.Docsis31.DS.C01.Frequency',      0, false, {name: 'Frequency',  unit: 'MHz',    type: 'mixed', role: 'state'});
                              createState('Internet.Docsis31.DS.C01.Type',           0, false, {name: 'Modulation', unit: 'K',      type: 'mixed', role: 'state'});
                              createState('Internet.Docsis31.DS.C01.PowerLevel',     0, false, {name: 'PowerLevel', unit: 'dBmV',   type: 'mixed', role: 'state'});
                               
                              // Upstream DOCSIS 3.1
                              createState('Internet.Docsis31.US.C00.Frequency',      0, false, {name: 'Frequency',  unit: 'MHz',    type: 'mixed', role: 'state'});
                              createState('Internet.Docsis31.US.C00.Type',           0, false, {name: 'Modulation', unit: 'K',      type: 'mixed', role: 'state'});
                              createState('Internet.Docsis31.US.C00.MultiplexMethod',0, false, {name: 'MultiplexMethod',            type: 'mixed', role: 'state'});
                              createState('Internet.Docsis31.US.C00.PowerLevel',     0, false, {name: 'PowerLevel', unit: 'dBmV',   type: 'mixed', role: 'state'});
                               
                              /**
                               * Simple XML parser
                               * @param {String} xml
                               * @return {Object}
                               */
                              function parseXML(xml) {
                               
                                  var beg = -1;
                                  var end = 0;
                                  var tmp = 0;
                                  var current = [];
                                  var obj = {};
                                  var from = -1;
                               
                                  while (true) {
                               
                                      beg = xml.indexOf('<', beg + 1);
                                      if (beg === -1)
                                          break;
                               
                                      end = xml.indexOf('>', beg + 1);
                                      if (end === -1)
                                          break;
                               
                                      var el = xml.substring(beg, end + 1);
                                      var c = el[1];
                               
                                      if (c === '?' || c === '/') {
                               
                                          var o = current.pop();
                               
                                          if (from === -1 || o !== el.substring(2, el.length - 1))
                                              continue;
                               
                                          var path = current.join('.') + '.' + o;
                                          var value = xml.substring(from, beg);
                               
                                          if (typeof(obj[path]) === 'undefined')
                                              obj[path] = value;
                                          else if (obj[path] instanceof Array)
                                              obj[path].push(value);
                                          else
                                              obj[path] = [obj[path], value];
                               
                                          from = -1;
                                          continue;
                                      }
                               
                                      tmp = el.indexOf(' ');
                                      var hasAttributes = true;
                               
                                      if (tmp === -1) {
                                          tmp = el.length - 1;
                                          hasAttributes = false;
                                      }
                               
                                      from = beg + el.length;
                               
                                      var isSingle = el[el.length - 2] === '/';
                                      var name = el.substring(1, tmp);
                               
                                      if (!isSingle)
                                          current.push(name);
                               
                                      if (!hasAttributes)
                                          continue;
                               
                                      var match = el.match(/\w+\=\".*?\"/g);
                                      if (match === null)
                                          continue;
                               
                                      var attr = {};
                                      var length = match.length;
                               
                                      for (var i = 0; i < length; i++) {
                                          var index = match[i].indexOf('"');
                                          attr[match[i].substring(0, index - 1)] = match[i].substring(index + 1, match[i].length - 1);
                                      }
                               
                                      obj[current.join('.') + (isSingle ? '.' + name : '') + '[]'] = attr;
                                  }
                               
                                  return obj;
                              };
                               
                              function loginAndGetSID(){
                               
                                  sid = null;
                               
                                  // Challenge holen
                                  var options = {
                                      url: loginURL + fritzBenutzer,
                                      method: 'GET'
                                  };
                                  request(options, function(error, response, body) {
                                  if (!error && response.statusCode == 200) {
                                      //if (logging) log('error: ' + error + ', response: ' + JSON.stringify(response) + ', body: ' + body, 'info');
                                      var result = parseXML(body);
                                      var challenge = result['SessionInfo.Challenge'];
                               
                                      // Einloggen und SID holen
                                      var utf16le_encoded = iconv.encode(challenge + '-' + fritzPasswort, 'UTF-16LE', {addBOM: false});
                                      var challengeResponse = crypto.createHash('md5').update(utf16le_encoded).digest('hex');
                               
                                      options = {
                                          url: loginURL + fritzBenutzer + '&response=' + challenge + '-' + challengeResponse,
                                          method: 'GET'
                                      };
                                      request(options, function(error, response, body) {
                                          if (!error && response.statusCode == 200) {
                                              var result = parseXML(body);
                                              sid = result['SessionInfo.SID'];
                                              if (logging) log('Logged in. SID = ' + sid, 'info');
                                          }
                                          else {
                                              log('error: ' + error + ', response: ' + response.statusCode.toString(), 'info');
                                          }
                                      });
                                  }
                                  else {
                                      log('error: ' + error + ', response: ' + response.statusCode.toString(), 'info');
                                  }
                                  });
                              }
                               
                              // Wenn keine Daten abgerufen werden konnten, werden die States auf NULL gesetzt
                              function setStates2NullValues(){
                               
                                  var NullValue = null;
                               
                                  // DOCSIS 3.0 Downstream Channels
                                  for (i = 0; i < DOCSIS30DSChannels; i++) {
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.Frequency', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.Modulation', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.PowerLevel', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.MSE', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.Latency', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.CorrectableErrors', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.CorrectableErrorsPerMinute', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.UncorrectableErrors', NullValue, true);
                                      setState('Internet.Docsis.DS.C' + (i < 10 ? '0' : '') + i.toString() + '.UncorrectableErrorsPerMinute', NullValue, true);
                                  }
                               
                                  // DOCSIS 3.1 Downstream Channel
                                  setState('Internet.Docsis31.DS.C01.PowerLevel', NullValue, true);
                                  setState('Internet.Docsis31.DS.C01.Type', NullValue, true);
                                  setState('Internet.Docsis31.DS.C01.Frequency', NullValue, true);
                               
                                  // DOCSIS 3.0 Upstream Channels
                                  for (i = 0; i < DOCSIS30USChannels; i++) {
                                      setState('Internet.Docsis.US.C' + (i < 10 ? '0' : '') + i.toString() + '.Frequency', NullValue, true);
                                      setState('Internet.Docsis.US.C' + (i < 10 ? '0' : '') + i.toString() + '.Modulation', NullValue, true);
                                      setState('Internet.Docsis.US.C' + (i < 10 ? '0' : '') + i.toString() + '.MultiplexMethod', NullValue, true);
                                      setState('Internet.Docsis.US.C' + (i < 10 ? '0' : '') + i.toString() + '.PowerLevel', NullValue, true);
                                  }
                               
                                  // DOCSIS 3.1 Upstream Channel
                                  setState('Internet.Docsis31.US.C00.PowerLevel', NullValue, true);
                                  setState('Internet.Docsis31.US.C00.Type', NullValue, true);
                                  setState('Internet.Docsis31.US.C00.MultiplexMethod', NullValue, true);
                                  setState('Internet.Docsis31.US.C00.Frequency', NullValue, true);
                              }
                               
                              // Holt die Informationen von der Fritzbox Benutzeroberfläche. Ab fritz.OS Version 7.2x werden die Informationen als JSON-String übermittelt (getCableModemChannelInfos Version 2)
                              function getCableModemChannelInfosV2(){
                               
                                  var NullValue = null;
                                  var tableData;
                               
                                  var options = {
                                      url: docsisURL,
                                      method: 'POST',
                                      headers: {
                                          'Content-Type': 'application/x-www-form-urlencoded'
                                      },
                                      body: 'xhr=1&sid=' + sid + '&lang=de&page=docInfo&xhrId=all&no_sidrenew='
                                  };
                                  request(options, function(error, response, body) {
                                      if (!error && response.statusCode == 200) {
                                          tableData = JSON.parse(body);
                                          if(tableData){
                                              //log(JSON.stringify(tableData), 'info');
                                              
                                              // DOCSIS 3.0 Downstream Channels
                                              DOCSIS30DSChannels = Object.entries(tableData.data.channelDs.docsis30).length;
                                              for (i = 0; i < DOCSIS30DSChannels; i++) {
                               
                                                  var channelID = parseInt(tableData.data.channelDs.docsis30[i].channelID);
                               
                                                  setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.Frequency', parseInt(tableData.data.channelDs.docsis30[i].frequency), true);
                                                  setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.Modulation', parseInt(tableData.data.channelDs.docsis30[i].type.replace('QAM', '')), true);
                                                  setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.PowerLevel', parseFloat(tableData.data.channelDs.docsis30[i].powerLevel), true);
                                                  setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.MSE', parseFloat(tableData.data.channelDs.docsis30[i].mse), true);
                                                  setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.Latency', parseFloat(tableData.data.channelDs.docsis30[i].latency), true);
                               
                                                  var correctableErrors = getState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.CorrectableErrors');
                                                  var lastValue = correctableErrors.val;
                                                  var ts_diff = new Date().getTime() - correctableErrors.ts;
                                                  var newValue = parseInt(tableData.data.channelDs.docsis30[i].corrErrors);
                                                  setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.CorrectableErrors', newValue, true);
                                                  // Die Differenz zum letzten Wert nur dann speichern, wenn dieser ca. 1 Min. alt ist
                                                  if (ts_diff > 50000 && ts_diff < 70000){
                                                      if (newValue > lastValue){
                                                          setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.CorrectableErrorsPerMinute', newValue - lastValue, true);
                                                      }
                                                  }
                                                  else {
                                                      setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.CorrectableErrorsPerMinute', NullValue, true);
                                                  }
                               
                                                  var uncorrectableErrors = getState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.UncorrectableErrors');
                                                  var lastValue = uncorrectableErrors.val;
                                                  var ts_diff = new Date().getTime() - uncorrectableErrors.ts;
                                                  var newValue = parseInt(tableData.data.channelDs.docsis30[i].nonCorrErrors);
                                                  setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.UncorrectableErrors', newValue, true);
                                                  // Die Differenz zum letzten Wert nur dann speichern, wenn dieser ca. 1 Min. alt ist
                                                  if (ts_diff > 50000 && ts_diff < 70000){
                                                      if (newValue > lastValue){
                                                          setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.UncorrectableErrorsPerMinute', newValue - lastValue, true);
                                                      }
                                                  }
                                                  else {
                                                      setState('Internet.Docsis.DS.C' + (channelID < 10 ? '0' : '') + tableData.data.channelDs.docsis30[i].channelID + '.UncorrectableErrorsPerMinute', NullValue, true);
                                                  }
                                              }
                               
                                              // DOCSIS 3.1 Downstream Channel
                                              if (tableData.data.channelDs.docsis31 != null){
                                                  DOCSIS31DSChannels = 1;
                                                  setState('Internet.Docsis31.DS.C01.PowerLevel', parseFloat(tableData.data.channelDs.docsis31[0].powerLevel), true);
                                                  setState('Internet.Docsis31.DS.C01.Type', parseInt(tableData.data.channelDs.docsis31[0].type.replace('K', '')), true);
                                                  setState('Internet.Docsis31.DS.C01.Frequency', tableData.data.channelDs.docsis31[0].frequency, true);
                                              }
                               
                                              // DOCSIS 3.0 Upstream Channels
                                              DOCSIS30USChannels = Object.entries(tableData.data.channelUs.docsis30).length;
                                              for (i = 0; i < DOCSIS30USChannels; i++) {
                                                  var channelID = parseInt(tableData.data.channelUs.docsis30[i].channelID);
                                                  setState('Internet.Docsis.US.C' + (channelID < 10 ? '0' : '') + tableData.data.channelUs.docsis30[i].channelID + '.Frequency', parseInt(tableData.data.channelUs.docsis30[i].frequency), true);
                                                  setState('Internet.Docsis.US.C' + (channelID < 10 ? '0' : '') + tableData.data.channelUs.docsis30[i].channelID + '.Modulation', parseInt(tableData.data.channelUs.docsis30[i].type.replace('QAM', '')), true);
                                                  setState('Internet.Docsis.US.C' + (channelID < 10 ? '0' : '') + tableData.data.channelUs.docsis30[i].channelID + '.MultiplexMethod', tableData.data.channelUs.docsis30[i].multiplex, true);
                                                  setState('Internet.Docsis.US.C' + (channelID < 10 ? '0' : '') + tableData.data.channelUs.docsis30[i].channelID + '.PowerLevel', parseFloat(tableData.data.channelUs.docsis30[i].powerLevel), true);
                                              }
                               
                                              // DOCSIS 3.1 Upstream Channel
                                              if (tableData.data.channelUs.docsis31 != null){
                                                  DOCSIS31USChannels = 1;
                                                  setState('Internet.Docsis31.US.C00.PowerLevel', parseFloat(tableData.data.channelUs.docsis31[0].powerLevel), true);
                                                  setState('Internet.Docsis31.US.C00.Type', parseInt(tableData.data.channelUs.docsis31[0].type.replace('K', '')), true);
                                                  setState('Internet.Docsis31.US.C00.MultiplexMethod', tableData.data.channelUs.docsis31[0].multiplex, true);
                                                  setState('Internet.Docsis31.US.C00.Frequency', parseInt(tableData.data.channelUs.docsis31[0].frequency), true);
                                              }
                               
                                          }
                                          else{
                                              log('Empty response', 'error');
                                              setStates2NullValues();
                                              loginAndGetSID();
                                          }
                                      }
                                      else {
                                          log('error: ' + error + ', response: ' + response.statusCode.toString(), 'error');
                                          setStates2NullValues();
                                          loginAndGetSID();
                                      }
                                  });
                               
                              }
                               
                              if (logging) log('DocsisInfo starting', 'info');
                               
                              // SID holen und merken (User Token)
                              loginAndGetSID();
                              var getSIDinterval = setInterval(loginAndGetSID, 900000);   // Alle 15 Minuten neue SID holen
                               
                              schedule("* * * * *", function() {                          // Zu jeder vollen Minute die Fritzbox DOCSIS-Daten abfragen
                                  getCableModemChannelInfosV2();
                              });
                              
                              
                              S 1 Reply Last reply Reply Quote 0
                              • S
                                sugram @sugram last edited by

                                Also langsam glaube ich, daß es an der Fritte liegt.
                                Gerade eben wieder das gleiche, komme nicht per WLAN auf die FB.
                                Mußte dann wieder FB vom Strom nehmen, damit wieder alles geht.
                                Habe danach auch den Raspberry neu booten müssen, da er die Verbindung nicht mehr aufbauen konnte. (war beim letzten mal auch so)
                                Habe nun das Script mal gestoppt und gestartet, und aktuell sind keinerlei Fehlermeldung im Log.
                                Alles irgendwie seltsam.
                                Wenn ich das Problem wieder habe, dann schaue ich mal ob ich per LAN auf die Fritte komme und evtl. steht dann da was im Log file der Fritte drin.

                                I 1 Reply Last reply Reply Quote 0
                                • I
                                  ichderarnd @sugram last edited by

                                  @sugram
                                  Ich werde mir das ansehen, bin allerdings noch beruflich unterwegs…

                                  S 1 Reply Last reply Reply Quote 0
                                  • S
                                    sugram @ichderarnd last edited by sugram

                                    @arndl kein Stress.
                                    Das hat ja auch alles funktioniert 😉
                                    Bzw, funktioniert ja auch einwandfrei

                                    Aktuell läuft es immer noch ohne Probleme und den Meldungen im Log

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      sugram @sugram last edited by sugram

                                      Nachdem sich nun meine Mietbox in letzter Zeit sich immer wieder komplett aufhängt, habe ich nun mal meine Kaufbox aktiviert.
                                      Da bekomme ich neue Fehlermeldungen.
                                      Ich werd langsam irre ...
                                      Auf der Kaufbox ist allerdings schon die Version 07.29.
                                      Möglich das dies auch mit dem zusammenhängt.

                                      javascript.0
                                      2021-12-24 12:48:00.289	error	Error in request callback: TypeError: Cannot read property 'powerLevel' of undefined
                                      javascript.0
                                      2021-12-24 12:47:00.304	error	Error in request callback: TypeError: Cannot read property 'powerLevel' of undefined
                                      javascript.0
                                      2021-12-24 12:46:00.296	error	Error in request callback: TypeError: Cannot read property 'powerLevel' of undefined
                                      javascript.0
                                      2021-12-24 12:45:21.664	info	script.js.speedtest: Speedtest durchgeführt. Ergebisse: Download: 8.15 MB/s | Upload: 6.35 MB/s | Ping: 14.918ms
                                      javascript.0
                                      2021-12-24 12:45:00.295	error	Error in request callback: TypeError: Cannot read property 'powerLevel' of undefined
                                      javascript.0
                                      2021-12-24 12:45:00.027	info	script.js.speedtest: Speedtest gestartet! Der Test dauert zwischen 10 - 20 Sekunden!
                                      javascript.0
                                      2021-12-24 12:44:00.252	error	Error in request callback: TypeError: Cannot read property 'powerLevel' of undefined
                                      
                                      R 1 Reply Last reply Reply Quote 0
                                      • R
                                        Rand @sugram last edited by Rand

                                        @sugram said in Pegelwerte Fritzbox 6490 Cable auslesen?:

                                        Auf der Kaufbox ist allerdings schon die Version 07.29.
                                        Möglich das dies auch mit dem zusammenhängt.

                                        Ne, läuft bei mir auch ohne solche Spirenzchen...

                                        Aber der Speedtest gehört ja nicht zu dem script, oder?

                                        Undefined heist ja das er auf ein Objekt zugreifen will was er nicht kennt... vieleicht erzeugst du mal eine zweite frische "Instanz" mit anderen Namen?
                                        Am einfachsten das Skript in einen Editor kopieren und "Internet." durch "Internet2." ersetzen oder so was...

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          sugram @Rand last edited by sugram

                                          @rand said in Pegelwerte Fritzbox 6490 Cable auslesen?:

                                          Aber der Speedtest gehört ja nicht zu dem script, oder?

                                          Nein ,da läuft noch ein weiteres separates Script für den Speedtest.

                                          Undefined heist ja das er auf ein Objekt zugreifen will was er nicht kennt... vieleicht erzeugst du mal eine zweite frische "Instanz" mit anderen Namen?
                                          Am einfachsten das Skript in einen Editor kopieren und "Internet." durch "Internet2." ersetzen oder so was...

                                          Das seltsame ist, daß ich an dem Script nicht's geändert habe, aber bei der V07.29 eben diese Meldungen bekomme.
                                          Da die Box nun ohne Absturtz durchgelaufen ist, habe ich wieder die Mietbocx drann.
                                          Was soll ich sagen, die Fehlermeldung ist da weg?!

                                          Ich gehe bei dem Wechsel von Miet zu Kauf - Box so vor.
                                          Ich schalte meinen Raspberry komplett aus, dann wechsle ich die Box und konfiguriere alles.
                                          Sobald wieder alles läuft, boote ich das Raspberry wieder.

                                          Aber wenn ich wieder die Kaufbox angeschlossen habe und dort wieder diese Meldung kommt, dann kann ich deinen Vorschlag mal versuchen.

                                          R 1 Reply Last reply Reply Quote 0
                                          • R
                                            Rand @sugram last edited by Rand

                                            @sugram

                                            Dafür habe ich seit dem Update auf die letzte Javascript version das Problem auch 😕
                                            Nicht dauerhaft aber gelegentlich. Seltsam...

                                            ece3f10b-144c-48e7-a837-9a519c7f6af9-image.png

                                            S 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            981
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            20
                                            199
                                            27447
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo