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 fürTabelle der Batterie Zustände

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script fürTabelle der Batterie Zustände

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

      Irgendwie benutzen glaub ich nicht so viele diese Gruppen 😉

      1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @jackblackson last edited by

        @jackblackson sagte in Script fürTabelle der Batterie Zustände:

        bei mir sieht es momentan so aus:

        immerhin jetzt Bool
        einmal false, einmal true

        Gibt es die Datenpunkte in der CCU auch?
        bzw. ein Lowbat Meldung in den Service,eldungen?

        jackblackson 1 Reply Last reply Reply Quote 0
        • G
          Gonzo0815 last edited by

          Hallo,
          das Script für die Batterie Zustände finde ich Klasse und würde es gerne bei mir integrieren.
          Aber ich steh total auf dem Schlauch wo ich folgendes anlegen soll:

          • list itemein datenpunkt für die vis-anzeige unter dpVIS - ganz oben - im script - anschliessend kann man die tabelle so einstellen, dass sie in eure vis paßt (übr ein stabdard-html-widget mit binding auf diesen selbst-angelegten-datenpunkt)- ein html datei kann auf wunsch geschrieben werden - damit kann auch in iQontrol ein popup "gefüttert" werden und als anzeige dienen. auch die werte für warnung oder alarm sind einzutragen

          • list itemein datenpunkt für die anzahl der devices mit alarm (im script beschrieben)

          • list itemein datenpunkt für eine liste mit den devices mit einem alarm (im script beschrieben)

          Danke für die Hilfe

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

            @Homoran sagte in Script fürTabelle der Batterie Zustände:

            @jackblackson sagte in Script fürTabelle der Batterie Zustände:

            bei mir sieht es momentan so aus:

            immerhin jetzt Bool
            einmal false, einmal true

            Gibt es die Datenpunkte in der CCU auch?
            bzw. ein Lowbat Meldung in den Service,eldungen?

            Ich kann in der CCU nix dazu sehen, auch keine Servicemeldung. Ich glaube auch, das aktuell keine Batterie leer ist, sondern er nur irgend ein Problem hat beim erstellen der Stats für diese Gruppe - weil dort alles True ist, auch der Bootloader, obwohl alles gut läuft...

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

              @Gonzo0815

              hallo gonzo

              du gehst in den object tab im admin und legst für dein system die datenpunkte an und kopierst es in das script - die bezeichnungen dafür kannst du frei wählen

              smart23.gif

              achte bei den datenpunkten auf den typ zeichenkette oder zahl ... beim anlegen

              in der vis - das ergebnis wird in der vis nicht angezeigt aber in der runtime schon!

              smart24.gif

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

                @jackblackson der einfachheit halber würde ich die gruppen ins filterarray legen

                so oft kommt da ja nichts dazu

                jackblackson 1 Reply Last reply Reply Quote 0
                • G
                  Gonzo0815 @liv-in-sky last edited by

                  @liv-in-sky Danke

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

                    @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                    @jackblackson der einfachheit halber würde ich die gruppen ins filterarray legen

                    so oft kommt da ja nichts dazu

                    Passt, dann mach ich es so - schaut jetzt sehr gut aus!

                    Nur das hier ist interessant:
                    dc6a0272-1b12-4566-8eae-7d105b6a02a8-grafik.png
                    Es ist jetzt alles Grün, AkkuALarm ist 0, aber bei AkkuMessage steht noch was.

                    Homoran liv-in-sky 2 Replies Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @jackblackson last edited by

                      @jackblackson sagte in Script fürTabelle der Batterie Zustände:

                      aber bei AKkuMessage steht noch was.

                      😉

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

                        @jackblackson

                        oje - fehlerchen

                        im ersten post ausgebessert : du kannst auch einfach

                            setState(dpAlarm,AkkuAlarm.length);
                            setState(dpAlarmMessage,alarmMessage.toString()); AkkuMessageLengthAlt=AkkuAlarm.length;
                         
                            alarmMessage=[];
                        

                        Image 6.png

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

                          @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                          setState(dpAlarm,AkkuAlarm.length);
                          setState(dpAlarmMessage,alarmMessage.toString()); AkkuMessageLengthAlt=AkkuAlarm.length;
                          
                          alarmMessage=[];
                          

                          Perfekt, hat funktioniert

                          1 Reply Last reply Reply Quote 0
                          • K
                            Kueppert last edited by Kueppert

                            Hallo zusammen,
                            ich habe mir die letzten 200 Posts angeschaut (natürlich auch den 1.). Skript läuft bei mir auf Anhieb.
                            Nun stelle ich mich allerdings vermutlich etwas zu blöde an bei der EInbindung in VIS via Widget. Habe jetzt diverse verschiedene ausprobiert...Widget bleibt immer leer O.o
                            Datenpunkt lautet bei mir 0_userdata.0.Akkuskript.VISTabelle und icht schön befüllt:

                            Kann mir wer die genaue Bezeichnung für ein Widget nennen (kein Material-Design), womit ich die Anzeige in VIS hin bekomme??
                            Danke euch und viele Grüße, Thorsten

                            PS: HABS, basic string unescaped 🙂

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

                              @Kueppert
                              Image 1.png

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

                                @Kueppert

                                und das eintragen

                                Image 2.png

                                datenpunkt in geschweifte klammern setzen

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

                                  @liv-in-sky hmm, da zeigt er mir nur das an:
                                  b3539301-7d89-4d05-a179-b5295416d6d3-grafik.png

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

                                    @Kueppert ist so richtig - die anzeige kommt erst in der vis runtime

                                    1 Reply Last reply Reply Quote 1
                                    • Homoran
                                      Homoran Global Moderator Administrators last edited by Homoran

                                      Ich habe mal wieder ein "Problem".

                                      inzwischen habe ich es geschafft in einem HM-Wandthermostat, der die Spannung in V anzeigt, die Batterie komplett leer zu bekommen.

                                      Batterie_wirklich_leer.png

                                      Jetzt suche ich im Code die Stelle wo warn und ALARM eingestellt werden und finde nur 25/40 (was auch immer) und die bigBattery:

                                      let HTMLbrandSetting="b"                              // style der geräte marken:  möglich b fett; i kursiv; span normal
                                      var battAlarm=25;                                     //alarm batterie wert
                                      var battAlarmWarning=40;                                     //warnungen batterie wert
                                       
                                      // ------------------------    hier einstellen, was man für adapter hat - die nicht gebraucht werden auf false setzen !!!
                                      var tradfri=true;
                                      var hue=false;
                                      var hueExt=false;
                                      var homematic=true;
                                      var homematicIp=true;
                                      var xiaomi=false;                                                // mihome.0
                                      var fritzDect=false;
                                      var netatmo=false;
                                      var homee=false;
                                      var tado=false;
                                      var zigbee=false;
                                      var zwave=false;
                                      var deconz=false;
                                      var iogo=false;                                                 // iogo - adapter - hat batterie abfrage
                                      var fullyBrowser=false;                                         // fullybrowser - adapter - hat batterie abfrage
                                      var handy1=false;                                              // sind einzelne datenpunkte, 
                                      var handy2=false;
                                       
                                      //f          ür spezialisten bei devices mit über 3 volt batterien
                                      var bigBattAlarm=3.7; var bigBattWarn=4.1; //WICHTIG bei bigAlarm nicht unter 3.3 gehen !!!!!!!!
                                      

                                      EDIT:
                                      sollte es das hier sein????

                                                     else {
                                                           if (val1helper<=1.5){
                                                              if (val1helper<1.1) {val2=symbolKO;json3=symbolKO} else if (val1helper<=1.2 && val1helper>=1.1) 
                                                              {val2=symbolWARN;json3=symbolWARN} else{val2=symbolOK;json3=symbolOK};
                                                              if (val1helper<1.1) {val1=(" <font color=\"red\"> ")+val1helper.toFixed(1)+" V";json5="red";json2=val1helper.toFixed(1)+" V"} else if (val1helper<=1.2 && val1helper>=1.1) 
                                                                 {val1=(" <font color=\"yellow\"> ")+val1helper.toFixed(1)+" V";json5="yellow";json2=val1helper.toFixed(1)+" V"} else{val1=(" <font color=\"lightgreen\"> ")+val1helper.toFixed(1)+" V";json5="lightgreen";json2=val1helper.toFixed(1)+" V"};
                                                               json3_1=Math.abs((val1helper-1.1)/((1.5-1.1))*100)
                                                              if (val1helper<1.1) AkkuAlarm.push(1);
                                                              if (val1helper<1.1)  alarmMessage.push(val0)
                                       
                                                           } else {        
                                                              if (val1helper<2.2) {val2=symbolKO;json3=symbolKO} else if (val1helper<=2.5 && val1helper>=2.2) 
                                                              {val2=symbolWARN;json3=symbolWARN} else{val2=symbolOK;json3=symbolOK};
                                                              if (val1helper<2.2) {val1=(" <font color=\"red\"> ")+val1helper.toFixed(1)+" V";json5="red";json2=val1helper.toFixed(1)+" V"} else if (val1helper<=2.5 && val1helper>=2.2) 
                                                                 {val1=(" <font color=\"yellow\"> ")+val1helper.toFixed(1)+" V";json5="yellow";json2=val1helper.toFixed(1)+" V"} else{val1=(" <font color=\"lightgreen\"> ")+val1helper.toFixed(1)+" V";json5="lightgreen";json2=val1helper.toFixed(1)+" V"};
                                                              json3_1=Math.abs((val1helper-2.2)/((3-2.2))*100)
                                                              if (val1helper<2.2) AkkuAlarm.push(1);
                                                              if (val1helper<2.2)  alarmMessage.push(val0);}}
                                      
                                      liv-in-sky 1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @Homoran last edited by

                                        @Homoran
                                        soweit ich mich erinnere:
                                        ich habe das nach deinen vorgaben programmiert - daher kann man das nicht oben einstellen - es ist ja nicht richtig linear

                                        dein letzter code im post soll das machen für 3 verschiedene battery typen 1,5 und 3 und 5V

                                        wenn die daten falsch sind, bitte bescheid geben - damit ich das ändern kann

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

                                          @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                                          soweit ich mich erinnere:
                                          ich habe das nach deinen vorgaben programmiert

                                          du erinnerst dich richtig!
                                          Das wollten wir mit dem jetzigen Wert erst mal testen - was ich hiermit getan habe.

                                          @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                                          wenn die daten falsch sind, bitte bescheid geben

                                          Bescheid 😉

                                          @liv-in-sky sagte in Script fürTabelle der Batterie Zustände:

                                          damit ich das ändern kann

                                          wollte ich aber vorher testen.

                                          In diesem Fall ist es ein Gerät mit 2x1,5V (also 3V Nennspannung), das bei/nach 2,3V schon wirklich leer ist.
                                          die ALARM-schwelle sollte also mindestens 2.3 ggf. sogar schon 2.4V sein.

                                          sollte es das hier sein if (val1helper<2.2) {val2=symbolKO;json3=symbolKO} else if (val1helper<=2.5 && val1helper>=2.2) würde ich das mal auf eigen Faust erst mal bei mir testen

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

                                            @Homoran ich denke du bist da schon an der richtigen stelle - aber wahrscheinlich mußt du auch die zeilen darunter noch anpassen

                                            über all - im block - wo 2.2 steht tauschen mit neuem wert
                                            wenn du den 2.5 änderst gilt das auch

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            933
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript monitoring template
                                            67
                                            1379
                                            391632
                                            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