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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Energieanzeige (kWh) über HTML Tabelle - vis

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

      @liv-in-sky
      Keine Fehler. Tauchen halt nur nicht auf, da der DP nicht mit dem gesuchten übereinstimmt.

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

        @liv-in-sky
        Bis jetzt ist es eine Steckdose die ich einbinden wollte.
        Eine Gosund SP1 mit Tasmota 10.1.0 an deren Config ich nichts geändert habe, als eben das Template, MQTT, Hostname usw. zu konfigurerien.

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

          @bastian-felten

          wenn du pro device (Gosund SP1) nur eiin gerät hast, mit Tasmota 10, muss im script das abgeprüft werden (neue version oder alte version) - ich schaue es mir morgen an und gebe dir bescheid

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

            @liv-in-sky Wie gesagt.
            Es liegt wohl daran, dass dein Script in sonoff.0.GERÄT.INFO.Module nach einem bestimmten String sucht, dieser Datenpunkt aber jetzt scheinbar anders benannt wurde, nämlich eben Sonoff.0.GERÄT.INFO.Info1_Module. So findet das Script das Gerät nicht und bindet es nicht ein.

            Zumindest ist das mein laienhaftes Verständnis von dem was du da gezaubert hast...

            liv-in-sky 3 Replies Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @Bastian Felten last edited by

              @bastian-felten das ist schon richtig - aber die dp kommen auch bei der berechnung vor -ich muss erst noch mal nachsehen, wo ich überall ändern müßte - wenn ich die Info1_Module auch abfrage, kann es an anderer stelle zu fehlern kommen - daher will ich das erst überprüfen - habe das vor langer zeit gemacht, muss erstmal wieder in den code finden

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

                @bastian-felten

                ich habe im moment kein device mit energy anzeige und tasmota 10 - kannst du mir mal ein bild der dp posten ? oder du machst einen json-export des gerätes mit energy und tasmota 10

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

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

                  Info1_Module

                  ich muss wissen, ob die markierten ID's noch die selben bezeichnungen haben

                  Image 4.png

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

                    @liv-in-sky Screenshot_20211227-193249.png

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

                      @bastian-felten

                      kann es nicht testen - du musst den code in deinem script austauschen und probieren, ob es funktioniert

                      gilt nur für Gosund !!

                      austauschen von:

                      Image 5.png

                      bis:

                      Image 6.png

                      $('sonoff.*.*.INFO.*Module').each(function(id, i) {           
                        
                           if (getState(id).val.includes("Gosund SP1") || getState(id).val.includes("SP11") || getState(id).val.includes("Gosund SP111") || getState(id).val.includes("SP112")) {
                              // log (id)
                              anzahl++;
                             var ida = id.split('.');
                            
                               counter++; 
                               existsState(id.replace("INFO.Module",'INFO.Info1_Module')) ?  val1=getState(id.replace("INFO.Info1_Module","alive")).val : val1=getState(id.replace("INFO.Module","alive")).val;
                               val1=getState(id.replace("INFO.Module","alive")).val;                 
                               val0=getObject(ida[0]+"."+ida[1]+"."+ida[2]).common.name ;
                                existsState(id.replace("INFO.Module",'INFO.Info1_Module')) ?  val4=getState(id.replace("INFO.Info1_Module","ENERGY_Power")).val.toString()+ " W" : val4=getState(id.replace("INFO.Module","ENERGY_Power")).val.toString()+ " W"                        
                                existsState(id.replace("INFO.Module",'INFO.Info1_Module')) ?  val4=getState(id.replace("INFO.Info1_Module","ENERGY_Current")).val.toString()+ " W" : val2=((getState(id.replace("INFO.Module","ENERGY_Current")).val)*1000).toString()+ " mA";    
                               existsState(id.replace("INFO.Module",'INFO.Info1_Module')) ?  val4=getState(id.replace("INFO.Info1_Module","ENERGY_Voltage")).val.toString()+ " W" :val3=getState(id.replace("INFO.Module","ENERGY_Voltage")).val.toString()+" V"; 
                               var val7_2; var val8_2; 
                      
                               if (existsState(id.replace("INFO.Module",'INFO.Info1_Module'))) {
                                  
                                        if (getState(id).val.includes("SP112") || getState(id).val.includes("SP211")) {
                                    let val7_1=getState(id.replace("INFO.Info1_Module","POWER1")).val;        
                              val7_1 ? val7_2=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val7_2=(" <font color=\""+farbeSchalterOFF+"\"> ")+"OFF</font>";
                              let val8_1=getState(id.replace("INFO.Info1_Module","POWER2")).val;        
                              val8_1 ? val8_2=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val8_2=(" <font color=\""+farbeSchalterOFF+"\"> ")+"OFF</font>";
                              val5=val7_2+" "+val8_2;
                               }
                               
                                else{
                               let val7_1=getState(id.replace("INFO.Info1_Module","POWER")).val;        
                               val7_1 ? val5=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val5=(" <font color=\""+farbeSchalterOFF+"\"> ")+"OFF</font>";}
                               val6=" - "; val7=" - "; val8=" - "; val9=" - "; 
                               valMarkeDevice="gosundk" 
                        
                               if (sourceAnalyGo) {brechneEnergy(val0,getState(id.replace("INFO.Info1_Module","ENERGY_Power")).val)
                             if (rootCounter){
                                 sammleDaten();
                                 berechneGesamt()
                                  } }
                      
                      
                               }
                                
                               
                               
                               
                                else {
                               if (getState(id).val.includes("SP112") || getState(id).val.includes("SP211")) {
                                    let val7_1=getState(id.replace("INFO.Module","POWER1")).val;        
                              val7_1 ? val7_2=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val7_2=(" <font color=\""+farbeSchalterOFF+"\"> ")+"OFF</font>";
                              let val8_1=getState(id.replace("INFO.Module","POWER2")).val;        
                              val8_1 ? val8_2=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val8_2=(" <font color=\""+farbeSchalterOFF+"\"> ")+"OFF</font>";
                              val5=val7_2+" "+val8_2;
                               }
                               
                                else{
                               let val7_1=getState(id.replace("INFO.Module","POWER")).val;        
                               val7_1 ? val5=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val5=(" <font color=\""+farbeSchalterOFF+"\"> ")+"OFF</font>";}
                               val6=" - "; val7=" - "; val8=" - "; val9=" - "; 
                               valMarkeDevice="gosundk" 
                        
                               if (sourceAnalyGo) {brechneEnergy(val0,getState(id.replace("INFO.Module","ENERGY_Power")).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
                      

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

                        @liv-in-sky
                        24d43a73-1f35-4f67-948c-2edb7ec9db64-image.png

                        Steckdose erscheint nun, aber mit der Anzeige von Watt stimmt was nicht.
                        Scheinbar wird das gleiche wie bei Spannung angezeigt.

                        e137acce-2105-48ce-9f8d-631de098b420-image.png

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

                          @bastian-felten

                          sorry - copy paste fehler

                          du musst diesee werte ändern - bei dir steht da val4 aber es muss val2 und val3 heißen

                          Image 8.png

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

                            @liv-in-sky
                            Top!
                            Vielen lieben Dank für die schnelle Hilfe!
                            Wirklich sehr nett!

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

                              @Alex220773

                              das problem ist, das ab tasmota 9.5 die dp anders benannt wurden - ab tasmota 10 ist es wieder anders. eigentlich entwickle ich dieses script nicht weiter, da es den sourceanalytics adapter gibt.

                              ich kann dir deine geräte schon einbinden, aber dann musst du auf version 9.5 bleiben, weil das einbinden dann speziell für deine geräte, mit dieser version sind

                              das gilt übrigens auch für andere tasmota geräte in dem script - das script funktioniert nicht mehr, wenn die geräte die version 9.5 bekommen

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

                                @liv-in-sky

                                Das wäre super wenn Du das machen konntes ,habe nicht vor die Tasmota immer wieder auf den neusten stand zu bringen (sollen alle Geräte auf 9.5 bleiben).Wenn es einmal richtig läuft warum soll man es Ändern.

                                Alex

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

                                  @alex220773
                                  dann brauche ich von die die genaue bezeichnung der geräte - das steht im dp info_module

                                  bi deinem export werden die states (also werte/inhalte) nicht gespeichert - nur die dp-objecte !

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

                                    @liv-in-sky
                                    Reicht es so?
                                    NousA1T.png

                                    Das ist der ganze DP von einen Gerät.

                                    Alex

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

                                      @alex220773

                                      du musst 2 sachen in dein script kopieren - stoppe und kopiere dein script und arbeite dann in der kopie, damit du dein orginal noch hast - nutze chrome oder edge zum kopieren aus dem forum

                                      kopiere

                                      var nous=true;             var sourceAnalyNous=true; 
                                      

                                      dahin:

                                      Image 1.png

                                      UND das:

                                      if (nous){
                                         counter=0
                                                  
                                           
                                           counter++//=0;
                                           val0=""; val1=""; val2="";val3="";val4="";val5="";val6="";val7="";val8="";val9="";
                                           tabelleBind();  
                                           
                                           counter++//=0;
                                           val0="<font color=\""+htmlColorDeviceUeberschrift+"\"><"+HTMLbrandSetting+">Nous</"+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();  
                                           
                                          
                                      
                                      
                                      $('sonoff.*.*.INFO.Info1_Module').each(function(id, i) {           
                                        
                                           if (getState(id).val=="NOUS A1T")  {
                                              // log (id)
                                              anzahl++;
                                             var ida = id.split('.');
                                            
                                               counter++; 
                                                 
                                               val1=getState(id.replace("INFO.Info1_Module","alive")).val;                   
                                               val0=getObject(ida[0]+"."+ida[1]+"."+ida[2]).common.name ;
                                               val3=getState(id.replace("INFO.Info1_Module","ENERGY_Voltage")).val.toString()+" V"; 
                                      
                                      
                                      
                                               val4=getState(id.replace("INFO.Info1_Module","ENERGY_Power")).val.toString()+ " W"                     
                                               val2=((getState(id.replace("INFO.Info1_Module","ENERGY_Current")).val)*1000).toString()+ " mA";   
                                               let val7_1=getState(id.replace("INFO.Info1_Module","POWER")).val;        
                                               val7_1 ? val5=(" <font color=\""+farbeSchalterON+"\"> ")+"ON</font>" : val5=(" <font color=\""+farbeSchalterOFF+"\"> ")+"OFF</font>";
                                                val6=" - "; val7=" - "; val8=" - "; val9=" - "; 
                                               valMarkeDevice="sonoffk"   
                                               
                                      
                                      
                                               if (sourceAnalyPow) {brechneEnergy(val0,getState(id.replace("INFO.Info1_Module","ENERGY_Power")).val); 
                                             if (rootCounter){
                                                 sammleDaten()
                                                 berechneGesamt()
                                                  }
                                               }
                                                     // else von shelly 2.5
                                             
                                           zeigeVal1();
                                           if (!filterArrAusnahme.includes(val0)) {
                                              tabelleBind();  
                                             } else{let help=[val0,val1,val2,val3,val4,val5,val6,val7,val8,val9]; filterArrAusnahmeHelp.push(help);}
                                       
                                       } }); }
                                      

                                      an diese stelle:

                                      Image 2.png

                                      sollte dann so aussehen:

                                      Image 3.png

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

                                        @liv-in-sky

                                        DAs sieht schon mal gut aus,
                                        aber im log bekomme ich fehler meldungen

                                        10:34:14.565	info	javascript.0 (3870473) Start javascript script.js.Skript_2
                                        10:34:14.584	info	javascript.0 (3870473) script.js.Skript_2: registered 0 subscriptions and 2 schedules
                                        10:35:00.014	error	javascript.0 (3870473) at sammleDaten (script.js.Skript_2:1548:91)
                                        10:35:00.014	error	javascript.0 (3870473) at script.js.Skript_2:752:18
                                        10:35:00.014	error	javascript.0 (3870473) at writeHTML (script.js.Skript_2:721:26)
                                        10:35:00.014	error	javascript.0 (3870473) at Object.<anonymous> (script.js.Skript_2:1331:2)
                                        10:36:00.017	error	javascript.0 (3870473) at sammleDaten (script.js.Skript_2:1548:91)
                                        10:36:00.017	error	javascript.0 (3870473) at script.js.Skript_2:752:18
                                        10:36:00.017	error	javascript.0 (3870473) at writeHTML (script.js.Skript_2:721:26)
                                        10:36:00.017	error	javascript.0 (3870473) at Object.<anonymous> (script.js.Skript_2:1331:2)
                                        
                                        

                                        Unbenannt.png

                                        So sieht jetzt aus.
                                        Die Shellys sind als Shutter für Rollos.

                                        Und so sieht mein Skript aus

                                        script.txt

                                        MfG

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

                                          @alex220773

                                          magst du anydesk - ich könnte mich kurz bei dir einwählen und wir machen das gemeinsam ?

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

                                            @liv-in-sky

                                            Habe gerade instal. hab noch 30 min dann muss ich Arbeiten.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            780
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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