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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script fürTabelle der Batterie Zustände

    This topic has been deleted. Only users with topic management privileges can see it.
    • K
      Katzenbeißer @liv-in-sky last edited by

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

      1 Reply Last reply Reply Quote 0
      • SpikeNbg
        SpikeNbg last edited by

        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 😁

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

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

          @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

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

            @liv-in-sky
            Gerne.. 🙂

            esphome kannte ich noch nicht.. Mit den Dingern wollte ich auch schon länger mal spielen.. 🙂 Und wieder ein Zeitvertreib für die nächsten Wochenenden 😁

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

              @spikenbg schreckte mich anfangs irgendwie ab - aber wenn man mal einen am laufen hat, ist es es super praktisch, die settings zu ändern und die möglichkeiten sind auch "grenzenlos"

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

                @liv-in-sky puuuuh, im Büro hasts aber arsch kalt bei dir - und im Keller O.o

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

                  @kueppert das thermometer steht direkt am fenster - war offen - wäre mir auch zu kalt 🙂

                  1 Reply Last reply Reply Quote 0
                  • K
                    Katzenbeißer last edited by

                    Als Anregung:
                    Die Sonoff ZigBee Bridge ist eine gute Erweiterung bezüglich MQTT / Reichweite / etc.
                    Möglicherweise ist eine Sonoff Erweiterung von Interesse... 🙂

                    liv-in-sky 1 Reply Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @Katzenbeißer last edited by

                      @Katzenbeißer
                      seltsam - dachte, ich habe das schon gemacht - ist sogar vorne aufgeführt
                      send mir mal einen export des zweigs mit der bridge

                      https://forum.iobroker.net/post/355793

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

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

                        einen

                        Hallo liv-in-sky

                        danke für dein Feedback.

                        DU hats recht, vielleicht habe ich auch blöderweise was übersehen.

                        ich habe volgende Punkte nachgeschaut:

                        var sonoff=true /false: - Konnte ich nichts finden
                        Beim Datenpunkt über den Sonoff Adapter -> Temp Sensor = ZbReceived_0xFA30_BatteryPercentage
                        Den Punkt *batteryPercentage konnte ich nur bei "tradfri" finden.

                        Bei ZigBee selst werden mir nur die Datenpunkte battery.percent oder battery angezeigt

                        Ist die "Sonoff Bridge" eigenständig oder ist sie eingebettet?

                        Danke viele Grüße

                        liv-in-sky 1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @Katzenbeißer last edited by

                          @katzenbeißer

                          ich kann mich mittlerweile wieder erinnern - ich wollte die einbinden, aber dann kam die neue baumstruktur des sonoff-adapters raus. und ich habe erstmal die bridge nicht miteingebunden

                          benutzt du die neue baumstruktur, oder die alte-gewohnte ?
                          ich brauche auch den export der dp der bridge - da ich keine habe und ich nicht weiß, wie die battery punkte eingebunden sind

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

                            @liv-in-sky
                            Habe gerade was via PM gesendet. Kommst du damit zurecht?

                            Gruß

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

                              @katzenbeißer

                              leider nein - ist mir zu wenig - ich möchte bitte den ganzen pfad bzw - alle datenpunkte, die zu einer bridge gehören, ich importiere das immer um es gleich zu testen
                              wenn du es nicht öffentlich posten willst, poste ein zip und sende mir das passwort im chat

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

                                @liv-in-sky sonoff.0.zip

                                1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky @Katzenbeißer last edited by

                                  @katzenbeißer

                                  teste doch bite mal das script https://github.com/liv-in-sky/battery-iobroker-vis-table

                                  • du kannst das setting von zeile 4 bis zeile 22 vom momentanen script kopieren und
                                  • den block von zeile 53 bis zeile 103 auch
                                  • das setting von zeile 24 bis 44 von hand wieder einstellen
                                  K 1 Reply Last reply Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky last edited by liv-in-sky

                                    @n3ro

                                    ich glaube, im moment verstehe ich nicht wirklich, was du meinst (bezug github)

                                    kannst du mal ein bild von den dp einstellen - hier im fourum

                                    EDIT

                                    das script prüft nicht auf doppelte einträge - die sollten ja nicht existieren

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

                                      @liv-in-sky
                                      Script geht...

                                      Habe dir eine Mail gesendet für kleine Anpassungen.

                                      liv-in-sky 1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @Katzenbeißer last edited by

                                        @katzenbeißer habe es ausgebessert

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

                                          @liv-in-sky

                                          Hallo liv-in-sky,

                                          leider zieht er sich noch den falschen Namen.

                                          Zeile 328 habe ich wie folg ersetzt < json6="SONOFF_ZBBridge">

                                          leider Passt der "Name" nicht ganz.
                                          Es wird der Name aus der Tabelle Name gezogen. und nicht vom Wert (also da wo auch der Batterie Status / Temperatur etc. steht).

                                          Viele Grüße und besten Dank

                                          liv-in-sky 1 Reply Last reply Reply Quote 0
                                          • liv-in-sky
                                            liv-in-sky @Katzenbeißer last edited by

                                            @katzenbeißer
                                            zeile 328 geht klar
                                            wie sieht den im moment der name bei dir aus ? kommt ein fehler oder etwas "kryptisches"

                                            Image 5.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            843
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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