Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Script - Info über Datenpunkte sammeln

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script - Info über Datenpunkte sammeln

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky last edited by 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

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

        @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-sky 1 Reply Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky @paul53 last edited by

          @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

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

            @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.

            1 Reply Last reply Reply Quote 0
            • sigi234
              sigi234 Forum Testing Most Active @liv-in-sky last edited by 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-sky 1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @sigi234 last edited by

                @sigi234

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

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

                  @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-sky 1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @sigi234 last edited by

                    @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

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

                      @liv-in-sky

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

                      HTML wurde nicht erstellt.

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

                        @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

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

                          @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

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

                            @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-sky 1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @sigi234 last edited by liv-in-sky

                              @sigi234 und gleich fehler gefunden

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

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

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

                                @sigi234 und gleich fehler gefunden

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

                                {
                                  "from": "system.adapter.javascript.0",
                                  "user": "system.user.admin",
                                  "ts": 1569269166953,
                                  "common": {
                                    "name": "Termine heute, morgen oder bis einschließlich übermorgen",
                                    "type": "boolean",
                                    "min": 1,
                                    "max": 3,
                                    "states": "1:heute;2:morgen;3:übermorgen",
                                    "role": "state"
                                  },
                                  "native": {},
                                  "acl": {
                                    "object": 1636,
                                    "owner": "system.user.admin",
                                    "ownerGroup": "system.group.administrator",
                                    "state": 1636
                                  },
                                  "_id": "javascript.0.Ansage.Terminvorschau",
                                  "type": "state"
                                }
                                
                                liv-in-sky 1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @sigi234 last edited by

                                  @sigi234 beim common.type boolean darf unten in den common.states nicht 1 oder 2 stehen sondern true oder false - also nur 2 werte

                                  der common.type müßte hier number sein

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

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

                                    @sigi234 beim common.type boolean darf unten in den common.states nicht 1 oder 2 stehen sondern true oder false - also nur 2 werte

                                    der common.type müßte hier number sein

                                    Ok, DP wurde von einen Skript automatisch erstellt.

                                    liv-in-sky paul53 2 Replies Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky @sigi234 last edited by

                                      @sigi234 ist halt nicht standard - paul hat mir das so erklärt - wahrscheinlich funktioniert es - aber u.U. kann ein anderer adapter (evtl. iqontrol) dann probleme haben

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

                                        @liv-in-sky

                                        So habe weitere instanzArr hinzufügefügt.
                                        Kommt sofort die Fehlermeldung.

                                        javascript.0	2019-10-23 18:46:59.473	error	(2400) at tryOnImmediate (timers.js:676:5)
                                        javascript.0	2019-10-23 18:46:59.473	error	(2400) at runCallback (timers.js:705:18)
                                        javascript.0	2019-10-23 18:46:59.473	error	(2400) at Immediate.setImmediate (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\states\statesInRedis.js:214:41)
                                        javascript.0	2019-10-23 18:46:59.473	error	(2400) at change (C:\Program Files\iobroker\Test\node_modules\iobroker.js-controller\lib\adapter.js:4546:37)
                                        javascript.0	2019-10-23 18:46:59.472	error	(2400) at Object.stateChange (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\main.js:396:25)
                                        javascript.0	2019-10-23 18:46:59.472	error	(2400) at Object.callback (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:1055:38)
                                        javascript.0	2019-10-23 18:46:59.472	error	(2400) at Object.<anonymous> (script.js.System.Objekte:288:5)
                                        javascript.0	2019-10-23 18:46:59.472	error	(2400) at checkWerte (script.js.System.Objekte:170:15)
                                        javascript.0	2019-10-23 18:46:59.472	error	(2400) at Object.result.each (C:\Program Files\iobroker\Test\node_modules\iobroker.javascript\lib\sandbox.js:808:29)
                                        javascript.0	2019-10-23 18:46:59.472	error	(2400) at script.js.System.Objekte:185:26
                                        javascript.0	2019-10-23 18:46:59.472	error	(2400) Error in callback: TypeError: Cannot read property 'common' of null
                                        
                                        // @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=[ "alexa2.0", "Eigene_Datenpunkte", "ping.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-sky 2 Replies Last reply Reply Quote 0
                                        • paul53
                                          paul53 @sigi234 last edited by paul53

                                          @sigi234 sagte:

                                          DP wurde von einen Skript automatisch erstellt.

                                          Was nicht bedeutet, dass es richtig sein muss. Es sind 3 Zustände (Multistate), also muss common.type "number" sein.

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

                                            @sigi234

                                            im datenpunkt ordnerCheck kannst du einzelne ordner durchsuchen

                                            probier darin mal "alexa2.0" und anschliessend "ping.0" - sobald der wert drin ist, läuft das script los und durchsucht nur diesen ordner

                                            eins davon sollte durchlaufen

                                            es scheint du hast einen state, der keinen datenpunkt hat (vermute ich mal) zumindest lt zeile, wo der fehler auftritt

                                            paul53 sigi234 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            514
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript template
                                            11
                                            291
                                            25698
                                            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