Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. [gelöst] Warn mit Javascript 5.5.0

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Warn mit Javascript 5.5.0

    This topic has been deleted. Only users with topic management privileges can see it.
    • Negalein
      Negalein Global Moderator last edited by Negalein

      Hallo

      nach Update auf 5.5.0 kommen haufenweise Warn-Meldungen.
      Mit 5.4.3 läuft wieder alles.

      @liv-in-sky es betrifft zB das Adapter Alive Script von dir.

      In Zeile 138 steht var val1help=getState(id.replace("alive","uptime")).val;
      In Zeile 131: $('system.adapter.*.alive').each(function(id, i) { // hier eigene schleife definieren und den wert counter++ nicht vergessen !!!
      Zeile 165: writeHTML(); // <tdalign
      Zeile 268: die gibt es nicht

      2022-03-22 00:40:00.567  - warn: javascript.0 (1861534) getState "system.adapter.devices.0.uptime" not found (3) states[id]=null
      2022-03-22 00:40:00.570  - warn: javascript.0 (1861534)     at script.js.System.Adapter_Alive_Tabelle:138:24
      2022-03-22 00:40:00.570  - warn: javascript.0 (1861534)     at Object.result.each (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:867:29)
      2022-03-22 00:40:00.570  - warn: javascript.0 (1861534)     at writeHTML (script.js.System.Adapter_Alive_Tabelle:131:29)
      2022-03-22 00:40:00.570  - warn: javascript.0 (1861534)     at script.js.System.Adapter_Alive_Tabelle:165:1
      2022-03-22 00:40:00.570  - warn: javascript.0 (1861534)     at script.js.System.Adapter_Alive_Tabelle:268:3
      

      Node.js: v14.17.1
      NPM: 6.14.13
      JS-Controller: 3.3.22
      Javascript: 5.5.0

      liv-in-sky 1 Reply Last reply Reply Quote 0
      • liv-in-sky
        liv-in-sky @Negalein last edited by

        @negalein

        bitte poste mir das ganze script - dann check ich das für dich

        Negalein Chaot 2 Replies Last reply Reply Quote 0
        • Negalein
          Negalein Global Moderator @liv-in-sky last edited by

          @liv-in-sky sagte in Warn mit Javascript 5.5.0:

          bitte poste mir das ganze script - dann check ich das für dich

           //@liv-in-sky 2020  4.2.-18:42
           
           
          //HIER WIRD PFAD UND FILENAME DEFINIERT
          const path = "/htmlexample.html";                   //FIlenamen definieren
          const home ='vis.0'                                 //wo soll das file im iobroker-file-system liegen ? (oder z.b auch iqontrol.meta)
          let   braucheEinFile=true;                          // bei true wird ein file geschrieben
          let   braucheEinVISWidget=true;                     // bei true wird ein html-tabelle in einen dp geschrieben - siehe nächste zeile
          let dpVIS="0_userdata.0.Tabellen.Adapter-alive"         //WICHTIG wenn braucheEinVISWidget auf true gesetzt !!  dp zusätzlich für VIS-HTML-Basic-Widget
          let mySchedule=" */20 * * * * * ";                       //jede minute  
          //---------------------------------------
           
          //HIER DIE SPALTEN ANZAHL DEFINIEREN - jede Spalte einen Wert - in diesem Beispiel sind es 3
          var htmlFeld1='Instanz';      var Feld1lAlign="left";                     // überschrift Tabellen Spalte1 und  Ausrichtung left,right or center
          var htmlFeld2='Alive';        var Feld2lAlign="center";                      // überschrift Tabellen Spalte2 und  Ausrichtung left,right or center
          var htmlFeld3='Status';         var Feld3lAlign="right";                    // überschrift Tabellen Spalte3 und  Ausrichtung left,right or center
          //-----------------------------------
           
           
          //hier werden die styles für die tabelle definiert
          //ÜBERSCHRIFT ÜBER TABELLE
          let   htmlUberschrift=false;                           // mit Überschrift über der tabelle
          let   htmlSignature=false;                              // anstatt der Überscghrift eine signature: - kleiner - anliegend
          const htmlFeldUeber='ioBroker Dienste';              // Überschrift und Signature
          const htmlFarbUber="white";                         // Farbe der Überschrift
          const htmlSchriftWeite="normal";                       // bold, normal - Fettschrift für Überschrift
          const htmlÜberFontGroesse="18px";                       // schriftgröße überschrift
          //MEHRERE TABELLEN NEBENEINANDER
          let   mehrfachTabelle=3;                              // bis zu 4 Tabellen werden nebeneinander geschrieben-  verkürzt das Ganze, dafür etwas breiter - MÖGLICH 1,2,3,oder 4 !!!
          const trennungsLinie="2";                             //extra trennungslinie bei mehrfachtabellen - evtl auf 0 stellen, wnn htmlRahmenLinien auf none sind
          const farbetrennungsLinie="white";
          const htmlFarbZweiteTabelle="white";                // Farbe der Überschrift bei jeder 2.ten Tabelle
          const htmlFarbTableColorUber="#BDBDBD";               // Überschrift in der tabelle - der einzelnen Spalten
          //ÜBERSCHRIFT SPALTEN
          const UeberSchriftHöhe="35";                          //Überschrift bekommt mehr Raum - darunter und darüber - Zellenhöhe
          const LinieUnterUeberschrift="3";                   // Linie nur unter Spaltenüberschrift - 
          const farbeLinieUnterUeberschrift="white";
          const groesseUeberschrift=16;
          const UeberschriftStyle="normal"                     // möglich "bold"
          //GANZE TABELLE
          let abstandZelle="1";
          let farbeUngeradeZeilen="#000000";                     //Farbe für ungerade Zeilenanzahl - Hintergrund der Spaltenüberschrift bleibt bei htmlFarbTableColorGradient1/2
          let farbeGeradeZeilen="#151515";                        //Farbe für gerade Zeilenanzahl - Hintergrund der Spaltenüberschrift bleibt bei htmlFarbTableColorGradient1/2
          let weite="auto";                                     //Weite der Tabelle
          let zentriert=true;                                   //ganze tabelle zentriert
          const backgroundAll="#000000";                        //Hintergrund für die ganze Seite - für direkten aufruf oder iqontrol sichtber - keine auswirkung auf vis-widget
          const htmlSchriftart="Helvetica";
          const htmlSchriftgroesse="14px";
          //FELDER UND RAHMEN
          let   UeberschriftSpalten=true;                // ein- oder ausblenden der spatlen-überschriften
          const htmlFarbFelderschrift="#BDBDBD";                  // SchriftFarbe der Felder
          const htmlFarbFelderschrift2="#D8D8D8";                 // SchriftFarbe der Felder für jede 2te Tabelle
          const htmlFarbTableColorGradient1="#424242";          //  Gradient - Hintergrund der Tabelle - Verlauffarbe
          const htmlFarbTableColorGradient2="#424242";          //  Gradient - Hintergrund der Tabelle - ist dieser Wert gleich Gradient1 gibt es keinen verlauf
          const htmlFarbTableBorderColor="grey";             // Farbe des Rahmen - is tdieser gleich den gradienten, sind die rahmen unsichtbar
          let htmlRahmenLinien="none";                            // Format für Rahmen: MÖGLICH: "none" oder "all" oder "cols" oder "rows"
          const htmlSpalte1Weite="auto";                   //  Weite der ersten beiden  Spalten oder z.b. 115px
           
          // HIER NICHTS  ÄNDERN
           
          let borderHelpBottum;
          let borderHelpRight;
          let htmlcenterHelp;
          let htmlcenterHelp2;
           
          if(htmlRahmenLinien=="rows") {borderHelpBottum=1;borderHelpRight=0;}
          if(htmlRahmenLinien=="cols") {borderHelpBottum=0;borderHelpRight=1;}
          if(htmlRahmenLinien=="none") {borderHelpBottum=0;borderHelpRight=0;}
          if(htmlRahmenLinien=="all")  {borderHelpBottum=1;borderHelpRight=1;}
          zentriert ? htmlcenterHelp="auto" : htmlcenterHelp="left";
          zentriert ? htmlcenterHelp2="center" : htmlcenterHelp2="left";
           
           
          const htmlZentriert='<center>'
          const htmlStart=    "<!DOCTYPE html><html lang=\"de\"><head><title>Vorlage</title><meta http-equiv=\"content-type\" content=\"text/html;  http-equiv=\"refresh\" content=\"30\"; charset=utf-8\">"+
                             "<style> * {  margin: 0;} body {background-color: "+backgroundAll+"; margin: 0 auto;  }"+
                             " p {padding-top: 10px; padding-bottom: 10px; text-align: "+htmlcenterHelp2+"}"+
                            // " div { margin: 0 auto;  margin-left: auto; margin-right: auto;}"+
                             " td { padding:"+abstandZelle+"px; border:0px solid "+htmlFarbTableBorderColor+";  border-right:"+borderHelpRight+"px solid "+htmlFarbTableBorderColor+";border-bottom:"+borderHelpBottum+"px solid "+htmlFarbTableBorderColor+";}"+ 
                             " table { width: "+weite+";  margin: 0 "+htmlcenterHelp+"; border:1px solid "+htmlFarbTableBorderColor+"; border-spacing=\""+abstandZelle+"0px\" ; }"+   // margin macht center
                             "td:nth-child(1) {width: "+htmlSpalte1Weite+"}"+"td:nth-child(2) {width:"+htmlSpalte1Weite+"}"+
                             " </style></head><body> <div>";
          //const htmlUeber=    "<p style=\"color:"+htmlFarbUber+"; font-family:"+htmlSchriftart+"; font-weight: bold\">"+htmlFeldUeber+"</p>";                    
          const htmlTabStyle= "<table bordercolor=\""+htmlFarbTableBorderColor+"\" border=\"2px\" cellspacing=\""+abstandZelle+"\" cellpadding=\""+abstandZelle+"\" width=\""+weite+"\" rules=\""+htmlRahmenLinien+"\" style=\"color:"+htmlFarbFelderschrift+";  font-size:"+htmlSchriftgroesse+
                                "; font-family:"+htmlSchriftart+";background-image: linear-gradient(42deg,"+htmlFarbTableColorGradient2+","+htmlFarbTableColorGradient1+");\">";
          const htmlTabUeber1="<tr height=\""+UeberSchriftHöhe+"\" style=\"color:"+htmlFarbTableColorUber+"; font-size: "+groesseUeberschrift+"px; font-weight: "+UeberschriftStyle+" ;  border-bottom: "+LinieUnterUeberschrift+"px solid "+farbeLinieUnterUeberschrift+" \">";
          const htmlTabUeber3="</tr>";
          /*
          table td:first-child {}  //1
          table td:nth-child(2) {} //2
          table td:nth-child(3) {} //3
          table td:last-child {}   //4
          */
           
          //NICHTS ÄNDERN - abhängig von den oben definierten _Spalten - in diesem Beispiel sind es 3
           
             	var htmlTabUeber2="<td width="+htmlSpalte1Weite+" align="+Feld1lAlign+">&ensp;"+htmlFeld1+"&ensp;</td><td width="+htmlSpalte1Weite+" align="+Feld2lAlign+">&ensp;"+htmlFeld2+"&ensp;</td><td  align="+Feld3lAlign+">&ensp;"+htmlFeld3+"&ensp;</td>";
          var htmlTabUeber2_1="<td width="+htmlSpalte1Weite+" align="+Feld1lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\">&ensp;"+htmlFeld1+"&ensp;</td><td width="+htmlSpalte1Weite+"  align="+Feld2lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\">&ensp;"+htmlFeld2+
                             "&ensp;</td><td  align="+Feld3lAlign+" style=\"color:"+htmlFarbZweiteTabelle+"\">&ensp;"+htmlFeld3+"&ensp;</td>";
          //------------------------------------------------------
           
           
          var htmlTabUeber="";
          var htmlOut="";
          var mix;
          var counter;
          //HIER SIND DIE  WERTE, DIE IN DER SCHLEIFE GEFILTERET WER%DEN - Jede spalte einen wert - jeder valx muss in dieser schleife gesetzt werden !!
          var val1; var val0; var val2;
           
          function writeHTML(){
           
           
          htmlOut="";
           
          counter=-1;
          htmlTabUeber="";
          switch (mehrfachTabelle) { 
             case 1: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber3;  break;
             case 2: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber3; break;
             case 3: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber2+htmlTabUeber3; break;
             case 4: htmlTabUeber=htmlTabUeber1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber2+htmlTabUeber2_1+htmlTabUeber3; break;
          };   
          if (!UeberschriftSpalten) {htmlTabUeber=""}
           
           
          //--------------------------------------------------------------------------------------------------------------------------------------------------
          //---------hier kommt eure schleife rein counter++, tabelleBind() und tabelleFinish() müssen so integriert bleiben !!!------------------------------
          //---------alle valx werte müssen von euch bestimmt werden - val0,val1,val2 !!!---------------------------------------------------------------------
          //--------------------------------------------------------------------------------------------------------------------------------------------------
           
          $('system.adapter.*.alive').each(function(id, i) {           // hier eigene schleife definieren und den wert counter++ nicht vergessen  !!!
                  var ida = id.split('.');
                //  if( !(id.includes("vis") || id.includes("device")  ||  id.includes("alexa2") ||  id.includes("phantom"))){
                     if(existsState(id) && existsState(id.replace("alive","uptime"))) {
                    counter++;                                       // SEHR WICHTIG - MUSS IN JEDER SCHLEIFE INTEGRIERT SEIN
                    val0=ida[2]+"."+ida[3];
                   
                    var val1help=getState(id.replace("alive","uptime")).val;
                    val1=Math.floor( ((val1help)/60/60/24) )+"d "+ Math.floor(((val1help)/60/60) % 24) +"h "+ Math.floor( ((val1help)/60) % 60 )+" m" ;
           
                    if (getState(id).val==null) {val2="never used"}; //log(id)}; 
               
                    if (getState(id).val==false) {val2="❌"} else{val2="✅"}         
                    
               
             
               tabelleBind(); //HIER NICHTS ÄNDERN : HIER WERDEN DIE DATEN DER SCHLEIFE ZUSAMMENGESETZT  - diese function muss als letztes in der eigenen schleife aufgerufen werden
              }
             }); //Schleifen Ende - je nach schleifenart muss hier etwas geändert werden !!!!!!!!!
           
          //-------------------------------------------------------------------------------------------------------------------------------------------------
          //--------------------------------------------------Ende der schleife------------------------------------------------------------------------------
          //-------------------------------------------------------------------------------------------------------------------------------------------------
           
                tabelleFinish(); // AB HIER NICHTS ÄNDERN - tabelle fertigstellen
               
          } // function ende
           
          //MAIN:
           
          schedule(mySchedule,  function () { 
           writeHTML();
           if (braucheEinFile) {writeFile(home, path ,htmlOut, function (error) { /* log('file written');*/  });}
          }); 
          writeHTML();                                   //     <tdalign
           
           function tabelleBind(){
             //  counter=counter+mehrfachTabelle;
                 switch (mehrfachTabelle) { 
           
                   case 1: if(counter%2==0)         {  htmlOut=htmlOut+"<tr bgcolor=\""+farbeGeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td></tr>"; break;}else    
                                                    {  htmlOut=htmlOut+"<tr bgcolor=\""+farbeUngeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td></tr>"; break;}
                   case 2: if(counter%4==0){
                              if(counter%2==0)  {htmlOut = htmlOut+"<tr bgcolor=\""+farbeGeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+
                                                                  ";\" align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>"; } 
                                         else {htmlOut = htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td  align="+Feld3lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td></tr>";} break;
                                }else{
                                          if(counter%2==0)  {htmlOut = htmlOut+"<tr bgcolor=\""+farbeUngeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+
                                                                  ";\"align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>"; } 
                                         else {htmlOut = htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td  align="+Feld3lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td></tr>";} break;}
                                              
                   case 3:if(counter%2==0)   {
                              if(counter%3==0 )  {htmlOut = htmlOut+"<tr bgcolor=\""+farbeGeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+
                                                                  ";\"align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>"; } //Teil1 c=0
                                         else { if(counter%3==1 )  { htmlOut = htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td  align="+Feld3lAlign+" style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+
                                                                  "; color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td>";} //Teil 2 c=1
                                                          else    {htmlOut = htmlOut+"<td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td></tr>";} //Teil 3 c=3
                                                    } break;}else{
                              if(counter%3==0 )  {htmlOut = htmlOut+"<tr bgcolor=\""+farbeUngeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+
                                                                  ";\"align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>"; } 
                                         else { if(counter%3==1 )  { htmlOut = htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td  align="+Feld3lAlign+" style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+
                                                                  ";color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td>";} 
                                                          else    {htmlOut = htmlOut+"<td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td></tr>";}
                                                    } break;}                                          
           
           
                   case 4:  // counter=counter+8;
                             if(counter%8==0)   {
                             if(counter%4==0)  {htmlOut = htmlOut+"<tr bgcolor=\""+farbeGeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td  style=\" border-right: "+trennungsLinie+"px solid "+ farbetrennungsLinie+";\" align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>"; } // teil1
                                             else {if(counter%4==1 )  { htmlOut = htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td  align="+Feld3lAlign+" style=\"border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+";color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td>";} //teil 2
                                                          else    {if(counter%4==3)  { htmlOut= htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td align="+Feld3lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td></tr>";} //teil 4
                                                                            else    {htmlOut  = htmlOut+"<td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+";\"  align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>";}} //teil 3
                                                    } break;}else{
                             if(counter%4==0)  {htmlOut = htmlOut+"<tr bgcolor=\""+farbeUngeradeZeilen+"\"><td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td  style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+";\" align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>"; } //teil 1
                                             else {if(counter%4==1 )  { htmlOut = htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td  align="+Feld3lAlign+" style=\"border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+";color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td>";} // teil 2
                                                          else    {if(counter%4==3)  { htmlOut= htmlOut+"<td align="+Feld1lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val0+"&ensp;</td><td  align="+Feld2lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val1+"&ensp;</td><td align="+Feld3lAlign+" style=\"color:"+htmlFarbFelderschrift2+"\">&ensp;"+val2+"&ensp;</td></tr>";} // teil 4
                                                                            else    {htmlOut  = htmlOut+"<td align="+Feld1lAlign+">&ensp;"+val0+"&ensp;</td><td align="+Feld2lAlign+">&ensp;"+val1+"&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+";\"align="+Feld3lAlign+">&ensp;"+val2+"&ensp;</td>";}} //teil 3
                                                    } break;}                                    
                  } //switch ende
           
          }
           
          function tabelleFinish() {
           
          switch (mehrfachTabelle) {  
                 case 1:    break;
           
                 case 2:    
                            if(counter%2==0)  htmlOut = htmlOut.replace(/<\/td>$/, '</td><td>&ensp;</td><td>&ensp;</td><td>&ensp;</td></tr>');
                          
                            break;
           
                 case 3:   if(counter%3==2)  htmlOut = htmlOut.replace(/<\/td>$/, "</td></tr>");
                           if(counter%3==1)  htmlOut = htmlOut.replace(/<\/td>$/, "</td><td>&ensp;</td><td>&ensp;</td><td>&ensp;</td></tr>");        
                           if(counter%3==0)      htmlOut = htmlOut.replace(/<\/td>$/, "</td><td>&ensp;</td><td>&ensp;</td><td  style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+"\">&ensp;</td><td>&ensp;</td><td>&ensp;</td><td>&ensp;</td></tr>");
                         
                            break;
                 case 4:   if(counter%4==3)  htmlOut = htmlOut.replace(/<\/td>$/, "</td></tr>");
                           if(counter%4==2)  htmlOut = htmlOut.replace(/<\/td>$/, "</td><td>&ensp;</td><td>&ensp;</td><td>&ensp;</td></tr>");
                           if(counter%4==1)  htmlOut = htmlOut.replace(/<\/td>$/, "</td><td>&ensp;</td><td>&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+"\">&ensp;</td><td>&ensp;</td><td>&ensp;</td><td>&ensp;</td></tr>");    
                           if(counter%4==0)  htmlOut = htmlOut.replace(/<\/td>$/, "</td><td>&ensp;</td><td>&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+"\">&ensp;</td><td>&ensp;</td><td>&ensp;</td><td style=\" border-right: "+trennungsLinie+"px solid "+farbetrennungsLinie+"\">&ensp;</td><td>&ensp;</td><td>&ensp;</td><td>&ensp;</td></tr>");      
                           break; }
               
                   var htmlUeber=    "<p style=\"color:"+htmlFarbUber+"; font-family:"+htmlSchriftart+"; font-size: "+htmlÜberFontGroesse+"; font-weight:"+htmlSchriftWeite+ "\">"+htmlFeldUeber+"&ensp;&ensp;Last Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss");+"</p>"; 
                 var htmlUnter= "<div  style=\"color:"+htmlFarbUber+"; font-family:"+htmlSchriftart+"; font-size: 70%; text-align: right;\" >"+htmlFeldUeber+"&ensp;&ensp;Last Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss");+"</div>";
                  
                  if (!htmlSignature) htmlUnter="";
                    //Ausgabe über VIS html widget - tabelle in datenpunkt schreiben - html tabelle ohne html header und body
                     var htmlOutVIS="";
                   //  htmlUberschrift ? htmlOutVIS=htmlUeber+htmlTabStyle+htmlTabUeber+htmlOut+"</table>" : htmlOutVIS=htmlTabStyle+htmlTabUeber+htmlOut+"</table>";
                      if (htmlUberschrift) 
                          { zentriert ? htmlOutVIS=htmlZentriert+htmlUeber+htmlTabStyle+htmlTabUeber+htmlOut+"</table>"+htmlUnter : htmlOutVIS=htmlUeber+htmlTabStyle+htmlTabUeber+htmlOut+"</table>"+htmlUnter ;
           
                        } else {
                         zentriert ?  htmlOutVIS=htmlZentriert+htmlTabStyle+htmlTabUeber+htmlOut+"</table>"+htmlUnter :  htmlOutVIS=htmlTabStyle+htmlTabUeber+htmlOut+"</table>"+htmlUnter;
           
                           }
                           
           
            // log("bin raus aus tabelleBind");
                     if (braucheEinVISWidget) setState(dpVIS, htmlOutVIS );
           
           var htmlUnter= "<div  style=\"color:"+htmlFarbUber+"; font-family:"+htmlSchriftart+"; font-size: 80%;  text-align: center; \" >"+htmlFeldUeber+"&ensp;&ensp;Last Update: "+formatDate(getDateObject((parseFloat((new Date().getTime())))), "SS:mm:ss");+"</div>"
           
           if (!htmlSignature) htmlUnter="";
            var htmlEnd="</table>"+htmlUnter+"</div></body>";
           //mit oder ohne überschrift - zentriert oder links
          htmlUberschrift ? htmlOut=htmlStart+htmlUeber+htmlTabStyle+htmlTabUeber+htmlOut+htmlEnd : htmlOut=htmlStart+htmlTabStyle+htmlTabUeber+htmlOut+htmlEnd;
           //log(htmlOut);
           
           
          }
           
           
           
           
          
          
          liv-in-sky 1 Reply Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @Negalein last edited by

            @negalein
            ich kann den adapter nicht auf 5.5.0 updaten - weiß noch nicht warum

            auf jeden fall steht im changelog, dass dort das existState repariert worden ist - dieser befehl funktioniert bei dir im script nicht richtig - in meiner javascript version funktioniert das ganze (5.2.18)

            muss mal weitersuchen

            Negalein 1 Reply Last reply Reply Quote 0
            • Negalein
              Negalein Global Moderator @liv-in-sky last edited by

              @liv-in-sky sagte in Warn mit Javascript 5.5.0:

              in meiner javascript version funktioniert das ganze (5.2.18)

              mit 5.4.3 funktioniert es bei mir auch.

              muss mal weitersuchen

              Merci

              liv-in-sky 1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @Negalein last edited by

                @negalein

                ich komme im moment auf keine der 5.4.x adapter versionen

                @apollon77

                in javascript 5.5.0 soll etwas mit existState gemacht worden sein - könnte es evtl. möglich sein, dass da noch ein kleiner bug drin ist

                1 Reply Last reply Reply Quote 0
                • apollon77
                  apollon77 last edited by

                  Sind schon bei 5.5.2 🙂

                  Negalein 1 Reply Last reply Reply Quote 0
                  • Negalein
                    Negalein Global Moderator @apollon77 last edited by

                    @apollon77 sagte in Warn mit Javascript 5.5.0:

                    Sind schon bei 5.5.2

                    schon veröffentlicht? Seh noch 5.5.0

                    1 Reply Last reply Reply Quote 0
                    • apollon77
                      apollon77 last edited by

                      Uups ... die 5.5.1 ging gestern nicht raus .... aber 5.5.2 draussen seit 2h ... kommt also nachher

                      1 Reply Last reply Reply Quote 0
                      • apollon77
                        apollon77 last edited by

                        PS: Also das existsState ist seit 5.5.0 gefixt .... die 5.5.2 ging heute

                        Negalein 1 Reply Last reply Reply Quote 0
                        • Negalein
                          Negalein Global Moderator @apollon77 last edited by

                          @apollon77 sagte in Warn mit Javascript 5.5.0:

                          Also das existsState ist seit 5.5.0 gefixt

                          mit 5.5.0 hatte ich aber die Fehler

                          cash 1 Reply Last reply Reply Quote 0
                          • cash
                            cash Most Active @Negalein last edited by

                            @negalein Ich hatte mir der Vorversion 5.4.5 Probleme mit exitstate und hatte das gemeldet. Nach Fix von Apollon77 hat die nächste Version bei mir keine Fehler mehr gemeldet.

                            Negalein 1 Reply Last reply Reply Quote 0
                            • Negalein
                              Negalein Global Moderator @cash last edited by

                              @cash sagte in Warn mit Javascript 5.5.0:

                              Ich hatte mir der Vorversion 5.4.5 Probleme mit exitstate und hatte das gemeldet. Nach Fix von Apollon77 hat die nächste Version bei mir keine Fehler mehr gemeldet.

                              bei mir funktioniert 5.4.3
                              5.5.0 bringt die Warnungen.

                              apollon77 1 Reply Last reply Reply Quote 0
                              • apollon77
                                apollon77 @Negalein last edited by apollon77

                                @negalein Dann Zeit mal den code ... Ok gefunden ... ...

                                1 Reply Last reply Reply Quote 0
                                • apollon77
                                  apollon77 last edited by

                                  ALso ich hab das Skript mal bei mir nachgebaut ... also den relevanten Teil denke ich ... der läuft bei mir ohne warnungen. Ich habe sogar das angelegt was bei dir angemckert wird. an sich hat devices keine alive/uptime states mehr .... und selbst wenn werden Sie nicht aktualisiert.

                                  Hast du wirklich die 5.5.0??

                                  Negalein 1 Reply Last reply Reply Quote 0
                                  • Negalein
                                    Negalein Global Moderator @apollon77 last edited by

                                    @apollon77 sagte in Warn mit Javascript 5.5.0:

                                    Hast du wirklich die 5.5.0??

                                    hab jetzt nochmal von 5.4.3 auf 5.5.0 upgedatet.
                                    Läuft jetzt.
                                    Eventuell hat sich da gestern was mit dem zurückgezogenem 5.5.1 (wurde mir nie angezeigt) verwurschtelt.

                                    1 Reply Last reply Reply Quote 1
                                    • apollon77
                                      apollon77 last edited by

                                      Na gut, dann höre ich mal auf Geister zu jagen gg

                                      liv-in-sky 1 Reply Last reply Reply Quote 1
                                      • liv-in-sky
                                        liv-in-sky @apollon77 last edited by

                                        @apollon77 hast du vielleicht noch eine Ahnung, warum ich keine Javascript Versionen mehr installieren kann

                                        Habe über Info probiert
                                        Über Adapter Tab
                                        Über Console mit Update Upgrade

                                        Läuft immer durch, Code 0 und zeigt mir anschließend immer Version 5.2.18

                                        Sonst ist alles mit latest uptodate, auch js Controller ist aktuell

                                        Falls du eine Idee hast, könnte ich die heute Vormittag Mal testen

                                        Thomas Braun 1 Reply Last reply Reply Quote 0
                                        • Chaot
                                          Chaot @liv-in-sky last edited by

                                          @liv-in-sky Ich habe seit dem letzten Update auch eine komische Fehlermeldung die mir nichts sagt:

                                          
                                          javascript.0
                                          2022-03-24 06:27:12.516	error	In file included from ../src/binding.cc:5: /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:793:43: warning: cast between incompatible function types from 'void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)' {aka 'void (*)(v8::Local<v8::Object>)'} to 'node::addon_register_func' {aka 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)'} [-Wcast-function-type] 793 | (node::addon_register_func) (regfunc), \ | ^ /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:827:3: note: in expansion of macro 'NODE_MODULE_X' 827 | NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage) | ^~~~~~~~~~~~~ ../src/binding.cc:2148:1: note: in expansion of macro 'NODE_MODULE' 2148 | NODE_MODULE(sshcrypto, init) | ^~~~~~~~~~~
                                          
                                          javascript.0
                                          2022-03-24 06:27:07.869	error	In file included from ../src/binding.cc:1: /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:793:43: warning: cast between incompatible function types from 'void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)' {aka 'void (*)(v8::Local<v8::Object>)'} to 'node::addon_register_func' {aka 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)'} [-Wcast-function-type] 793 | (node::addon_register_func) (regfunc), \ | ^ /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:827:3: note: in expansion of macro 'NODE_MODULE_X' 827 | NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage) | ^~~~~~~~~~~~~ ../src/binding.cc:151:1: note: in expansion of macro 'NODE_MODULE' 151 | NODE_MODULE(cpufeatures, init) | ^~~~~~~~~~~
                                          

                                          Leider ist mir die erst beim Update auf 5.5.2 aufgefallen. Ich kann dir also nicht sagen wie lange die schon da ist.
                                          Es scheint aber auch alles zu funktionieren.

                                          liv-in-sky Thomas Braun 2 Replies Last reply Reply Quote 0
                                          • liv-in-sky
                                            liv-in-sky @Chaot last edited by

                                            @chaot ich weiß nicht, ob ich da der richtige dafür bin - hätte ich den fehler, würde ich iobroker stop machen und anschliessend den npm cahce löschen

                                            hilft das nicht, würde ich wohl @thomas-braun fragen, ob er eine ahnung hat was man tun könnte

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            548
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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