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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Script - Info über Datenpunkte sammeln

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.5k

Script - Info über Datenpunkte sammeln

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascripttemplate
291 Beiträge 11 Kommentatoren 38.0k Aufrufe 17 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • liv-in-skyL liv-in-sky

    @sigi234

    sorry - jetzt damit mal

    // @Liv-in-sky Okt.  2019
    
    
    
    
                                              // WICHTIG
                                              // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"
                                              //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"
    const instanzArr=[ "javascript.2.WLANUnifi", "javascript.0.ProofingDatapoints", "controll-own.0"];      
                                              // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];
    
    var color_in_table="black"         // Farbe text in webseite
    let schriftart="Helvetica";        // möglich: Helvetica,Serif
    var color_gradient1="#819FF7";     // Hintergrund webseite 
    var colorHeadlines="darkblue";     // Farbe Überschriften in der VIS Anzeige
    var colorHeadlinesDP="#36d5ec ";   // Farbe Überschriften in der WebSeite Anzeige     
    var warnFarbe = "#36d5ec";         //Farbe für Warnungen in vis und Webseite
    
    
    //------------------------------------------AB HIER NICHTS ÄNDERN--------------------------------------------------------
    
    
    
    const versionNr = "15102019-1.1"
    const warnColor = warnFarbe ;
    
    const format = "<!DOCTYPE html><html lang=\"de\"><head><title>Putzer</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body>";
    const htmlTable="<table style=\"color:"+color_in_table+";text-align:left; font-family:"+schriftart+";background-image: linear-gradient(67deg,transparent,"+color_gradient1+");\">";
    const htmlReset="<p style=\"color:red;font-family:"+schriftart+";\"><i>!!! ohne Javascript Instanzen !!! kann enabled werden</i></p>"
    const htmlHeaders = "style=\"color:"+colorHeadlines+";\""; 
    const htmlHeadersDP = "style=\"color:"+colorHeadlinesDP+";\""; 
    
    //  var htmlOhneAnzahl="<p style=\"color:red;font-family:"+schriftart+";\"><i>!!! ohne DatenpunktZählung !!! kann enabled werden</i></p>"
    const htmlError="<p style=\"color:red;font-family:"+schriftart+";\"><i>Script hat Fehler - bitte Log checken !!!</i></p>"
    var allInstArr=[];
    var  instanzArrHelp=[];
    const dpPrefix = "javascript."+ instance +".";
    var mylogs=false;
    var htmlDP=[];
    var htmlMSG=[];
    var counterAll=0;
    var directSearch=false;
    
    
    var htmlHelper="";
    var htmlHelperFile="";
    
    createState(dpPrefix + "ProofingDatapoints.HTMLTable", { name: 'HTMLTable',  type: 'string', read:  true,  write: true,});
    createState(dpPrefix + "ProofingDatapoints.ScriptVersion", versionNr,{ name: 'ScriptVersion',  type: 'string', read:  true,  write: true,});
    createState(dpPrefix + "ProofingDatapoints.RunScript", { name: 'RunScript',  type: 'boolean', role:"switch", read:  true,  write: true,});
    createState(dpPrefix + "ProofingDatapoints.JavaInstanzCheck", true,{ name: 'JavaInstanzCheck',  type: 'boolean', role:"switch", read:  true,  write: true,});
    createState(dpPrefix + "ProofingDatapoints.ObjectAnzahlCheck", true,{ name: 'ObjectAnzahlCheck',  type: 'boolean', role:"switch", read:  true,  write: true,});
    createState(dpPrefix + "ProofingDatapoints.MonsterSearch", false,{ name: 'MonsterSearch',  type: 'boolean', role:"switch", read:  true,  write: true,});
    createState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige", false,{ name: 'ohneInstanzAnzeige',  type: 'boolean', role:"switch", read:  true,  write: true,});
    createState(dpPrefix + "ProofingDatapoints.OrdnerCheck", { name: 'OrdnerCheck',  type: 'string', read:  true,  write: true,});
    
    
    //------------------------------------------CHECK INSTANZEN--------------------------------------------------------
    
    function instanzCount(){
      var ohneInstanz = getState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige").val;
      
       var counter=0; var counter2=0;var counter3=0; 
    $('system.adapter.*.alive').each(function(id, i) {
    
    
        var ida = id.split('.');
         allInstArr.push(ida[2]+"."+ida[3]);
    
      if (!ohneInstanz && !directSearch) {
       
       if(!id.includes("vis")){
       
    
       counter++;
    
       if (getState(id).val==null) {;counter2++; mylog(ida[2]+ida[3]+"--------------------der hier wurde nie gestartet"); 
          htmlDP.push(ida[2]+"."+ida[3]);
          htmlMSG.push("Instanzen ohne Werte");} //else{instanzArr.push(ida[2]+"."+ida[3])}
       if (getState(id).val==false) {counter3++;mylog(ida[2]+ida[3]+"-----------------------der hier ist ausgeschalten"); 
          htmlDP.push(ida[2]+"."+ida[3]);
          htmlMSG.push("nicht aktiviert");} /*else{instanzArr.push(ida[2]+"."+ida[3])}*/
       }}
    });
     if (!ohneInstanz) {
    mylog("______________________________________________Anzahl Instanzen: " + counter.toString());
    htmlDP.push("");
    htmlMSG.push("");
    htmlDP.push("Anzahl Instanzen");
    htmlMSG.push(counter.toString());
    
    mylog("______________________________________________Anzahl gestoppter Instanzen ohne Werte: " + counter2.toString())
    htmlDP.push("Instanzen ohne Werte");
    htmlMSG.push(counter2.toString());
    htmlDP.push("Instanzen nicht aktiviert");
    htmlMSG.push(counter3.toString());
    
     }
    
    }
    
    
    //------------------------------------------CHECK ZUORDNUNG--------------------------------------------------------
    
    function checkTypes(select) {
        mylog("bin in check types");
       var counter=0; 
       htmlMSG.push("");
       htmlDP.push("");
       var sub= select.substring(select.length-1, select.length); log("---------: "+sub);log("----------select: "+select);
       mylog(select)
       $(select).each(function (id, i) {
           counter++
    
           
              
       if (!id.includes('scriptEnabled') && !id.includes('scriptProblem')  && getState(id).val !== null /*&& !id.includes('Log-Script')  && !id.includes('Ereignisliste') && !id.includes('GETPROCESS')*/ ){
    
           if (!JSON.stringify(getObject(id)).includes("type")) {
          
                var valType = typeof getState(id).val;
                 htmlDP.push(id+": "+valType);
                 htmlMSG.push("<b>missing TYPE !!</b>" );}
           
            else{ var dpType = getObject(id).common.type;
                  var valType = typeof getState(id).val;
                  if(dpType != "mixed" ) {
                  if(dpType !== valType && !(dpType == 'array' && valType == 'object') /*&& !(dpType =='text' && valType=='string') && !(dpType =='string' && valType=='text')*/ ) {
                     mylog(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                     htmlDP.push(id+": "+valType);
                     htmlMSG.push(dpType );
    
                     /* später testing)
                     console.log("======1=============no type: "+id +"object: "+JSON.stringify(getObject(id)));
                     if(!getObject(id).common.hasOwnProperty("type")) console.log("--------------kein TYPE: "+id) ;
                     console.log("======2=============no type: "+id +"object: "+JSON.stringify(getObject(id).common));
                   */
                     
                     }
                   
           }}
         /*
           if(dpType != valType && !(dpType == 'array' && valType == 'object')) {
               log(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
               htmlDP.push(dpType);
               htmlMSG.push(valType);
           }*/
       }
       });
       htmlDP.push("<i>ID + IST-WERT</i>");
       htmlMSG.push("<i>SOLL-WERT</i>");
       htmlDP.push("-col-<b>geprüfte Instanz</b>");
       htmlMSG.push("-col-<i><b>"+select+"</b></i>");
       mylog("fertg" + counter.toString())
      
    }
    
    //------------------------------------------CHECK  WERTE--------------------------------------------------------
    
    function checkWerte(select) {
       mylog("bin in check Werte");
       var counter=0; 
    
       mylog(select);
       $(select).each(function (id, i) {
           counter++
           
       if (!id.includes('scriptEnabled') && !id.includes('scriptProblem') /* )  && !id.includes('Ereignisliste') && !id.includes('GETPROCESS')*/ ){
          //var dpType = getObject(id).common.type;
           try {
           var valType =  getState(id).val;
           } catch (e) {console.log("------------ERROR: "+e)}
    
    
          // if(dpType != "mixed" ) {}
    
               if(valType === null) {mylog(id + ': Datenpunkttyp: ' /*+ dpType */+ ", Wert: "+valType);
                   htmlDP.push(id);
                   var ddd = new Date().getTime()-getObject(id).ts;
                   htmlMSG.push("missing seit " + Math.floor((ddd)/1000/60/60/24)+"d "+Math.floor((ddd)/1000/60/60 %24)+"h "+Math.floor((ddd)/1000/60 %60)+"m ");
               } 
           
        
       }
       });
     
        mylog("bin raus aus check Werte");
      
    }
    //---------------------------------------------------------------------------------------------------------------------
    
    
    function mylog(message) {
      if(mylogs)
          console.log(message);
    }
    
    //------------------------------------------Zähle Objecte der  INSTANZEN--------------------------------------------------------
    function countDP(idb){
       mylog("bin richtig in count");
       var counter4=0;
    
       $(idb+".*").each(function(id, i) {
       counter4++; })
    
    mylog(idb+counter4);
    htmlDP.unshift(idb);
    htmlMSG.unshift(counter4.toString());
    counterAll=counterAll+counter4;
    mylog("bin raus aus count");
    }
    
    //----------------------------------------------Direct Suchen
    
    on({id:dpPrefix + "ProofingDatapoints.OrdnerCheck", change: "any"}, function (obj) {
       
        directSearch=true;
         instanzArrHelp=[];
        setState(dpPrefix + "ProofingDatapoints.RunScript",true);
    
    
        });
    
    //-----------------------------------------------SCHALTER MAIN------------------------------------------------
    on({id:dpPrefix + "ProofingDatapoints.RunScript",  val: true}, function (obj) { 
       let java= getState(dpPrefix + "ProofingDatapoints.JavaInstanzCheck").val;
       let instanzAnzahl= getState(dpPrefix + "ProofingDatapoints.ObjectAnzahlCheck").val;
       let monster= getState(dpPrefix + "ProofingDatapoints.MonsterSearch").val;
       var ohneInstanz = getState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige").val;
       var endehtmlConst=   "<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\">Letztes File Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss")+"</p>";
       var endehtmlDPConst=   "<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\">Letztes Table Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss")+"</p>";
       setState(dpPrefix + "ProofingDatapoints.ScriptVersion",versionNr);
       htmlHelper="";
       htmlHelperFile="";
       setState(dpPrefix + "ProofingDatapoints.HTMLTable",htmlReset+endehtml+htmlError);
       writeFile(null, "/ProofingDatapoints/htmlputz.html" ,htmlReset+endehtml+htmlError+"</body>", function (error) {mylog('file written'); });
      
       counterAll=0;
       instanzArrHelp=[];
       allInstArr=[];
    
    
    setStateDelayed(dpPrefix + "ProofingDatapoints.RunScript",false,2500);
    
    htmlDP=[];
    htmlMSG=[];
    
    instanzCount();  //überprüft instanzen und stellt allInstArr her
    
    htmlDP.push("-col-<b>INSTANZ INFO</b>"); htmlMSG.push(""); htmlDP.push(""); htmlMSG.push("");
    mylog(instanzArr.length+"==================="+instanzArr.toString());
    
    
    if (monster) {instanzArrHelp=allInstArr;} else {instanzArrHelp=instanzArr}  //ACHTUNG MONSTERSEARCH
    if (directSearch) {instanzArrHelp=[]; instanzArrHelp.push(getState(dpPrefix + "ProofingDatapoints.OrdnerCheck").val);}
    
    for(let name in instanzArrHelp){
       checkWerte(instanzArrHelp[name]+".*")                   //checkt alle werte in intanzArr
        mylog("!!!!!!!!!!!!!!!!!!!!:  "+instanzArrHelp[name]);}
    
        if (instanzAnzahl){
              htmlDP.unshift(""); htmlMSG.unshift("");htmlDP.unshift("<b>OBJECTE IN INSTANZ</b>"); htmlMSG.unshift("Anzahl"); 
               
              for(let name in instanzArrHelp){
                countDP(instanzArrHelp[name]);mylog("bin in zhlen");}
                if (java && !monster) countDP("javascript")
              htmlDP.unshift("-col-<b>GESAMT GEPRÜFTE OBJECTE IN INSTANZEN</b>"); htmlMSG.unshift("-col-<b>"+counterAll.toString()+"</b>"); 
              
              }
              mylog("=============: "+counterAll);
    
    if (java && !monster && !ohneInstanz && !directSearch) checkWerte('javascript.*');                //checkt alle javainstanzen
    
    
     htmlDP.push("-col-<b>ID's OHNE WERT:</b>");
     htmlMSG.push("");
    
    for(let name in instanzArrHelp){
       checkTypes(instanzArrHelp[name]+".*")
       mylog("!!!!!!!!!!!!!!!!!!!!:  "+instanzArrHelp[name])};
         htmlDP.push("");
         htmlMSG.push("");
         htmlDP.push("-col-<b>IDs MIT FALSCHEN TYPE:</b>");
         htmlMSG.push("");
    
    
     if (java && !monster && !ohneInstanz && !directSearch ) checkTypes('javascript.*');
    
    for(var i= htmlDP.length-1; i>-1; i--) {
        let htmlDPVis; let htmlDPFile;let htmlMSGVis;let htmlMSGFile;
          if(htmlDP[i].includes("-col-")) {htmlDPVis=htmlDP[i].replace("-col-", (htmlHeadersDP+">"));  htmlDPVis=" "+htmlDPVis } else {htmlDPVis=">"+htmlDP[i]}
          if(htmlMSG[i].includes("-col-")) {htmlMSGVis=htmlMSG[i].replace("-col-", (htmlHeadersDP+">"));htmlMSGVis=" "+htmlMSGVis } else {htmlMSGVis=">"+htmlMSG[i]}
          htmlHelper= htmlHelper+"<tr><td"+htmlDPVis+"&ensp;&ensp;</td><td"+htmlMSGVis+"&ensp;&ensp;</td></tr>"
    
        //  if(htmlDP[i].includes("-col-")) {htmlDP[i]=htmlDP[i].replace("-col-", (htmlHeaders+">")); htmlDPFile=htmlDP[i]; htmlDPFile= " "+htmlDPFile ; } else {htmlDPFile=">"+htmlDP[i]}
                if(htmlDP[i].includes("-col-")) {htmlDPFile=htmlDP[i].replace("-col-", (htmlHeaders+">"));  htmlDPFile= " "+htmlDPFile ; } else {htmlDPFile=">"+htmlDP[i]}
    
          if(htmlMSG[i].includes("-col-")) {htmlMSGFile=htmlMSG[i].replace("-col-", (htmlHeaders+">")); htmlMSGFile=" "+htmlMSGFile; } else {htmlMSGFile=">"+htmlMSG[i]}    
          htmlHelperFile= htmlHelperFile+"<tr><td"+htmlDPFile+"&ensp;&ensp;</td><td"+htmlMSGFile+"&ensp;&ensp;</td></tr>"
    }
       var   endehtml=endehtmlConst;
       var   endehtmlDP=endehtmlDPConst;                       
        
    
       if (monster){endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Monster Suche wird automatisch  deaktiviert !!!</i></p>"+endehtml;
                 endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! ACHTUNG: SYSTEM WIRD BELASTET !!! </br></br>!!! Monster Suche wird automatisch  deaktiviert !!! </br></br> BERICHT/AUSWERTUNG NUR ÜBER WEBSEITE</i></p>"+endehtmlDP;}
    
    
       if (!instanzAnzahl){endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne DatenpunktZählung !!! kann enabled werden</i></p>"+endehtml;
                 endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne DatenpunktZählung !!! kann enabled werden</i></p>"+endehtmlDP;}
    
       if (!java){ endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne Javascript Instanzen !!! kann enabled werden</i></p>"+endehtml;
                 endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne Javascript Instanzen !!! kann enabled werden</i></p>"+endehtmlDP;}
       
       if(!monster) { setStateDelayed(dpPrefix + "ProofingDatapoints.HTMLTable",endehtmlDP+"<table>"+htmlHelper,900);} else{setStateDelayed(dpPrefix + "ProofingDatapoints.HTMLTable",endehtmlDP,900);}
      
       console.log("================================schreibe file")  ; 
       if(true)  writeFile(null, "/ProofingDatapoints/htmlputz.html" ,format+endehtml+htmlTable+htmlHelperFile+"</table></body>", function (error) { mylog('file written'); });
    
      // endehtml=endehtmlConst;
      // endehtmlDP=endehtmlDPConst;
    
       setState(dpPrefix + "ProofingDatapoints.MonsterSearch",false);  //setzt monstersearch zurück
      directSearch=false;
    
    
    });
    
    

    sigi234S Online
    sigi234S Online
    sigi234
    Forum Testing Most Active
    schrieb am zuletzt editiert von sigi234
    #29

    @liv-in-sky

    Html wurde nicht erstellt. Vis schon.

    Das Skript musst 2 Mal gestartet werden, beim 1. Mal kommt das:

    Screenshot (329).png

    Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
    Immer Daten sichern!

    liv-in-skyL 3 Antworten Letzte Antwort
    0
    • sigi234S sigi234

      @liv-in-sky

      Html wurde nicht erstellt. Vis schon.

      Das Skript musst 2 Mal gestartet werden, beim 1. Mal kommt das:

      Screenshot (329).png

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von
      #30

      @sigi234 hättest du auch das große log ? ich bekomm den fehler mit zeile 291 nicht zusammen - der fehler kommt beim aktivieren/starten oder beim ausführen des script durch runScript=true?

      mach doch auch mal bitte einen test mit dem directSearch - siehe erster post

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      1 Antwort Letzte Antwort
      0
      • sigi234S sigi234

        @liv-in-sky

        Html wurde nicht erstellt. Vis schon.

        Das Skript musst 2 Mal gestartet werden, beim 1. Mal kommt das:

        Screenshot (329).png

        liv-in-skyL Offline
        liv-in-skyL Offline
        liv-in-sky
        schrieb am zuletzt editiert von
        #31

        @sigi234 ich kann den fehler nachvollziehen - arbeite daran

        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

        1 Antwort Letzte Antwort
        0
        • sigi234S sigi234

          @liv-in-sky

          Html wurde nicht erstellt. Vis schon.

          Das Skript musst 2 Mal gestartet werden, beim 1. Mal kommt das:

          Screenshot (329).png

          liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von liv-in-sky
          #32

          @sigi234

          bitte nochmal testen - sorry dafür - aber manchmal ist der wurm drin

          // @Liv-in-sky Okt.  2019
          
          
          
          
                                                    // WICHTIG
                                                    // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"
                                                    //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"
          const instanzArr=[ "EigeneDatenpunkte.0"];    
                                                    // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];
          
          var color_in_table="black"         // Farbe text in webseite
          let schriftart="Helvetica";        // möglich: Helvetica,Serif
          var color_gradient1="#819FF7";     // Hintergrund webseite 
          var colorHeadlines="darkblue";     // Farbe Überschriften in der VIS Anzeige
          var colorHeadlinesDP="#36d5ec ";   // Farbe Überschriften in der WebSeite Anzeige     
          var warnFarbe = "#36d5ec";         //Farbe für Warnungen in vis und Webseite
          
          
          //------------------------------------------AB HIER NICHTS ÄNDERN--------------------------------------------------------
          
          
          
          const versionNr = "15102019-1.1"
          const warnColor = warnFarbe ;
          
          const format = "<!DOCTYPE html><html lang=\"de\"><head><title>Putzer</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body>";
          const htmlTable="<table style=\"color:"+color_in_table+";text-align:left; font-family:"+schriftart+";background-image: linear-gradient(67deg,transparent,"+color_gradient1+");\">";
          const htmlReset="<p style=\"color:red;font-family:"+schriftart+";\"><i>!!! ohne Javascript Instanzen !!! kann enabled werden</i></p>"
          const htmlHeaders = "style=\"color:"+colorHeadlines+";\""; 
          const htmlHeadersDP = "style=\"color:"+colorHeadlinesDP+";\""; 
          
          //  var htmlOhneAnzahl="<p style=\"color:red;font-family:"+schriftart+";\"><i>!!! ohne DatenpunktZählung !!! kann enabled werden</i></p>"
          const htmlError="<p style=\"color:red;font-family:"+schriftart+";\"><i>Script hat Fehler - bitte Log checken !!!</i></p>"
          var allInstArr=[];
          var  instanzArrHelp=[];
          const dpPrefix = "javascript."+ instance +".";
          var mylogs=false;
          var htmlDP=[];
          var htmlMSG=[];
          var counterAll=0;
          var directSearch=false;
          var switchOn=false;
          
          
          var htmlHelper="";
          var htmlHelperFile="";
          
          createState(dpPrefix + "ProofingDatapoints.HTMLTable", { name: 'HTMLTable',  type: 'string', read:  true,  write: true,});
          createState(dpPrefix + "ProofingDatapoints.ScriptVersion", versionNr,{ name: 'ScriptVersion',  type: 'string', read:  true,  write: true,});
          createState(dpPrefix + "ProofingDatapoints.RunScript",false, { name: 'RunScript',  type: 'boolean', role:"switch", read:  true,  write: true,});
          createState(dpPrefix + "ProofingDatapoints.JavaInstanzCheck", true,{ name: 'JavaInstanzCheck',  type: 'boolean', role:"switch", read:  true,  write: true,});
          createState(dpPrefix + "ProofingDatapoints.ObjectAnzahlCheck", true,{ name: 'ObjectAnzahlCheck',  type: 'boolean', role:"switch", read:  true,  write: true,});
          createState(dpPrefix + "ProofingDatapoints.MonsterSearch", false,{ name: 'MonsterSearch',  type: 'boolean', role:"switch", read:  true,  write: true,});
          createState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige", false,{ name: 'ohneInstanzAnzeige',  type: 'boolean', role:"switch", read:  true,  write: true,});
          createState(dpPrefix + "ProofingDatapoints.OrdnerCheck", "", { name: 'OrdnerCheck',  type: 'string', read:  true,  write: true,});
          
          
          //------------------------------------------CHECK INSTANZEN--------------------------------------------------------
          
          function instanzCount(){
            var ohneInstanz = getState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige").val;
            
             var counter=0; var counter2=0;var counter3=0; 
          $('system.adapter.*.alive').each(function(id, i) {
          
          
              var ida = id.split('.');
               allInstArr.push(ida[2]+"."+ida[3]);
          
            if (!ohneInstanz && !directSearch) {
             
             if(!id.includes("vis")){
             
          
             counter++;
          
             if (getState(id).val==null) {;counter2++; mylog(ida[2]+ida[3]+"--------------------der hier wurde nie gestartet"); 
                htmlDP.push(ida[2]+"."+ida[3]);
                htmlMSG.push("Instanzen ohne Werte");} //else{instanzArr.push(ida[2]+"."+ida[3])}
             if (getState(id).val==false) {counter3++;mylog(ida[2]+ida[3]+"-----------------------der hier ist ausgeschalten"); 
                htmlDP.push(ida[2]+"."+ida[3]);
                htmlMSG.push("nicht aktiviert");} /*else{instanzArr.push(ida[2]+"."+ida[3])}*/
             }}
          });
           if (!ohneInstanz) {
          mylog("______________________________________________Anzahl Instanzen: " + counter.toString());
          htmlDP.push("");
          htmlMSG.push("");
          htmlDP.push("Anzahl Instanzen");
          htmlMSG.push(counter.toString());
          
          mylog("______________________________________________Anzahl gestoppter Instanzen ohne Werte: " + counter2.toString())
          htmlDP.push("Instanzen ohne Werte");
          htmlMSG.push(counter2.toString());
          htmlDP.push("Instanzen nicht aktiviert");
          htmlMSG.push(counter3.toString());
          
           }
          
          }
          
          
          //------------------------------------------CHECK ZUORDNUNG--------------------------------------------------------
          
          function checkTypes(select) {
              mylog("bin in check types");
             var counter=0; 
             htmlMSG.push("");
             htmlDP.push("");
             var sub= select.substring(select.length-1, select.length); log("---------: "+sub);log("----------select: "+select);
             mylog(select)
             $(select).each(function (id, i) {
                 counter++
          
                 
                    
             if (!id.includes('scriptEnabled') && !id.includes('scriptProblem')  && getState(id).val !== null /*&& !id.includes('Log-Script')  && !id.includes('Ereignisliste') && !id.includes('GETPROCESS')*/ ){
          
                 if (!JSON.stringify(getObject(id)).includes("type")) {
                
                      var valType = typeof getState(id).val;
                       htmlDP.push(id+": "+valType);
                       htmlMSG.push("<b>missing TYPE !!</b>" );}
                 
                  else{ var dpType = getObject(id).common.type;
                        var valType = typeof getState(id).val;
                        if(dpType != "mixed" ) {
                        if(dpType !== valType && !(dpType == 'array' && valType == 'object') /*&& !(dpType =='text' && valType=='string') && !(dpType =='string' && valType=='text')*/ ) {
                           mylog(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                           htmlDP.push(id+": "+valType);
                           htmlMSG.push(dpType );
          
                           /* später testing)
                           console.log("======1=============no type: "+id +"object: "+JSON.stringify(getObject(id)));
                           if(!getObject(id).common.hasOwnProperty("type")) console.log("--------------kein TYPE: "+id) ;
                           console.log("======2=============no type: "+id +"object: "+JSON.stringify(getObject(id).common));
                         */
                           
                           }
                         
                 }}
               /*
                 if(dpType != valType && !(dpType == 'array' && valType == 'object')) {
                     log(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                     htmlDP.push(dpType);
                     htmlMSG.push(valType);
                 }*/
             }
             });
             htmlDP.push("<i>ID + IST-WERT</i>");
             htmlMSG.push("<i>SOLL-WERT</i>");
             htmlDP.push("-col-<b>geprüfte Instanz</b>");
             htmlMSG.push("-col-<i><b>"+select+"</b></i>");
             mylog("fertg" + counter.toString())
            
          }
          
          //------------------------------------------CHECK  WERTE--------------------------------------------------------
          
          function checkWerte(select) {
             mylog("bin in check Werte");
             var counter=0; 
          
             mylog(select);
             $(select).each(function (id, i) {
                 counter++
                 
             if (!id.includes('scriptEnabled') && !id.includes('scriptProblem') /* )  && !id.includes('Ereignisliste') && !id.includes('GETPROCESS')*/ ){
                //var dpType = getObject(id).common.type;
                 
                 var valType =  getState(id).val;
                
          
          
                // if(dpType != "mixed" ) {}
          
                     if(valType === null) {mylog(id + ': Datenpunkttyp: ' /*+ dpType */+ ", Wert: "+valType);
                         htmlDP.push(id);
                         var ddd = new Date().getTime()-getObject(id).ts;
                         htmlMSG.push("missing seit " + Math.floor((ddd)/1000/60/60/24)+"d "+Math.floor((ddd)/1000/60/60 %24)+"h "+Math.floor((ddd)/1000/60 %60)+"m ");
                     } 
                 
              
             }
             });
           
              mylog("bin raus aus check Werte");
            
          }
          //---------------------------------------------------------------------------------------------------------------------
          
          
          function mylog(message) {
            if(mylogs)
                console.log(message);
          }
          
          //------------------------------------------Zähle Objecte der  INSTANZEN--------------------------------------------------------
          function countDP(idb){
             mylog("bin richtig in count");
             var counter4=0;
          
             $(idb+".*").each(function(id, i) {
             counter4++; })
          
          mylog(idb+counter4);
          htmlDP.unshift(idb);
          htmlMSG.unshift(counter4.toString());
          counterAll=counterAll+counter4;
          mylog("bin raus aus count");
          }
          
          //----------------------------------------------Direct Suchen
          
          on({id:dpPrefix + "ProofingDatapoints.OrdnerCheck", ack: false, change: "any"}, function (obj) {
           
              directSearch=true;
               instanzArrHelp=[];
              setState(dpPrefix + "ProofingDatapoints.RunScript",true);
          
             
              });
          
          //-----------------------------------------------SCHALTER MAIN------------------------------------------------
          on({id:dpPrefix + "ProofingDatapoints.RunScript", ack: false, val: true}, function (obj) { 
            
             let java= getState(dpPrefix + "ProofingDatapoints.JavaInstanzCheck").val;
             let instanzAnzahl= getState(dpPrefix + "ProofingDatapoints.ObjectAnzahlCheck").val;
             let monster= getState(dpPrefix + "ProofingDatapoints.MonsterSearch").val;
             var ohneInstanz = getState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige").val;
             var endehtmlConst=   "<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\">Letztes File Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss")+"</p>";
             var endehtmlDPConst=   "<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\">Letztes Table Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss")+"</p>";
             setState(dpPrefix + "ProofingDatapoints.ScriptVersion",versionNr);
             htmlHelper="";
             htmlHelperFile="";
             setState(dpPrefix + "ProofingDatapoints.HTMLTable",htmlReset+endehtml+htmlError);
             writeFile(null, "/ProofingDatapoints/htmlputz.html" ,htmlReset+endehtml+htmlError+"</body>", function (error) {mylog('file written'); });
            
             counterAll=0;
             instanzArrHelp=[];
             allInstArr=[];
          
          
          setStateDelayed(dpPrefix + "ProofingDatapoints.RunScript",false,2500);
          
          htmlDP=[];
          htmlMSG=[];
          
          instanzCount();  //überprüft instanzen und stellt allInstArr her
          
          htmlDP.push("-col-<b>INSTANZ INFO</b>"); htmlMSG.push(""); htmlDP.push(""); htmlMSG.push("");
          mylog(instanzArr.length+"==================="+instanzArr.toString());
          
          
          if (monster) {instanzArrHelp=allInstArr;} else {instanzArrHelp=instanzArr}  //ACHTUNG MONSTERSEARCH
          if (directSearch) {instanzArrHelp=[]; instanzArrHelp.push(getState(dpPrefix + "ProofingDatapoints.OrdnerCheck").val);}
          
          for(let name in instanzArrHelp){
             checkWerte(instanzArrHelp[name]+".*")                   //checkt alle werte in intanzArr
              mylog("!!!!!!!!!!!!!!!!!!!!:  "+instanzArrHelp[name]);}
          
              if (instanzAnzahl){
                    htmlDP.unshift(""); htmlMSG.unshift("");htmlDP.unshift("<b>OBJECTE IN INSTANZ</b>"); htmlMSG.unshift("Anzahl"); 
                     
                    for(let name in instanzArrHelp){
                      countDP(instanzArrHelp[name]);mylog("bin in zhlen");}
                      if (java && !monster) countDP("javascript")
                    htmlDP.unshift("-col-<b>GESAMT GEPRÜFTE OBJECTE IN INSTANZEN</b>"); htmlMSG.unshift("-col-<b>"+counterAll.toString()+"</b>"); 
                    
                    }
                    mylog("=============: "+counterAll);
          
          if (java && !monster && !ohneInstanz && !directSearch) checkWerte('javascript.*');                //checkt alle javainstanzen
          
          
           htmlDP.push("-col-<b>ID's OHNE WERT:</b>");
           htmlMSG.push("");
          
          for(let name in instanzArrHelp){
             checkTypes(instanzArrHelp[name]+".*")
             mylog("!!!!!!!!!!!!!!!!!!!!:  "+instanzArrHelp[name])};
               htmlDP.push("");
               htmlMSG.push("");
               htmlDP.push("-col-<b>IDs MIT FALSCHEN TYPE:</b>");
               htmlMSG.push("");
          
          
           if (java && !monster && !ohneInstanz && !directSearch ) checkTypes('javascript.*');
          
          for(var i= htmlDP.length-1; i>-1; i--) {
              let htmlDPVis; let htmlDPFile;let htmlMSGVis;let htmlMSGFile;
                if(htmlDP[i].includes("-col-")) {htmlDPVis=htmlDP[i].replace("-col-", (htmlHeadersDP+">"));  htmlDPVis=" "+htmlDPVis } else {htmlDPVis=">"+htmlDP[i]}
                if(htmlMSG[i].includes("-col-")) {htmlMSGVis=htmlMSG[i].replace("-col-", (htmlHeadersDP+">"));htmlMSGVis=" "+htmlMSGVis } else {htmlMSGVis=">"+htmlMSG[i]}
                htmlHelper= htmlHelper+"<tr><td"+htmlDPVis+"&ensp;&ensp;</td><td"+htmlMSGVis+"&ensp;&ensp;</td></tr>"
          
              //  if(htmlDP[i].includes("-col-")) {htmlDP[i]=htmlDP[i].replace("-col-", (htmlHeaders+">")); htmlDPFile=htmlDP[i]; htmlDPFile= " "+htmlDPFile ; } else {htmlDPFile=">"+htmlDP[i]}
                      if(htmlDP[i].includes("-col-")) {htmlDPFile=htmlDP[i].replace("-col-", (htmlHeaders+">"));  htmlDPFile= " "+htmlDPFile ; } else {htmlDPFile=">"+htmlDP[i]}
          
                if(htmlMSG[i].includes("-col-")) {htmlMSGFile=htmlMSG[i].replace("-col-", (htmlHeaders+">")); htmlMSGFile=" "+htmlMSGFile; } else {htmlMSGFile=">"+htmlMSG[i]}    
                htmlHelperFile= htmlHelperFile+"<tr><td"+htmlDPFile+"&ensp;&ensp;</td><td"+htmlMSGFile+"&ensp;&ensp;</td></tr>"
          }
             var   endehtml=endehtmlConst;
             var   endehtmlDP=endehtmlDPConst;                       
              
          
             if (monster){endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Monster Suche wird automatisch  deaktiviert !!!</i></p>"+endehtml;
                       endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! ACHTUNG: SYSTEM WIRD BELASTET !!! </br></br>!!! Monster Suche wird automatisch  deaktiviert !!! </br></br> BERICHT/AUSWERTUNG NUR ÜBER WEBSEITE</i></p>"+endehtmlDP;}
          
          
             if (!instanzAnzahl){endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne DatenpunktZählung !!! kann enabled werden</i></p>"+endehtml;
                       endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne DatenpunktZählung !!! kann enabled werden</i></p>"+endehtmlDP;}
          
             if (!java){ endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne Javascript Instanzen !!! kann enabled werden</i></p>"+endehtml;
                       endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne Javascript Instanzen !!! kann enabled werden</i></p>"+endehtmlDP;}
             
             if(!monster) { setStateDelayed(dpPrefix + "ProofingDatapoints.HTMLTable",endehtmlDP+"<table>"+htmlHelper,900);} else{setStateDelayed(dpPrefix + "ProofingDatapoints.HTMLTable",endehtmlDP,900);}
            
             mylog("================================schreibe file")  ; 
             writeFile(null, "/ProofingDatapoints/htmlputz.html" ,format+endehtml+htmlTable+htmlHelperFile+"</table></body>", function (error) { mylog('file written'); });
          
            // endehtml=endehtmlConst;
            // endehtmlDP=endehtmlDPConst;
          
             setState(dpPrefix + "ProofingDatapoints.MonsterSearch",false);  //setzt monstersearch zurück
             directSearch=false;
           
          });
          
          

          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

          sigi234S 1 Antwort Letzte Antwort
          0
          • liv-in-skyL liv-in-sky

            @sigi234

            bitte nochmal testen - sorry dafür - aber manchmal ist der wurm drin

            // @Liv-in-sky Okt.  2019
            
            
            
            
                                                      // WICHTIG
                                                      // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"
                                                      //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"
            const instanzArr=[ "EigeneDatenpunkte.0"];    
                                                      // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];
            
            var color_in_table="black"         // Farbe text in webseite
            let schriftart="Helvetica";        // möglich: Helvetica,Serif
            var color_gradient1="#819FF7";     // Hintergrund webseite 
            var colorHeadlines="darkblue";     // Farbe Überschriften in der VIS Anzeige
            var colorHeadlinesDP="#36d5ec ";   // Farbe Überschriften in der WebSeite Anzeige     
            var warnFarbe = "#36d5ec";         //Farbe für Warnungen in vis und Webseite
            
            
            //------------------------------------------AB HIER NICHTS ÄNDERN--------------------------------------------------------
            
            
            
            const versionNr = "15102019-1.1"
            const warnColor = warnFarbe ;
            
            const format = "<!DOCTYPE html><html lang=\"de\"><head><title>Putzer</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body>";
            const htmlTable="<table style=\"color:"+color_in_table+";text-align:left; font-family:"+schriftart+";background-image: linear-gradient(67deg,transparent,"+color_gradient1+");\">";
            const htmlReset="<p style=\"color:red;font-family:"+schriftart+";\"><i>!!! ohne Javascript Instanzen !!! kann enabled werden</i></p>"
            const htmlHeaders = "style=\"color:"+colorHeadlines+";\""; 
            const htmlHeadersDP = "style=\"color:"+colorHeadlinesDP+";\""; 
            
            //  var htmlOhneAnzahl="<p style=\"color:red;font-family:"+schriftart+";\"><i>!!! ohne DatenpunktZählung !!! kann enabled werden</i></p>"
            const htmlError="<p style=\"color:red;font-family:"+schriftart+";\"><i>Script hat Fehler - bitte Log checken !!!</i></p>"
            var allInstArr=[];
            var  instanzArrHelp=[];
            const dpPrefix = "javascript."+ instance +".";
            var mylogs=false;
            var htmlDP=[];
            var htmlMSG=[];
            var counterAll=0;
            var directSearch=false;
            var switchOn=false;
            
            
            var htmlHelper="";
            var htmlHelperFile="";
            
            createState(dpPrefix + "ProofingDatapoints.HTMLTable", { name: 'HTMLTable',  type: 'string', read:  true,  write: true,});
            createState(dpPrefix + "ProofingDatapoints.ScriptVersion", versionNr,{ name: 'ScriptVersion',  type: 'string', read:  true,  write: true,});
            createState(dpPrefix + "ProofingDatapoints.RunScript",false, { name: 'RunScript',  type: 'boolean', role:"switch", read:  true,  write: true,});
            createState(dpPrefix + "ProofingDatapoints.JavaInstanzCheck", true,{ name: 'JavaInstanzCheck',  type: 'boolean', role:"switch", read:  true,  write: true,});
            createState(dpPrefix + "ProofingDatapoints.ObjectAnzahlCheck", true,{ name: 'ObjectAnzahlCheck',  type: 'boolean', role:"switch", read:  true,  write: true,});
            createState(dpPrefix + "ProofingDatapoints.MonsterSearch", false,{ name: 'MonsterSearch',  type: 'boolean', role:"switch", read:  true,  write: true,});
            createState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige", false,{ name: 'ohneInstanzAnzeige',  type: 'boolean', role:"switch", read:  true,  write: true,});
            createState(dpPrefix + "ProofingDatapoints.OrdnerCheck", "", { name: 'OrdnerCheck',  type: 'string', read:  true,  write: true,});
            
            
            //------------------------------------------CHECK INSTANZEN--------------------------------------------------------
            
            function instanzCount(){
              var ohneInstanz = getState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige").val;
              
               var counter=0; var counter2=0;var counter3=0; 
            $('system.adapter.*.alive').each(function(id, i) {
            
            
                var ida = id.split('.');
                 allInstArr.push(ida[2]+"."+ida[3]);
            
              if (!ohneInstanz && !directSearch) {
               
               if(!id.includes("vis")){
               
            
               counter++;
            
               if (getState(id).val==null) {;counter2++; mylog(ida[2]+ida[3]+"--------------------der hier wurde nie gestartet"); 
                  htmlDP.push(ida[2]+"."+ida[3]);
                  htmlMSG.push("Instanzen ohne Werte");} //else{instanzArr.push(ida[2]+"."+ida[3])}
               if (getState(id).val==false) {counter3++;mylog(ida[2]+ida[3]+"-----------------------der hier ist ausgeschalten"); 
                  htmlDP.push(ida[2]+"."+ida[3]);
                  htmlMSG.push("nicht aktiviert");} /*else{instanzArr.push(ida[2]+"."+ida[3])}*/
               }}
            });
             if (!ohneInstanz) {
            mylog("______________________________________________Anzahl Instanzen: " + counter.toString());
            htmlDP.push("");
            htmlMSG.push("");
            htmlDP.push("Anzahl Instanzen");
            htmlMSG.push(counter.toString());
            
            mylog("______________________________________________Anzahl gestoppter Instanzen ohne Werte: " + counter2.toString())
            htmlDP.push("Instanzen ohne Werte");
            htmlMSG.push(counter2.toString());
            htmlDP.push("Instanzen nicht aktiviert");
            htmlMSG.push(counter3.toString());
            
             }
            
            }
            
            
            //------------------------------------------CHECK ZUORDNUNG--------------------------------------------------------
            
            function checkTypes(select) {
                mylog("bin in check types");
               var counter=0; 
               htmlMSG.push("");
               htmlDP.push("");
               var sub= select.substring(select.length-1, select.length); log("---------: "+sub);log("----------select: "+select);
               mylog(select)
               $(select).each(function (id, i) {
                   counter++
            
                   
                      
               if (!id.includes('scriptEnabled') && !id.includes('scriptProblem')  && getState(id).val !== null /*&& !id.includes('Log-Script')  && !id.includes('Ereignisliste') && !id.includes('GETPROCESS')*/ ){
            
                   if (!JSON.stringify(getObject(id)).includes("type")) {
                  
                        var valType = typeof getState(id).val;
                         htmlDP.push(id+": "+valType);
                         htmlMSG.push("<b>missing TYPE !!</b>" );}
                   
                    else{ var dpType = getObject(id).common.type;
                          var valType = typeof getState(id).val;
                          if(dpType != "mixed" ) {
                          if(dpType !== valType && !(dpType == 'array' && valType == 'object') /*&& !(dpType =='text' && valType=='string') && !(dpType =='string' && valType=='text')*/ ) {
                             mylog(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                             htmlDP.push(id+": "+valType);
                             htmlMSG.push(dpType );
            
                             /* später testing)
                             console.log("======1=============no type: "+id +"object: "+JSON.stringify(getObject(id)));
                             if(!getObject(id).common.hasOwnProperty("type")) console.log("--------------kein TYPE: "+id) ;
                             console.log("======2=============no type: "+id +"object: "+JSON.stringify(getObject(id).common));
                           */
                             
                             }
                           
                   }}
                 /*
                   if(dpType != valType && !(dpType == 'array' && valType == 'object')) {
                       log(id + ': Datenpunkttyp: ' + dpType + ', Wert: ' + valType);
                       htmlDP.push(dpType);
                       htmlMSG.push(valType);
                   }*/
               }
               });
               htmlDP.push("<i>ID + IST-WERT</i>");
               htmlMSG.push("<i>SOLL-WERT</i>");
               htmlDP.push("-col-<b>geprüfte Instanz</b>");
               htmlMSG.push("-col-<i><b>"+select+"</b></i>");
               mylog("fertg" + counter.toString())
              
            }
            
            //------------------------------------------CHECK  WERTE--------------------------------------------------------
            
            function checkWerte(select) {
               mylog("bin in check Werte");
               var counter=0; 
            
               mylog(select);
               $(select).each(function (id, i) {
                   counter++
                   
               if (!id.includes('scriptEnabled') && !id.includes('scriptProblem') /* )  && !id.includes('Ereignisliste') && !id.includes('GETPROCESS')*/ ){
                  //var dpType = getObject(id).common.type;
                   
                   var valType =  getState(id).val;
                  
            
            
                  // if(dpType != "mixed" ) {}
            
                       if(valType === null) {mylog(id + ': Datenpunkttyp: ' /*+ dpType */+ ", Wert: "+valType);
                           htmlDP.push(id);
                           var ddd = new Date().getTime()-getObject(id).ts;
                           htmlMSG.push("missing seit " + Math.floor((ddd)/1000/60/60/24)+"d "+Math.floor((ddd)/1000/60/60 %24)+"h "+Math.floor((ddd)/1000/60 %60)+"m ");
                       } 
                   
                
               }
               });
             
                mylog("bin raus aus check Werte");
              
            }
            //---------------------------------------------------------------------------------------------------------------------
            
            
            function mylog(message) {
              if(mylogs)
                  console.log(message);
            }
            
            //------------------------------------------Zähle Objecte der  INSTANZEN--------------------------------------------------------
            function countDP(idb){
               mylog("bin richtig in count");
               var counter4=0;
            
               $(idb+".*").each(function(id, i) {
               counter4++; })
            
            mylog(idb+counter4);
            htmlDP.unshift(idb);
            htmlMSG.unshift(counter4.toString());
            counterAll=counterAll+counter4;
            mylog("bin raus aus count");
            }
            
            //----------------------------------------------Direct Suchen
            
            on({id:dpPrefix + "ProofingDatapoints.OrdnerCheck", ack: false, change: "any"}, function (obj) {
             
                directSearch=true;
                 instanzArrHelp=[];
                setState(dpPrefix + "ProofingDatapoints.RunScript",true);
            
               
                });
            
            //-----------------------------------------------SCHALTER MAIN------------------------------------------------
            on({id:dpPrefix + "ProofingDatapoints.RunScript", ack: false, val: true}, function (obj) { 
              
               let java= getState(dpPrefix + "ProofingDatapoints.JavaInstanzCheck").val;
               let instanzAnzahl= getState(dpPrefix + "ProofingDatapoints.ObjectAnzahlCheck").val;
               let monster= getState(dpPrefix + "ProofingDatapoints.MonsterSearch").val;
               var ohneInstanz = getState(dpPrefix + "ProofingDatapoints.ohneInstanzAnzeige").val;
               var endehtmlConst=   "<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\">Letztes File Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss")+"</p>";
               var endehtmlDPConst=   "<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\">Letztes Table Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss")+"</p>";
               setState(dpPrefix + "ProofingDatapoints.ScriptVersion",versionNr);
               htmlHelper="";
               htmlHelperFile="";
               setState(dpPrefix + "ProofingDatapoints.HTMLTable",htmlReset+endehtml+htmlError);
               writeFile(null, "/ProofingDatapoints/htmlputz.html" ,htmlReset+endehtml+htmlError+"</body>", function (error) {mylog('file written'); });
              
               counterAll=0;
               instanzArrHelp=[];
               allInstArr=[];
            
            
            setStateDelayed(dpPrefix + "ProofingDatapoints.RunScript",false,2500);
            
            htmlDP=[];
            htmlMSG=[];
            
            instanzCount();  //überprüft instanzen und stellt allInstArr her
            
            htmlDP.push("-col-<b>INSTANZ INFO</b>"); htmlMSG.push(""); htmlDP.push(""); htmlMSG.push("");
            mylog(instanzArr.length+"==================="+instanzArr.toString());
            
            
            if (monster) {instanzArrHelp=allInstArr;} else {instanzArrHelp=instanzArr}  //ACHTUNG MONSTERSEARCH
            if (directSearch) {instanzArrHelp=[]; instanzArrHelp.push(getState(dpPrefix + "ProofingDatapoints.OrdnerCheck").val);}
            
            for(let name in instanzArrHelp){
               checkWerte(instanzArrHelp[name]+".*")                   //checkt alle werte in intanzArr
                mylog("!!!!!!!!!!!!!!!!!!!!:  "+instanzArrHelp[name]);}
            
                if (instanzAnzahl){
                      htmlDP.unshift(""); htmlMSG.unshift("");htmlDP.unshift("<b>OBJECTE IN INSTANZ</b>"); htmlMSG.unshift("Anzahl"); 
                       
                      for(let name in instanzArrHelp){
                        countDP(instanzArrHelp[name]);mylog("bin in zhlen");}
                        if (java && !monster) countDP("javascript")
                      htmlDP.unshift("-col-<b>GESAMT GEPRÜFTE OBJECTE IN INSTANZEN</b>"); htmlMSG.unshift("-col-<b>"+counterAll.toString()+"</b>"); 
                      
                      }
                      mylog("=============: "+counterAll);
            
            if (java && !monster && !ohneInstanz && !directSearch) checkWerte('javascript.*');                //checkt alle javainstanzen
            
            
             htmlDP.push("-col-<b>ID's OHNE WERT:</b>");
             htmlMSG.push("");
            
            for(let name in instanzArrHelp){
               checkTypes(instanzArrHelp[name]+".*")
               mylog("!!!!!!!!!!!!!!!!!!!!:  "+instanzArrHelp[name])};
                 htmlDP.push("");
                 htmlMSG.push("");
                 htmlDP.push("-col-<b>IDs MIT FALSCHEN TYPE:</b>");
                 htmlMSG.push("");
            
            
             if (java && !monster && !ohneInstanz && !directSearch ) checkTypes('javascript.*');
            
            for(var i= htmlDP.length-1; i>-1; i--) {
                let htmlDPVis; let htmlDPFile;let htmlMSGVis;let htmlMSGFile;
                  if(htmlDP[i].includes("-col-")) {htmlDPVis=htmlDP[i].replace("-col-", (htmlHeadersDP+">"));  htmlDPVis=" "+htmlDPVis } else {htmlDPVis=">"+htmlDP[i]}
                  if(htmlMSG[i].includes("-col-")) {htmlMSGVis=htmlMSG[i].replace("-col-", (htmlHeadersDP+">"));htmlMSGVis=" "+htmlMSGVis } else {htmlMSGVis=">"+htmlMSG[i]}
                  htmlHelper= htmlHelper+"<tr><td"+htmlDPVis+"&ensp;&ensp;</td><td"+htmlMSGVis+"&ensp;&ensp;</td></tr>"
            
                //  if(htmlDP[i].includes("-col-")) {htmlDP[i]=htmlDP[i].replace("-col-", (htmlHeaders+">")); htmlDPFile=htmlDP[i]; htmlDPFile= " "+htmlDPFile ; } else {htmlDPFile=">"+htmlDP[i]}
                        if(htmlDP[i].includes("-col-")) {htmlDPFile=htmlDP[i].replace("-col-", (htmlHeaders+">"));  htmlDPFile= " "+htmlDPFile ; } else {htmlDPFile=">"+htmlDP[i]}
            
                  if(htmlMSG[i].includes("-col-")) {htmlMSGFile=htmlMSG[i].replace("-col-", (htmlHeaders+">")); htmlMSGFile=" "+htmlMSGFile; } else {htmlMSGFile=">"+htmlMSG[i]}    
                  htmlHelperFile= htmlHelperFile+"<tr><td"+htmlDPFile+"&ensp;&ensp;</td><td"+htmlMSGFile+"&ensp;&ensp;</td></tr>"
            }
               var   endehtml=endehtmlConst;
               var   endehtmlDP=endehtmlDPConst;                       
                
            
               if (monster){endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Monster Suche wird automatisch  deaktiviert !!!</i></p>"+endehtml;
                         endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! ACHTUNG: SYSTEM WIRD BELASTET !!! </br></br>!!! Monster Suche wird automatisch  deaktiviert !!! </br></br> BERICHT/AUSWERTUNG NUR ÜBER WEBSEITE</i></p>"+endehtmlDP;}
            
            
               if (!instanzAnzahl){endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne DatenpunktZählung !!! kann enabled werden</i></p>"+endehtml;
                         endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne DatenpunktZählung !!! kann enabled werden</i></p>"+endehtmlDP;}
            
               if (!java){ endehtml="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne Javascript Instanzen !!! kann enabled werden</i></p>"+endehtml;
                         endehtmlDP="<p style=\"color:"+warnColor+"; font-family:"+schriftart+";\"><i>!!! Auswertung ohne Javascript Instanzen !!! kann enabled werden</i></p>"+endehtmlDP;}
               
               if(!monster) { setStateDelayed(dpPrefix + "ProofingDatapoints.HTMLTable",endehtmlDP+"<table>"+htmlHelper,900);} else{setStateDelayed(dpPrefix + "ProofingDatapoints.HTMLTable",endehtmlDP,900);}
              
               mylog("================================schreibe file")  ; 
               writeFile(null, "/ProofingDatapoints/htmlputz.html" ,format+endehtml+htmlTable+htmlHelperFile+"</table></body>", function (error) { mylog('file written'); });
            
              // endehtml=endehtmlConst;
              // endehtmlDP=endehtmlDPConst;
            
               setState(dpPrefix + "ProofingDatapoints.MonsterSearch",false);  //setzt monstersearch zurück
               directSearch=false;
             
            });
            
            

            sigi234S Online
            sigi234S Online
            sigi234
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #33

            @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                                                                                                                                                                                                                              // WICHTIG                                                                                                                                                                                                                      // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"                                                                                                                                                                                                                      //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"                                                                                                                                                                            const instanzArr=[ "EigeneDatenpunkte.0"];                                                                                                                                                                                                                          // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];                                                                                                                                                                                                                                                                                                                                                         // @Liv-in-sky Okt.  2019
            

            2 Mal drinnen!

            
                                                      // WICHTIG
                                                      // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"
                                                      //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"
            const instanzArr=[ "EigeneDatenpunkte.0"];    
                                                      // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];
             
            // @Liv-in-sky Okt.  2019
            

            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Immer Daten sichern!

            liv-in-skyL 1 Antwort Letzte Antwort
            0
            • sigi234S sigi234

              @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                                                                                                                                                                                                                                // WICHTIG                                                                                                                                                                                                                      // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"                                                                                                                                                                                                                      //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"                                                                                                                                                                            const instanzArr=[ "EigeneDatenpunkte.0"];                                                                                                                                                                                                                          // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];                                                                                                                                                                                                                                                                                                                                                         // @Liv-in-sky Okt.  2019
              

              2 Mal drinnen!

              
                                                        // WICHTIG
                                                        // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"
                                                        //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"
              const instanzArr=[ "EigeneDatenpunkte.0"];    
                                                        // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];
               
              // @Liv-in-sky Okt.  2019
              
              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              schrieb am zuletzt editiert von
              #34

              @sigi234 bitte rauslöschen - ich mache für heute pause :-( und habs geändert

              aber immerhin hab ich schon mal einen fehler im alexa2 adapter gefunden (wird gefixt) - ist doch schon mal was :-)

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              sigi234S 1 Antwort Letzte Antwort
              0
              • liv-in-skyL liv-in-sky

                @sigi234 bitte rauslöschen - ich mache für heute pause :-( und habs geändert

                aber immerhin hab ich schon mal einen fehler im alexa2 adapter gefunden (wird gefixt) - ist doch schon mal was :-)

                sigi234S Online
                sigi234S Online
                sigi234
                Forum Testing Most Active
                schrieb am zuletzt editiert von sigi234
                #35

                @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                bitte rauslöschen

                ja,schaut besser aus, kein Fehler im Log.

                HTML - leider nein, wird nicht erstellt.

                Skript hängt sich auf.....

                Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                Immer Daten sichern!

                1 Antwort Letzte Antwort
                0
                • liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von liv-in-sky
                  #36

                  @paul53

                  sorry aber ich muss dich nochmal was fragen - ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string

                  ist diese abfrage richtig - sie macht das mit meinen testpunkten aber ich würde gerne deine meinung haben

                           if(getObject(id).common.hasOwnProperty("states")){
                  
                           var helpStates= Object.keys(getObject(id).common.states);
                  
                           if (true) { //platz für weitere bedingung
                                      var alarmString=false;
                                      for (var i=0;  i  < helpStates.length ;i++){
                                           mylog(typeof helpStates[i]); //damit geht es nicht !
                                           myog(isNaN(helpStates[i]).toString())  ;
                                           if (isNaN(helpStates[i])) alarmString=true; 
                                           }  
                                      if (alarmString){  htmlDP.push(id);
                                                         htmlMSG.push("ACHTUNG Multstate must be number")}
                                      }
                           
                           }
                  

                  Image 4.png

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • liv-in-skyL liv-in-sky

                    @paul53

                    sorry aber ich muss dich nochmal was fragen - ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string

                    ist diese abfrage richtig - sie macht das mit meinen testpunkten aber ich würde gerne deine meinung haben

                             if(getObject(id).common.hasOwnProperty("states")){
                    
                             var helpStates= Object.keys(getObject(id).common.states);
                    
                             if (true) { //platz für weitere bedingung
                                        var alarmString=false;
                                        for (var i=0;  i  < helpStates.length ;i++){
                                             mylog(typeof helpStates[i]); //damit geht es nicht !
                                             myog(isNaN(helpStates[i]).toString())  ;
                                             if (isNaN(helpStates[i])) alarmString=true; 
                                             }  
                                        if (alarmString){  htmlDP.push(id);
                                                           htmlMSG.push("ACHTUNG Multstate must be number")}
                                        }
                             
                             }
                    

                    Image 4.png

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #37

                    @liv-in-sky :

                    ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string

                    Auch Datenpunkte vom Typ "boolean" können Zustandstexte (states) haben, z.B.

                        "states": {
                          "false": "Aus",
                          "true": "Ein"
                        }
                    

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @liv-in-sky :

                      ich versuche multistate datenpunkte zu filtern, die keine number im attribut haben sondern string

                      Auch Datenpunkte vom Typ "boolean" können Zustandstexte (states) haben, z.B.

                          "states": {
                            "false": "Aus",
                            "true": "Ein"
                          }
                      
                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #38

                      @paul53
                      es gibt aber nur: type number, da müssen im "states" zahlen drin sein
                      und type boolean - da müssen in "states"logic werte drin sein

                              if (helpType=="number" || helpType=="boolean") {
                                         var alarmString=false;var alarmString2=false;
                                         for (var i=0;  i  < helpStates.length ;i++){
                                            //  console.log( helpStates[i]);
                                              mylog(isNaN(helpStates[i]).toString())  ;
                                              if (isNaN(helpStates[i]) && helpType=="number") alarmString=true; //type number - stehen da nummern drin
                                              var helpTypeBool= helpStates[i].toString()  + helpType;
                                              if  (helpType=="boolean") {if (helpTypeBool !="falseboolean" && helpTypeBool != "trueboolean")  alarmString2=true;} //type boolean - stehen da booleans
                                         }
                                         if (alarmString){  htmlDP.push(id);
                                                            htmlMSG.push("ACHTUNG Multstate must be number")}
                                         if (alarmString2){ htmlDP.push(id);
                                                            htmlMSG.push("ACHTUNG Multstate must be boolean")}
                                         } else {htmlDP.push(id);
                                                 htmlMSG.push("ACHTUNG Multstate wrong Def.")}
                              
                              }
                      

                      Image 5.png

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @paul53
                        es gibt aber nur: type number, da müssen im "states" zahlen drin sein
                        und type boolean - da müssen in "states"logic werte drin sein

                                if (helpType=="number" || helpType=="boolean") {
                                           var alarmString=false;var alarmString2=false;
                                           for (var i=0;  i  < helpStates.length ;i++){
                                              //  console.log( helpStates[i]);
                                                mylog(isNaN(helpStates[i]).toString())  ;
                                                if (isNaN(helpStates[i]) && helpType=="number") alarmString=true; //type number - stehen da nummern drin
                                                var helpTypeBool= helpStates[i].toString()  + helpType;
                                                if  (helpType=="boolean") {if (helpTypeBool !="falseboolean" && helpTypeBool != "trueboolean")  alarmString2=true;} //type boolean - stehen da booleans
                                           }
                                           if (alarmString){  htmlDP.push(id);
                                                              htmlMSG.push("ACHTUNG Multstate must be number")}
                                           if (alarmString2){ htmlDP.push(id);
                                                              htmlMSG.push("ACHTUNG Multstate must be boolean")}
                                           } else {htmlDP.push(id);
                                                   htmlMSG.push("ACHTUNG Multstate wrong Def.")}
                                
                                }
                        

                        Image 5.png

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von
                        #39

                        @liv-in-sky:

                        es gibt aber nur: type number, da müssen im "states" zahlen drin sein
                        und type boolean - da müssen in "states"logic werte drin sein

                        Richtig.

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Antwort Letzte Antwort
                        0
                        • liv-in-skyL liv-in-sky
                          • suche tester, anregungen

                          • dieses script soll u.a. zum auffinden falsch beschriebener oder leerer datenpunkte dienen. es kann für scripter helfen, eigene script- oder adpater datenpunkte zu überprüfen

                          • unter umständen kann es dabei viele daten geben und deshalb wird zu einem datenpunkt (html formatiert für html widget-vis) eine webseite erzeugt um einen besseren überblick zu bekommen

                          • das script wird mit einem boolean wert ausgeführt (RunScript=true) - so wird nach der aktivierung des scripts nichts zu sehen sein

                          was geht sonst noch:

                          feature to do
                          datenpunkte per instanz zählen kann über dp abgeschalten werden (setzen: javascript.0.ProofingDatapoints.ObjectAnzahlCheck)
                          Alias Kontrolle der neue controllerv2 hat aliase - diese werden auf fehlende datenpunktzuweisung überprüft
                          letzte Änderung DP es kann die "letze Änderung" von datenpunkte angezeigt werden mit taage einstellung über "LatestChangeDP_Factor" 1 ist 1 Tag
                          nur spezielle ornder abfragen es können auch nur einzelne ordner abgefragt werden - z.b. "javascript.2.WLANUnifi"
                          eigene instanzen definieren z.b für die eignenDatenpunkte - muss vor scriptausführung angepaßt werden (const instanzArr im script)
                          standard javascript.* disable scripte legen datenpunkte unter javascript ab -. daher standard (kann über dp abgeschalten werden)(setzen: javascript.0.ProofingDatapoints.JavaInstanzCheck)
                          eigene webseite erreichbar: http://<ip iobroker>:8082/javascript/ProofingDatapoints/htmlputz.html - zur leichteren auswertung/übersicht. dabei ist 8082 der port des web-adapters
                          eigene farben definieren für webseite bei variable definition im script
                          monster-search es gibt einen dp (javascript.0.ProofingDatapoints.MonsterSearch), mit dem kann man eine suche durch alle instanzen machen. nach dessen durchlauf wird der datenpunkt wieder automatisch auf false gestellt - es wird auch kein htm-datenpunkt geschrieben, sondern nur die webseite erstellt - das system wird stark belastet !!! in dieser suche werden die Eigenendatenpunkte nicht berücksichtigt (keine verwendung von const instanzArr).
                          directSearch es gibt einen datenpunkt "directSearch - damit kann man direkt einen pfad zu einem ordner eingeben. in der vis mit dem input-widget realisiert
                          blacklist es können einzelen datenpunkte oder ganze breiche ausgeschlossen werden
                          Smart Devices es können die smarthome devices geprüft werden - im raw des dp unter "common.smartName" definiert - z.b um doppelte einträge zu finden
                          • wer das script von mic nutzt (logfile auswertung) sollte es bei einer "monstersuche" deaktivieren
                          • beim aufsuchen der datenpunkte kann es zu vielen warnungen im log kommen - ist nicht verhinderbar
                          • script kann auch abbrechen durch error - wird dann angezeigt

                          beispiel vis:

                          Image 10.png

                          beispiel "directSearch"
                          Image 5.png

                          beispiel webseite:

                          Image 3.png

                          script für export:

                          version 1.0: ProofingDatapoints16-10-19.txt
                          version 1.1: ProofingDatapoints18-10-19.txt bitte alles unter const instanzArr=... ersetzen
                          version 1.2: ProofingDatapoints22-10-19.txt bitte alles unter "const instanzArr=..." ersetzen - multistates check hinzugefügt
                          version 1.5: ProofingDatapoints26-10-19.txt bitte alles unter "const instanzArr=..." ersetzen und auch die datenpunkte des scripts löschen - letzte Änderung DP checken, Aliase (controllerv2) check
                          version 1.6: ProofingDatapoints1-11-19.txt
                          version 1.7: ProofingDatapoints7-11-19.txt
                          version 1.8 ProofingDatapoints9-11-19.txt
                          version 1.9 ProofingDatapoints10-11-19.txt
                          version 2.0 ProofingDatapoints12-11-19.txt
                          version 2.1 ProofingDatapoints13-11-19.txt
                          version 2.3 ProofingDatapoints15-11-19.txt mit smart devices
                          version 2.4 ProofingDatapoints17-11-19.txt mit history devices

                          widgets export( 15.11.2019):

                          [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{javascript.0.ProofingDatapoints.HTMLTable}"},"style":{"left":"939px","top":"189px","color":"#20f824 ","width":"744px","height":"797px","font-size":"12px","overflow-y":"scroll","border-width":"1px","border-radius":"15px","border-style":"solid","border-color":"#20f824 ","background-color":"","background":"{val:javascript.0.ProofingDatapoints.RunSuccessful; val == \"true\"  ?   \"#000000\":  \"#3E3B3B\"}"},"widgetSet":"basic"},{"tpl":"tplBulbOnOffCtrl","data":{"oid":"javascript.0.ProofingDatapoints.RunScript","g_fixed":true,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","icon_off":"/vis.0/armin/img/play.png","icon_on":"/vis.0/armin/img/ADAPTER/javascript.png","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"min":"false","max":"true","class":"{val:controll-own.0.mount.CPULuefter;val==\"true\"? \"anime\":  \"\"}"},"style":{"left":"1325px","top":"131px","width":"42px","height":"42px","z-index":1},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.JavaInstanzCheck","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1406px","top":"54px","z-index":"115","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.ObjectAnzahlCheck","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1407px","top":"82px","z-index":"115","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>DP Zählen</b>"},"style":{"left":"1232px","top":"83px","font-size":"smaller","width":"152px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>mit js-instanz</b>"},"style":{"left":"1232px","top":"54px","font-size":"smaller","width":"152px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.MonsterSearch","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1635px","top":"30px","z-index":"115"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>Monster Suche</b>"},"style":{"left":"1461px","top":"30px","font-size":"smaller","width":"152px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#15931f","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>ohne gesamt Instanz Anzeige</b>"},"style":{"left":"1155px","top":"31px","font-size":"smaller","width":"232px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.ohneInstanzAnzeige","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1405px","top":"30px","z-index":"115","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplJquiInputSet","data":{"oid":"javascript.0.ProofingDatapoints.OrdnerCheck","g_fixed":true,"g_visibility":false,"g_css_font_text":true,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"buttontext":"DirectSearch","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"class":"menuown","visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","title":""},"style":{"left":"946px","top":"140px","width":"293px","height":"25px","font-size":"small","background-color":"#000000","z-index":"20","background":"","border-radius":"15px"},"widgetSet":"jqui"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.RunSuccessful","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1635px","top":"144px","z-index":"115"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>Successful</b>"},"style":{"left":"1511px","top":"144px","font-size":"smaller","width":"111px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.LatestChangeDP","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1635px","top":"82px","z-index":"115","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>letzte Änderung DPs</b>&ensp;&ensp;>&ensp;","html_append":"{javascript.0.ProofingDatapoints.LatestChangeDP_Factor}&ensp;&ensp;days"},"style":{"left":"1467px","top":"82px","font-size":"smaller","width":"152px","height":"41px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>Alias Prüfung</b>","html_append":""},"style":{"left":"949px","top":"108px","font-size":"smaller","width":"152px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.CheckAliase","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1116px","top":"107px","z-index":"115","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>RUN</b>"},"style":{"left":"1363px","top":"144px","font-size":"smaller","width":"70px","height":"24px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#63f2e2","line-height":"1.2","text-align":"center"},"widgetSet":"basic"},{"tpl":"tplFrame","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"title":"","title_color":"white","title_top":"-2","title_left":"2","header_height":"0","header_color":"#ffffff","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide"},"style":{"left":"939px","top":"10px","z-index":"0","width":"744px","height":"168px","border-color":"#20f824 ","border-radius":"15px","border-width":"1px","background-color":"#414e43","font-size":"small","background":""},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.WertAnalyse","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1116px","top":"25px","z-index":"115"},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.TypeAnalyse","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1116px","top":"55px","z-index":"115"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>mit Type-analyse</b>"},"style":{"left":"949px","top":"54px","font-size":"smaller","width":"152px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"21","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>mit Wert-Analyse</b>"},"style":{"left":"949px","top":"29px","font-size":"smaller","width":"152px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueList","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":true,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html_prepend":"<b>SmartName Prüfung</b>","html_append":""},"style":{"left":"949px","top":"83px","font-size":"smaller","width":"152px","height":"19px","font-style":"normal","font-family":"\"Lucida Sans Unicode\", \"Lucida Grande\", sans-serif","z-index":"5","color":"#20f824 ","line-height":"1.2","text-align":"right"},"widgetSet":"basic"},{"tpl":"tplValueBoolCheckbox","data":{"oid":"javascript.0.ProofingDatapoints.SmartHomeAnalyse","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0},"style":{"left":"1117px","top":"82px","z-index":"115","text-align":"right"},"widgetSet":"basic"}]
                          

                          • bisher erfolgreich bei adaptern angewandt
                          adapter beispiel
                          alexa2 datenpunkt fehler - state existierte - aber kein datenpunkt-object
                          plex falsche datenpunkt-type-definition, da adapter datenpunktdefinition von plex automatisch übernahm
                          pi-hole falsche datenpunkt-type-definition
                          sigi234S Online
                          sigi234S Online
                          sigi234
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von sigi234
                          #40

                          @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                          version 1.2: ProofingDatapoints21-10-19.txt ab "AB HIER NICHTS ÄNDERN" ersetzen - multistates check hinzugefügt

                          <p style="color:red;font-family:Helvetica;"><i>!!! ohne Javascript Instanzen !!! kann enabled werden</i></p>undefined<p style="color:red;font-family:Helvetica;"><i>Script hat Fehler - bitte Log checken !!!</i></p>

                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at tryOnImmediate (timers.js:676:5)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at runCallback (timers.js:705:18)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\states\statesInRedis.js:214:41)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at change (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4546:37)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:396:25)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1055:38)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.<anonymous> (script.js.System.Objekte:285:5)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at checkWerte (script.js.System.Objekte:167:15)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.result.each (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:808:29)
                          javascript.0	2019-10-22 21:12:27.223	error	(15748) at script.js.System.Objekte:182:26
                          javascript.0	2019-10-22 21:12:27.222	error	(15748) Error in callback: TypeError: Cannot read property 'common' of null
                          

                          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                          Immer Daten sichern!

                          liv-in-skyL 1 Antwort Letzte Antwort
                          0
                          • sigi234S sigi234

                            @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                            version 1.2: ProofingDatapoints21-10-19.txt ab "AB HIER NICHTS ÄNDERN" ersetzen - multistates check hinzugefügt

                            <p style="color:red;font-family:Helvetica;"><i>!!! ohne Javascript Instanzen !!! kann enabled werden</i></p>undefined<p style="color:red;font-family:Helvetica;"><i>Script hat Fehler - bitte Log checken !!!</i></p>

                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at tryOnImmediate (timers.js:676:5)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at runCallback (timers.js:705:18)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\states\statesInRedis.js:214:41)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at change (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4546:37)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:396:25)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1055:38)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.<anonymous> (script.js.System.Objekte:285:5)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at checkWerte (script.js.System.Objekte:167:15)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at Object.result.each (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:808:29)
                            javascript.0	2019-10-22 21:12:27.223	error	(15748) at script.js.System.Objekte:182:26
                            javascript.0	2019-10-22 21:12:27.222	error	(15748) Error in callback: TypeError: Cannot read property 'common' of null
                            
                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            schrieb am zuletzt editiert von
                            #41

                            @sigi234

                            leider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings

                            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                            sigi234S 1 Antwort Letzte Antwort
                            0
                            • liv-in-skyL liv-in-sky

                              @sigi234

                              leider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings

                              sigi234S Online
                              sigi234S Online
                              sigi234
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #42

                              @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                              @sigi234

                              leider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings

                              // @Liv-in-sky Okt.  2019
                                
                                                                        // WICHTIG
                                                                        // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"
                                                                        //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"
                              const instanzArr=[ "Eigene_Datenpunkte.0", "alexa2.0", "hm-rega.0", "hm-rpc.0"];    
                                                                        // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];
                               
                              var color_in_table="black"         // Farbe text in webseite
                              let schriftart="Helvetica";        // möglich: Helvetica,Serif
                              var color_gradient1="#819FF7";     // Hintergrund webseite 
                              var colorHeadlines="darkblue";     // Farbe Überschriften in der VIS Anzeige
                              var colorHeadlinesDP="#36d5ec ";   // Farbe Überschriften in der WebSeite Anzeige     
                              var warnFarbe = "#36d5ec";         //Farbe für Warnungen in vis und Webseite
                              

                              Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                              Immer Daten sichern!

                              liv-in-skyL 1 Antwort Letzte Antwort
                              0
                              • sigi234S sigi234

                                @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                                @sigi234

                                leider habe ich heute keine zeit mehr - morgen als erstes - poste bitte mal deine settings

                                // @Liv-in-sky Okt.  2019
                                  
                                                                          // WICHTIG
                                                                          // hier muss die instanz der eigenen datenpunkte angegeben werden oder zusätzlich, die man prüfen möchte    , "alexa2.0"
                                                                          //oder auch nur einzelne ornder in der datenstruktur z.b. "javascript.2.WLANUnifi"
                                const instanzArr=[ "Eigene_Datenpunkte.0", "alexa2.0", "hm-rega.0", "hm-rpc.0"];    
                                                                          // beispiel const instanzArr=[ "eigeneDatenpunkte.0", "ping.0",];
                                 
                                var color_in_table="black"         // Farbe text in webseite
                                let schriftart="Helvetica";        // möglich: Helvetica,Serif
                                var color_gradient1="#819FF7";     // Hintergrund webseite 
                                var colorHeadlines="darkblue";     // Farbe Überschriften in der VIS Anzeige
                                var colorHeadlinesDP="#36d5ec ";   // Farbe Überschriften in der WebSeite Anzeige     
                                var warnFarbe = "#36d5ec";         //Farbe für Warnungen in vis und Webseite
                                
                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                schrieb am zuletzt editiert von
                                #43

                                @sigi234

                                hab doch noch mal nachgesehen - irgendwie ergeben die fehlermeldungen keinen sinn bzw. ich kann sie nicht richtig deuten - bitte stoppe script, lösche alle datenpunkte des scripts, kopiere die ganze neue version, setze nur deine "eigenen_datenpunkte.0" und starte das script nochmal

                                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                sigi234S 1 Antwort Letzte Antwort
                                0
                                • liv-in-skyL liv-in-sky

                                  @sigi234

                                  hab doch noch mal nachgesehen - irgendwie ergeben die fehlermeldungen keinen sinn bzw. ich kann sie nicht richtig deuten - bitte stoppe script, lösche alle datenpunkte des scripts, kopiere die ganze neue version, setze nur deine "eigenen_datenpunkte.0" und starte das script nochmal

                                  sigi234S Online
                                  sigi234S Online
                                  sigi234
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von sigi234
                                  #44

                                  @liv-in-sky

                                  Geht, Copy/Paste Fehler oder wenn ich eine const instanzArr hinzufüge.

                                  HTML wurde nicht erstellt.

                                  Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                  Immer Daten sichern!

                                  liv-in-skyL 1 Antwort Letzte Antwort
                                  0
                                  • sigi234S sigi234

                                    @liv-in-sky

                                    Geht, Copy/Paste Fehler oder wenn ich eine const instanzArr hinzufüge.

                                    HTML wurde nicht erstellt.

                                    liv-in-skyL Offline
                                    liv-in-skyL Offline
                                    liv-in-sky
                                    schrieb am zuletzt editiert von
                                    #45

                                    @sigi234 hi sigi

                                    könntest du nochmal testen

                                    ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst

                                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                    sigi234S 1 Antwort Letzte Antwort
                                    0
                                    • liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      schrieb am zuletzt editiert von
                                      #46

                                      @nis

                                      habe mal die prüfung für multistate eingeführt - wahrscheinlich hast du gerade keine solchen datenpunkte -, wenn doch, bitte testen, wenn du zeit hast

                                      Image 5.png

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      1 Antwort Letzte Antwort
                                      0
                                      • liv-in-skyL liv-in-sky

                                        @sigi234 hi sigi

                                        könntest du nochmal testen

                                        ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst

                                        sigi234S Online
                                        sigi234S Online
                                        sigi234
                                        Forum Testing Most Active
                                        schrieb am zuletzt editiert von
                                        #47

                                        @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                                        @sigi234 hi sigi

                                        könntest du nochmal testen

                                        ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst

                                        So, gerade getestet nur mit eigenen DP

                                        Funktioniert, Html erstellt.

                                        Screenshot (365).png

                                        Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                        Immer Daten sichern!

                                        liv-in-skyL 1 Antwort Letzte Antwort
                                        0
                                        • sigi234S sigi234

                                          @liv-in-sky sagte in Script - Info über Datenpunkte sammeln:

                                          @sigi234 hi sigi

                                          könntest du nochmal testen

                                          ein fehler ist mir aufgefallen - das hing an einem datenpunkt im alexa2 adapter, den du ja standardmäßig prüfst

                                          So, gerade getestet nur mit eigenen DP

                                          Funktioniert, Html erstellt.

                                          Screenshot (365).png

                                          liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          schrieb am zuletzt editiert von liv-in-sky
                                          #48

                                          @sigi234 und gleich fehler gefunden

                                          javascript.0.Ansage.Terminvorschau - magst du mal den raw wert des objects posten ?

                                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                          sigi234S 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          241

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe