Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Betriebsstundenzähler & Verbrauchsrechner

    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

    [Vorlage] Betriebsstundenzähler & Verbrauchsrechner

    This topic has been deleted. Only users with topic management privileges can see it.
    • N
      noxx last edited by

      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 Reply Quote 0
      • N
        noxx last edited by

        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 Reply Quote 0
        • L
          looxer01 last edited by

          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 Reply Quote 0
          • K
            knopers1 last edited by

            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);
                });    
            })
            
            1 Reply Last reply Reply Quote 0
            • L
              looxer01 last edited by

              @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 Reply Quote 0
              • K
                knopers1 last edited by

                @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

                1 Reply Last reply Reply Quote 0
                • K
                  knopers1 last edited by

                  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

                  1 Reply Last reply Reply Quote 0
                  • N
                    noxx last edited by

                    @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 Reply Quote 0
                    • K
                      knopers1 last edited by

                      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….

                      1 Reply Last reply Reply Quote 0
                      • L
                        looxer01 last edited by

                        @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 Reply Quote 0
                        • N
                          noxx last edited by

                          mehr als hier habe ich nicht geändert

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

                          1 Reply Last reply Reply Quote 0
                          • K
                            knopers1 last edited by

                            @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

                            1 Reply Last reply Reply Quote 0
                            • N
                              noxx last edited by

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

                              1 Reply Last reply Reply Quote 0
                              • N
                                noxx last edited by

                                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 Reply Quote 0
                                • L
                                  looxer01 last edited by

                                  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 Reply Quote 0
                                  • N
                                    noxx last edited by

                                    das wars evtl, nun kommt was

                                    was soll ACK sein?

                                    Spalte 8 ein 'false'

                                    Wie bekomme ich das ganze nun visualisiert?

                                    Möchte die Tageswerte das Balkendiagramm.

                                    Ne Frage noch, warum realisiert man ganze nicht über einlesen der Werte

                                    aus der SQL Datenbank? Da kann man auch nach 2 Jahren entscheiden, welche

                                    Werte man auslesen/anzeigen möchte.

                                    Am liebsten wäre mir sowas wie im Anhang.

                                    Gruß
                                    2880_1.png
                                    2880_1.png

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      knopers1 last edited by

                                      @Noxx

                                      dann lass mal deine Konfig sehen. Bin momentan Arbeiten und würde direckt nach der Arbeit einsteigen wollen.

                                      In Gruppe fehlte mir Thema. Danke!

                                      Was ist mit ACK in der Tabelle Spezial einzutragen? Und vor allem Wo ? Kannst Du deine Konfig irgendwo uploaden oder das Script von Dir als Code hier einsetzen?

                                      Visualisieren kannst Du es mit Float Adapter!

                                      Edit: Habe gerade gelesen dass Du es als Balkendiagram haben möchtest. hmm, dann weis ich auch nicht weiter…

                                      1 Reply Last reply Reply Quote 0
                                      • N
                                        noxx last edited by

                                        @knopers1:

                                        @Noxx

                                        Was ist mit ACK in der Tabelle Spezial einzutragen? Und vor allem Wo ? Kannst Du deine Konfig irgendwo uploaden oder das Script von Dir als Code hier einsetzen? `
                                        2880_01.png

                                        1 Reply Last reply Reply Quote 0
                                        • N
                                          noxx last edited by

                                          Bin mal gespannt, was er da eintragen will 😮
                                          2880_01.png

                                          1 Reply Last reply Reply Quote 0
                                          • K
                                            knopers1 last edited by

                                            schau was der Kollege crep geschrieben hat

                                            http://forum.iobroker.net/viewtopic.php … &start=100

                                            und vor allem die Antwort vom looxar01 dadrunter!

                                            Zitat:

                                            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 Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            966
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript
                                            51
                                            333
                                            78491
                                            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