Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Script fürTabelle der Batterie Zustände

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    420

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

Script fürTabelle der Batterie Zustände

Scheduled Pinned Locked Moved JavaScript
javascriptmonitoringtemplate
1.4k Posts 67 Posters 515.5k Views 86 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Kueppert

    @kuddel runterladen die Datei (Rechtsklick => download) und dann mit Notepad++ öffnen (Windows)

    K Offline
    K Offline
    Kuddel
    wrote on last edited by
    #1210

    @kueppert super, hat geklappt.

    0db0c464-b80e-46ca-a5bd-66621112181d-grafik.png

    liv-in-skyL 1 Reply Last reply
    0
    • K Kuddel

      @liv-in-sky erstmal viele Dank für deine Arbeit.

      Ich habe mir das Skript per Chrome kopiert.

      Dabei ist direkt aufgefallen, dass alle Umlaute falsch dargestellt werden,

      So sieht dann entsprechend auch im ersten Versuch mit der Tabelle aus:

      eb854f66-d011-4137-89cc-3339ddfbd05d-grafik.png

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      wrote on last edited by
      #1211

      @kuddel

      notepad++ ist ein sehr guter tipp - leider ist- für ein direktes copy - nicht genug platz im post

      es sind auch nicht die umlaute sondern die emojis, die defekt sind.

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      1 Reply Last reply
      0
      • K Kuddel

        @kueppert super, hat geklappt.

        0db0c464-b80e-46ca-a5bd-66621112181d-grafik.png

        liv-in-skyL Offline
        liv-in-skyL Offline
        liv-in-sky
        wrote on last edited by
        #1212

        @kuddel ok - schon gelöst

        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

        1 Reply Last reply
        0
        • Marco LaserM Offline
          Marco LaserM Offline
          Marco Laser
          wrote on last edited by
          #1213

          Moin, erstmal Danke für deine Arbeit, hat mir ne menge Zeit gespart.
          Ich hätte allerdings noch ein Hersteller/Gerät was noch nicht unterstützt ist und zwar Shelly. Die Batteriegeräte melden nämlich auch ihren Batteriestand.
          Screenshot 2021-02-07 184315.png

          Hoffe du kannst da was machen :)

          liv-in-skyL 1 Reply Last reply
          0
          • Marco LaserM Marco Laser

            Moin, erstmal Danke für deine Arbeit, hat mir ne menge Zeit gespart.
            Ich hätte allerdings noch ein Hersteller/Gerät was noch nicht unterstützt ist und zwar Shelly. Die Batteriegeräte melden nämlich auch ihren Batteriestand.
            Screenshot 2021-02-07 184315.png

            Hoffe du kannst da was machen :)

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            wrote on last edited by liv-in-sky
            #1214

            @marco-laser teste mal das und bitte ein feedback - ist noch nicht im ersten post - erst nach postiven feedback

            Batterien-script-7.2.-21.txt

            du musst shelly auf true setzen

            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

            Marco LaserM E 2 Replies Last reply
            0
            • liv-in-skyL liv-in-sky

              @marco-laser teste mal das und bitte ein feedback - ist noch nicht im ersten post - erst nach postiven feedback

              Batterien-script-7.2.-21.txt

              du musst shelly auf true setzen

              Marco LaserM Offline
              Marco LaserM Offline
              Marco Laser
              wrote on last edited by
              #1215

              @liv-in-sky Klappt, besten Dank für die super schnelle Antwort :+1:

              hananH 1 Reply Last reply
              0
              • Marco LaserM Marco Laser

                @liv-in-sky Klappt, besten Dank für die super schnelle Antwort :+1:

                hananH Offline
                hananH Offline
                hanan
                wrote on last edited by
                #1216

                Hallo zusammen
                Ich habe mal das Skript kopiert und die entsprechenden Datenpunkte angelegt.
                Leider erhalte ich Fehlermeldungen:

                javascript.1	2021-02-14 08:21:39.079	error	(27755) at processTicksAndRejections (internal/process/task_queues.js:97:5)
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at runMicrotasks (<anonymous>)
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
                javascript.1	2021-02-14 08:21:39.079	error	(27755) at Object.createScript (vm.js:261:10)
                javascript.1	2021-02-14 08:21:39.078	error	(27755) at new Script (vm.js:88:7)
                javascript.1	2021-02-14 08:21:39.078	error	(27755) SyntaxError: Missing initializer in const declaration
                javascript.1	2021-02-14 08:21:39.078	error	(27755) ^^^^^^^^^^^^^^
                javascript.1	2021-02-14 08:21:39.078	error	(27755) const UeberSchriftHöhe="35"; //Überschrift bekommt mehr Raum - darunter und darüber - Zellenhöhe
                javascript.1	2021-02-14 08:21:39.078	error	(27755) script.js.common.Batterien_Zustand compile failed: at script.js.common.Batterien_Zustand:80
                

                Hat mir bitte jemand einen Tipp was ich falsch mache.

                Liebe Grüsse aus der Schweiz
                Andy

                ioBroker auf NUC unter Proxmox, Raspberrymatic-CCU auf NUC unter Proxmox mit RPI-RF-MOD Funkmodul und Omnidiraktional Antenne

                liv-in-skyL 1 Reply Last reply
                0
                • hananH hanan

                  Hallo zusammen
                  Ich habe mal das Skript kopiert und die entsprechenden Datenpunkte angelegt.
                  Leider erhalte ich Fehlermeldungen:

                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at processTicksAndRejections (internal/process/task_queues.js:97:5)
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at runMicrotasks (<anonymous>)
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
                  javascript.1	2021-02-14 08:21:39.079	error	(27755) at Object.createScript (vm.js:261:10)
                  javascript.1	2021-02-14 08:21:39.078	error	(27755) at new Script (vm.js:88:7)
                  javascript.1	2021-02-14 08:21:39.078	error	(27755) SyntaxError: Missing initializer in const declaration
                  javascript.1	2021-02-14 08:21:39.078	error	(27755) ^^^^^^^^^^^^^^
                  javascript.1	2021-02-14 08:21:39.078	error	(27755) const UeberSchriftHöhe="35"; //Überschrift bekommt mehr Raum - darunter und darüber - Zellenhöhe
                  javascript.1	2021-02-14 08:21:39.078	error	(27755) script.js.common.Batterien_Zustand compile failed: at script.js.common.Batterien_Zustand:80
                  

                  Hat mir bitte jemand einen Tipp was ich falsch mache.

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  wrote on last edited by
                  #1217

                  @hanan hallo,

                  was steht den in zeile 80 ?

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  hananH 1 Reply Last reply
                  0
                  • liv-in-skyL liv-in-sky

                    @hanan hallo,

                    was steht den in zeile 80 ?

                    hananH Offline
                    hananH Offline
                    hanan
                    wrote on last edited by
                    #1218

                    @liv-in-sky

                    Da steht:

                    const UeberSchriftHöhe="35";                          //Überschrift bekommt mehr Raum - darunter und darüber - Zellenhöhe
                    
                    

                    Hat das vielleicht mit der Übersetzung zu tun?

                    Liebe Grüsse aus der Schweiz
                    Andy

                    ioBroker auf NUC unter Proxmox, Raspberrymatic-CCU auf NUC unter Proxmox mit RPI-RF-MOD Funkmodul und Omnidiraktional Antenne

                    liv-in-skyL 1 Reply Last reply
                    0
                    • hananH hanan

                      @liv-in-sky

                      Da steht:

                      const UeberSchriftHöhe="35";                          //Überschrift bekommt mehr Raum - darunter und darüber - Zellenhöhe
                      
                      

                      Hat das vielleicht mit der Übersetzung zu tun?

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      wrote on last edited by
                      #1219

                      @hanan

                      probier mal damit - normalerweise nutze ich keine umlaute in scripts - hab ich wohl übersehen im eifer des ....
                      Batterien-script-14.2.-21.txt

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      hananH 1 Reply Last reply
                      0
                      • liv-in-skyL liv-in-sky

                        @hanan

                        probier mal damit - normalerweise nutze ich keine umlaute in scripts - hab ich wohl übersehen im eifer des ....
                        Batterien-script-14.2.-21.txt

                        hananH Offline
                        hananH Offline
                        hanan
                        wrote on last edited by
                        #1220

                        @liv-in-sky

                        Jep, passt. Lief durch ohne Fehler und hat sieben schwache Meldungen ausgegeben.

                        Ich habe bei den Zigbee einige Tadfri installiert, welche bei 60% AkkuAlarm auslösen.
                        Müssten diese nicht erst unter 40% auslösen?

                        var battAlarm=25;                                     //alarm batterie wert
                        var battAlarmWarning=40;                                     //warnungen batterie wert
                        

                        Liebe Grüsse aus der Schweiz
                        Andy

                        ioBroker auf NUC unter Proxmox, Raspberrymatic-CCU auf NUC unter Proxmox mit RPI-RF-MOD Funkmodul und Omnidiraktional Antenne

                        liv-in-skyL 1 Reply Last reply
                        0
                        • hananH hanan

                          @liv-in-sky

                          Jep, passt. Lief durch ohne Fehler und hat sieben schwache Meldungen ausgegeben.

                          Ich habe bei den Zigbee einige Tadfri installiert, welche bei 60% AkkuAlarm auslösen.
                          Müssten diese nicht erst unter 40% auslösen?

                          var battAlarm=25;                                     //alarm batterie wert
                          var battAlarmWarning=40;                                     //warnungen batterie wert
                          
                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          wrote on last edited by
                          #1221

                          @hanan kannst du nach belieben einstellen

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          1 Reply Last reply
                          0
                          • hananH Offline
                            hananH Offline
                            hanan
                            wrote on last edited by hanan
                            #1222

                            Ja, aber der Alarmwert steht ja im Skript auf 25% und das Gerät hat 60%.
                            Ich habe auch ein HMIP welches mit angezeigt wird obschon der "indicator.lowbat" auf false steht.

                            Oder verstehe ich etwas falsch?

                            Liebe Grüsse aus der Schweiz
                            Andy

                            ioBroker auf NUC unter Proxmox, Raspberrymatic-CCU auf NUC unter Proxmox mit RPI-RF-MOD Funkmodul und Omnidiraktional Antenne

                            liv-in-skyL 1 Reply Last reply
                            0
                            • hananH hanan

                              Ja, aber der Alarmwert steht ja im Skript auf 25% und das Gerät hat 60%.
                              Ich habe auch ein HMIP welches mit angezeigt wird obschon der "indicator.lowbat" auf false steht.

                              Oder verstehe ich etwas falsch?

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              wrote on last edited by liv-in-sky
                              #1223

                              @hanan bin mir nicht sicher, ob ich folgen kann

                              wenn dort im datenpunkt 60 steht und im script als alarm 25 und warning 40 ist das gerät für das script grün !

                              zeig doch mal deine tabelle und den datenpunkt dazu

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              hananH 1 Reply Last reply
                              0
                              • liv-in-skyL liv-in-sky

                                @hanan bin mir nicht sicher, ob ich folgen kann

                                wenn dort im datenpunkt 60 steht und im script als alarm 25 und warning 40 ist das gerät für das script grün !

                                zeig doch mal deine tabelle und den datenpunkt dazu

                                hananH Offline
                                hananH Offline
                                hanan
                                wrote on last edited by
                                #1224

                                @liv-in-sky
                                Ups, beim Zigbee stimmt es, habe mich um ein Device vertan und beim HMIP wird die Voltzahl, welche bei 2.3V steht, deklariert, daher die Meldung.

                                Alles iO und eine super Arbeit.
                                Besten Dank für die Hilfe, muss nur noch die Status-Icons einpflegen.

                                Liebe Grüsse aus der Schweiz
                                Andy

                                ioBroker auf NUC unter Proxmox, Raspberrymatic-CCU auf NUC unter Proxmox mit RPI-RF-MOD Funkmodul und Omnidiraktional Antenne

                                1 Reply Last reply
                                1
                                • K Offline
                                  K Offline
                                  Katzenbeißer
                                  wrote on last edited by
                                  #1225

                                  Hallo Zusammen,
                                  irgendwie hakt es....
                                  Ich habe die Datenpunkte angelegt, Fehler werden im Script nicht angezeigt...
                                  Gibt es ein Miniscript zum automatischen Anlegen der Datenpunkte?

                                  Besten Dank für eure Hilfe

                                  liv-in-skyL 1 Reply Last reply
                                  0
                                  • K Katzenbeißer

                                    Hallo Zusammen,
                                    irgendwie hakt es....
                                    Ich habe die Datenpunkte angelegt, Fehler werden im Script nicht angezeigt...
                                    Gibt es ein Miniscript zum automatischen Anlegen der Datenpunkte?

                                    Besten Dank für eure Hilfe

                                    liv-in-skyL Offline
                                    liv-in-skyL Offline
                                    liv-in-sky
                                    wrote on last edited by liv-in-sky
                                    #1226

                                    @katzenbeißer steht den was drin im datenpunkt ? dpVIS

                                    und hast du die devices, die du haben willst, auch auf true gesetzt

                                    was wird in der vis angezeigt

                                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                    K 1 Reply Last reply
                                    0
                                    • liv-in-skyL liv-in-sky

                                      @katzenbeißer steht den was drin im datenpunkt ? dpVIS

                                      und hast du die devices, die du haben willst, auch auf true gesetzt

                                      was wird in der vis angezeigt

                                      K Offline
                                      K Offline
                                      Katzenbeißer
                                      wrote on last edited by
                                      #1227

                                      @liv-in-sky "true" war das Zauberwort!!!!
                                      Besten Dank

                                      1 Reply Last reply
                                      0
                                      • SpikeNbgS Offline
                                        SpikeNbgS Offline
                                        SpikeNbg
                                        wrote on last edited by
                                        #1228

                                        Hallo @liv-in-sky ,

                                        ich hätte ne Anregung für neue Devices..

                                        Ich betreibe hier über den ble Adapter mehrere Sensoren für Temperatur/Luftfeuchtigkeit von Xiaomi..

                                        222.JPG

                                        Diese haben in einem State "battery" den Ladezustand in % angegeben.

                                        111.JPG

                                        Als Name taucht dort bei allen erstmal nur "MJ_HT_V1" auf, ich habe diesen dann jeweils im Objektbaum um eine Identifikation erweitert (z.B. MJ_HT_V1 Küche). Im angehängten Skript entferne ich dann einfach das "MJ_HT_V1".

                                        Ich hab dein Skript bei mir mal erweitert, wenn du magst, kannst du es ja übernehmen:

                                        ...
                                        var ble=true;
                                        ...
                                        
                                        //ble
                                         if (ble){
                                                      tabelleMachSchoen()
                                                      counter=-1
                                                      for(var i=0;i<mehrfachTabelle;i++ ) {
                                                        val0=""; val1=""; val2="";counter++;tabelleBind();
                                                      }
                                                       
                                                      for(var i=0;i<mehrfachTabelle;i++ ) {
                                                          if(i==0){val0="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">BLE DEVICES</b>";} else{val0=""; }
                                                           val1=""; val2="";counter++;tabelleBind();
                                                      } 
                                             
                                        
                                            myObjF=[]; 
                                        $('ble.*.*.battery').each(function(id, i) {           // hier eigene schleife definieren und den wert counter++ nicht vergessen  !!!
                                          
                                           if (!filterArray.includes(id)){
                                                var ida = id.split('.');
                                               
                                                
                                                 // counter++; 
                                                   val0=getObject(ida[0]+"."+ida[1]+"."+ida[2]).common.name ; val0=val0.replace(/.battery$/,""); val0=val0.replace("MJ_HT_V1 ",""); val0=val0.replace(/_/g," ");                                       // SEHR WICHTIG - MUSS IN JEDER SCHLEIFE INTEGRIERT SEIN
                                                   json1=val0;
                                                   json3_1=val1help=parseFloat((getState(id).val));
                                                   if (val1help<=battAlarm) {val1=(" <font color=\"red\"> ")+val1help.toString()+" %";json2=val1help.toString()+" %";json5="red"} else{val1=(" <font color=\"lightgreen\"> ")+val1help.toString()+" %";json2=val1help.toString()+" %",json5="green"}  
                                                   if (val1help>battAlarm && val1help<=battAlarmWarning) {val1=(" <font color=\"yellow\"> ")+val1help.toString()+" %";json2=val1help.toString()+" %";json5="yellow"}
                                                   if (getState(id).val==null) {val2="never used"}; //log(id)}; 
                                                   if (val1help<=battAlarm) {val2=symbolKO} else{val2=symbolOK}         
                                                   if (val1help>battAlarm && val1help<=battAlarmWarning) val2=symbolWARN;
                                                 
                                                   if (val1help<=battAlarm) AkkuAlarm.push(1);
                                                   if (val1help<=battAlarm)  alarmMessage.push(val0);
                                                   json3=val2;
                                                    json6="BLE"
                                                     if (braucheMaterialDesignWidget || braucheMaterialDesignWidgetTable) {
                                                      json4=json4=pfadBilderMaterialWidget+"xiaomki.png"
                                                      makeJsonWidget(json1,json2,json3,json4,json5,json6,json3_1);}
                                                   let help=[val0,val1,val2]; myObjF.push(help);
                                           
                                             //tabelleBind(); //HIER NICHTS ÄNDERN : HIER WERDEN DIE DATEN DER SCHLEIFE ZUSAMMENGESETZT  - diese function muss als letztes in der eigenen schleife aufgerufen werden
                                         
                                         } }); sortierMal(myObjF);
                                        
                                          }  //ende ble
                                        


                                        Unten ist noch ein png für die Verwendung MaterialDesignWidget angegeben. Da ich das bisher nicht verwende und nicht weiß was es da alles gibt, oder ob du die erstellst, habe ich einfach xiaomki.png angegeben. Vielleicht passt das ja direkt :grin:

                                        Vielen Dank dir für das Skript, ich hab bei mir mehrere Kategorien aktiviert und das ist echt ne große Hilfe! :beers:

                                        liv-in-skyL 1 Reply Last reply
                                        0
                                        • SpikeNbgS SpikeNbg

                                          Hallo @liv-in-sky ,

                                          ich hätte ne Anregung für neue Devices..

                                          Ich betreibe hier über den ble Adapter mehrere Sensoren für Temperatur/Luftfeuchtigkeit von Xiaomi..

                                          222.JPG

                                          Diese haben in einem State "battery" den Ladezustand in % angegeben.

                                          111.JPG

                                          Als Name taucht dort bei allen erstmal nur "MJ_HT_V1" auf, ich habe diesen dann jeweils im Objektbaum um eine Identifikation erweitert (z.B. MJ_HT_V1 Küche). Im angehängten Skript entferne ich dann einfach das "MJ_HT_V1".

                                          Ich hab dein Skript bei mir mal erweitert, wenn du magst, kannst du es ja übernehmen:

                                          ...
                                          var ble=true;
                                          ...
                                          
                                          //ble
                                           if (ble){
                                                        tabelleMachSchoen()
                                                        counter=-1
                                                        for(var i=0;i<mehrfachTabelle;i++ ) {
                                                          val0=""; val1=""; val2="";counter++;tabelleBind();
                                                        }
                                                         
                                                        for(var i=0;i<mehrfachTabelle;i++ ) {
                                                            if(i==0){val0="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">BLE DEVICES</b>";} else{val0=""; }
                                                             val1=""; val2="";counter++;tabelleBind();
                                                        } 
                                               
                                          
                                              myObjF=[]; 
                                          $('ble.*.*.battery').each(function(id, i) {           // hier eigene schleife definieren und den wert counter++ nicht vergessen  !!!
                                            
                                             if (!filterArray.includes(id)){
                                                  var ida = id.split('.');
                                                 
                                                  
                                                   // counter++; 
                                                     val0=getObject(ida[0]+"."+ida[1]+"."+ida[2]).common.name ; val0=val0.replace(/.battery$/,""); val0=val0.replace("MJ_HT_V1 ",""); val0=val0.replace(/_/g," ");                                       // SEHR WICHTIG - MUSS IN JEDER SCHLEIFE INTEGRIERT SEIN
                                                     json1=val0;
                                                     json3_1=val1help=parseFloat((getState(id).val));
                                                     if (val1help<=battAlarm) {val1=(" <font color=\"red\"> ")+val1help.toString()+" %";json2=val1help.toString()+" %";json5="red"} else{val1=(" <font color=\"lightgreen\"> ")+val1help.toString()+" %";json2=val1help.toString()+" %",json5="green"}  
                                                     if (val1help>battAlarm && val1help<=battAlarmWarning) {val1=(" <font color=\"yellow\"> ")+val1help.toString()+" %";json2=val1help.toString()+" %";json5="yellow"}
                                                     if (getState(id).val==null) {val2="never used"}; //log(id)}; 
                                                     if (val1help<=battAlarm) {val2=symbolKO} else{val2=symbolOK}         
                                                     if (val1help>battAlarm && val1help<=battAlarmWarning) val2=symbolWARN;
                                                   
                                                     if (val1help<=battAlarm) AkkuAlarm.push(1);
                                                     if (val1help<=battAlarm)  alarmMessage.push(val0);
                                                     json3=val2;
                                                      json6="BLE"
                                                       if (braucheMaterialDesignWidget || braucheMaterialDesignWidgetTable) {
                                                        json4=json4=pfadBilderMaterialWidget+"xiaomki.png"
                                                        makeJsonWidget(json1,json2,json3,json4,json5,json6,json3_1);}
                                                     let help=[val0,val1,val2]; myObjF.push(help);
                                             
                                               //tabelleBind(); //HIER NICHTS ÄNDERN : HIER WERDEN DIE DATEN DER SCHLEIFE ZUSAMMENGESETZT  - diese function muss als letztes in der eigenen schleife aufgerufen werden
                                           
                                           } }); sortierMal(myObjF);
                                          
                                            }  //ende ble
                                          


                                          Unten ist noch ein png für die Verwendung MaterialDesignWidget angegeben. Da ich das bisher nicht verwende und nicht weiß was es da alles gibt, oder ob du die erstellst, habe ich einfach xiaomki.png angegeben. Vielleicht passt das ja direkt :grin:

                                          Vielen Dank dir für das Skript, ich hab bei mir mehrere Kategorien aktiviert und das ist echt ne große Hilfe! :beers:

                                          liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          wrote on last edited by
                                          #1229

                                          @spikenbg
                                          danke dir
                                          hatte ich gestern erst drüber nachgedacht - nutze die rechteckigen :-)

                                          schau ich mir mal an

                                          habe ein eigenes script dafür - aber die sollten schnell eingebunden sein - das problem ist nur, dass es keinen standard für die dp gibt - d.h. die sind immer/meist verschieden pro user

                                          Image 4.png

                                          ich sehe geade , du nutzt den ble , da sind die dp gleich - ich nutze einen esp mit esphome als basis - da definiert man die mqtt selbst - es gib aber einen esphome adapter - dann sollen die dp auch wieder gleich sein

                                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                          SpikeNbgS K 2 Replies Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          711

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe