Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Parser Adapter

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Parser Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      GOETSCHHOFER @Homoran last edited by GOETSCHHOFER

      @homoran said in Parser Adapter:

      @goetschhofer sagte in Parser Adapter:

      Hilft dir dies weiter ?

      Nein!
      Da hat der Browser bereits dynamisch den Wert der Variable eingesetzt.

      Deswegen braucht es den echten Quellcode und es nutzt der HTML-Code nichts.

      Möglicherweise kannst du im Reiter Netzwerk sehen, wo die Seite die Werte herholt und dort nach den aktuellen Werten suchen


      834e5521-bb75-4b5d-82bf-386a3931fb76-image.png

      Reiter Quellen sieht so aus:


      63586444-7efa-48ae-8b87-347f73d36bf1-image.png

      Ab Zeile 131 wird offenbar gerechnet.

      var websock = null;
      var wsUri = "";
      var loginUri="";
      var UpdateUri="";
      const wday=["Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag"];
      var ws_pingpong;
      var logpage=1;
      var logpagenr;
      var e180,e280;
      var yestd_in;
      var yestd_out;
      
      var config_general = {
          "devicetype": "AMIS-Reader",
          "devicename": "Amis-1",
          "auth_passwd": "admin",
          "auth_user": "admin",
          "use_auth":0,
          "log_sys":0,
          "amis_key": "0",
          "thingspeak_aktiv":0,
          "channel_id":0,
          "write_api_key":"",
          "read_api_key":"",
          "thingspeak_iv":30,
          "channel_id2":"",
          "read_api_key2":"",
          "command" :"/config_general"
      };
      
      var config_wifi= {
          "ssid": "",
          "wifipassword": "",
          "dhcp": 0,
          "ip_static": "192.168.",
          "ip_netmask": "255.255.255.0",
          "ip_gateway": "192.168.",
          "ip_nameserver": "192.168.",
          "rfpower":20,
          "mdns": 0,
          "command":"/config_wifi"
      };
      var config_mqtt={
          "mqtt_enabled": 0,
          "mqtt_broker": "192.168.",
          "mqtt_port": 1883,
          "mqtt_user": "",
          "mqtt_password": "",
          "mqtt_clientid": "",
          "mqtt_qos": 0,
          "mqtt_retain": 0,
          "mqtt_keep": 0,
          "mqtt_pub":"amis/out",
          "mqtt_will":"",
          "command":"/config_mqtt"
      };
      
      function timeDecoder (tc) {
        let hi=Number(tc.slice(0,4));
        let lo=Number("0x"+tc.slice(4,12));
        let secs = zeroPad((lo & 0x3f)^0x2d,2);
        lo=lo >> 8;
        let mins = zeroPad((lo & 0x3f)^0x0c,2);
        lo =lo >> 8;
        let hrs = zeroPad((lo & 0x1f),2);
        lo =lo >> 8;
        let day = zeroPad((lo & 0x1f),2);
        let month = zeroPad((hi & 0x0f),2);
        let year=(lo & 0xe0) >> 5;
        year |= (hi & 0xf0) >> 1;
        year+=2000;
        return (year+'/'+month+'/'+day+' '+hrs+':'+mins+'.'+secs);
      }
      
      function updateElements (obj) {
        let pre;
        let post;
        let div;
        for (let [key, value] of Object.entries(obj)) {
          //console.log(key,value);
          if (key==='command') {
            switch (value) {
              case "/config_general":
                config_general=obj;
                if (config_general.thingspeak_aktiv) $(".menu-graf").show();
                break;
              case "/config_wifi":
                config_wifi=obj;
                break;
              case "/config_mqtt":
                config_mqtt=obj;
                break;
            }
          }
          else if (key==='now') {
            if (0===Number(value)) value='Warte auf Zählerdaten...';
            else value=timeDecoder((value));
          }
          else if (key==='today_in') {   // 1x nach Start
            yestd_in=obj.yestd_in;
            yestd_out=obj.yestd_out;
            $("#tdy_in"  ).html(((value-yestd_in)/1000).toFixed(3).replace('.',','));
            $("#tdy_out" ).html(((obj.today_out-yestd_out) / 1000).toFixed(3).replace('.',','));
            var diff=(value-yestd_in)-(obj.today_out-yestd_out);
            if (diff >0) $("#tdy_diff").css({'color':'#FF0000'});
            else         $("#tdy_diff").css({'color':'#0000FF'});
            $("#tdy_diff").html((diff / 1000).toFixed(3).replace('.',','));
            for (let i=0;i<7;i++ ) {
              let datax = "data" + i;
              if (datax in obj) {
                datax = obj[datax];
                if (i === 0) $("#wd0").html('Gestern');
                else $("#wd"+i).html(wday[datax[0]]);
                $("#wd_in" +i).html((datax[1] / 1000).toFixed(3).replace('.',','));
                $("#wd_out"+i).html((datax[2] / 1000).toFixed(3).replace('.',','));
                diff=datax[1]-datax[2];
                if (diff >0) $("#wd_diff"+i).css({'color':'#FF0000'});
                else         $("#wd_diff"+i).css({'color':'#0000FF'});
                $("#wd_diff"+i).html((diff / 1000).toFixed(3).replace('.',','));
              }
            }
            continue;
          }
          else if (key==='1_7_0') {
            diff=value-obj['2_7_0'];
            if (diff >0) $("#saldo").css({'color':'#FF0000'});
            else         $("#saldo").css({'color':'#0000FF'});
            $("#saldo").html((diff / 1000).toFixed(3).replace('.',',')+' kW');
          }
          else if (key==='1_8_0') {
            if (e180 != value) {          // Energie-Tabelle auch aktualisieren
              $("#tdy_in").html(((value-yestd_in) / 1000).toFixed(3).replace('.',','));
              e180=value;
            }
          }
          else if (key==='2_8_0') {
            if (e280 != value) {          // Energie-Tabelle auch aktualisieren
              $("#tdy_out").html(((value-yestd_out) / 1000).toFixed(3).replace('.',','));
              e280 = value;
            }
            $("#tdy_diff").html((((e180-yestd_in)-(e280-yestd_out)) / 1000).toFixed(3).replace('.',','));
          }
          else if (key==='things_up') {
             if (value) value=timeDecoder(value);
             else value="";
          }
          else if (key==='page') {             // Logpanel
            logpagenr=obj["haspages"];
            value="Seite "+value+" von "+logpagenr;
          }
          else if (key==='list') {             // Logpanel
            let tab='<table class="pure-table pure-table-striped"><thead><tr><th>Zeit</th><th>Typ</th><th>Src</th><th>Inhalt</th><th>Daten</th></tr></thead><Tbody>';
              for (let i=0;i<value.length;i++ ) {
                let line=JSON.parse(value[i]);
                let t='- - -';
                if (line.time) {
                  t=timeDecoder(line.time);
                }
                tab += '<tr><td>'+t+'</td><td>'+line.type+'</td><td>'+line.src+'</td><td>'+line.desc+'</td><td>'+line.data+'</td></tr>';
              }
            tab+='</tbody></table>';
            value=tab;
          }
          else if (key==='uptime') {
            let uptime  = parseInt(value, 10);
            let seconds = uptime % 60;
            uptime = parseInt(uptime / 60, 10);
            let minutes = uptime % 60;
            uptime = parseInt(uptime / 60, 10);
            let hours   = uptime % 24;
            uptime = parseInt(uptime / 24, 10);
            value = uptime + "d " + hours + "h " + zeroPad(minutes, 2) + "m " + zeroPad(seconds, 2) + "s";
          }
          else if (key==='ls') {
            for (let i=0; i < value;i++) {
              let s=String(i);
              console.log(obj[s]);
            }
            //console.log(obj)
          }
          else if (key === 'flashmode') {
            switch (value) {
              case '0': value = 'QIO';break
              case '1': value = 'QOUT';break
              case '2': value = 'DIO';break
              case '3': value = 'DOUT';break
              case '4': value = 'FAST-READ';break
              case '5': value = 'SLOW-READ';break
              case '0xff': value = 'unknown';break
            }
          }
          else if (key === 'stations') {        // WiFi-Scan
            let tab = '<table class="pure-table pure-table-striped"><thead><tr><th>SSID</th><th>RSSI</th><th>Channel</th><th>Encryption</th></tr></thead><Tbody>';
            for (let i = 0; i < value.length; i++) {
              let station = JSON.parse(value[i]);
              let encr="Unknown";
              switch (station.encrpt) {
                case '7': encr="Open";break;
                case '5': encr="WEP";break;
                case '2': encr="WPA_PSK";break;
                case '4': encr="WPA2_PSK";break;
                case '8': encr="auto";break;
              }
              tab+='<tr><td>'+station.ssid+'</td><td>'+station.rssi+' dB</td><td>'+station.channel+'</td><td>'+encr+'</td></tr>'
            }
            tab += '</tbody></table>';
            value = tab;
          }
      
          // Look for INPUTs
          let input = $("input[name='" + key + "']");
          if (input.length > 0) {
            //console.log(input)
            if (input.attr("type") === "checkbox") {
              input.prop("checked", value);
            }
            else if (input.attr("type") === "radio")
              input.val([value]);
            else {
              pre = input.attr("pre") || "";
              post = input.attr("post") || "";
              input.val(pre + value + post);
            }
          }
          // Look for SPANs
          let span = $("span[name='" + key + "']");
          pre = span.attr("pre") || "";
          post = span.attr("post") || "";
          div = span.attr("div") || 0;
          if (div) {
            value = value / div;
            value=value.toFixed(3).replace('.',',');
          }
          span.html(pre + value + post);
      
          // Look for DIVs
          let divt = $("div[name='" + key + "']");
          pre = divt.attr("pre") || "";
          post = divt.attr("post") || "";
          div = divt.attr("div") || 0;
          if (div) {
            value = value / div;
            value=value.toFixed(3).replace('.',',');
          }
          divt.html(pre + value + post);
      
          // Look for SELECTs
          let select = $("select[name='" + key + "']");
          if (select.length > 0)
            select.val(value);
        }
      }
      
      function socketMessageListener(evt) {   // incomming from ESP
        try {
          var obj = JSON.parse(evt.data);
        }
        catch (e) {                   // Debug-Ausgaben
          console.log("%c"+evt.data,"color:blue");
          return;
        }
        try {
          if ("devicetype" in obj) {
            let title = obj.devicetype;
            if ("devicename" in obj) title = obj.devicename + " - " + title;
            document.title = title;
          }
        }
        catch (e) {                   // Debug-Ausgaben
          console.log(e);
          console.log(obj);
          return;
        }
        updateElements(obj);
      }
      
      function connectWS() {
        websock = new WebSocket(wsUri);
        websock.addEventListener("message", socketMessageListener);
        websock.onopen = function(evt) {
          $("#panel-home").show();
          //$("#panel-graf").show();
          websock.send('{"command":"getconf"}');
          //websock.send('{"command":"status"}');
          ws_pingpong = setInterval(function() {
            websock.send('{"command":"ping"}');
          }, 3000);
        }
      }
      
      function createCheckboxes() {
        $("input[type='checkbox']").each(function() {
          if($(this).prop("name")) $(this).prop("id", $(this).prop("name"));
          $(this).parent().addClass("toggleWrapper");
          $(this).after('<label for="' + $(this).prop("name") + '" class="toggle"><span class="toggle__handler"></span></label>')
        });
      }
      
      function zeroPad(number, positions) {
        return number.toString().padStart(positions, "0");
      }
      
      function loadTimeZones() {
        var time_zones = [
          -720, -660, -600, -570, -540,-480, -420, -360, -300, -240,-210, -180, -120, -60, 0,60, 120, 180, 210, 240,
          270, 300, 330, 345, 360,390, 420, 480, 510, 525,540, 570, 600, 630, 660, 720, 765, 780, 840 ];
        for(var i in time_zones) {
          var tz = time_zones[i];
          var offset = tz >= 0 ? tz : -tz;
          var text = "GMT" + (tz >= 0 ? "+" : "-") +
            zeroPad(parseInt(offset / 60, 10), 2) + ":" +
            zeroPad(offset % 60, 2);
          $("select[name='ntp_offset']").append(
            $("<option></option>")
            .attr("value", tz)
            .text(text)
          );
        }
      }
      
      function toggleMenu() {               // Hamburger Button
        $("#layout").toggleClass("active");
        $("#menu").toggleClass("active");     //???
        $("#menuLink").toggleClass("active"); //???
      }
      
      function beforHC () {
        if(window.confirm("Die nachfolgende Grafik wird mit einer Bibliothek von Highcharts.com erzeugt.\n\
      Nur der private Gebrauch ist gestattet."))
        onload2();
      }
      function showPanel() {              // menu click select panel
        try {highchartDestroy(false);}
        catch(e) {};
        $(".panel").hide();
        if($("#layout").hasClass("active")) {
          toggleMenu();
        }
        $("#" + $(this).attr("data")).show();
        if ($(this).attr('data')=='panel-home') {
          if ($('#timing').prop('checked') == false) $(".home_details").hide();
        }
        if ($(this).attr('data')=='panel-graf') {
          try {
            onload2();    // create chart
          }
          catch (e) {     // dyn. load js-files
            jQuery.getScript('chart.js', function(){
              try {
                let test=Highcharts.version;
              }
              catch (e) {
                //console.log(e);
                jQuery.getScript('https://cdnjs.cloudflare.com/ajax/libs/highstock/5.0.14/highstock.js', function(){
                  beforHC();
                });
                return;
              }
              beforHC();
            });
          }
        }
        if ($(this).attr('data')=='panel-general') {
          if ($('#use_auth').prop('checked') == false) $(".auth_details").hide();
          if ($('#thingspeak_aktiv').prop('checked') == false) $(".things_details").hide();
        }
        else if ($(this).attr('data')=='panel-mqtt') {
          if ($('#mqtt_enabled').prop('checked') == false) $(".mqtt_details").hide();
        }
        else if ($(this).attr('data')=='panel-status') {
          websock.send('{"command":"status"}');
        }
        else if ($(this).attr('data')=='panel-wifi') {
          if ($('#dhcp').prop('checked') == true) $(".wifi_details").hide();
          websock.send('{"command":"scan_wifi"}');
        }
        else if ($(this).attr('data')=='panel-log') {
          websock.send('{"command":"geteventlog","page":'+logpage+'}');
        }
      }
      
      function progressAnimate(id,time) {
        var pbar=$("#"+id);
        pbar.prop('max',time);
        pbar.val(0);
        pbar.show();
        var tm=time / (time/100);
        var iv=tm;
        var ticker=setInterval(function(){
          pbar.val(tm);
          tm+=iv;
          if (tm>time) {
            pbar.hide();
            clearInterval(ticker);
          }
        },tm);
      }
      
      function doUpdateGeneral() {                 // button save config
        progressAnimate('prgbar_general',300);
        let boot=($("#use_auth").prop("checked")!=config_general.use_auth);
        $(".general").each(function () {
          if ($(this).prop('type') == 'checkbox') config_general[this.name] = $(this).prop('checked');
          else config_general[this.name] = this.value;
        });
        if (config_general.thingspeak_aktiv) $(".menu-graf").show();
        else $(".menu-graf").hide();
        websock.send(JSON.stringify(config_general));
        if (boot) doReboot("Wenn die Authentifizierung ein- oder ausgeschaltet wurde, muss neu gebootet werden.\n")
      }
      function doUpdateWiFi() {
        progressAnimate('prgbar_wifi',300);
        $(".wifi").each(function () {
          if ($(this).prop('type') == 'checkbox') config_wifi[this.name] = $(this).prop('checked');
          else if ($(this).prop('type') == 'text') {
            if (this.name!='ssid') {
              config_wifi[this.name] = this.value.replaceAll(" ", "");
            }else config_wifi[this.name] = this.value;
          }
          else config_wifi[this.name] = this.value;
        })
        websock.send(JSON.stringify(config_wifi));
      }
      function doUpdateMQTT() {
        progressAnimate('prgbar_mqtt',300);
        $(".mqtt").each(function () {
          if ($(this).prop('type') == 'checkbox') config_mqtt[this.name] = $(this).prop('checked');
          else if ($(this).prop('type') == 'text')config_mqtt[this.name] = this.value.replaceAll(" ","");
          else config_mqtt[this.name] = this.value;
        })
        websock.send(JSON.stringify(config_mqtt));
      }
      
      function doReboot(msg) {
        if(window.confirm(msg+"Neustart mit OK bestätigen, dann 10s warten...")) {
          websock.send('{"command":"restart"}');
          doReload(7000);
        }
      }
      
      function doReload(milliseconds) {
        websock.close();
        $("#layout").hide();
        setTimeout(function() {
          window.location.reload();
        }, parseInt(milliseconds, 10));
      }
      
      function doUpgrade () {               // firmware update
        var file = $("input[name='upgrade']")[0].files[0];
        if(typeof file === "undefined") {
          alert("Zuerst muss eine lokale Datei gewählt werden!");
          return false;
        }
        var data = new FormData();
        data.append("update",file,file.name);       // www.mediaevent.de/javascript/ajax-2-xmlhttprequest.html
        var xhr = new XMLHttpRequest();     // https://javascript.info/xmlhttprequest
        var msg_ok = "Firmware geladen, Gerät wird neu gestartet. Die Verbindung wird in 15 Sekunden neu aufgebaut.";
        var msg_err = "Fehler beim Laden der Datei. Bitte wiederholen. ";
      
        var network_error = function(e) {
          alert(msg_err + " xhr request " + e.type);
        };
        xhr.addEventListener("error", network_error, false);
        xhr.addEventListener("abort", network_error, false);
        xhr.addEventListener("load", function(e) {
          if(xhr.status===200) {
              if (file.name.startsWith("firmware")) {
                $("#prgbar_update").hide();
                alert(msg_ok);
                doReload(15000);
              }
          }
          else alert(msg_err + xhr.status.toString() + " " + xhr.statusText + ", " + xhr.responseText);
        }, false);
        // xhr.upload.onprogress liefert keine vernünftigne Daten im Kurzzeitbereich
        xhr.open("POST",UpdateUri);
        xhr.send(data);
        if (file.name.startsWith("firmware"))
          progressAnimate('prgbar_update',10000);
        else progressAnimate('prgbar_update',400);
      }
      
      function mqttDetails() {  // display settings only if mqtt active
        if ($(this).prop('checked')) $(".mqtt_details").show();
        else $(".mqtt_details").hide();
      }
      
      function wifiDetails() {  // display settings only if dhcp active
        if ($(this).prop('checked')) $(".wifi_details").hide();
        else $(".wifi_details").show();
      }
      
      function thingsDetails() {  // display settings only if thingspeak active
        if ($(this).prop('checked')) $(".things_details").show();
        else $(".things_details").hide();
      }
      
      function authDetails() {  // display settings only if auth active
        if ($(this).prop('checked')) $(".auth_details").show();
        else $(".auth_details").hide();
      }
      
      function login() {
        var xhr = new XMLHttpRequest();
        xhr.onload = function (e) {
          if (xhr.readyState === 4) {
            if (xhr.status === 200) {
      //        console.log("login")
              connectWS();
            }
          }
        }
        xhr.open("get", loginUri);
        xhr.send(null);
      }
      
      function toggleVisiblePassword() {
        var elem = this.previousElementSibling;
        if(elem.type === "password") {
          elem.type = "text";
        }
        else {
          elem.type = "password";
        }
        return false;
      }
      
      function doLogNext() {
        if (logpage < logpagenr) {
          logpage++;
          websock.send('{"command":"geteventlog","page":'+logpage+'}');
        }
      }
      
      function doLogPrev() {
        if (logpage>1) logpage--;
        websock.send('{"command":"geteventlog","page":'+logpage+'}');
      }
      
      function doLogClear () {
        if(window.confirm("Log-Datei löschen. Sicher?"))
        websock.send('{"command":"clearevent"}');
        logpage=1;
        doLogPrev();
      }
      
      function test () {
        websock.send('{"command":"test"}');
      }
      
      function clear () {
        websock.send('{"command":"clear"}');
      }
      
      $(function() {            // main
        loadTimeZones();
        createCheckboxes();
      
        $(".password-reveal").on("click", toggleVisiblePassword);
        $("#menuLink").on("click", toggleMenu);
        $(".pure-menu-link").on("click", showPanel);
        $(".button-update-general").on("click", doUpdateGeneral);  // save config
        $(".button-update-wifi").on("click", doUpdateWiFi);  // save config
        $(".button-update-mqtt").on("click", doUpdateMQTT);  // save config
        //$(".button-update-ntp").on("click", doUpdateNTP);  // save config
        $(".button-log-prev").on("click", doLogPrev);  // Logpage
        $(".button-log-next").on("click", doLogNext);  // Logpage
        $(".button-log-clear").on("click", doLogClear);  // Logpage
        $(".button-hist_clear").on("click", function(){
          if(window.confirm("Tagesverbrauch Wochentage löschen. Sicher?")) {
            websock.send('{"command":"clearhist"}');
            for (let i=0;i<7;i++ ) {
              $("#wd"+i).html('');
              $("#wd_in" +i).html('');
              $("#wd_out"+i).html('');
              $("#wd_diff"+i).html('');
            }
          }
        });
        $(".button-reboot").on("click", function () {
          doReboot("");
        });
        $(".button-graf").on("click", function (){
          highchartDestroy(true);
        });
        $("input[name='mqtt_enabled']").on("click", mqttDetails);
        $("input[name='dhcp']").on("click", wifiDetails);
        $("input[name='thingspeak_aktiv']").on("click", thingsDetails);
        $("input[name='use_auth']").on("click", authDetails);
        $(".button-upgrade").on("click", doUpgrade);      // firmware update
        $(".button-upgrade-browse").on("click", function() {
          $("input[name='upgrade']")[0].click();  // unsichtbaren Button klicken!
          return false;
        });
        $("input[name='upgrade']").change(function() {
          var file = this.files[0];               // copy Auswahl vom unsichtbaren auf sichtbaren Input
          $("input[name='filename']").val(file.name);
        });
        updateElements(config_general);     // vordefinierte configs übernehmen
        updateElements(config_wifi);
        updateElements(config_mqtt);
        let host=window.location.hostname;
        wsUri = "ws://" + host + "/ws";
        loginUri = "http://" + host + "/login";
        UpdateUri = "http://" + host + "/update";
        if (host=="localhost") {
          wsUri = "ws://192.168.2.20/ws";
          loginUri = "http://192.168.2.20/login";
          UpdateUri= "http://192.168.2.20/update"
        }
        login();
      });
      
      
      G 1 Reply Last reply Reply Quote 0
      • G
        GOETSCHHOFER @GOETSCHHOFER last edited by

        @Homoran

        Die Regex stimmt soweit, aber ich bekomme mit dieser Regex keine Werte in den Objekten im iobroker.

        Was könnte dies noch für einen Grund haben ?

        34c33cff-4cbc-4c7e-905d-514ccf603ab2-image.png

        Homoran 1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @GOETSCHHOFER last edited by Homoran

          @goetschhofer Was willst du mir damit sagen?
          Die Seite lässt sich nicht mit dem Parser auslesen, da die Werte dynamisch ausserhalb des Quelltextes geholt werden.
          und nur der Quelltext kann geparst werden.

          Das hatten wir alles schon einmal und ändert sich nicht
          du arbeitest nicht mit dem Quelltext sondern mit der HTML-Seite, die der Browaser aufbaut.
          Darauf hat der Parser keinen Zugriff

          G 1 Reply Last reply Reply Quote 1
          • G
            GOETSCHHOFER @Homoran last edited by GOETSCHHOFER

            @homoran

            Vielen Dank nochmals für die Klarstellung und Erläuterung.

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators last edited by

              @goetschhofer sagte in Parser Adapter:

              @homoran

              Vielen Dank nochmals für die Klarstellung und Erläuterung.

              wo ist denn der Quelltext?

              @homoran sagte in Parser Adapter:

              dazu brauche ich den echten Seitenquelltext (rechte Maustaste in die Seite wo die Werte stehen und Seitenquelltext anzeigen anklicken)

              @goetschhofer sagte in Parser Adapter:

              Die Regex stimmt soweit,

              selbst das stimmt nicht, außer du willst den RegEx in php verwenden.
              iobroker nutzt aber Javascript.

              G 2 Replies Last reply Reply Quote 0
              • G
                GOETSCHHOFER @Homoran last edited by GOETSCHHOFER

                @homoran said in Parser Adapter:

                wo ist denn der Quelltext?

                @homoran sagte in Parser Adapter:

                dazu brauche ich den echten Seitenquelltext (rechte Maustaste in die Seite wo die Werte stehen und Seitenquelltext anzeigen anklicken)

                @goetschhofer sagte in Parser Adapter:

                Die Regex stimmt soweit,

                selbst das stimmt nicht, außer du willst den RegEx in php verwenden.
                iobroker nutzt aber Javascript.

                Seitenquelltext anzeigen mit rechter Maustaste:

                <!doctype html>
                <html lang="de">
                <head>
                    <!--<meta http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline' 'unsafe-eval';">-->
                    <meta charset="utf-8">
                    <meta name="viewport" content="width=device-width, initial-scale=1.0">
                    <title>ESP-Device</title>
                    <link rel="stylesheet" href="custom.css">
                    <link rel="icon" type="image/png" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAAADhCAMAAAAJbSJIAAAAvVBMVEX///8AAADt6+1dU2Db2dxvZXFLP05hVmT08vQ6Ojp0c3QaFxtcUl/29PZSSVTf3eCdnJ42MTcfHCBtY2+qqapGPkjo5ugdHR3mZG4lHyZZWVnJxsptbG0tKC4IBwgRDhLxaXOGOkBlZGU3LjlBNkMhISEsLCzSz9NEQ0S2tLaFhIXDw8N7entPTk9bW1tMRE9GHiGyTVUmEBKRkJExMTGurq4vJzGioKJEPkYaCwyCgYI1FxqkR068UlpbJyvkZI6xAAAJmUlEQVR4nO2deXuiOhTGBW3BhWo7lta6dWxdKzoz2urMnXu//8e6Qk6QQBAEsuiT9y+JAfIjIcuBcyiVUqqyq20Hmhwabmu7StqCp1TrSTRVRE+tAvk+RdPE6LMgPssRTRIrxywCUB+K5jgluwBA0QwJyo8YqMF6P6B7geo/HAs1zAu48o+0LxsBlW+E6tvaH7lW+QA/8HHujTKhxjexiDc3e1y0j1yEeBhchwAlILwpQ9kGeQDncYAyEN7cQenmOQgdehOVhBA3VCc7oAkXKcLnSjSeKyhf9nF/HluFrr4JEUG4z9tMN+gAd1TAckOMysaR0kAF3GQmHKG+ig4oTI1AH4BGxVFmwhka68lGanBTmXZej9FHrHslnGUmrKLJGnGq9SM3BceoBj7v2tvChGj6Vi2QEA9BfDRs4PM+BlIP3ULDYEVocF5JdXB3FkwcugVhRci3Cg+CIeKRSHT79qshNHVX5pxIvCbCJSLU7Wsl7OkgczrmS7jpeppW2Kpp6b5MN6HFjbDVdFVp6nxltjkSomusCBWhIlSEilARKkJFqAgVoSJUhIpQESpCRagIFaEiVISKUBEqQkWoCEUQmkVLMkKr21rWitSy1bUkIjQrLF7ndyqmLIRmlwGfq64pCaHOyltoIEkdmhtGgJq2MeUg3DIj3MpByNLnRI5WCoT38Hok2urDFrpFO7BVhwMidbytAWz10Y6vSN+lJPSy+IRoCxOirXrwgD4h2sKEz64UoSJUhIpQEfIm3GYFtLQLIdSsjIR/LoawlomvWdMuhlDrNc+Dqyyq2lGXQOiqukgbZ8EOLdgvhfCgl1Se3R9aSJwJM8y8A0rhFBwBTEv4AK7ksBOxNYStIWVrAFuIXvuO9CMjYTIiZbEn//qQ3CWBcBTdJYnQouxTkEbW+YQJzoi+c0q98/V2O0xFqLMytR2aXLo6HN6+fXXqeKfTvQ0YlYa3nlISWktGgEsrLaGrdzD5nY5b84IyvZ9FqJtsEJdpLcJQIe/o75eThCiGQv32PELd6q60orWKmPWTCKG8TycJB9kID4y6Xaz0yGOLZEJ0K56OIjFBec4n5KFEQlQ/k5OEMNt+u0jCN/T36YUGdtb8ukDCLyh7QoSF450+7LxdDOFbJ+CCfRqw1NIikp+QUGIYt9mFEybHV7DG4X0uinCcxmQTfmJ9SYQpg/F8jC+UsJo+KFazvajNziU0rYNob4kEspjpsljULKcIJ71F+0xrVKk0PYvQarZG2/FsOddjAUy73auOq712Mzoj8/nmy9l4O2pVKFlOEGaMaDZPT2g2j8vgXVz5F36WRUwOa+ePa6tm5ErFE2YOo5R+bUEErnCotVOpB7LUw+/KIBGd3Dz92iIrYPo3hsjIHNqWUvgKmUWrUPKEXnmYC39jyC9kuPTaKtpQw0FsnyI5rMgaM3QVxBFa0XlQ5PIvIlkW4SzzSJZZSisGO0Ibndk3sW4dPJJWQ5XoW7h+/fcP/mmHqhA/SRg4/hVLaYliTWjConL8OZ1O4XmVNqWWTfv5+vr6L/xuk5WIB6dldzqdw5XqCX5jCLoaExkGtLkX0aWHNnZk2XoY0H0m8ZNa/B2kTt3DQIudyEEINu8Xr2i4bH+IskEL/AWPXX6hcpHm3j+B69SdgtFPdCutBAlriBAaW40kRNX8AwjRQ4kJSQhtHY5Sk4TQDhA6RB0uaHX4+xnpt7dF9pS4t4U6dCQh9Jqpfx+6iFOYvYXuQ6iSv8H7sEa9D1feUWS5D1EzxcXXdtNpF7qU0GDt96V/n1+f/8LvUF+Kpw29Q1+Kp6c18YReM/WfzDxN8K9Z3Hg4+Md/oZjMEZg3TPz5T1d4K0XNlBKW/iM8YYm+R7wJZ4k+m3WEz2lwbxqZl/ai89JJKEt0dm71wocRPy/FzTQ8pZxRlkbhq0AxgZih+W2kIQghrFBa2ChaeHeNHFwbbaPrW1fE0+QwoChCmJvafhMbf8at8Y/34iYmh/Xpr/Frdvo1PltCfwnVbNdm1ZfFB92K5JVQny+dqrOcx9uiTPNj8VKd1dr2OXYaxoTHlb4ZZyTTySwJeWKziCKs2LTSsJAwQm6GYWGE3BDFEfJqpwIJaZbBKyPkgyiUkMutKJSQC6JYQh6Iggk5IIomZN/diCdkPS5KQMi4pcpAyLYa5SBkWY2SEDJklIaQGaNEhAdGFvejVIQeZNGUshF6lIViykh4JC1EPL/gcSZhMQoQ4q92XS8hrsRrJvQ+TnjdhO6nvMBl80oJXTEj3Nnet4IC5+Yie8eN0HEDqs2PD4Knm0JjtcXK4UaItMDvDUUfT7MVN0KtC62HXSQs0YTwcTJ2TrICCIkvLWrvd0i8CRsMCXFYAE/4C6zGPV/AvsGQsFw+InaOl5IrYj9QGhaEBuUX+Zu1iPPmJUTjz5Bn+c8TfPk1+6fH4ZW8RvKpBAl6vmwBeFzBPHAtGiRWa1TARKfKWMH7vn1Zmynu2qeZCbFXsKzNFI/E2QHxjViXsxKhJ81xG5ZKTU3idupPP872OwxqJS2i4U8+VnkAjyGH6ndyMRpr/y3GpKBCCdr5s6WH/Z0hi+72R2fGXT7AUolVdJ2i1MsLeLwV5VS+mxAkcy0uiwA8BjyRT5k9nMNiFuoqn2pmUYAH6ZtIuAzBGm9yjhIUSOQNMeghgYGtQ2hIS4SO/YFIBEf6OpkVJQ5piVs4L3IqmhWO5wp1qk86sj+Da8QtoS9aIgQ3eicSIfLYG5kVJX7REkeenb0JPuGFdKERIbfOJxuZgbkTIvuzrQgVoSJUhFdBiFyusDsksWrE9n3SrvOIEu+IRDCxPBKJYBy8Jw+KEsFp0+JGaNIIy1TC/QnCPZWQXOsCoakIhREaJ1spsf8FECIb9IBIwzBkxTZo2GU06SRt7HIRlr0JNdl9gNWP7D6gUwqb8LzqfgjtLhdhef/QX4fTjH2nE01cdzr7aGL/YR9Ok4ywbNCsjnkSpSMsXIpQESpCRcjhIYUoQvzwlL3QiWrcCSlBo5mqxZswGnWHscB/kyNhNCIQU+GoRRwJdZunnX+MXW94Euo2vyeLK9+3iCuhbnWXTpW9nGXgWx58CSHANXMFw/HwJuQvRagIFaEiVISKUBEqQkWoCBWhIlSEipA5IbxBIxRQN1EhEj76m1EQyrktshKtT1SIDRNC7Hb/YZmiZPllYELof99yxieCAkV+0HY2gLTvWwpSdpfKBIWj/4vS6e/h5hHL78SfIyavsSM1B8mnZ65BLn/DRIn3LSnIESheenslzrlkvGqf3UL/B3TpaK75ILmuAAAAAElFTkSuQmCC">
                    <script src="jquery351.js"></script>
                </head>
                <body>
                <div id="layout">  <!--This is the parent `<div>` that contains the menu and the content area :: side-menu.css-->
                    <!-- Menu toggle -->
                    <!--<a href="#menu" id="menuLink" class="menu-link">-->
                    <a id="menuLink" class="menu-link">
                        <!-- Hamburger icon -->
                        <span></span>
                    </a>
                    <div id="menu">
                        <div class="pure-menu">
                            <!--<a class="pure-menu-heading" href="#">Device</a>-->
                            <span class="pure-menu-heading" name="devicetype">DeviceType</span>
                            <ul class="pure-menu-list">
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-home">Zähler</a></li>
                                <li class="pure-menu-item menu-graf"><a class="pure-menu-link" data="panel-graf">Grafik</a></li>
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-log">Log</a></li>
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-status">Status</a></li>
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-general">Allgemein</a></li>
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-wifi">WiFi</a></li>
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-mqtt">MQTT</a></li>
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-update">Update</a></li>
                                <li class="pure-menu-item"><a class="pure-menu-link" data="panel-hist">Versionsinfo</a></li>
                            </ul>
                        </div>
                    </div>
                
                    <div class="content">  <!--The content `<div>` is where all your content goes.  :: side-menu.css-->
                      <div class="panel" id="panel-graf">
                        <div id="chart-container" class="chart">
                            <br>Daten von Thingspeak werden geladen...<br>
                        </div>
                        <div class="chart-below">
                        <div class="pure-g">
                          <div class="pure-u-1 pure-u-sm-1-5">
                            <button class="pure-button button-load" onclick="loadOneChannel();" style="margin-left: 10px;width:160px;">Daten nachladen:</button>
                          </div>
                          <select class="pure-u-1 pure-u-sm-1-5" style="margin-left: 10px;" id="Loads">
                            <option selected="selected" value="1">1 Tag</option>
                            <option value="2">2 Tage</option>
                            <option value="3">3 Tage</option>
                            <option value="4">4 Tage</option>
                            <option value="5">5 Tage</option>
                            <option value="6">6 Tage</option>
                            <option value="7">7 Tage</option>
                            <option value="8">8 Tage</option>
                            <option value="9">9 Tage</option>
                            <option value="10">10 Tage</option>
                          </select>
                          <select id="ChannelSelect" class="pure-u-1 pure-u-sm-1-5" style="margin-left: 10px;"></select>
                          <div class="pure-u-1 pure-u-sm-1-5">
                            <button class="pure-button button-graf" style="margin-left:10px;width:160px;">Chart neu laden</button>
                          </div>
                        </div>
                        <div class="pure-g">
                          <label class="pure-u-1 pure-u-sm-1-5">Grafikdaten autom. aktualisieren</label>
                          <div class="pure-u-1 pure-u-sm-1-5 on_off">
                            <input id="Update" name="Update" type="checkbox" class="">
                          </div>
                          <div class="pure-u-1 pure-u-sm-2-5"></div>
                        </div>
                        </div>
                      </div>
                
                      <div class="panel" id="panel-home">
                        <div class="header">
                            <h1>AMIS-Zähler</h1>
                            <br>
                        </div><br>
                        <div class="amis">
                            <div class="pure-u-11-24">Uhrzeit (Zähler)</div>
                            <div class="pure-u-11-24" name="now"></div>
                            <div class="pure-u-11-24">1.8.0 (Energie A+)</div>
                            <strong><div class="pure-u-11-24" name="1_8_0" post=" kWh" div="1000"></div></strong>
                            <div class="pure-u-11-24">2.8.0 (Energie A-)</div>
                            <strong><div class="pure-u-11-24" name="2_8_0" post=" kWh" div="1000"></div></strong>
                            <div class="pure-u-11-24">3.8.1 (Energie R+)</div>
                            <div class="pure-u-11-24" name="3_8_1" post=" kVarh" div="1000"></div>
                            <div class="pure-u-11-24">4.8.1 (Energie R-)</div>
                            <div class="pure-u-11-24" name="4_8_1" post=" kVarh" div="1000"></div>
                            <div class="pure-u-11-24">1.7.0 (Wirk. P+)</div>
                            <strong><div class="pure-u-11-24" name="1_7_0" post=" kW" div="1000"></div></strong>
                            <div class="pure-u-11-24">2.7.0 (Wirk. P-)</div>
                            <strong><div class="pure-u-11-24" name="2_7_0" post=" kW" div="1000"></div></strong>
                            <div class="pure-u-11-24">Saldo 1.7.0-2.7.0</div>
                            <strong><div class="pure-u-11-24" id="saldo"></div></strong>
                            <div class="pure-u-11-24">3.7.0 (Blind. Q+)</div>
                            <div class="pure-u-11-24" name="3_7_0" post=" kVar" div="1000"></div>
                            <div class="pure-u-11-24">4.7.0 (Blind. Q-)</div>
                            <div class="pure-u-11-24" name="4_7_0" post=" kVar" div="1000"></div>
                            <div class="pure-u-11-24">1.128.0 (Inkasso)</div>
                            <div class="pure-u-11-24" name="1_128_0"></div>
                            <br><hr>
                            <div class="pure-u-11-24">Uptime</div>
                            <div class="pure-u-11-24" name="uptime"></div>
                            <div class="pure-u-11-24">Upload Thingspeak</div>
                            <div class="pure-u-11-24" name="things_up"></div>
                            <br><hr>
                            <h3>Energie [kWh]</h3>
                            <div class="pure-u-1">
                              <table class="pure-table pure-table-striped" width="100%">
                                <thead><tr><th>Tag</th><th align="right">Bezug</th><th align="right">Lfrg.</th><th align="right">Diff.</th></tr></thead>
                                <Tbody>
                                  <tr><td>Heute</td>    <td align="right" id="tdy_in"></td><td align="right" id="tdy_out"></td><td align="right" id="tdy_diff"></td></tr>
                                  <tr><td id="wd0"></td><td align="right" id="wd_in0"></td><td align="right" id="wd_out0"></td><td align="right" id="wd_diff0"></td></tr>
                                  <tr><td id="wd1"></td><td align="right" id="wd_in1"></td><td align="right" id="wd_out1"></td><td align="right" id="wd_diff1"></td></tr>
                                  <tr><td id="wd2"></td><td align="right" id="wd_in2"></td><td align="right" id="wd_out2"></td><td align="right" id="wd_diff2"></td></tr>
                                  <tr><td id="wd3"></td><td align="right" id="wd_in3"></td><td align="right" id="wd_out3"></td><td align="right" id="wd_diff3"></td></tr>
                                  <tr><td id="wd4"></td><td align="right" id="wd_in4"></td><td align="right" id="wd_out4"></td><td align="right" id="wd_diff4"></td></tr>
                                  <tr><td id="wd5"></td><td align="right" id="wd_in5"></td><td align="right" id="wd_out5"></td><td align="right" id="wd_diff5"></td></tr>
                                  <tr><td id="wd6"></td><td align="right" id="wd_in6"></td><td align="right" id="wd_out6"></td><td align="right" id="wd_diff6"></td></tr>
                                </Tbody>
                              </table>
                            </div>
                        </div>
                      </div>
                
                      <div class="panel pure-form" id="panel-status">
                        <div class="header">
                            <h1>STATUS 🛈</h1>
                            <br>
                        </div>
                        <div class="pure-u-1 pure-u-lg-1-2 state">
                            <div class="pure-u-1-2">Chip ID</div>
                            <div class="pure-u-11-24"><span class="right" name="chipid"></span></div>
                            <div class="pure-u-1-2">Wifi MAC</div>
                            <div class="pure-u-11-24"><span class="right" name="mac"></span></div>
                            <div class="pure-u-1-2">SDK version</div>
                            <div class="pure-u-11-24"><span class="right" name="sdk"></span></div>
                            <div class="pure-u-1-2">Core version</div>
                            <div class="pure-u-11-24"><span class="right" name="core"></span></div>
                            <div class="pure-u-1-2">App version</div>
                            <div class="pure-u-11-24"><span class="right" name="version"></span></div>
                            <div class="pure-u-1-2">App name</div>
                            <div class="pure-u-11-24"><span class="right" name="app_name"></span></div>
                            <div class="pure-u-1-2">Firmware size</div>
                            <div class="pure-u-11-24"><span class="right" name="sketchsize" post=" bytes"></span></div>
                            <div class="pure-u-1-2">Free space</div>
                            <div class="pure-u-11-24"><span class="right" name="freesize" post=" bytes"></span></div>
                            <div class="pure-u-1-2">LITTLE-FS size</div>
                            <div class="pure-u-11-24"><span class="right" name="littlefs_size" post=" bytes"></span></div>
                            <div class="pure-u-1-2">LITTLE-FS used</div>
                            <div class="pure-u-11-24"><span class="right" name="littlefs_used" post=" bytes"></span></div>
                            <div class="pure-u-1-2">Max. free block size</div>
                            <div class="pure-u-11-24"><span class="right" name="max_free_blocksz" post=" bytes"></span></div>
                            <div class="pure-u-1-2">Free heap</div>
                            <div class="pure-u-11-24"><span class="right" name="heap_free" post=" bytes"></span></div>
                            <div class="pure-u-1-2">Heap fragmentation</div>
                            <div class="pure-u-11-24"><span class="right" name="heap_fragment" post=" %"></span></div>
                            <div class="pure-u-1-2">Flash speed</div>
                            <div class="pure-u-11-24"><span class="right" name="flashspeed" post=" Hz"></span></div>
                            <div class="pure-u-1-2">Flash size</div>
                            <div class="pure-u-11-24"><span class="right" name="flashsize" post=" bytes"></span></div>
                            <div class="pure-u-1-2">Flash mode</div>
                            <div class="pure-u-11-24"><span class="right" name="flashmode"></span></div>
                            <div class="pure-u-1-2">CPU Frequ.</div>
                            <div class="pure-u-11-24"><span class="right" name="cpu" post=" MHz"></span></div>
                        </div>
                        <div class="pure-u-1 pure-u-lg-11-24 state">
                            <div class="pure-u-1-2">Network</div>
                            <div class="pure-u-11-24" name="ssid"></div>
                            <div class="pure-u-1-2">Channel</div>
                            <div class="pure-u-11-24" name="channel"></div>
                            <div class="pure-u-1-2">RSSI</div>
                            <div class="pure-u-11-24" name="rssi" post=" dB"></div>
                            <div class="pure-u-1-2">IP</div>
                            <div class="pure-u-11-24" name="deviceip"></div>
                            <div class="pure-u-1-2">DNS</div>
                            <div class="pure-u-11-24" name="dns"></div>
                            <div class="pure-u-1-2">Gateway</div>
                            <div class="pure-u-11-24" name="gateway"></div>
                            <div class="pure-u-1-2">Netmask</div>
                            <div class="pure-u-11-24" name="netmask"></div>
                            <div class="pure-u-1-2">VCC</div>
                            <div class="pure-u-11-24"><span class="right" name="vcc">? </span><span>mV</span></div>
                            <div class="pure-u-1-2 module-mqtt">MQTT Status</div>
                            <div class="pure-u-11-24 module-mqtt" name="mqttStatus"></div>
                            <div class="pure-u-1-2 module-ntp">NTP Status</div>
                            <div class="pure-u-11-24 module-ntp" name="ntpSynced"></div>
                            <div class="pure-u-1-2 module-ntp">Current time</div>
                            <div class="pure-u-11-24 module-ntp" name="now"></div>
                            <div class="pure-u-1-2">Uptime</div>
                            <div class="pure-u-11-24" name="uptime"></div>
                        </div>
                      </div>
                
                      <div class="panel  pure-form" id="panel-general">
                        <div class="header">
                            <h1>Allgemein</h1>
                            <!--<h3>Current configuration</h3>-->
                            <br>
                        </div>
                        <br>
                        <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Name Gerät:</label>
                            <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="devicename" placeholder="ESP-Device" />
                        </div>
                            <br>
                        <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Authentifizierung:</label>
                            <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="use_auth" id="use_auth" class="general"/></div>
                        </div>
                        <div class="auth_details">
                          <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Benutzer:</label>
                            <input class="pure-u-1 pure-u-sm-2-5 general" name="auth_user" value="Admin"/>
                          </div>
                          <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Passwort:</label>
                            <input class="pure-u-1 pure-u-sm-2-5 general" name="auth_passwd" type="password" spellcheck="false" />
                            <span class="no-select password-reveal"></span>
                          </div>
                        </div>
                        <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">System-Log:</label>
                            <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="log_sys" id="log_sys" class="general"/></div>
                        </div>
                          <br>
                        <div style="display:block;">
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">Amis-Key:</label>
                                <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="amis_key"/>
                            </div>
                                <br>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">ThingSpeak/Highcharts aktiv:</label>
                                <div class="pure-u-1 pure-u-sm-1-5"><input type="checkbox" name="thingspeak_aktiv" id="thingspeak_aktiv" class="general"/></div>
                            </div>
                            <div class="things_details">
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Channel ID:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="channel_id"/>
                              </div>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Write API Key:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="write_api_key"/>
                              </div>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Read API Key:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="read_api_key"/>
                              </div>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Intervall (sec):</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" type="number" min="30" name="thingspeak_iv"/>
                              </div>
                                  <hr>
                                  <br>
                                  Daten für einen zweiten Zähler abrufen:
                                  <br><br>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Channel ID:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="channel_id2"/>
                              </div>
                              <div class="pure-g">
                                  <label class="pure-u-1 pure-u-sm-1-5">Read API Key:</label>
                                  <input class="pure-u-1 pure-u-sm-2-5 general" type="text" name="read_api_key2"/>
                              </div>
                            </div>
                        </div>
                        <hr>
                        <div class="pure-g">
                          <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_general"></progress></div>
                          <div style="min-height: 40px"></div>
                        </div>
                        <div class="pure-g">
                          <div class="pure-u-1 pure-u-sm-3-5">
                            <button class="pure-button button-update-general">Übernehmen</button>
                            <button class="pure-button button-reboot">Neustart</button>
                          </div>
                        </div>
                      </div>
                
                      <div class="panel pure-form" id="panel-wifi">
                        <div class="header">
                            <h1>WiFi 📶</h1>
                            <h2>Gerätebezeichnung (Hostname) bei "Allgemein" festlegen</h2>
                        </div>
                        <br>
                        <div class="pure-g">
                          <label class="pure-u-1 pure-u-sm-1-5">SSID:</label>
                          <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ssid" type="text"/>
                        </div>
                        <div class="pure-g">
                          <label class="pure-u-1 pure-u-sm-1-5">Passwort:</label>
                          <input class="pure-u-1 pure-u-sm-2-5 wifi" name="wifipassword" type="password"/>
                          <span class="no-select password-reveal"></span>
                        </div>
                        <div class="pure-g">
                          <label class="pure-u-1 pure-u-sm-1-5">DHCP</label>
                          <div class="pure-u-1 pure-u-sm-2-5  on_off"><input type="checkbox" name="dhcp" id="dhcp" class="wifi" /></div>
                        </div>
                        <div class="wifi_details">
                          <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Static IP:</label>
                            <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_static" type="text"/>
                          </div>
                          <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Netmask:</label>
                            <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_netmask" type="text"/>
                          </div>
                          <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Gateway:</label>
                            <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_gateway" type="text"/>
                          </div>
                          <div class="pure-g">
                            <label class="pure-u-1 pure-u-sm-1-5">Nameserver:</label>
                            <input class="pure-u-1 pure-u-sm-2-5 wifi" name="ip_nameserver" type="text"/>
                          </div>
                        </div>
                        <div class="pure-g">
                          <label class="pure-u-1 pure-u-sm-1-5">RF-Power:</label>
                          <input class="pure-u-1 pure-u-sm-1-5 wifi" name="rfpower" type="number" min="0" max="25" placeholder="0..25dBm"/>
                          <span class="pure-u-1 pure-u-sm-1-5">&nbsp;&nbsp;dBm</span>
                        </div>
                        <div class="pure-g">
                          <label class="pure-u-1 pure-u-sm-1-5">MDNS</label>
                          <div class="pure-u-1 pure-u-sm-2-5 on_off"><input type="checkbox" name="mdns" class="wifi" /></div>
                          <div class="pure-u-1 pure-u-sm-3-5"></div>
                          <div class="pure-u-1 pure-u-sm-1-5"></div>
                          <div class="pure-u-1 pure-u-sm-4-5 hint">
                              Wenn der Browser / das BS MDNS unterstützen, kann dieses Gerät unter "<span name="devicename" class="wifi"></span>.local" erreicht werden.
                              Das Verfahren ist auch als Bonjour bekannt.
                          </div>
                        </div>
                        <div class="pure-g">
                          <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_wifi"></progress></div>
                          <div style="min-height:40px"></div>
                        </div>
                        <div class="pure-g">
                          <div class="pure-u-1 pure-u-sm-3-5">
                            <button class="pure-button button-update-wifi">Übernehmen</button>
                            <button class="pure-button button-reboot">Neustart</button>
                          </div>
                        </div>
                        <hr>
                        <div class="pure-g">
                          <label class="pure-u-1 pure-u-sm-1-5">WiFi-Scan</label>
                          <div class="pure-u-1 pure-u-sm-4-5"><span name="stations"></span></div>
                        </div>
                      </div>
                
                      <div class="panel pure-form" id="panel-mqtt">
                          <div class="header">
                              <h1>MQTT</h1>
                              <h2>Einen MQTT broker im lokalen Netzwerk definieren.</h2>
                          </div>
                          <br>
                          <div class="pure-g">
                              <label class="pure-u-1 pure-u-sm-1-5">MQTT aktiv:</label>
                              <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="mqtt_enabled" id="mqtt_enabled" class="mqtt"/></div>
                          </div>
                          <div class="mqtt_details">
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT Broker</label>
                                <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_broker" type="text" placeholder="IP or address of your broker" />
                            </div>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT Port</label>
                                <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_port" type="number" value="1883" />
                            </div>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT User</label>
                                <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_user" type="text" placeholder="Frei lassen wenn kein Benutzer definiert ist" autocomplete="off" />
                            </div>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT Passwort</label>
                                <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_password" type="password" placeholder="Frei lassen wenn kein Passwort definiert ist" autocomplete="new-password" spellcheck="false" />
                                <span class="no-select password-reveal"></span>
                            </div>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT Client ID</label>
                                <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_clientid" type="text"/>
                                <div class="pure-u-0 pure-u-sm-2-5"></div>
                                <div class="pure-u-0 pure-u-sm-1-5"></div>
                                <div class="pure-u-1 pure-u-sm-2-5 hint">
                                    Wenn nicht definiert, wird automatisch eine ID generiert
                                </div>
                            </div>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT QoS</label>
                                <select class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_qos">
                                    <option value="0">0: At most once</option>
                                    <option value="1">1: At least once</option>
                                    <option value="2">2: Exactly once</option>
                                </select>
                            </div>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT Retain</label>
                                <div class="pure-u-1 pure-u-sm-2-5"><input type="checkbox" name="mqtt_retain" class="mqtt"/></div>
                            </div>
                            <div class="pure-g">
                                <label class="pure-u-1 pure-u-sm-1-5">MQTT Keep Alive</label>
                                <input class="pure-u-1 pure-u-sm-1-5 mqtt" type="number" name="mqtt_keep" min="0" max="3600" value="30"/>
                                <span class="pure-u-1 pure-u-sm-1-5">&nbsp;&nbsp;sec</span>
                            </div>
                            <div class="pure-g">
                                <div class="pure-u-1 pure-u-sm-1-5"></div>
                                <div class="pure-u-1 pure-u-sm-2-5 hint">
                                    Die publish-message wird im definierten Intervall gesendet.
                                </div>
                            </div>
                            <div class="pure-g">
                              <label class="pure-u-1 pure-u-sm-1-5">MQTT publish:</label>
                              <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_pub" type="text"/>
                            </div>
                            <!--<div class="pure-g">-->
                              <!--<label class="pure-u-1 pure-u-sm-1-5">MQTT subscribe:</label>-->
                              <!--<input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_sub" type="text"/>-->
                            <!--</div>-->
                            <div class="pure-g">
                              <label class="pure-u-1 pure-u-sm-1-5">MQTT Last Will:</label>
                              <input class="pure-u-1 pure-u-sm-2-5 mqtt" name="mqtt_will" type="text"/>
                            </div>
                          </div>
                          <hr>
                          <div class="pure-g">
                            <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_mqtt"></progress></div>
                            <div style="min-height:40px"></div>
                          </div>
                          <div class="pure-g">
                            <div class="pure-u-1 pure-u-sm-3-5">
                              <button class="pure-button button-update-mqtt">Übernehmen</button>
                              <button class="pure-button button-reboot">Neustart</button>
                            </div>
                          </div>
                      </div>
                
                      <div class="panel pure-form" id="panel-update">
                          <div class="header">
                              <h1>Software-Update ♺</h1>
                              <!--<h4>Configure your NTP (Network Time Protocol) servers and local configuration to keep your device time up to the second for your location.</h4>-->
                            <br>
                          </div>
                          <br><br><br>
                          <div class="pure-g">
                              <label class="pure-u-1 pure-u-sm-1-5">Datei:</label>
                              <input class="pure-u-1 pure-u-sm-2-5" name="filename" type="text" readonly />
                          </div>
                          <div class="pure-g">
                            <div class="pure-u-1 pure-u-sm-1-5"><progress id="prgbar_update"></progress></div>
                            <div style="min-height:40px"></div>
                          </div>
                          <div class="main-buttons pure-g">
                              <button class="pure-button button-upgrade-browse pure-u-1 pure-u-sm-2-24">Auswahl</button>
                              <div class="pure-u-1 pure-u-sm-1-24"></div>
                              <button class="pure-button button-upgrade pure-u-1 pure-u-sm-2-24">Update</button>
                              <div class="pure-u-1 pure-u-sm-1-24"></div>
                              <button class="pure-button button-reboot pure-u-1 pure-u-sm-2-24">Neustart</button>
                          </div>
                          <input name="upgrade" type="file" style="display:none;"/>
                      </div>
                
                      <div class="panel" id="panel-log">
                          <div class="header">
                              <h1>LOG 🗊</h1>
                              <!--<h2> style="color:#555;">-->
                              <h2>
                                  Ereignisse anzeigen
                              </h2>
                          </div>
                          <br>
                          <div class="pure-g">
                            <div class="pure-u-2-5 "><span name="page"></span></div>
                          </div>
                          <div class="pure-g">
                              <div class="pure-u-1 log"><span class="terminal" name="list"></span></div>
                              <!--<div class=""><span class="terminal" name="list"></span></div>-->
                          </div>
                          <br>
                          <div class="pure-g">
                              <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-prev">Seite -</button></div>
                              <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-next">Seite +</button></div>
                              <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-log-clear">Log löschen</button></div>
                          </div>
                          <br>
                          <div class="pure-g">
                              <div class="pure-u-1 pure-u-sm-1-5">Tagesverbrauch</div>
                              <div class="pure-u-1 pure-u-sm-1-5"><button class="pure-button button-hist_clear">Löschen</button></div>
                          </div>
                      </div>
                      <div class="panel" id="panel-hist">
                          <div class="header">
                              <h1>Versionsinfo</h1>
                          </div>
                          <br>
                          <div class="pure-g hist">
                            <div class="pure-u-1">
                              <h3>Version 1.2.0</h3>
                              Neues Filesystem LittleFs eingeführt. Leider gehen dadurch alle Konfigurations- und Logdateien verloren.
                              Kleine Bugs behoben.
                              <br>
                              <h3>Version 1.1.5</h3>
                              Antwort auf rest-Anfrage ist gesperrt, so lange Zähler nicht synchron ist.
                              <br>
                              <h3>Version 1.1.4</h3>
                              Alle Web-Dateien werden vom lokalen Server bereitgestellt, d.h. kein Nachladen aus externen Quellen ist notwendig. Ausnahme: Chart-Grafik, aber dazu ist grundsätzlich eine Internetverbindung notwendig.
                              <br>
                              Logdatei und Log-Anzeige: übersteigt die Größe der Logdatei ca. 1000 Zeilen, dann wird sie gelöscht und neu erzeugt. Der Seitenabruf wurde verbessert wegen Timeout-Problemen.
                              <br>
                              <h3>Version 1.1.3</h3>
                              Leerzeichen in SSID erlaubt.
                              Einige HTML-Bugs bereinigt.
                              <br>
                              <h3>Version 1.1.2</h3>
                              Saldo 1.7.0 - 2.7.0 wird angezeigt.<br>
                              Die Energie-History wurde ergänzt und zeigt jetzt auch die Lieferung und den Saldo per Tag an.
                              <br>
                              <h3>Version 1.1.1</h3>
                              Einführung Versionsinfo.<br>
                              Bugfix MQTT.<br>
                              Die blaue LED leuchtet jetzt dauernd, sobald eine Verbindung zu einem Router (Access-Point) aufgebaut ist.<br>
                              Wenn das Modul selbst als Access-Point auftritt (Jumper gesetzt), blinkt die LED. Die Netzwerkkennung (SSID) ist dann "ESP8266_AP",
                              die Verbindung kann unter 192.168.4.1 aufgebaut werden.<br>
                              <h3>Version 1.1.0</h3>
                              Der Datenabruf von Thingspeak musste geändert werden, weil die bisherige Methhode mit jsonp nicht mehr unterstützt wird.
                              Durch die Änderung des API können sehr restriktive Webbrowser u.U. keine Daten mehr abrufen.<br>
                              Die gesamte Oberfläche wurde neu gestaltet, im Hintergrund laufen jetzt alle Vorgänge asynchron ab. Die Betriebssicherheit
                              sollte dadurch noch besser werden.
                            </div>
                          </div>
                      </div>
                    </div>
                </div>
                
                <!--<script src="chart.js"></script>-->
                <script src="cust.js"></script>
                
                </body>
                </html>
                
                Homoran 1 Reply Last reply Reply Quote 0
                • G
                  GOETSCHHOFER @Homoran last edited by

                  @homoran said in Parser Adapter:

                  @goetschhofer sagte in Parser Adapter:

                  Die Regex stimmt soweit,

                  selbst das stimmt nicht, außer du willst den RegEx in php verwenden.
                  iobroker nutzt aber Javascript.

                  Ja, dies kann ich nachvollziehen.
                  Beim Test mir Regex war ich offenbar zu schnell, bei Java zeigt er einen Fehler an.

                  421ef5e8-cf16-43ee-ab91-7e09281aad1e-image.png

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Q
                    Qlink last edited by

                    Hi Leute,

                    ich hätte eine Frage bzgl. Regex:

                    Meine Abfrage lautet: "Drive Warning"[^}]+\D\s(\d+)

                    Auf regex101.com bekomme ich mit meiner Abfrage den richtigen Wert:
                    https://regex101.com/r/NxzobQ/1

                    6f6c8147-bf0d-4a66-a748-6a0081fc3c36-image.png

                    wenn ich dieselbe Abfrage im Parser Adapter verwende bekomme ich den falschen Wert retour:

                    2b558ef6-cc73-4e9d-b8b1-dd5a12690d69-image.png

                    Wo habe ich hier einen Fehler drin, bzw. wieso bekomme ich unterschiedliche Ergebnisse ?

                    Beste Grüße

                    Homoran 1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @GOETSCHHOFER last edited by

                      @goetschhofer sagte in Parser Adapter:

                      Seitenquelltext anzeigen mit rechter Maustaste:

                      da stehen, wie bereits vermutet, nur Variable und js-Befehle drin:

                                        <tr><td>Heute</td>    <td align="right" id="tdy_in"></td><td align="right" id="tdy_out"></td><td align="right" id="tdy_diff"></td></tr>
                                        <tr><td id="wd0"></td><td align="right" id="wd_in0"></td><td align="right" id="wd_out0"></td><td align="right" id="wd_diff0"></td></tr>
                                        <tr><td id="wd1"></td><td align="right" id="wd_in1"></td><td align="right" id="wd_out1"></td><td align="right" id="wd_diff1"></td></tr>
                                        <tr><td id="wd2"></td><td align="right" id="wd_in2"></td><td align="right" id="wd_out2"></td><td align="right" id="wd_diff2"></td></tr>
                                        <tr><td id="wd3"></td><td align="right" id="wd_in3"></td><td align="right" id="wd_out3"></td><td align="right" id="wd_diff3"></td></tr>
                                        <tr><td id="wd4"></td><td align="right" id="wd_in4"></td><td align="right" id="wd_out4"></td><td align="right" id="wd_diff4"></td></tr>
                                        <tr><td id="wd5"></td><td align="right" id="wd_in5"></td><td align="right" id="wd_out5"></td><td align="right" id="wd_diff5"></td></tr>
                                        <tr><td id="wd6"></td><td align="right" id="wd_in6"></td><td align="right" id="wd_out6"></td><td align="right" id="wd_diff6"></td></tr>
                                      </Tbody>
                      

                      Dein Wert kommt nicht im Quelltext vor

                      1 Reply Last reply Reply Quote 1
                      • Homoran
                        Homoran Global Moderator Administrators @Qlink last edited by

                        @qlink wo ist der richtige Quelltext als code?

                        Q 1 Reply Last reply Reply Quote 1
                        • Homoran
                          Homoran Global Moderator Administrators @GOETSCHHOFER last edited by

                          @goetschhofer ich habe für dich noch mal bei meinem WR nachgesehen, der lädt die Daten auch dynamisch.

                          DAs siehst du im Tab "Netzwerk"
                          WR_Tab_Network.png

                          Da musst du suchen wie der Pfad zu den Daten ist und diesen Pfad dann abgreifen.

                          G 1 Reply Last reply Reply Quote 1
                          • G
                            GOETSCHHOFER @Homoran last edited by GOETSCHHOFER

                            @homoran said in Parser Adapter:

                            @goetschhofer ich habe für dich noch mal bei meinem WR nachgesehen, der lädt die Daten auch dynamisch.

                            DAs siehst du im Tab "Netzwerk"

                            Da musst du suchen wie der Pfad zu den Daten ist und diesen Pfad dann abgreifen.

                            Vielen Dank mal einstweilen für die Hilfe, da werde ich dann weitersuchen.

                            1 Reply Last reply Reply Quote 0
                            • Q
                              Qlink @Homoran last edited by

                              @homoran said in Parser Adapter:

                              @qlink wo ist der richtige Quelltext als code?

                              Wenn ich Rechtsklick und Seitenquelltext anzeigen klicke kommt Folgendes:

                              
                              # HELP hwi_bus_clock_mhz Bus Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3
                              hwi_bus_clock_mhz{unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Bus Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 97.61008134825474
                              # HELP hwi_core_clock_mhz Core Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3
                              hwi_core_clock_mhz{coreno="0",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 0 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 780.8806507860379
                              hwi_core_clock_mhz{coreno="1",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 1 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 780.8806507860379
                              hwi_core_clock_mhz{coreno="2",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 2 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 780.8806507860379
                              hwi_core_clock_mhz{coreno="3",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 3 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 780.8806507860379
                              # HELP hwi_core_ratio_x Core Ratio x - CPU [#0]: Intel Xeon E3-1225 v3
                              hwi_core_ratio_x{coreno="0",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 0 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 8
                              hwi_core_ratio_x{coreno="1",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 1 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 8
                              hwi_core_ratio_x{coreno="2",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 2 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 8
                              hwi_core_ratio_x{coreno="3",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 3 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 8
                              # HELP hwi_core_residency Core Residency % - CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency
                              hwi_core_residency{coreno="0",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 0 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 88.20606221645437
                              hwi_core_residency{coreno="1",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 1 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 88.30354808811423
                              hwi_core_residency{coreno="2",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 2 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 88.37638068112336
                              hwi_core_residency{coreno="3",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 3 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 92.46319157455508
                              # HELP hwi_core_vid_v Core VID V - CPU [#0]: Intel Xeon E3-1225 v3
                              hwi_core_vid_v{coreno="0",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 0 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.7230224609375
                              hwi_core_vid_v{coreno="1",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 1 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.71875
                              hwi_core_vid_v{coreno="2",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 2 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.7236328125
                              hwi_core_vid_v{coreno="3",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 3 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.7252197265625
                              # HELP hwi_drive_failure_yesno Drive Failure Yes/No - (multiple sources)
                              hwi_drive_failure_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Failure",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0
                              hwi_drive_failure_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Failure",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0
                              hwi_drive_failure_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Failure",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0
                              # HELP hwi_drive_host_reads_gb Drive Host Reads GB - (multiple sources)
                              hwi_drive_host_reads_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Reads",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 13388
                              hwi_drive_host_reads_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Reads",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 554278
                              hwi_drive_host_reads_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Reads",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 4873
                              # HELP hwi_drive_host_writes_gb Drive Host Writes GB - (multiple sources)
                              hwi_drive_host_writes_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Writes",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 9971
                              hwi_drive_host_writes_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Writes",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 103590
                              hwi_drive_host_writes_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Writes",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 1822
                              # HELP hwi_drive_read_activity Drive Read Activity % - (multiple sources)
                              hwi_drive_read_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Read Activity",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.231
                              hwi_drive_read_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Read Activity",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0
                              hwi_drive_read_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Read Activity",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0
                              # HELP hwi_drive_read_rate_mbs Drive Read Rate MB/s - (multiple sources)
                              hwi_drive_read_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Read Rate",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.078
                              hwi_drive_read_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Read Rate",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0
                              hwi_drive_read_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Read Rate",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0
                              # HELP hwi_drive_remaining_life Drive Remaining Life % - (multiple sources)
                              hwi_drive_remaining_life{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Drive Remaining Life",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 97
                              hwi_drive_remaining_life{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Drive Remaining Life",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 59
                              hwi_drive_remaining_life{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Drive Remaining Life",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 99
                              # HELP hwi_drive_temperature_c Drive Temperature °C - (multiple sources)
                              hwi_drive_temperature_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="Drive Airflow Temperature",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 28
                              hwi_drive_temperature_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="Drive Airflow Temperature",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 25
                              # HELP hwi_drive_total_activity Drive Total Activity % - (multiple sources)
                              hwi_drive_total_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total Activity",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.253
                              hwi_drive_total_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total Activity",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0.102
                              hwi_drive_total_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total Activity",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0.101
                              # HELP hwi_drive_warning_yesno Drive Warning Yes/No - (multiple sources)
                              hwi_drive_warning_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Warning",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0
                              hwi_drive_warning_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Warning",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0
                              hwi_drive_warning_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Warning",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0
                              # HELP hwi_drive_write_activity Drive Write Activity % - (multiple sources)
                              hwi_drive_write_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Write Activity",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.022
                              hwi_drive_write_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Write Activity",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0.102
                              hwi_drive_write_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Write Activity",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0.101
                              # HELP hwi_drive_write_rate_mbs Drive Write Rate MB/s - (multiple sources)
                              hwi_drive_write_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Write Rate",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.009
                              hwi_drive_write_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Write Rate",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0.031
                              hwi_drive_write_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Write Rate",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0.031
                              # HELP hwi_effective_clock_mhz Effective Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3
                              hwi_effective_clock_mhz{aggregationtype="Average",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Average Effective Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 113.21687342191372
                              # HELP hwi_gpu_clock_mhz GPU Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                              hwi_gpu_clock_mhz{unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="GPU Clock",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 585.6604880895284
                              # HELP hwi_gpu_d3d_memory_dedicated_mb GPU D3D Memory Dedicated MB - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                              hwi_gpu_d3d_memory_dedicated_mb{unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="GPU D3D Memory Dedicated",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 6
                              # HELP hwi_gpu_d3d_memory_dynamic_mb GPU D3D Memory Dynamic MB - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                              hwi_gpu_d3d_memory_dynamic_mb{unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="GPU D3D Memory Dynamic",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 163.37109375
                              # HELP hwi_gpu_d3d_usage GPU D3D Usage % - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                              hwi_gpu_d3d_usage{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="GPU D3D Usage",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 4.723036573628488
                              # HELP hwi_mb_cpu_c MB CPU °C - (multiple sources)
                              hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU (PECI)",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 31
                              hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU GT Cores (Graphics)",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 27
                              hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU IA Cores",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 29
                              hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU Package",source="CPU [#0]: Intel Xeon E3-1225 v3: DTS",host="ASROCK"} 31
                              hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU Package",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 29
                              hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 37.5
                              # HELP hwi_mb_cpu_rpm MB CPU RPM - ASRock C226 WS (Nuvoton NCT6776F)
                              hwi_mb_cpu_rpm{unit="RPM",sensor_type="SENSOR_TYPE_NONE",sensor="CPUFANIN0",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 1124
                              # HELP hwi_mb_cpu_w MB CPU W - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                              hwi_mb_cpu_w{unit="W",sensor_type="SENSOR_TYPE_POWER",sensor="CPU Package Power",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 4.102112850552842
                              # HELP hwi_mb_motherboard_c MB Motherboard °C - ASRock C226 WS (Nuvoton NCT6776F)
                              hwi_mb_motherboard_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="Motherboard",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 28
                              # HELP hwi_memory_available_mb Memory Available MB - System
                              hwi_memory_available_mb{category="Physical",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Physical Memory Available",source="System",host="ASROCK"} 13345
                              hwi_memory_available_mb{category="Virtual",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Virtual Memory Available",source="System",host="ASROCK"} 19853
                              # HELP hwi_memory_clock_mhz Memory Clock MHz - Memory Timings
                              hwi_memory_clock_mhz{unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Memory Clock",source="Memory Timings",host="ASROCK"} 780.8806507860379
                              # HELP hwi_memory_clock_ratio_x Memory Clock Ratio x - Memory Timings
                              hwi_memory_clock_ratio_x{unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Memory Clock Ratio",source="Memory Timings",host="ASROCK"} 8
                              # HELP hwi_memory_command_rate_t Memory Command Rate T - Memory Timings
                              hwi_memory_command_rate_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Command Rate",source="Memory Timings",host="ASROCK"} 2
                              # HELP hwi_memory_commited_mb Memory Commited MB - System
                              hwi_memory_commited_mb{category="Virtual",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Virtual Memory Commited",source="System",host="ASROCK"} 17484
                              # HELP hwi_memory_load Memory Load % - System
                              hwi_memory_load{category="Physical",unit="%",sensor_type="SENSOR_TYPE_OTHER",sensor="Physical Memory Load",source="System",host="ASROCK"} 58.9
                              hwi_memory_load{category="Virtual",unit="%",sensor_type="SENSOR_TYPE_OTHER",sensor="Virtual Memory Load",source="System",host="ASROCK"} 46.8
                              # HELP hwi_memory_page_file_usage Memory Page File Usage % - System
                              hwi_memory_page_file_usage{unit="%",sensor_type="SENSOR_TYPE_OTHER",sensor="Page File Usage",source="System",host="ASROCK"} 3.5301610043174345
                              # HELP hwi_memory_tcas_t Memory Tcas T - Memory Timings
                              hwi_memory_tcas_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Tcas",source="Memory Timings",host="ASROCK"} 11
                              # HELP hwi_memory_tras_t Memory Tras T - Memory Timings
                              hwi_memory_tras_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Tras",source="Memory Timings",host="ASROCK"} 28
                              # HELP hwi_memory_trcd_t Memory Trcd T - Memory Timings
                              hwi_memory_trcd_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Trcd",source="Memory Timings",host="ASROCK"} 11
                              # HELP hwi_memory_trfc_t Memory Trfc T - Memory Timings
                              hwi_memory_trfc_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Trfc",source="Memory Timings",host="ASROCK"} 208
                              # HELP hwi_memory_trp_t Memory Trp T - Memory Timings
                              hwi_memory_trp_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Trp",source="Memory Timings",host="ASROCK"} 11
                              # HELP hwi_memory_used_mb Memory Used MB - System
                              hwi_memory_used_mb{category="Physical",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Physical Memory Used",source="System",host="ASROCK"} 19127
                              # HELP hwi_network_dl_rate_kbs Network DL rate KB/s - Network: Intel I210AT Copper (Springville) Network Adapter
                              hwi_network_dl_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current DL rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 0
                              hwi_network_dl_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current DL rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 5.986752717391304
                              # HELP hwi_network_up_rate_kbs Network UP rate KB/s - Network: Intel I210AT Copper (Springville) Network Adapter
                              hwi_network_up_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current UP rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 0
                              hwi_network_up_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current UP rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 15.143017648112755
                              # HELP hwi_usage Usage % - CPU [#0]: Intel Xeon E3-1225 v3
                              hwi_usage{aggregationtype="Max",category="CPU/Thread",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Max CPU/Thread Usage",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 10.5
                              hwi_usage{aggregationtype="Total",category="CPU",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total CPU Usage",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 6.175
                              
                              

                              Homoran 1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators @Qlink last edited by Homoran

                                @qlink sagte in Parser Adapter:

                                Wenn ich Rechtsklick und Seitenquelltext anzeigen klicke kommt Folgendes:
                                Spoiler

                                und welchen Wert willst du haben?

                                EDIT:
                                3 Platten von NUM 0-2 \"Drive Warning\"[^\}]+[^\d]+(\d+)
                                Typ number! nicht Zahl mit Komma

                                Q 1 Reply Last reply Reply Quote 0
                                • Q
                                  Qlink @Homoran last edited by

                                  @homoran said in Parser Adapter:

                                  "Drive Warning"[^}]+[^\d]+(\d+)

                                  Ich will den Wert im grünen Kreis, bekomme aber den Wert im roten Kreis:

                                  cc909d9a-ca1a-46ff-9365-facdc923859d-image.png

                                  Also die Zahl am Ende dieser Zeile:

                                  hwi_drive_warning_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Warning",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0
                                  

                                  ob ich bei Typ number(,) oder number(.) im Parser Adapter auswähle macht scheinbar keinen Unterschied...

                                  Homoran 2 Replies Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators @Qlink last edited by

                                    @qlink hast du mein Regex versucht?
                                    Wenn es damit auch nicht klappt musst du die Regel löschen! und mit Number neu anlegen.

                                    Eine Änderung des Typs kann zu einem Hänger führen

                                    Q 1 Reply Last reply Reply Quote 0
                                    • Homoran
                                      Homoran Global Moderator Administrators @Qlink last edited by

                                      @qlink Wenn das hier nicht hilft: \"Drive Warning\"[^\}]+[^\d]+(\d+)$ kopier mal bitte den Quelltext aus dem Parser Editor hier rein.
                                      ggf. ist der anders formatiert als im Browser

                                      Q 1 Reply Last reply Reply Quote 0
                                      • Q
                                        Qlink @Homoran last edited by

                                        @homoran said in Parser Adapter:

                                        @qlink hast du mein Regex versucht?
                                        Wenn es damit auch nicht klappt musst du die Regel löschen! und mit Number neu anlegen.

                                        Eine Änderung des Typs kann zu einem Hänger führen

                                        Ja, der Screenshot aus meinem letzten Post ist mit deinem Regex.
                                        Hätte jetzt auch nochmal probiert die komplette Regel zu löschen und neu anzulegen.

                                        Bekomme immer dasselbe Ergebnis bzw. den falschen Wert wie oben gepostet zurück ... 😞

                                        Homoran 1 Reply Last reply Reply Quote 0
                                        • Q
                                          Qlink @Homoran last edited by

                                          @homoran said in Parser Adapter:

                                          @qlink Wenn das hier nicht hilft: \"Drive Warning\"[^\}]+[^\d]+(\d+)$ kopier mal bitte den Quelltext aus dem Parser Editor hier rein.
                                          ggf. ist der anders formatiert als im Browser

                                          mit diesem Regex nimmt er die Zahl zwei Stellen vorher:

                                          6ddd881d-1a1b-480b-a375-ea1b0d29a3a0-image.png
                                          seltsamerweise zeigt er aber bei Ergebnis nichts an....

                                          Hier der Code direkt aus dem Parser Editor:

                                          
                                          # HELP hwi_bus_clock_mhz Bus Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3
                                          hwi_bus_clock_mhz{unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Bus Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 97.61008134825474
                                          # HELP hwi_core_clock_mhz Core Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3
                                          hwi_core_clock_mhz{coreno="0",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 0 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 3123.5226031441516
                                          hwi_core_clock_mhz{coreno="1",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 1 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 3123.5226031441516
                                          hwi_core_clock_mhz{coreno="2",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 2 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 3123.5226031441516
                                          hwi_core_clock_mhz{coreno="3",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Core 3 Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 3123.5226031441516
                                          # HELP hwi_core_ratio_x Core Ratio x - CPU [#0]: Intel Xeon E3-1225 v3
                                          hwi_core_ratio_x{coreno="0",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 0 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 32
                                          hwi_core_ratio_x{coreno="1",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 1 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 32
                                          hwi_core_ratio_x{coreno="2",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 2 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 32
                                          hwi_core_ratio_x{coreno="3",unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Core 3 Ratio",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 32
                                          # HELP hwi_core_residency Core Residency % - CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency
                                          hwi_core_residency{coreno="0",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 0 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 80.15015365152505
                                          hwi_core_residency{coreno="1",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 1 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 65.78857951491227
                                          hwi_core_residency{coreno="2",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 2 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 74.38991256541709
                                          hwi_core_residency{coreno="3",category="C3",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Core 3 C3 Residency",source="CPU [#0]: Intel Xeon E3-1225 v3: C-State Residency",host="ASROCK"} 71.01332961211648
                                          # HELP hwi_core_vid_v Core VID V - CPU [#0]: Intel Xeon E3-1225 v3
                                          hwi_core_vid_v{coreno="0",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 0 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.9827880859375
                                          hwi_core_vid_v{coreno="1",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 1 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.9827880859375
                                          hwi_core_vid_v{coreno="2",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 2 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.9827880859375
                                          hwi_core_vid_v{coreno="3",unit="V",sensor_type="SENSOR_TYPE_VOLT",sensor="Core 3 VID",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 0.9825439453125
                                          # HELP hwi_drive_failure_yesno Drive Failure Yes/No - (multiple sources)
                                          hwi_drive_failure_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Failure",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0
                                          hwi_drive_failure_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Failure",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0
                                          hwi_drive_failure_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Failure",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0
                                          # HELP hwi_drive_host_reads_gb Drive Host Reads GB - (multiple sources)
                                          hwi_drive_host_reads_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Reads",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 13388
                                          hwi_drive_host_reads_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Reads",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 554298
                                          hwi_drive_host_reads_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Reads",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 4893
                                          # HELP hwi_drive_host_writes_gb Drive Host Writes GB - (multiple sources)
                                          hwi_drive_host_writes_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Writes",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 9971
                                          hwi_drive_host_writes_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Writes",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 103590
                                          hwi_drive_host_writes_gb{aggregationtype="Total",unit="GB",sensor_type="SENSOR_TYPE_OTHER",sensor="Total Host Writes",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 1823
                                          # HELP hwi_drive_read_activity Drive Read Activity % - (multiple sources)
                                          hwi_drive_read_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Read Activity",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0
                                          hwi_drive_read_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Read Activity",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 6.915
                                          hwi_drive_read_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Read Activity",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 2.71
                                          # HELP hwi_drive_read_rate_mbs Drive Read Rate MB/s - (multiple sources)
                                          hwi_drive_read_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Read Rate",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0
                                          hwi_drive_read_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Read Rate",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 12.036
                                          hwi_drive_read_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Read Rate",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 4.533
                                          # HELP hwi_drive_remaining_life Drive Remaining Life % - (multiple sources)
                                          hwi_drive_remaining_life{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Drive Remaining Life",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 97
                                          hwi_drive_remaining_life{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Drive Remaining Life",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 59
                                          hwi_drive_remaining_life{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Drive Remaining Life",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 99
                                          # HELP hwi_drive_temperature_c Drive Temperature °C - (multiple sources)
                                          hwi_drive_temperature_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="Drive Airflow Temperature",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 34
                                          hwi_drive_temperature_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="Drive Airflow Temperature",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 33
                                          # HELP hwi_drive_total_activity Drive Total Activity % - (multiple sources)
                                          hwi_drive_total_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total Activity",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.004
                                          hwi_drive_total_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total Activity",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 7.077
                                          hwi_drive_total_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total Activity",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 2.861
                                          # HELP hwi_drive_warning_yesno Drive Warning Yes/No - (multiple sources)
                                          hwi_drive_warning_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Warning",source="S.M.A.R.T.: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0
                                          hwi_drive_warning_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Warning",source="S.M.A.R.T.: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0
                                          hwi_drive_warning_yesno{unit="Yes/No",sensor_type="SENSOR_TYPE_OTHER",sensor="Drive Warning",source="S.M.A.R.T.: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0
                                          # HELP hwi_drive_write_activity Drive Write Activity % - (multiple sources)
                                          hwi_drive_write_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Write Activity",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.004
                                          hwi_drive_write_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Write Activity",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0.162
                                          hwi_drive_write_activity{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Write Activity",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0.15
                                          # HELP hwi_drive_write_rate_mbs Drive Write Rate MB/s - (multiple sources)
                                          hwi_drive_write_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Write Rate",source="Drive: INTEL SSDSA2CW120G3 (CVPR344400F1120LGN)",host="ASROCK"} 0.001
                                          hwi_drive_write_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Write Rate",source="Drive: Samsung SSD 860 EVO 500GB (S3Z2NB0M460334M)",host="ASROCK"} 0.2
                                          hwi_drive_write_rate_mbs{unit="MB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Write Rate",source="Drive: Samsung SSD 860 PRO 512GB (S42YNX0N507289T)",host="ASROCK"} 0.2
                                          # HELP hwi_effective_clock_mhz Effective Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3
                                          hwi_effective_clock_mhz{aggregationtype="Average",unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Average Effective Clock",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 884.3905456148119
                                          # HELP hwi_gpu_clock_mhz GPU Clock MHz - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                                          hwi_gpu_clock_mhz{unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="GPU Clock",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 585.6604880895284
                                          # HELP hwi_gpu_d3d_memory_dedicated_mb GPU D3D Memory Dedicated MB - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                                          hwi_gpu_d3d_memory_dedicated_mb{unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="GPU D3D Memory Dedicated",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 6
                                          # HELP hwi_gpu_d3d_memory_dynamic_mb GPU D3D Memory Dynamic MB - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                                          hwi_gpu_d3d_memory_dynamic_mb{unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="GPU D3D Memory Dynamic",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 252.05078125
                                          # HELP hwi_gpu_d3d_usage GPU D3D Usage % - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                                          hwi_gpu_d3d_usage{unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="GPU D3D Usage",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 0.15913690476190476
                                          # HELP hwi_mb_cpu_c MB CPU °C - (multiple sources)
                                          hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU (PECI)",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 35
                                          hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU GT Cores (Graphics)",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 30
                                          hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU IA Cores",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 35
                                          hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU Package",source="CPU [#0]: Intel Xeon E3-1225 v3: DTS",host="ASROCK"} 34
                                          hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU Package",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 35
                                          hwi_mb_cpu_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="CPU",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 37.5
                                          # HELP hwi_mb_cpu_rpm MB CPU RPM - ASRock C226 WS (Nuvoton NCT6776F)
                                          hwi_mb_cpu_rpm{unit="RPM",sensor_type="SENSOR_TYPE_NONE",sensor="CPUFANIN0",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 1124
                                          # HELP hwi_mb_cpu_w MB CPU W - CPU [#0]: Intel Xeon E3-1225 v3: Enhanced
                                          hwi_mb_cpu_w{unit="W",sensor_type="SENSOR_TYPE_POWER",sensor="CPU Package Power",source="CPU [#0]: Intel Xeon E3-1225 v3: Enhanced",host="ASROCK"} 13.322686269124457
                                          # HELP hwi_mb_motherboard_c MB Motherboard °C - ASRock C226 WS (Nuvoton NCT6776F)
                                          hwi_mb_motherboard_c{unit="°C",sensor_type="SENSOR_TYPE_TEMP",sensor="Motherboard",source="ASRock C226 WS (Nuvoton NCT6776F)",host="ASROCK"} 29
                                          # HELP hwi_memory_available_mb Memory Available MB - System
                                          hwi_memory_available_mb{category="Physical",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Physical Memory Available",source="System",host="ASROCK"} 12274
                                          hwi_memory_available_mb{category="Virtual",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Virtual Memory Available",source="System",host="ASROCK"} 18789
                                          # HELP hwi_memory_clock_mhz Memory Clock MHz - Memory Timings
                                          hwi_memory_clock_mhz{unit="MHz",sensor_type="SENSOR_TYPE_CLOCK",sensor="Memory Clock",source="Memory Timings",host="ASROCK"} 780.8806507860379
                                          # HELP hwi_memory_clock_ratio_x Memory Clock Ratio x - Memory Timings
                                          hwi_memory_clock_ratio_x{unit="x",sensor_type="SENSOR_TYPE_OTHER",sensor="Memory Clock Ratio",source="Memory Timings",host="ASROCK"} 8
                                          # HELP hwi_memory_command_rate_t Memory Command Rate T - Memory Timings
                                          hwi_memory_command_rate_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Command Rate",source="Memory Timings",host="ASROCK"} 2
                                          # HELP hwi_memory_commited_mb Memory Commited MB - System
                                          hwi_memory_commited_mb{category="Virtual",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Virtual Memory Commited",source="System",host="ASROCK"} 18547
                                          # HELP hwi_memory_load Memory Load % - System
                                          hwi_memory_load{category="Physical",unit="%",sensor_type="SENSOR_TYPE_OTHER",sensor="Physical Memory Load",source="System",host="ASROCK"} 62.2
                                          hwi_memory_load{category="Virtual",unit="%",sensor_type="SENSOR_TYPE_OTHER",sensor="Virtual Memory Load",source="System",host="ASROCK"} 49.6
                                          # HELP hwi_memory_page_file_usage Memory Page File Usage % - System
                                          hwi_memory_page_file_usage{unit="%",sensor_type="SENSOR_TYPE_OTHER",sensor="Page File Usage",source="System",host="ASROCK"} 3.4275255705180916
                                          # HELP hwi_memory_tcas_t Memory Tcas T - Memory Timings
                                          hwi_memory_tcas_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Tcas",source="Memory Timings",host="ASROCK"} 11
                                          # HELP hwi_memory_tras_t Memory Tras T - Memory Timings
                                          hwi_memory_tras_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Tras",source="Memory Timings",host="ASROCK"} 28
                                          # HELP hwi_memory_trcd_t Memory Trcd T - Memory Timings
                                          hwi_memory_trcd_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Trcd",source="Memory Timings",host="ASROCK"} 11
                                          # HELP hwi_memory_trfc_t Memory Trfc T - Memory Timings
                                          hwi_memory_trfc_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Trfc",source="Memory Timings",host="ASROCK"} 208
                                          # HELP hwi_memory_trp_t Memory Trp T - Memory Timings
                                          hwi_memory_trp_t{unit="T",sensor_type="SENSOR_TYPE_OTHER",sensor="Trp",source="Memory Timings",host="ASROCK"} 11
                                          # HELP hwi_memory_used_mb Memory Used MB - System
                                          hwi_memory_used_mb{category="Physical",unit="MB",sensor_type="SENSOR_TYPE_OTHER",sensor="Physical Memory Used",source="System",host="ASROCK"} 20198
                                          # HELP hwi_network_dl_rate_kbs Network DL rate KB/s - Network: Intel I210AT Copper (Springville) Network Adapter
                                          hwi_network_dl_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current DL rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 0
                                          hwi_network_dl_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current DL rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 1.522758995037221
                                          # HELP hwi_network_up_rate_kbs Network UP rate KB/s - Network: Intel I210AT Copper (Springville) Network Adapter
                                          hwi_network_up_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current UP rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 0
                                          hwi_network_up_rate_kbs{unit="KB/s",sensor_type="SENSOR_TYPE_OTHER",sensor="Current UP rate",source="Network: Intel I210AT Copper (Springville) Network Adapter",host="ASROCK"} 0.11486119727047146
                                          # HELP hwi_usage Usage % - CPU [#0]: Intel Xeon E3-1225 v3
                                          hwi_usage{aggregationtype="Max",K"} 2.1
                                          category="CPU/Thread",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Max CPU/Thread Usage",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROCK"} 3.1
                                          hwi_usage{aggregationtype="Total",category="CPU",unit="%",sensor_type="SENSOR_TYPE_USAGE",sensor="Total CPU Usage",source="CPU [#0]: Intel Xeon E3-1225 v3",host="ASROC
                                          [/s]
                                          
                                          Homoran 3 Replies Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators @Qlink last edited by

                                            @qlink sagte in Parser Adapter:

                                            Ja, der Screenshot aus meinem letzten Post ist mit deinem Regex.

                                            so was kann man auf dem Handy schlecht entziffern, der zitierte sieht anders aus

                                            1 Reply 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

                                            865
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            49
                                            2313
                                            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