Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Gelöst] ID oder Name eines State in Vis anzeigen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    SOLVED [Gelöst] ID oder Name eines State in Vis anzeigen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Nashra
      Nashra Most Active Forum Testing @Oli last edited by

      @Oli sagte in [Gelöst] ID oder Name eines State in Vis anzeigen:

      @Nashra

      sollte die Zeile 15 nicht so ausschauen?

      var cacheSelector = $('ping.0.DESKTOP-OC3H4GD*SmartHome*.*').each(function (id, i){
      

      Ich habe kein "DESKTOP-OC3H4GD..", bei mir steht ping.0.ioBroker

      O liv-in-sky 2 Replies Last reply Reply Quote 0
      • O
        Oli @Nashra last edited by

        @Nashra

        ich habe das aus dem von die geposteten Code kopiert und ergänzt

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

          @Nashra moin habe nochmal getestet - funktioniert

          poste mal dein geändertes script

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

            @Nashra

            • hast du im log fehler oder warnungen ?
            • du könntest auch mal ein log aktivieren

            z.b vor devicenameName=devicename

             log(id + " : " + devicename + " : " + ip + " counter:  "+ counter);
             
            devicenameName=devicename;
            

            einfügen und mal sehen, ob was kommt

            Nashra 1 Reply Last reply Reply Quote 0
            • Nashra
              Nashra Most Active Forum Testing @liv-in-sky last edited by

              @liv-in-sky sagte in [Gelöst] ID oder Name eines State in Vis anzeigen:

              @Nashra

              • hast du im log fehler oder warnungen ?
              • du könntest auch mal ein log aktivieren

              z.b vor devicenameName=devicename

               log(id + " : " + devicename + " : " + ip + " counter:  "+ counter);
               
              devicenameName=devicename;
              

              einfügen und mal sehen, ob was kommt

              Nein da komm nichts

              
              schedule( "* * * * *", function () { 
              
              var sortArr=[];
              var wert1;
              var ip;
              var devicenameName;
              var devicename;
              
              //var htmlString ="<table><tr><td>NAME&ensp; &ensp;</td><td>IP&ensp; &ensp;</td><td>&ensp; &ensp;</td></tr>";
              
              var htmlString ="<table>";//<tr><td>NAME &ensp;&ensp;&ensp;</td><td>IP </td><td> </td><td>&ensp;&ensp;&ensp;</td><td>NAME &ensp;&ensp;&ensp;</td><td>IP </td><td> </td></tr>";//
              
              var counter =0;
               $('ping.0.ioBroker').each(function (id, i){
              counter = counter+1;
              
              //log(counter.toString());
              
               devicename = getObject(id).common.name;
              
               //log(devicename);
              
               ip = id.replace(/_/g, ".");
               ip = ip.replace(/ping.0.ioBroker)./g, "");
              
              // log(id + " : " + devicename + " : " + ip );
              log(id + " : " + devicename + " : " + ip + " counter:  "+ counter);
              
              devicenameName=devicename;
              devicename="Netzwerk.Gerät"+counter.toString()+".NameGerät";
              createState(devicename, 'empty', { name: 'Name des Geräts', desc: '', type: 'string', role: '',read: true, write: true }); 
              setStateDelayed(devicename, devicenameName, 800);
              devicename="Netzwerk.Gerät"+counter.toString()+".IPAdresse";
              setStateDelayed(devicename, ip, 800);
              createState(devicename, 'empty', { name: 'IP des Geräts', desc: '', type: 'string', role: '',read: true, write: true });
              
               wert1 = getState(id).val;
              
              if (wert1) wert1 = "✅";
              
              if (!wert1) wert1= "❌";
              
              let help = [devicenameName,ip,wert1];
              
              sortArr.push(help);
              });
              
              /*function numSort(a, b) {
              
              {1}
                            if (a[1].toUpperCase().trim() > b[1].toUpperCase().trim())
                               return -1;
                            if (b[1].toUpperCase().trim() > a[1].toUpperCase().trim())
                               return 1;
                            return 0;
              }
              
              sortArr.sort(numSort);*/
              
                             sortArr.sort(function (alpha, beta) {
              
                            if (alpha[0].toUpperCase() > beta[0].toUpperCase())
                               return 1;
                            if (beta[0].toUpperCase() > alpha[0].toUpperCase())
                               return -11;
                            return 0;
                           });
              
              for (var i=0; i<sortArr.length;i++) {
              
              if(i%2==0) {htmlString=htmlString+"<tr><td>"  + sortArr[i][0] + "</td><td>&ensp;&ensp;&ensp;" + sortArr[i][1] + "&ensp;&ensp;&ensp;</td><td>" +sortArr[i][2]+"&ensp;&ensp;&ensp;</td>" ;}
              
              else {      htmlString=htmlString+ "<td>"     + sortArr[i][0] + "</td><td>&ensp;&ensp;&ensp;" + sortArr[i][1] + "&ensp;&ensp;&ensp;</td><td>" +sortArr[i][2]+"&ensp;&ensp;&ensp;"+"</td></tr>"}}
              
              //htmlString=htmlString.concat("<tr><td>" + devicenameName + "&ensp; &ensp;</td><td>" + ip + "&ensp; &ensp;</td><td>" + wert1 + "</td></tr>");
              
              //log(counter);
              
              createState('Netzwerk3.StringHTML', "0", {name: 'StringHTML', desc: '', type: 'string', role: '',read: true, write: true }); 
              createState('Netzwerk3.Anzahl',  { name: 'Anzahl', desc: 'Anzahl der Geräte', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true }); 
              setStateDelayed('Netzwerk3.Anzahl', counter, 800);
              setStateDelayed('Netzwerk3.StringHTML', htmlString.concat("</table>"), 800);
              });
              
              
              liv-in-sky 1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @Nashra last edited by

                @Nashra und zeig doch noch die datenpunkte vom ping adapter

                Nashra 1 Reply Last reply Reply Quote 0
                • Nashra
                  Nashra Most Active Forum Testing @liv-in-sky last edited by

                  @liv-in-sky sagte in [Gelöst] ID oder Name eines State in Vis anzeigen:

                  @Nashra und zeig doch noch die datenpunkte vom ping adapter

                  ping.PNG

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

                    @Nashra
                    probier mal - ist auf 20 sek eingestellt - kannst du später umstellen und log ist noch aktiviert

                    
                    //schedule( "* * * * *", function () { 
                    schedule( "*/20 * * * * *", function () { 
                    var sortArr=[];
                    var wert1;
                    var ip;
                    var devicenameName;
                    var devicename;
                    log("bin da")
                    //var htmlString ="<table><tr><td>NAME&ensp; &ensp;</td><td>IP&ensp; &ensp;</td><td>&ensp; &ensp;</td></tr>";
                    
                    var htmlString ="<table>";//<tr><td>NAME &ensp;&ensp;&ensp;</td><td>IP </td><td> </td><td>&ensp;&ensp;&ensp;</td><td>NAME &ensp;&ensp;&ensp;</td><td>IP </td><td> </td></tr>";//
                    
                    var counter =0;
                    $('ping.0.ioBroker.*').each(function (id, i){
                    counter = counter+1;
                    
                    //log(counter.toString());
                    
                    devicename = getObject(id).common.name;
                    
                    //log(devicename);
                    
                    ip = id.replace(/_/g, ".");
                    ip = ip.replace(/ping.0.ioBroker./g, "");
                    
                    // log(id + " : " + devicename + " : " + ip );
                    log(id + " : " + devicename + " : " + ip + " counter:  "+ counter);
                    
                    devicenameName=devicename;
                    devicename="Netzwerk.Gerät"+counter.toString()+".NameGerät";
                    createState(devicename, 'empty', { name: 'Name des Geräts', desc: '', type: 'string', role: '',read: true, write: true }); 
                    setStateDelayed(devicename, devicenameName, 800);
                    devicename="Netzwerk.Gerät"+counter.toString()+".IPAdresse";
                    setStateDelayed(devicename, ip, 800);
                    createState(devicename, 'empty', { name: 'IP des Geräts', desc: '', type: 'string', role: '',read: true, write: true });
                    
                    wert1 = getState(id).val;
                    
                    if (wert1) wert1 = "✅";
                    
                    if (!wert1) wert1= "❌";
                    
                    let help = [devicenameName,ip,wert1];
                    
                    sortArr.push(help);
                    });
                    
                    /*function numSort(a, b) {
                    {1}
                    {1}
                                 if (a[1].toUpperCase().trim() > b[1].toUpperCase().trim())
                                    return -1;
                                 if (b[1].toUpperCase().trim() > a[1].toUpperCase().trim())
                                    return 1;
                                 return 0;
                    }
                    {1}
                    sortArr.sort(numSort);*/
                    
                                  sortArr.sort(function (alpha, beta) {
                    
                                 if (alpha[0].toUpperCase() > beta[0].toUpperCase())
                                    return 1;
                                 if (beta[0].toUpperCase() > alpha[0].toUpperCase())
                                    return -11;
                                 return 0;
                                });
                    
                    for (var i=0; i<sortArr.length;i++) {
                    
                    if(i%2==0) {htmlString=htmlString+"<tr><td>"  + sortArr[i][0] + "</td><td>&ensp;&ensp;&ensp;" + sortArr[i][1] + "&ensp;&ensp;&ensp;</td><td>" +sortArr[i][2]+"&ensp;&ensp;&ensp;</td>" ;}
                    
                    else {      htmlString=htmlString+ "<td>"     + sortArr[i][0] + "</td><td>&ensp;&ensp;&ensp;" + sortArr[i][1] + "&ensp;&ensp;&ensp;</td><td>" +sortArr[i][2]+"&ensp;&ensp;&ensp;"+"</td></tr>"}}
                    
                    //htmlString=htmlString.concat("<tr><td>" + devicenameName + "&ensp; &ensp;</td><td>" + ip + "&ensp; &ensp;</td><td>" + wert1 + "</td></tr>");
                    
                    //log(counter);
                    
                    createState('Netzwerk3.StringHTML', "0", {name: 'StringHTML', desc: '', type: 'string', role: '',read: true, write: true }); 
                    createState('Netzwerk3.Anzahl',  { name: 'Anzahl', desc: 'Anzahl der Geräte', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true }); 
                    setStateDelayed('Netzwerk3.Anzahl', counter, 800);
                    setStateDelayed('Netzwerk3.StringHTML', htmlString.concat("</table>"), 800);
                    });
                    
                    
                    

                    1 Reply Last reply Reply Quote 1
                    • Nashra
                      Nashra Most Active Forum Testing last edited by

                      Läuft, Danke 👍 👍 👍 👍

                      1 Reply Last reply Reply Quote 0
                      • Nashra
                        Nashra Most Active Forum Testing last edited by Nashra

                        Erledigt

                        1 Reply Last reply Reply Quote 0
                        • Agria4800
                          Agria4800 @sigi234 last edited by Agria4800

                          @sigi234 sagte in [Gelöst] ID oder Name eines State in Vis anzeigen:

                          @liv-in-sky

                          Danke, cooles Skript..............👍

                          Screenshot (3889)_LI.jpg

                          Hi Sigi234,
                          würdest du evtl. das Script zu deinem Bild nochmal teilen?
                          Danke dir 👍 😊

                          ? 1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User @Agria4800 last edited by

                            @Agria4800 @sigi234

                            Schaut interessant aus:-) Hätte auch Interesse an dem Skript 🙂

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

                              @liv-in-sky

                              coole Erweiterung des Scripts.

                              Hab es so für mich angepasst.

                              schedule( "* * * * *", function () { 
                              var sortArr=[];
                              var wert1;
                              var ip;
                              var devicenameName;
                              var devicename;
                              //var htmlString ="<table><tr><td>NAME&ensp; &ensp;</td><td>IP&ensp; &ensp;</td><td>&ensp; &ensp;</td></tr>";
                              var htmlString ="<table>";//<tr><td>NAME &ensp;&ensp;&ensp;</td><td>IP </td><td> </td><td>&ensp;&ensp;&ensp;</td><td>NAME &ensp;&ensp;&ensp;</td><td>IP </td><td> </td></tr>";//
                               
                               
                               
                              var counter =0;
                               
                               $('ping.0.iobroker.*').each(function (id, i){
                               
                              counter = counter+1;
                               
                              //log(counter.toString());
                               
                               devicename = getObject(id).common.name;
                               //log(devicename);
                               ip = id.replace(/_/g, ".");
                               
                                ip = ip.replace(/ping.0.iobroker./g, "");
                               
                               
                              // log(id + " : " + devicename + " : " + ip );
                               
                              devicenameName=devicename;
                               
                               
                               
                              devicename="Netzwerk.Gerät"+counter.toString()+".NameGerät";
                               
                              createState(devicename, 'empty', { name: 'Name des Geräts', desc: '', type: 'string', role: '',read: true, write: true }); 
                               
                              setStateDelayed(devicename, devicenameName, 800);
                               
                              devicename="Netzwerk.Gerät"+counter.toString()+".IPAdresse";
                               
                              setStateDelayed(devicename, ip, 800);
                               
                              createState(devicename, 'empty', { name: 'IP des Geräts', desc: '', type: 'string', role: '',read: true, write: true });
                               
                               wert1 = getState(id).val;
                               
                              if (wert1) wert1 = "✅";
                               
                              if (!wert1) wert1= "❌";
                               
                              let help = [devicenameName,ip,wert1];
                              sortArr.push(help);
                               
                              });
                              /*function numSort(a, b) {
                              {1}
                                            if (a[1].toUpperCase().trim() > b[1].toUpperCase().trim())
                                               return -1;
                                            if (b[1].toUpperCase().trim() > a[1].toUpperCase().trim())
                                               return 1;
                                            return 0;
                                           
                              }
                              sortArr.sort(numSort);*/
                               
                                             sortArr.sort(function (alpha, beta) {
                                            if (alpha[0].toUpperCase() > beta[0].toUpperCase())
                                               return 1;
                                            if (beta[0].toUpperCase() > alpha[0].toUpperCase())
                                               return -11;
                                            return 0;
                                           });
                               
                              for (var i=0; i<sortArr.length;i++) {
                              if(i%2==0) {htmlString=htmlString+"<tr><td>"  + sortArr[i][0] + "</td><td>&ensp;&ensp;&ensp;" + sortArr[i][1] + "&ensp;&ensp;&ensp;</td><td>" +sortArr[i][2]+"&ensp;&ensp;&ensp;</td>" ;}
                              else {htmlString=htmlString+ "<td>"     + sortArr[i][0] + "</td><td>&ensp;&ensp;&ensp;" + sortArr[i][1] + "&ensp;&ensp;&ensp;</td><td>" +sortArr[i][2]+"&ensp;&ensp;&ensp;"+"</td></tr>"}}
                               
                               
                               
                               
                              //htmlString=htmlString.concat("<tr><td>" + devicenameName + "&ensp; &ensp;</td><td>" + ip + "&ensp; &ensp;</td><td>" + wert1 + "</td></tr>");
                               
                               
                               
                               
                               
                               
                              //log(counter);
                               
                              createState('Netzwerk.StringHTML', "0", {name: 'StringHTML', desc: '', type: 'string', role: '',read: true, write: true }); 
                               
                              createState('Netzwerk.Anzahl',  { name: 'Anzahl', desc: 'Anzahl der Geräte', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true }); 
                               
                              setStateDelayed('Netzwerk.Anzahl', counter, 800);
                               
                              setStateDelayed('Netzwerk.StringHTML', htmlString.concat("</table>"), 800);
                              });
                              

                              Jetzt würde ich noch gerne den Timestamp wie auf Sigis Screenshot sehen und Rahmen so wie in deinem anderen Script.

                              Ist das möglich?

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

                                @Negalein das script legt alle eingegebene geräte nochmal als datenpunkte an - brauchst du das oder willst du nur eine tabelle mit den geräten in ping.0

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

                                  @liv-in-sky sagte in [Gelöst] ID oder Name eines State in Vis anzeigen:

                                  das script legt alle eingegebene geräte nochmal als datenpunkte an

                                  Das hab ich bereits.
                                  obiges Script läuft schon.
                                  objects - ioBroker.png

                                  Jetzt wäre es noch schön, wenn es so wie hier aussehen würde:
                                  1565904776052-screenshot-3889-_li.jpg
                                  und zwischen den Zeilen auch ein Strich/Rahmen

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

                                    @Negalein das script bzw das layout ist nicht von mir - und nochmal - brauchst du die ganzen datenpunkte in diesem ordner? das script war ein spezialfall oder möchtest du nur eine tabelle für den pingadapter

                                    ich kann dir nur das layout wie bei den anderen scripten von mir anbieten

                                    gehört nur noch sortiert

                                    Image 3.png

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

                                      @liv-in-sky sagte in [Gelöst] ID oder Name eines State in Vis anzeigen:

                                      das script bzw das layout ist nicht von mir

                                      Ok, ich dachte du hast das Script für den Ping gemacht.
                                      Hab hier in diesem Thread das von dir gefunden und ein paar Beiträge unterhalb hat Sigi das Layout gepostet.

                                      brauchst du die ganzen datenpunkte in diesem ordner?

                                      Nein, im Endeffekt reicht mir die HTML-Tabelle.
                                      Mit diesem Layout von dir. Aber wenn möglich die Spalte mit den Statussymbolen zentriert.

                                      gehört nur noch sortiert

                                      wäre cool

                                      sigi234 1 Reply Last reply Reply Quote 0
                                      • sigi234
                                        sigi234 Forum Testing Most Active @Negalein last edited by

                                        @Negalein
                                        Layout ist von mir, das Skript weis ich nicht mehr. Dachte es ist von @liv-in-sky

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

                                          @sigi234 das script kann schon von mir sein - aber das layout darin nicht - in den tabellenscripts, kann ich dieses layout so nicht erzeugen

                                          @Negalein wenn du willst, machen wir das morgen fertig - sortierung - layout-
                                          heute geht nicht mehr - die scripte sind alle auf ein html-tabellen script aufgebaut und man kann damit viele settings selber einstellen - farben abstände zentrierungen .... du kennst es ja mittlerweile

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

                                            @liv-in-sky sagte in [Gelöst] ID oder Name eines State in Vis anzeigen:

                                            wenn du willst, machen wir das morgen fertig - sortierung - layout-

                                            kein Problem

                                            Danke dir

                                            liv-in-sky 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            689
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            vis
                                            16
                                            201
                                            20110
                                            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