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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    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.
    • liv-in-sky
      liv-in-sky @Alexxx2005 last edited by

      @Alexxx2005

      du kannst ja mal ein log einfügen, damit du siehst, wo "nix" passiert - wenn unter dem selektor kein log kommt - wär blöd
      du hast aber im object tab auf browser refresh gedrückt, um aktuell zu sein

      log("bin hier");
      

      oder unter dem selektor und unter dem counter:

      log(counter.toString());
      
      A 1 Reply Last reply Reply Quote 0
      • liv-in-sky
        liv-in-sky last edited by

        @Dolomiti
        @Oliver-Böhm
        hier mal mein vorschlag:

        habe in blockly folgendes angelegt:Image 1.png

        inhalt ist:

        var obj = getObject("ping.0.raspberry3.192_168_178_157");
        console.log(obj.common.name)
        

        damit bekomme ich den namen - diesen speichere ich dann in einen extra datenpunkt

        (wahrscheinlich gehts auch anders - aber ich glaube, blockly direct unterstützt das nicht - https://forum.iobroker.net/post/240879)

        O 1 Reply Last reply Reply Quote 2
        • liv-in-sky
          liv-in-sky last edited by

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

          iping.0.DESKTOP-OC3H4GD(SmartHome).*

          @paul53

          bräuchte bitte deine hilfe - darf in einem selektor eine klammer stehen

          z.b.

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

          die klammern sind teil des namens (Smarthome)

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

            @liv-in-sky

            ich hoffe ich habe es richtig gemacht , die Meldung wäre :

            javascript.0	2019-12-08 14:24:00.957	info	(9148) script.js.Netzwerk_Namen_auslesen: registered 0 subscriptions and 0 schedules
            javascript.0	2019-12-08 14:24:00.956	info	(9148) script.js.Netzwerk_Namen_auslesen: 0
            javascript.0	2019-12-08 14:24:00.956	warn	(9148) Invalid selector: common close bracket "]" cannot be found in "[id=ping.0.DESKTOP-OC3H4GD(SmartHome).*]"
            javascript.0	2019-12-08 14:24:00.956	warn	(9148) Invalid selector: common close bracket "]" cannot be found in "state[id=ping.0.DESKTOP-OC3H4GD(SmartHome).*]"
            javascript.0	2019-12-08 14:24:00.954	info	(9148) Start javascript script.js.Netzwerk_Namen_auslesen
            javascript.0	2019-12-08 14:24:00.951	info	(9148) Stop script script.js.Netzwerk_Namen_auslesen
            
            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @Alexxx2005 last edited by

              @Alexxx2005

              probier mal

                  $('ping.0.DESKTOP-OC3H4GD*SmartHome*.*').each(function (id, i){
              
              A 1 Reply Last reply Reply Quote 0
              • A
                Alexxx2005 @liv-in-sky last edited by

                @liv-in-sky

                jetzt check ich's nicht mehr 🙂 muss das an allen drei Stellen eingefügt werden :

                var cacheSelector = $('state[id=ping.0.DESKTOP-OC3H4GD*SmartHome*.*.*]');
                var cacheSelector = $('[id=ping.0.DESKTOP-OC3H4GD*SmartHome*.*.*]');
                var ip = ip.replace(/ping.0.DESKTOP-OC3H4GD*SmartHome*.*./g, "");
                
                1 Reply Last reply Reply Quote 0
                • liv-in-sky
                  liv-in-sky @liv-in-sky last edited by liv-in-sky

                  @liv-in-sky warum nimmst du nicht das script, welches ich dir gepostet habe ?

                  nimm das scrip - da ist alles eingetragen

                  var htmlString ="<table><tr><td>NAME&ensp; &ensp;</td><td>IP&ensp; &ensp;</td><td>&ensp; &ensp;</td></tr>";
                  
                  
                  var counter =0;
                     $('ping.0.DESKTOP-OC3H4GD*SmartHome*.*').each(function (id, i){
                   counter = counter+1;
                   log(counter.toString());
                    var devicename = getObject(id).common.name;
                    var ip = id.replace(/_/g, ".");
                    var ip = ip.replace(/ping.0.DESKTOP-OC3H4GD\(SmartHome\)./g, "");
                  
                   // log(id + " : " + devicename + " : " + ip );
                    var 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 });
                    var wert1 = getState(id).val;
                    if (wert1) wert1 = "?";
                    if (!wert1) wert1= "?";
                   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', 0, { 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);
                  
                  

                  hab dieses script nochmal angeglichen - bitte nochmal kopieren

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

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

                    Jetzt kommt etwas 👍

                    Netzwerkliste.PNG

                    Ping2.PNG

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

                      @Alexxx2005 funktioniert auch das replace ?

                      zeig mal ein bild , indem ein gerät aufgeklappt ist - was stehen da für inhalte (rechte seite) drin

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

                        @liv-in-sky

                        hab ich vergessen , ja funktioniert

                        replace.PNG

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

                          @Alexxx2005 schaut gut aus - dann paßt alles ?

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

                            @liv-in-sky

                            was müsste ich nochmal ändern damit Tabellen nebeneinander sind ?

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

                              @Alexxx2005 alles was blau ist - ist ein word dokument

                              ssss.doc

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

                                @liv-in-sky

                                nein klappt leider nicht er meint das in Zeile 71 etwas nicht stimmt :

                                var sortArr=[];
                                
                                var htmlString ="<table><tr><td>NAME&ensp; &ensp;</td><td>IP&ensp; &ensp;</td><td>&ensp; &ensp;</td></tr>";
                                
                                
                                
                                
                                
                                var counter =0;
                                
                                  $('ping.0.DESKTOP-OC3H4GD*SmartHome*.*').each(function (id, i){
                                
                                counter = counter+1;
                                
                                log(counter.toString());
                                
                                 var devicename = getObject(id).common.name;
                                
                                 var ip = id.replace(/_/g, ".");
                                
                                 var ip = ip.replace(/ping.0.DESKTOP-OC3H4GD\(SmartHome\)./g, "");
                                
                                
                                
                                // log(id + " : " + devicename + " : " + ip );
                                
                                 var 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 });
                                
                                 var wert1 = getState(id).val;
                                
                                 if (wert1) wert1 = "✅";
                                
                                 if (!wert1) wert1= "❌";
                                
                                 let help = [ip,wert2,wert1];
                                sortArr.push(help);
                                
                                });
                                function numSort(a, b) {
                                return parseInt(b[1]) - parseInt(a[1]);
                                }
                                sortArr.sort(numSort);
                                for (var i=0; i<sortArr.length;i++) { 
                                if (sortArr[i][1]!="999999") {
                                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>&ensp;&ensp;&ensp;</td>" ;}// +"</td>" + " <td>" + " </td><td>" + "</td></tr>";}
                                else{htmlString=htmlString+ "<td>" + sortArr[i][0] + " </td><td>&ensp;&ensp;&ensp;" + sortArr[i][1] + "&ensp;&ensp;&ensp;</td><td>" + sortArr[i][2] + "</td></tr>"}}
                                else{
                                if(i%2==0) {htmlString=htmlString+"<tr><td>" + sortArr[i][0] + "</td><td>&ensp;&ensp;&ensp;" + "" + "&ensp;&ensp;&ensp;</td><td>" + sortArr[i][2]+"&ensp;&ensp;&ensp;"+"<td>&ensp;&ensp;&ensp;" ;}// +"</td>" + " <td>" + " </td><td>" + "</td></tr>";}
                                else{htmlString=htmlString+ "<td>"+ sortArr[i][0] + " </td><td>&ensp;&ensp;&ensp;" + "" + "&ensp;&ensp;&ensp;</td><td>" + sortArr[i][2] + "</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', 0, { 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);
                                
                                
                                
                                

                                bei den

                                });
                                
                                liv-in-sky 1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @Alexxx2005 last edited by

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

                                  $('ping.0.DESKTOP-OC3H4GDSmartHome.*').each(function (id, i){

                                  probier mal dieses hier - ich hoffe, ich habe nix vergessen

                                  
                                  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.DESKTOP-OC3H4GD*SmartHome*.*').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.DESKTOP-OC3H4GD\(SmartHome\)./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) {
                                  
                                                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);
                                  });
                                  
                                  
                                  
                                  

                                  Image 1.png

                                  O A Nashra 3 Replies Last reply Reply Quote 1
                                  • O
                                    Oli @liv-in-sky last edited by

                                    @liv-in-sky
                                    Wie überprüft du die Googleseite?

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

                                      @Oli

                                      ist eine art online test (bzw teil davon) für mein system

                                      Image 2.png

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

                                        @liv-in-sky
                                        machst du das über ein Script, oder einen Adapter?

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

                                          @Oli steht im ping adapter setting wie ein normaler client

                                          Image 3.png

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

                                            @liv-in-sky
                                            und als IP gibst du die Internetadresse ein?

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

                                              @Oli einfach "www.google.com"

                                              das 2te bild weiter oben

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

                                              Support us

                                              ioBroker
                                              Community Adapters
                                              Donate

                                              430
                                              Online

                                              31.8k
                                              Users

                                              80.0k
                                              Topics

                                              1.3m
                                              Posts

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