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. [Vorlage] Betriebsstundenzähler & Verbrauchsrechner

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    6
    1
    221

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    8
    1
    217

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    891

[Vorlage] Betriebsstundenzähler & Verbrauchsrechner

Scheduled Pinned Locked Moved Skripten / Logik
javascript
333 Posts 51 Posters 98.8k Views 26 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.
  • L Offline
    L Offline
    looxer01
    wrote on last edited by
    #118

    Hi Crepp,

    Wenn keine Umrechnung eingegeben wird, dann ist das Format DDDDDD:HH:MM:SS hart verdrahtet.

    Du kannst aber einfach von Millisekunden umrechnen (Tabelle special) und bekommst dann einen numerischen WEert.

    Wenn du z.B. dazu im Divisor 1000 eingibst kannst du im Multiplikator

    z.B. 60 eingeben und du erhältst Minuten

    oder 3600 und der bekommst Stunden

    oder 86400 und bist bei Tagen.

    Dass solltest du dann noch mit einer Rundung versehen. z.B 1

    vG Looxer

    1 Reply Last reply
    0
    • N Offline
      N Offline
      noxx
      wrote on last edited by
      #119

      hallo

      ich nehme mal an, das ich Datenpunkte mit Wert nicht verwenden kann?

      Der Gaszähler wird geloggt und als Datenpunkt abgelegt.

      Gruppen[ 0]  = ['javascript.0.Gaszaehler.Wert'           ,''                                 ,true   ,true   ,true   ,true   ,true   ,false
      
      

      LOG:

      20:11:03.900	[info]	javascript.0 Stop script script.js.common.Betriebsstundenzaehler
      20:11:04.483	[info]	javascript.0 Start javascript script.js.common.Betriebsstundenzaehler
      20:11:04.485	[error]	javascript.0 script.js.common.Betriebsstundenzaehler: TypeError: Cannot read property 'common' of null at script.js.common.Betriebsstundenzaehler:323:47 at ContextifyScript.Script.runInContext (vm.js:35:29)
      

      2880_01.png

      1 Reply Last reply
      0
      • L Offline
        L Offline
        looxer01
        wrote on last edited by
        #120

        Hi Noxx,

        doch klar, gerade Werte sollten ja geloggt werden und berechnet.

        Schick doch mal deine Einstellungen. Ich schau mal. Könnte ein Einstellungsproblem sein.

        vG >Looxer

        1 Reply Last reply
        0
        • N Offline
          N Offline
          noxx
          wrote on last edited by
          #121

          Bisher steht nur in Gruppe[0] was drin

          Gruppen[ 0]  = ['javascript.0.Gaszaehler.Wert'           ,''                                 ,true   ,true   ,true   ,true   ,true   ,false  ,''      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
          
          1 Reply Last reply
          0
          • L Offline
            L Offline
            looxer01
            wrote on last edited by
            #122

            Sorry aus versehen geloescht

            1 Reply Last reply
            0
            • N Offline
              N Offline
              noxx
              wrote on last edited by
              #123

              hmm, habe den dreh nicht.

              Gruppen[ 0]  = ['javascript.0.Gaszaehler.Wert'           ,''                                 ,true   ,true   ,true   ,true   ,true   ,false  ,'delta'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
              

              liefert

              (vm.js:35:29)
              21:51:35.973	[info]	javascript.0 Stop script script.js.common.Betriebsstundenzaehler
              21:51:36.512	[info]	javascript.0 Start javascript script.js.common.Betriebsstundenzaehler
              21:51:36.514	[error]	javascript.0 script.js.common.Betriebsstundenzaehler: TypeError: Cannot read property 'common' of null at script.js.common.Betriebsstundenzaehler:323:47 at ContextifyScript.Script.runInContext (vm.js:35:29)
              

              Edit

              Nun kein Fehler mehr. Anscheinend muss die Spalte 2 gefüllt sein

              1 Reply Last reply
              0
              • N Offline
                N Offline
                noxx
                wrote on last edited by
                #124

                habe nun 2 "geräte" eingestellt, beim Regensensor werden die Werte

                übernommen, beim Gaszähler nicht.

                Keine Ahnung warum, sind beide gleich eingestellt.

                Gruppen[ 0]  = ['javascript.0.Gaszaehler.Wert'          ,'Heizung'                          ,true  ,true  ,true  ,true  ,true  ,false  ,'delta'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                Gruppen[ 1]  = ['rflink.0.channels.Cresta_2.RAIN'       ,'Wetterstation'                    ,true  ,true  ,true  ,true  ,true  ,false  ,'delta'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                
                logname[0]  =   ['Gasuhr'      ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                logname[1]  =   ['Regenmesser'      ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                
                
                special[0]  =   [''     ,''     ,''                     ,''         ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 , ''     ]; 
                special[1]  =   [''     ,''     ,'0.227'                     ,''         ,''     ,''                 ,''                 ,''                         ,''             ,''             ,''                 ,''             ,''                 ,''      ]; 
                
                

                2880_01.png

                1 Reply Last reply
                0
                • L Offline
                  L Offline
                  looxer01
                  wrote on last edited by
                  #125

                  Hi Noxx,

                  Der Gaszähler steht auf delta. Das ist ok. Ist der Datenpunkt, der den jeweils aktuellen Gesamtverbrauchswert des Gaszählers misst, ein wirklich Javascript-datenpunkt ? -

                  Wichtig ist, dass der Wert in diesem Datenpunkt ein kontinuierlich aufsteigender Wert ist (eben die aktuelle verbraucht m3 Zahl.) Dann sollte das delta auch gemessen werden. Wie oft wird dieser Datenpunkt denn aktualisiert. Denn bei jeder Akutualisierung wird der Unterschied berechnet. Kann es sein, dass das im Sekundenbereich geschieht. ? Vielleicht ist der Wert dann zu klein. Durch das setzen des schedules in "special" kann auch das Aktualisieren geplant werden.

                  Bin jetzt bis Montag unterwegs und kann nur lesen.

                  vG Looxer

                  1 Reply Last reply
                  0
                  • K Offline
                    K Offline
                    knopers1
                    wrote on last edited by
                    #126

                    Hi Noxx,

                    ewentuell liegt der Fehler im Java-Script was Du mir zukommen lassen hast.

                    Und zwar genau in der Zeile:

                    schedule ("* * * * *", function(){ // alle 3 Minuten aufrufen

                    Wenn das Script alle drei min. die WEB abfragen soll, muß es so aussehen.

                    schedule ("*/3 * * * *", function(){

                    Ich baue heute alles nach und berichte ob es bei mir funktioniert!

                    var request = require('request');
                    var parseString = require('xml2js').parseString;
                    
                    var url="http://192.168.1.43"; // hier die Adresse der Webseite eintragen
                    
                    var GaszaehlerId = "Gaszaehler.Wert"; // Der Wert steht in "javascript.0."
                    
                    function processData(body){
                       parseString(body, function (err, result) {
                          // log(JSON.stringify(result.MyHome.ESP8266_GasMeter[0].data[4].$.value));
                          if (!err)
                              setState(GaszaehlerId,result.MyHome.ESP8266_GasMeter[0].data[4].$.value);
                       });   
                    }
                    
                    createState(GaszaehlerId,
                              0, 
                              false,
                              {
                                type:"number",
                                unit:"m³"
                              });
                    
                    schedule ("* * * * *", function(){ // alle 3 Minuten aufrufen
                        request({  
                            uri: url,
                            method: "GET",
                            timeout: 10000,
                            followRedirect: true,
                            maxRedirects: 10
                        }, function(error, response, body) {
                            if (!error) {
                                if (response.statusCode == 200) {
                                    processData(body);    
                                }
                            } else log("Fehler: "+error);
                        });    
                    })
                    

                    HP Microserver Gen8, RPI-4, IoBroker,

                    1 Reply Last reply
                    0
                    • L Offline
                      L Offline
                      looxer01
                      wrote on last edited by
                      #127

                      @knopers1:

                      Hi Noxx,

                      ewentuell liegt der Fehler im Java-Script was Du mir zukommen lassen hast.

                      Und zwar genau in der Zeile:

                      schedule ("* * * * *", function(){ // alle 3 Minuten aufrufen

                      Wenn das Script alle drei min. die WEB abfragen soll, muß es so aussehen. `

                      Aaah Ok. Der Wert kommt aus einem anderen Script und fuellt die variable. Dann brauchst du die schedule Funktion aus Tabelle Special nicht. Du musst halt darauf achten, dass die Differenz-werte nicht zu klein werden. Auf jeden Fall sollte nicht gerundet werden.

                      Vg looxer

                      Gesendet von meinem SM-G935F mit Tapatalk

                      1 Reply Last reply
                      0
                      • K Offline
                        K Offline
                        knopers1
                        wrote on last edited by
                        #128

                        @looxer01

                        kannst Du helfen?

                        Ich versuche grade auch ein Gaszähler einzubinden…

                        Gaszähler läuft und überträgt die Daten mit einem Javascript siehe Bild....

                        Ich habe nur dies vorerst angepasst. Irgendiwie bleibt alles auf Null, obwohl die Werte am Gaszähler steigen...

                        var Gruppen = [];
                        //              1.Homematic ID,                    2.Thema(no spaces)                    3.History  4.DAY  5.Week  6.Month 7.Year  8.Switch   9 - 18 Status to log                                                         19.stop 20.Loesch
                        Gruppen[ 0]  = ['javascript.0.'           ,'Gaszaehler.Wert'                                 ,true   ,true   ,true   ,true   ,true   ,false  ,'delta'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                        Gruppen[ 1]  = ['initial'                                ,''                                 ,false  ,false  ,false  ,false  ,false  ,false  ,''      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                        
                        var logname = [];
                        //              Stat1           Stat2       Stat3       Stat4               Stat5       Stat6       Stat7       Stat8   Stat9   Stat10
                        logname[0]  =   ['Gasuhr'      ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                        logname[1]  =   ['EinAus1'      ,''         ,''         ,''                 ,''         ,''         ,''         ,''     ,''     ,''];
                        

                        hier mein LOG, bringt viele Warnungen:

                        javascript.0	2017-08-17 19:06:01.179	warn	at process._tickCallback (internal/process/next_tick.js:104:9)
                        javascript.0	2017-08-17 19:06:01.179	warn	at _combinedTickCallback (internal/process/next_tick.js:80:11)
                        javascript.0	2017-08-17 19:06:01.179	warn	at endReadableNT (_stream_readable.js:974:12)
                        javascript.0	2017-08-17 19:06:01.178	warn	at IncomingMessage.emit (events.js:185:7)
                        javascript.0	2017-08-17 19:06:01.178	warn	at emitNone (events.js:91:20)
                        javascript.0	2017-08-17 19:06:01.178	warn	at IncomingMessage.g (events.js:292:16)
                        javascript.0	2017-08-17 19:06:01.178	warn	at IncomingMessage. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1091:12)
                        javascript.0	2017-08-17 19:06:01.177	warn	at Request.emit (events.js:188:7)
                        javascript.0	2017-08-17 19:06:01.177	warn	at emitOne (events.js:96:13)
                        javascript.0	2017-08-17 19:06:01.177	warn	at Request. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1171:10)
                        javascript.0	2017-08-17 19:06:01.177	warn	at Request.emit (events.js:191:7)
                        javascript.0	2017-08-17 19:06:01.176	warn	at emitTwo (events.js:106:13)
                        javascript.0	2017-08-17 19:06:01.176	warn	at Request.self.callback (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:188:22)
                        javascript.0	2017-08-17 19:06:01.176	warn	at Request._callback (script.js.common.Gaszaehler:34:17)
                        javascript.0	2017-08-17 19:06:01.175	warn	at processData (script.js.common.Gaszaehler:9:4)
                        javascript.0	2017-08-17 19:06:01.175	warn	at exports.parseString (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:354:19)
                        javascript.0	2017-08-17 19:06:01.175	warn	at Parser.parseString (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:5:59)
                        javascript.0	2017-08-17 19:06:01.174	warn	at Parser.exports.Parser.Parser.parseString (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:322:31)
                        javascript.0	2017-08-17 19:06:01.174	warn	at Object.write (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:1436:13)
                        javascript.0	2017-08-17 19:06:01.173	warn	at closeTag (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:889:7)
                        javascript.0	2017-08-17 19:06:01.173	warn	at emitNode (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:629:5)
                        javascript.0	2017-08-17 19:06:01.172	warn	at emit (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:624:35)
                        javascript.0	2017-08-17 19:06:01.172	warn	at Object.onclosetag (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:261:26)
                        javascript.0	2017-08-17 19:06:01.171	warn	at Parser.emit (events.js:188:7)
                        javascript.0	2017-08-17 19:06:01.171	warn	at emitOne (events.js:96:13)
                        javascript.0	2017-08-17 19:06:01.170	warn	at Parser. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:303:18)
                        javascript.0	2017-08-17 19:06:01.169	warn	at script.js.common.Gaszaehler:12:11
                        javascript.0	2017-08-17 19:06:01.165	warn	Wrong type of javascript.0.Gaszaehler.Wert: "string". Please fix, while deprecated and will not work in next versions.
                        host.orangepiplus2e	2017-08-17 19:06:00.044	info	instance system.adapter.yr.0 started with pid 14601
                        host.orangepiplus2e	2017-08-17 19:05:14.758	info	instance system.adapter.ical.0 terminated with code 0 (OK)
                        ical.0	2017-08-17 19:05:06.513	info	starting. Version 1.3.2 in /opt/iobroker/node_modules/iobroker.ical, node: v6.11.2
                        host.orangepiplus2e	2017-08-17 19:05:00.124	info	instance system.adapter.ical.0 started with pid 14541
                        javascript.0	2017-08-17 19:03:00.839	warn	at process._tickCallback (internal/process/next_tick.js:104:9)
                        javascript.0	2017-08-17 19:03:00.838	warn	at _combinedTickCallback (internal/process/next_tick.js:80:11)
                        javascript.0	2017-08-17 19:03:00.838	warn	at endReadableNT (_stream_readable.js:974:12)
                        javascript.0	2017-08-17 19:03:00.838	warn	at IncomingMessage.emit (events.js:185:7)
                        javascript.0	2017-08-17 19:03:00.837	warn	at emitNone (events.js:91:20)
                        javascript.0	2017-08-17 19:03:00.837	warn	at IncomingMessage.g (events.js:292:16)
                        javascript.0	2017-08-17 19:03:00.837	warn	at IncomingMessage. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1091:12)
                        javascript.0	2017-08-17 19:03:00.836	warn	at Request.emit (events.js:188:7)
                        javascript.0	2017-08-17 19:03:00.836	warn	at emitOne (events.js:96:13)
                        javascript.0	2017-08-17 19:03:00.836	warn	at Request. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:1171:10)
                        javascript.0	2017-08-17 19:03:00.835	warn	at Request.emit (events.js:191:7)
                        javascript.0	2017-08-17 19:03:00.835	warn	at emitTwo (events.js:106:13)
                        javascript.0	2017-08-17 19:03:00.834	warn	at Request.self.callback (/opt/iobroker/node_modules/iobroker.javascript/node_modules/request/request.js:188:22)
                        javascript.0	2017-08-17 19:03:00.831	warn	at Request._callback (script.js.common.Gaszaehler:34:17)
                        javascript.0	2017-08-17 19:03:00.831	warn	at processData (script.js.common.Gaszaehler:9:4)
                        javascript.0	2017-08-17 19:03:00.830	warn	at exports.parseString (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:354:19)
                        javascript.0	2017-08-17 19:03:00.830	warn	at Parser.parseString (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:5:59)
                        javascript.0	2017-08-17 19:03:00.830	warn	at Parser.exports.Parser.Parser.parseString (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:322:31)
                        javascript.0	2017-08-17 19:03:00.829	warn	at Object.write (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:1436:13)
                        javascript.0	2017-08-17 19:03:00.829	warn	at closeTag (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:889:7)
                        javascript.0	2017-08-17 19:03:00.828	warn	at emitNode (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:629:5)
                        javascript.0	2017-08-17 19:03:00.828	warn	at emit (/opt/iobroker/node_modules/iobroker.javascript/node_modules/sax/lib/sax.js:624:35)
                        javascript.0	2017-08-17 19:03:00.828	warn	at Object.onclosetag (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:261:26)
                        javascript.0	2017-08-17 19:03:00.827	warn	at Parser.emit (events.js:188:7)
                        javascript.0	2017-08-17 19:03:00.827	warn	at emitOne (events.js:96:13)
                        javascript.0	2017-08-17 19:03:00.826	warn	at Parser. (/opt/iobroker/node_modules/iobroker.javascript/node_modules/xml2js/lib/parser.js:303:18)
                        javascript.0	2017-08-17 19:03:00.826	warn	at script.js.common.Gaszaehler:12:11
                        javascript.0	2017-08-17 19:03:00.810	warn	Wrong type of javascript.0.Gaszaehler.Wert: "string". Please fix, while deprecated and will not work in next versions.
                        
                        

                        1526_unbenannt1.png

                        HP Microserver Gen8, RPI-4, IoBroker,

                        1 Reply Last reply
                        0
                        • K Offline
                          K Offline
                          knopers1
                          wrote on last edited by
                          #129

                          noch etwas als Infooo….

                          habe jetzt auch so probiert.

                          var Gruppen = [];
                          //              1.Homematic ID,                    2.Thema(no spaces)                    3.History  4.DAY  5.Week  6.Month 7.Year  8.Switch   9 - 18 Status to log                                                         19.stop 20.Loesch
                          Gruppen[ 0]  = ['javascript.0.Gaszaehler.Wert'          ,''                                 ,true   ,true   ,true   ,true   ,true   ,false  ,'delta'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                          

                          Beim Start siemt man unten im JS Adapter das hier:

                          Log

                          19:31:05.765 [info] javascript.0 Start javascript script.js.common.Betriebsstdzaehler

                          19:31:05.767 [error] javascript.0 script.js.common.Betriebsstdzaehler: script.js.common.Betriebsstdzaehler:323

                          19:31:05.768 [error] javascript.0 at script.js.common.Betriebsstdzaehler:323:47
                          1526_unbenannt2.png

                          HP Microserver Gen8, RPI-4, IoBroker,

                          1 Reply Last reply
                          0
                          • N Offline
                            N Offline
                            noxx
                            wrote on last edited by
                            #130

                            @looxer01:

                            @knopers1:

                            Hi Noxx,

                            ewentuell liegt der Fehler im Java-Script was Du mir zukommen lassen hast.

                            Und zwar genau in der Zeile:

                            schedule ("* * * * *", function(){ // alle 3 Minuten aufrufen

                            Wenn das Script alle drei min. die WEB abfragen soll, muß es so aussehen. `

                            Aaah Ok. Der Wert kommt aus einem anderen Script und fuellt die variable. Dann brauchst du die schedule Funktion aus Tabelle Special nicht. Du musst halt darauf achten, dass die Differenz-werte nicht zu klein werden. Auf jeden Fall sollte nicht gerundet werden.

                            Vg looxer

                            Gesendet von meinem SM-G935F mit Tapatalk `

                            spezial habe ich nur beim regenzähler, weil ich einen wert korrigieren muss

                            habe nun auch mal die Werte mit dem parser ausgelesen, auch diese werden nicht vom Script eingelesen.

                            LOG

                            20:59:13.004	[info]	javascript.0 Start javascript script.js.common.Betriebsstundenzaehler
                            20:59:13.005	[info]	javascript.0 script.js.common.Betriebsstundenzaehler: registered 26 subscriptions and 27 schedules
                            

                            LOG

                            Datum;Uhrzeit;Type;Activity;Gruppen-Nummer;HM-ID;Objekt-Text;CurrValue;SystemObj Alt; SysemObj Neu;SystemMSEC Alt ;SystemMSEC NEU; CounterObj ALT; CounterOBJ NEU
                            17.08.2017 ;20:54:37 ;DELTA;Change;1;rflink.0.channels.Cresta_2.RAIN;Cresta_ 2 Total rain level;2430,2;2430,2;2430,2;;0;551,6554;551,6554
                            

                            2880_01.png

                            1 Reply Last reply
                            0
                            • K Offline
                              K Offline
                              knopers1
                              wrote on last edited by
                              #131

                              hmm, kann es sein, dass dort der Fehler begraben ist ?

                              javascript.0	2017-08-17 21:36:00.259	warn	Wrong type of javascript.0.GasMeter.Wert: "string". Please fix, while deprecated and will not work in next versions.
                              

                              und das bezieht sich auf den Wert, was wir mit dem js Script uns von der Web Oberfläche des Wemos holen….

                              HP Microserver Gen8, RPI-4, IoBroker,

                              1 Reply Last reply
                              0
                              • L Offline
                                L Offline
                                looxer01
                                wrote on last edited by
                                #132

                                @noxx:

                                @looxer01:

                                @knopers1:

                                Hi Noxx,

                                ewentuell liegt der Fehler im Java-Script was Du mir zukommen lassen hast.

                                Und zwar genau in der Zeile:

                                schedule ("* * * * *", function(){ // alle 3 Minuten aufrufen

                                Wenn das Script alle drei min. die WEB abfragen soll, muß es so aussehen. `

                                Aaah Ok. Der Wert kommt aus einem anderen Script und fuellt die variable. Dann brauchst du die schedule Funktion aus Tabelle Special nicht. Du musst halt darauf achten, dass die Differenz-werte nicht zu klein werden. Auf jeden Fall sollte nicht gerundet werden.

                                Vg looxer

                                Gesendet von meinem SM-G935F mit Tapatalk `

                                spezial habe ich nur beim regenzähler, weil ich einen wert korrigieren muss

                                habe nun auch mal die Werte mit dem parser ausgelesen, auch diese werden nicht vom Script eingelesen.

                                LOG

                                20:59:13.004	[info]	javascript.0 Start javascript script.js.common.Betriebsstundenzaehler
                                20:59:13.005	[info]	javascript.0 script.js.common.Betriebsstundenzaehler: registered 26 subscriptions and 27 schedules
                                

                                LOG

                                Datum;Uhrzeit;Type;Activity;Gruppen-Nummer;HM-ID;Objekt-Text;CurrValue;SystemObj Alt; SysemObj Neu;SystemMSEC Alt ;SystemMSEC NEU; CounterObj ALT; CounterOBJ NEU
                                17.08.2017 ;20:54:37 ;DELTA;Change;1;rflink.0.channels.Cresta_2.RAIN;Cresta_ 2 Total rain level;2430,2;2430,2;2430,2;;0;551,6554;551,6554
                                ```` `  Hi
                                

                                Am Log kann ich nix erkennen. Ich brauche am besten das Script und die werteentwicklung des datenpunktes. Z.b. durch den History Adapter. Auswerten kann ich das aber erst aber erst naechste Woche. Vielleicht kann aber jemand anderes zwischenzeitlich helfen.

                                Vg looxer

                                Gesendet von meinem SM-G935F mit Tapatalk

                                1 Reply Last reply
                                0
                                • N Offline
                                  N Offline
                                  noxx
                                  wrote on last edited by
                                  #133

                                  mehr als hier habe ich nicht geändert

                                  http://forum.iobroker.net/viewtopic.php … 120#p80053
                                  2880_01.png

                                  1 Reply Last reply
                                  0
                                  • K Offline
                                    K Offline
                                    knopers1
                                    wrote on last edited by
                                    #134

                                    @Noxx

                                    sobald ich das Script mit dem Verbrauchrechner starte, bekomme ich folgende Fehlermeldung:

                                    20:02:33.014	[info]	javascript.0 Start javascript script.js.common.Rechner
                                    20:02:33.015	[info]	javascript.0 script.js.common.Rechner: getState(id=javascript.0.GasMeter.Wert, timerId=0) => {"val":"0.12","ack":false,"ts":1503079321033,"q":0,"from":"system.adapter.javascript.0","lc":1503078481894}
                                    20:02:33.016	[info]	javascript.0 script.js.common.Rechner: getObject(id= , enumName=undefined) => does not exist
                                    20:02:33.016	[error]	javascript.0 script.js.common.Rechner: script.js.common.Rechner:323
                                    20:02:33.017	[error]	javascript.0 at script.js.common.Rechner:323:47
                                    

                                    das hier ist wichtig meiner Meinung!

                                    20:02:33.016 [info] javascript.0 script.js.common.Rechner: getObject(id= , enumName=undefined) => does not exist

                                    Dies bezieht sich möglicherweise auf die Objekt ID was wir mit dem Script erzeugt haben, um den Zählsensor des Wemos über die Http Seite auszulesen.

                                    Gruppen[ 0]  = ['javascript.0.GasMeter.Wert'                                ,''                                 ,true  ,true  ,false  ,true  ,true  ,false  ,'delta'      ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,''     ,false ,false]; //
                                    

                                    und dort sieht man sogar mein Zählerstand des Wemos!

                                    0:02:33.015 [info] javascript.0 script.js.common.Rechner: getState(id=javascript.0.GasMeter.Wert, timerId=0) => {"val":"0.12","ack":false,"ts":1503079321033,"q":0,"from":"system.adapter.javascript.0","lc":1503078481894}

                                    Hast Du den Fehler auchbeim starten des Generischen Betriebsstundenzähler und Verbrauchsrechner - Scriptes ???
                                    1526_unbenannt4.png
                                    1526_unbenannt5.png
                                    1526_unbenannt6.png

                                    HP Microserver Gen8, RPI-4, IoBroker,

                                    1 Reply Last reply
                                    0
                                    • N Offline
                                      N Offline
                                      noxx
                                      wrote on last edited by
                                      #135

                                      du musst wohl ein Thema eintragen, sonst gehts nicht.
                                      2880_01.png

                                      1 Reply Last reply
                                      0
                                      • N Offline
                                        N Offline
                                        noxx
                                        wrote on last edited by
                                        #136

                                        Hier mal die BSZ Ausgabe mit aktiveem Debug und Hilfe-Ausgabe:

                                        ! ````
                                        08:48:28.609 [info] javascript.0 Stop script script.js.common.Betriebsstundenzaehler
                                        08:48:29.630 [info] javascript.0 Start javascript script.js.common.Betriebsstundenzaehler
                                        08:48:29.632 [info] javascript.0 script.js.common.Betriebsstundenzaehler: registered 26 subscriptions and 27 schedules
                                        08:48:38.258 [info] javascript.0 Stop script script.js.common.Betriebsstundenzaehler
                                        08:48:39.312 [info] javascript.0 Start javascript script.js.common.Betriebsstundenzaehler
                                        08:48:39.314 [info] javascript.0 script.js.common.Betriebsstundenzaehler: getState(id=javascript.0.Gaszaehler.Wert, timerId=0) => {"val":"26466.55","ack":false,"ts":1503125101574,"q":0,"from":"system.adapter.javascript.0","lc":1503117901676}
                                        08:48:39.314 [info] javascript.0 script.js.common.Betriebsstundenzaehler: getState(id=rflink.0.channels.Cresta_2.RAIN, timerId=0) => {"val":2469.4,"ack":true,"ts":1503125093672,"q":0,"from":"system.adapter.rflink.0","lc":1503124544564}
                                        08:48:39.315 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.Gaszaehler.Wert","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.315 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"rflink.0.channels.Cresta_2.RAIN","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.315 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.316 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.316 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.316 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.317 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.317 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.317 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.321 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.322 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.322 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.324 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.325 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.325 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.325 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.326 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.326 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.327 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.327 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.328 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.328 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.328 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.328 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.328 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.329 [info] javascript.0 script.js.common.Betriebsstundenzaehler: subscribe: {"pattern":{"id":"javascript.0.INITIAL","valNe":1000},"name":"script.js.common.Betriebsstundenzaehler"}
                                        08:48:39.329 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.329 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.329 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.330 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.330 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.330 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.330 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.331 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.331 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.331 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.331 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.331 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.332 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.332 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.332 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.332 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.332 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.333 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.333 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.333 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.333 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.333 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.334 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.334 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.334 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.336 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=0 5 31 2 *)
                                        08:48:39.336 [info] javascript.0 script.js.common.Betriebsstundenzaehler: schedule(cron=04 00 * * *)
                                        08:48:39.336 [info] javascript.0 script.js.common.Betriebsstundenzaehler: registered 26 subscriptions and 27 schedules

                                        
                                        Man sieht ja, das er den Wert lesen kann, aber keine Ahnung warum er nicht übernommen wird
                                        
                                        

                                        08:48:39.314 [info] javascript.0 script.js.common.Betriebsstundenzaehler: getState(id=javascript.0.Gaszaehler.Wert, timerId=0) => {"val":"26466.55","ack":false,"ts":1503125101574,"q":0,"from":"system.adapter.javascript.0","lc":1503117901676}

                                        
                                        Die beiden Sensoren unterscheiden sich in
                                        
                                        "ack":false
                                        
                                        "ack":true
                                        
                                        hats evtl damit zu tun?
                                        1 Reply Last reply
                                        0
                                        • L Offline
                                          L Offline
                                          looxer01
                                          wrote on last edited by
                                          #137

                                          Falls das Problem mit ACK zusammenhaengt: in Tabelle Special kann eingestellt werden, dass auch gemessen wird, wenn ACK nicht True erwartet wird.

                                          Vg looxer

                                          Gesendet von meinem SM-G935F mit Tapatalk

                                          1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          241

                                          Online

                                          32.8k

                                          Users

                                          82.8k

                                          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