Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Energieanzeige (kWh) über HTML Tabelle - vis

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Energieanzeige (kWh) über HTML Tabelle - vis

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @Holger Etzel last edited by

      @holger-etzel

      siehe chat nachricht

      1 Reply Last reply Reply Quote 0
      • Holger Etzel
        Holger Etzel last edited by

        @liv-in-sky
        bin im Raum

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

          @holger-etzel

          kannst du mir bite den geänderten code im shelly block posten - hab vergessen zu koieren

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

            @liv-in-sky

            $('shelly.*.*.*.Power').each(function(id, i) {           
               
                    if(existsState(id) && getState(id).val != null ) { 
                    
                     anzahl++;
                    var ida = id.split('.');
                      
                      counter++; 
                      
                        
                      val0=getObject(ida[0]+"."+ida[1]+"."+ida[2]).common.name ; // log(val0+"---" +lastID)
                      if (val0 == lastID) {lastID=val0; shellyNumber++; val0=val0+"("+shellyNumber.toString()+")"} else{lastID=val0; shellyNumber=1}
                      
                      
            
                      val1=getState(ida[0]+"."+ida[1]+"."+ida[2]+".online").val
                      val2=" - "; val3=" - ";
                      if(existsState(id.replace("Power","Energy_Current"))) {     val2=((getState(id.replace("Power","Energy_Current")).val)).toString()+ " A"; }
                       if(existsState(id.replace("Power","Energy_Voltage"))) { val3=getState(id.replace("Power","Energy_Voltage")).val.toString()+" V"; }
            
                      val4=getState(id).val.toString()+" W";
                      var val5_1;
                      if (existsState(id.replace("Power","Switch"))) {val5_1= getState(id.replace("Power","Switch")).val;  } else {val5_1= getState(ida[0]+"."+ida[1]+"."+ida[2]+".Relay0.Switch").val;  }
                      val5_1 ? val5=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val5=(" <font color=\""+farbeSchalterON+"\"> ")+"OFF</font>";
             
                       val6=" - "; val7=" - "; val8=" - "; val9=" - "; 
                       
                       valMarkeDevice="shellyk"
            

            sorry war gestern nicht im Forum.
            Das sollte der code sein.

            Nochmal vielen, vielen dank für die umfangreiche Hilfe.

            Gruß
            Holger

            tugsi 1 Reply Last reply Reply Quote 1
            • tugsi
              tugsi @Holger Etzel last edited by

              @holger-etzel sagte in Energieanzeige (kWh) über HTML Tabelle - vis:

              Das sollte der code sein.

              Es fehlt am Ende dann eine geschweifte Klammer durch :

                 if(existsState(id) && getState(id).val != null ) { 
              

              Muss ganz am Ende des Shelly-Abschnittes (hast Du nicht mit angefügt) noch das Ende gesetzt werden:

                } }); 
              } //ende fritzdect
              
              

              Gesamter Shelly-Abschnitt also:

               if (shelly){
              counter=0
                           
                   
                    counter++//=0;
                    val0=""; val1=""; val2="";val3="";val4="";val5="";val6="";val7="";val8="";val9="";
                    tabelleBind();  
                    tabelleAusbessern();
                    counter++//=0;
                    val0="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">Shelly</"+HTMLbrandSetting+"></font>"; val1=""; val2="";val3="";val4="";
                    val5="<font color=\""+htmlColorDeviceUeberschrift+"\"></font>";
                    val6="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">kWh Now<"+HTMLbrandSetting+"></font>";
                    val7="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">kWh Monat<"+HTMLbrandSetting+"></font>";
                    val8="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">Preis Now<"+HTMLbrandSetting+"></font>";
                    val9="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">Preis Monat<"+HTMLbrandSetting+"></font>";
                    tabelleBind();  
                   
                   
              lastID="";
               
              
              $('shelly.*.*.*.Power').each(function(id, i) {           
                 
                      if(existsState(id) && getState(id).val != null ) { 
                      
                       anzahl++;
                      var ida = id.split('.');
                        
                        counter++; 
                        
                          
                        val0=getObject(ida[0]+"."+ida[1]+"."+ida[2]).common.name ; // log(val0+"---" +lastID)
                         if (val0 == lastID) {lastID=val0; shellyNumber++; val0=val0+"("+shellyNumber.toString()+")"} else{lastID=val0; shellyNumber=1}
                         
                         
                
                         val1=getState(ida[0]+"."+ida[1]+"."+ida[2]+".online").val
                         val2=" - "; val3=" - ";
                         if(existsState(id.replace("Power","Energy_Current"))) {     val2=((getState(id.replace("Power","Energy_Current")).val)).toString()+ " A"; }
                          if(existsState(id.replace("Power","Energy_Voltage"))) { val3=getState(id.replace("Power","Energy_Voltage")).val.toString()+" V"; }
                
                         val4=getState(id).val.toString()+" W";
                         var val5_1;
                         if (existsState(id.replace("Power","Switch"))) {val5_1= getState(id.replace("Power","Switch")).val;  } else {val5_1= getState(ida[0]+"."+ida[1]+"."+ida[2]+".Relay0.Switch").val;  }
                         val5_1 ? val5=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val5=(" <font color=\""+farbeSchalterON+"\"> ")+"OFF</font>";
                
                          val6=" - "; val7=" - "; val8=" - "; val9=" - "; 
                          
                          valMarkeDevice="shellyk"
                        if (sourceAnalyShelly) {brechneEnergy(val0,getState(id).val)
                       
                           if (rootCounter){
                               sammleDaten();
                          berechneGesamt()
                           } }
                      
                    zeigeVal1();
                    if (!filterArrAusnahme.includes(val0)) {
                       tabelleBind();  
                      } else{let help=[val0,val1,val2,val3,val4,val5,val6,val7,val8,val9]; filterArrAusnahmeHelp.push(help);}
              
                } }); 
              } //ende fritzdect
              
              

              Gruß
              Thomas

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

                @tugsi danke, da hast du recht - aber der codeausschnit war mehr für mich gedacht - zum einbinden ins script im ersten post

                natrürlich kann man aber deinen "schnippsel" auch selbst ins eigene script kopieren

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

                  @liv-in-sky
                  ich war mir da etwas unsicher, da der Beitrag schon ein paar Tage alt war und ich gerade wegen den Shelly´s daran arbeitete und das in deinem Script noch nicht angepasst war.
                  Nicht bevor nachher den Schnipsel einfach nimmt und sich wundert, warum es nicht läuft 😉

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

                    @tugsi

                    mittlerweile ist es angepaßt - alles gut soweit 🙂

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

                      GOOD MORNING - ioBroker ( in Anlehnung an Vietnam ; ) )

                      Ich wollte gerade Heute damit beginnen meine ganzen Energieströme mal ein bisschen zu sortieren. Gut das ich vorher (die nun besser funktionierende) Foren Suche benutzt habe.

                      Da letztes Jahr, im Rahmen meiner PV Anlagen Installation, auch ein neuer Verteilerschrank (3-Reihig) montiert wurde, war ich die letzten Wochen damit beschäftigt diesen ein wenig mit Smart Home Komponenten zu bestücken.

                      Damit bin ich jetzt soweit durch und habe .....

                      • 4 x Shelly 3EM (Jeder Shelly detektiert eine Unterverteilung im Haus [Garten, Küche, Keller, Restliches Gebäude])

                      • 6 x Sonoff POW für einzelne Geräte die über den Adapter Device-Reminder auch auf den Betriebszustand überwacht werden (Trockner, Waschmaschine, Geschirrspüler, 3 x TV Wände mit dem ganzen Multimedia Equipment & Beleuchtung)

                      • Sowie die die üblichen Verdächtigen zur Erfassung der PV Daten (Fronius Adapter) und der Zähler Daten für`s EVU (Discovergy Adapter)

                      • Demnächst wird noch openWB für die Erfassung der Energieströme zum e-Auto montiert.

                      Natürlich ist auch Sourceanalytix im Einsatz.

                      Lange Rede kurzer Sinn:

                      Dieser Thread und alle Teil- und Vorgänger Threads sind ja nun doch sehr umfangreich und verschachtelt.

                      Was ist denn jetzt der aktuelle Stand bezgl. Script und VIS Bild? Hier auf der Seite Beitrag #1?
                      .... oder wie ist der Stand der Dinge?

                      Freue mich schon darauf mit Eurer Vorlage loslegen zu können 😉

                      So, habe mir mal das Script aus Beitrag #1 importiert. Allerdings unterstreicht der Script Editor jede Menge Zeilen und/oder Begriffe ROT, was ja meist der Hinweis auf ein Fehler ist.

                      JavaScript Engine Adapter ist in der Version 5.1.3 installiert.

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

                        @jb_sullivan

                        auch dir ein good morning - seit der source-analy. adapter wieder gepflegt wird, mache ich eigentlich nix mehr an diesem script - ich bin davon ausgegangen, das der adapter das alles kann

                        mein script wird deinen fall nicht abdecken - es wurde entwickelt um einzelne devices zu überwachen, den verbrauch zu notieren und anzuzeigen - bei deinem beispiel die sonoff pows - aber nur, wenn nicht die neue baumstriktur des sonoff adapters genutzt wird

                        @jb_sullivan sagte in Energieanzeige (kWh) über HTML Tabelle - vis:

                        sowie die die üblichen Verdächtigen zur Erfassung der PV Daten (Fronius Adapter) und der Zähler Daten für`s EVU (Discovergy Adapter)

                        • damit kann das script nix anfangen

                        @jb_sullivan sagte in Energieanzeige (kWh) über HTML Tabelle - vis:

                        4 x Shelly 3EM (Jeder Shelly detektiert eine Unterverteilung im Haus [Garten, Küche, Keller, Restliches Gebäude])

                        • da bin ich mir garnicht mehr sicher - müßten mit aufgenommen werden können

                        am besten, du installierst das script und setzt mal pow und shelly auf true und schaust dann mal in der vis, was alles angezeigt wird
                        zur not können wir auch gerne eine anydesk session machen

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

                          @liv-in-sky sagte in Energieanzeige (kWh) über HTML Tabelle - vis:

                          am besten, du installierst das script und setzt mal pow und shelly auf true und schaust dann mal in der vis, was alles angezeigt wird
                          zur not können wir auch gerne eine anydesk session machen

                          Ja, werde ich machen und mich mal ein bisschen durchwurschtel. Ich finde halt die ganze, daran hängende VIS Geschichte, mit der automatisch erzeugten Tabellen sehr Charmant.

                          Ich muss das script nur mal irgendwie runter geladen bekommen. Trotz Chrome zerhackt der Browser mir die Ä,Ü usw. was dann im Script Editor für die roten Unterstreichungen sorgt.

                          23dd7802-aaa7-4eb5-9c94-e897c39d55fd-image.png

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

                            @jb_sullivan wart nen moment - meld mich

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

                              @jb_sullivan

                              probier es mal von hier - selbes script https://github.com/liv-in-sky/iobroker-energy-script/blob/main/Energy-script-22-1-21.txt

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

                                @liv-in-sky Ja, das sieht schon viel besser aus - auch wenn da im Script Editor noch ein paar Stellen Rot markiert sind - vielleicht kleine Formel "Unsaubarkeiten"?

                                62439756-659e-4f5b-a152-51cd1e13cbe6-image.png

                                Naja, ich arbeite mich erst mal ein und gucke was passiert. Wobei du mir ja schon ein bisschen die Hoffnung genommen hast, da ich alle meine Sonoffs auf Tasmota 9.1.x und somit auch in ioB alles auf die neue Struktur angepasst habe.

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

                                  @jb_sullivan mach mir bitte mal ein bild der neuen struktur - alles aufgeklappt - von einem pow

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

                                    @liv-in-sky

                                    Nr. 1

                                    ddb52984-d676-4322-8f0d-38a0fcf1155f-image.png

                                    .... und der Rest - bekomme es leider nicht auf ein Bild (Laptop)

                                    48e6fca0-8ffc-4822-a1d0-293b8a7f1848-image.png

                                    .... ups - Info fehlte noch

                                    62d4744f-e445-426d-8c6e-ac4abc262e39-image.png

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

                                      @jb_sullivan das ist doch die alte struktur - die sollte funktionieren

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

                                        @liv-in-sky was ist denn dann die neue? Ich habe nach dem Update auf Tasmota 9.1.x - Sonoff komplett nieder gemacht und neu einlesen lassen. Dabei kam das raus. Adapter Version ist latest 2.4.0

                                        .... oder hast du das ggf. mit ZigBee (Deconz) verwechselt, da wurde glaube ich mal alles auf den Kopf gestellt.

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

                                          @jb_sullivan aber vorsicht, wenn du das einstellst, gehen deine scripte nicht mehr

                                          Image 1.png

                                          es gibt - wie bei INFO- noch weitere ordner wie z.b STATE - oder so - dann sind die POWER und Energy dp nicht mehr in der ersten ebene

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

                                            @jb_sullivan siehe hier:

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

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            787
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript template
                                            37
                                            696
                                            116655
                                            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