Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] Min /Max Temperatursensor

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

[gelöst] Min /Max Temperatursensor

[gelöst] Min /Max Temperatursensor

Scheduled Pinned Locked Moved Skripten / Logik
43 Posts 12 Posters 13.0k Views 1 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.
  • ThisoftT Offline
    ThisoftT Offline
    Thisoft
    wrote on last edited by
    #20

    Hmm - ändere bitte mal den folgenden Bereich mit der Loggingausgabe:

    function GetResults (dpoint) {
      var end_time = new Date().getTime();
      var start_time = new Date().getTime() - dt;
      log('startzeit: '+start_time);
      log('endzeit: '+end_time);
    
      log(JSON.stringify(dpoint.result));
    
      log('id: '+dpoint.result[0].name);
      .
      .
      .
    
    

    und poste dann nochmal das Log

    22 HM-Geräte; PivCCU2 auf RasPi

    ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

    1 Reply Last reply
    0
    • F Offline
      F Offline
      Farmer-cb
      wrote on last edited by
      #21

      Servus

      function GetResults (dpoint) {
        var end_time = new Date().getTime();
        var start_time = new Date().getTime() - dt;
        log('startzeit: '+start_time);
        log('endzeit: '+end_time);
        log(JSON.stringify(dpoint.result));
        log('id: '+dpoint.result[0].name);
      
        //log(JSON.stringify(dpoint.result)+'//'+start_time);
        //log(dpoint.result[0].id + '---//---' + dpoint.result[0].name);
        sendTo('sql.0', 'query', 'SELECT Round(Min(val),1) As MinVal FROM ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',minimum);
        sendTo('sql.0', 'query', 'SELECT Round(Max(val),1) As MaxVal FROM ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',maximum);
        }
      
      
      00:05:04.263	[info]	javascript.0 Stop script script.js.common.minmax.Aussentemp
      00:05:04.301	[info]	javascript.0 Start javascript script.js.common.minmax.Aussentemp
      00:05:04.301	[info]	javascript.0 script.js.common.minmax.Aussentemp: schedule(cron=*/5 * * * *)
      00:05:04.308	[info]	javascript.0 script.js.common.minmax.Aussentemp: 1 Name: s7.0.DBs.DB100.Aussentemp
      00:05:04.308	[info]	javascript.0 script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id as id FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
      00:05:04.309	[info]	javascript.0 script.js.common.minmax.Aussentemp: registered 0 subscriptions and 1 schedule
      00:05:04.320	[info]	javascript.0 script.js.common.minmax.Aussentemp: startzeit: 1514847904311
      00:05:04.320	[info]	javascript.0 script.js.common.minmax.Aussentemp: endzeit: 1514934304311
      00:05:04.321	[info]	javascript.0 script.js.common.minmax.Aussentemp: undefined
      00:05:04.321	[error]	javascript.0 TypeError: Cannot read property '0' of undefined at Object.GetResults [as cb] (script.js.common.minmax.Aussentemp:42:27) at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3151:71) at RedisClient. (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:104:25) at emitThree (events.js:116:13) at RedisClient.emit (events.js:194:7) at return_pub_sub (/opt/iobroker/node_modules/redis/index.js:794:18) at RedisClient.return_reply (/opt/iobroker/node_modules/redis/index.js:833:9) at JavascriptRedisParser.returnReply (/opt/iobroker/node_modules/redis/index.js:192:18) at JavascriptRedisParser.execute (/opt/iobroker/node_modules/redis-parser/lib/parser.js:574:12) at Socket. (/opt/iobroker/node_modules/redis/index.js:274:27)
      
      

      smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

      5 x Echo Show, 2 x Echo Dot

      1 Reply Last reply
      1
      • ThisoftT Offline
        ThisoftT Offline
        Thisoft
        wrote on last edited by
        #22

        Dat Ding wehrt sich aber auch - müssen wir uns rantasten… Ändere mal bitte das Codestück wie folgt:

        function SQLAbfrage (id) {
          sendTo('sql.0', 'query', 'SELECT id, name FROM datapoints WHERE name = \'' + id + '\'', function(result){
            log(JSON.stringify(result));
            //GetResults(result);
            });
        }
        

        22 HM-Geräte; PivCCU2 auf RasPi

        ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

        1 Reply Last reply
        0
        • F Offline
          F Offline
          Farmer-cb
          wrote on last edited by
          #23

          ergebnis

          08:51:29.085	[info]	javascript.0 Stop script script.js.common.minmax.Aussentemp
          08:51:29.128	[info]	javascript.0 Start javascript script.js.common.minmax.Aussentemp
          08:51:29.129	[info]	javascript.0 script.js.common.minmax.Aussentemp: schedule(cron=*/5 * * * *)
          08:51:29.130	[info]	javascript.0 script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id, name FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
          08:51:29.131	[info]	javascript.0 script.js.common.minmax.Aussentemp: registered 0 subscriptions and 1 schedule
          08:51:29.167	[info]	javascript.0 script.js.common.minmax.Aussentemp: {"error":"Error: ER_NO_DB_ERROR: No database selected"}
          
          

          mir kommt es so vor, als ob die weitergabe des Ergebnisses nicht funktioniert

          smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

          5 x Echo Show, 2 x Echo Dot

          1 Reply Last reply
          0
          • ThisoftT Offline
            ThisoftT Offline
            Thisoft
            wrote on last edited by
            #24

            Natürlich wird das Ergebnis jetzt nicht weitergegeben - hab ich ja auskommentiert 😉

            Und der springende Punkt ist:

            "Error: ER_NO_DB_ERROR: No database selected"
            

            Jetzt wo ich nochmal auf deine Screenshots schaue fällt es mir auch wie Schuppen aus den Haaren 😉

            Du hast ja gar keinen SQL-Adapter sondern nur die History aktiviert! (Hatte ich auch weiter vorn schon mal danach gefragt…)

            Dann wird das so nix. Kann ich dir aber auch aus dem Stegreif nicht weiterhelfen. History habe und hatte ich nie im Einsatz. Evtl. kann ich heute abend mal schauen was man da umbauen müsste...

            22 HM-Geräte; PivCCU2 auf RasPi

            ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

            1 Reply Last reply
            0
            • F Offline
              F Offline
              Farmer-cb
              wrote on last edited by
              #25

              Mahlzeit

              ich hab doch SQL aktiv!!

              4639_history.gif

              oder versteh ich da was falsch

              smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

              5 x Echo Show, 2 x Echo Dot

              1 Reply Last reply
              0
              • ThisoftT Offline
                ThisoftT Offline
                Thisoft
                wrote on last edited by
                #26

                Na Prost Mahlzeit 😉

                stimmt auch wieder - du hast ja beides installiert. Jetzt weiß ich aber auf Anhieb aus der Ferne auch nicht mehr zu raten…

                Die Fehlermeldung sagt aber relativ deutlich dass der sendTo-Befehl auf den Adapter "SQL.0" keine Datenbank zuordnen kann :!: :?: :?

                Bekommst du denn Werte angezeigt wenn du im Historien-Fenster auf Tabelle oder Grafik gehst?

                Ansonsten vielleicht mal noch das LogLevel des SQL-Adapters auf "Debug" stellen und schauen ob da beim Ausführen des Scripts noch was aussagekräftiges geloggt wird.

                22 HM-Geräte; PivCCU2 auf RasPi

                ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

                1 Reply Last reply
                0
                • F Offline
                  F Offline
                  Farmer-cb
                  wrote on last edited by
                  #27

                  da kommt auch nicht mehr raus:

                  javascript.0	2018-01-03 15:00:00.226	info	script.js.common.minmax.Aussentemp: {"error":"Error: ER_NO_DB_ERROR: No database selected"}
                  javascript.0	2018-01-03 15:00:00.158	info	script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id, name FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
                  javascript.0	2018-01-03 14:55:00.184	info	script.js.common.minmax.Aussentemp: {"error":"Error: ER_NO_DB_ERROR: No database selected"}
                  javascript.0	2018-01-03 14:55:00.157	info	script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id, name FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
                  javascript.0	2018-01-03 14:50:00.221	info	script.js.common.minmax.Aussentemp: {"error":"Error: ER_NO_DB_ERROR: No database selected"}
                  javascript.0	2018-01-03 14:50:00.158	info	script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id, name FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
                  
                  

                  in der Tabelle steht etwas
                  4639_sql.gif

                  smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

                  5 x Echo Show, 2 x Echo Dot

                  1 Reply Last reply
                  0
                  • ThisoftT Offline
                    ThisoftT Offline
                    Thisoft
                    wrote on last edited by
                    #28

                    Zeigst Du bitte mal die Einstellungen deines SQL-Adapters?

                    22 HM-Geräte; PivCCU2 auf RasPi

                    ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

                    1 Reply Last reply
                    0
                    • H Offline
                      H Offline
                      Haus
                      wrote on last edited by
                      #29

                      @Farmer-cb:

                      da kommt auch nicht mehr raus:

                      javascript.0	2018-01-03 15:00:00.226	info	script.js.common.minmax.Aussentemp: {"error":"Error: ER_NO_DB_ERROR: No database selected"}
                      javascript.0	2018-01-03 15:00:00.158	info	script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id, name FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
                      javascript.0	2018-01-03 14:55:00.184	info	script.js.common.minmax.Aussentemp: {"error":"Error: ER_NO_DB_ERROR: No database selected"}
                      javascript.0	2018-01-03 14:55:00.157	info	script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id, name FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
                      javascript.0	2018-01-03 14:50:00.221	info	script.js.common.minmax.Aussentemp: {"error":"Error: ER_NO_DB_ERROR: No database selected"}
                      javascript.0	2018-01-03 14:50:00.158	info	script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT id, name FROM datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
                      
                      

                      in der Tabelle steht etwas

                      sql.gif `

                      sendTo('sql.0', 'query', 'SELECT id, name FROM iobroker.datapoints WHERE nam…....

                      js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                      admin: 3.6.0

                      javascript: 4.1.10

                      web: 2.4.1 vis: 1.1.10

                      cloud: 2.6.2

                      Server: DELL FX170 / linux: Debian 9.5 Stretch

                      Adapter: MegaD-2561, Mega-ES…

                      1 Reply Last reply
                      0
                      • ThisoftT Offline
                        ThisoftT Offline
                        Thisoft
                        wrote on last edited by
                        #30

                        @Haus:

                        sendTo('sql.0', 'query', 'SELECT id, name FROM iobroker.datapoints WHERE nam….... `

                        JA, das wäre einen Versuch wert. Unter anderem deshalb hatte ich ja (bisher erfolglos 😉 ) gefragt welche Db denn der TE im Einsatz hat…

                        22 HM-Geräte; PivCCU2 auf RasPi

                        ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          mctom
                          wrote on last edited by
                          #31

                          jetzt häng ich mich auch noch mal dran…

                          folgenden Code habe ich jetzt als Test im Einsatz:

                          function SQLAbfrage () {
                          log(id);
                          
                            sendTo('sql.0', 'query', 'SELECT id, name FROM iobroker.datapoints WHERE name = \'' + id + '\'', function(result){
                              log(JSON.stringify(result));
                              // GetResults(result);
                              });
                          
                          //  sendTo('sql.0', 'query', 'SELECT * FROM iobroker.datapoints WHERE name = \'' + id + '\'', GetResults);
                          }
                          

                          und das kommt im LOG:

                          16:50:00.943	[info]	javascript.1 script.js.Test.Test2: hm-rpc.0.IEQ0023353.1.TEMPERATURE
                          16:50:00.947	[info]	javascript.1 script.js.Test.Test2: {"error":null,"result":[{"id":21,"name":"hm-rpc.0.IEQ0023353.1.TEMPERATURE"}]}
                          

                          Woher kommt der Error?

                          Was mach ich falsch ?

                          Gruß

                          Michael

                          1 Reply Last reply
                          0
                          • H Offline
                            H Offline
                            Haus
                            wrote on last edited by
                            #32

                            @mctom:

                            jetzt häng ich mich auch noch mal dran…

                            folgenden Code habe ich jetzt als Test im Einsatz:

                            function SQLAbfrage () {
                            log(id);
                            
                              sendTo('sql.0', 'query', 'SELECT id, name FROM iobroker.datapoints WHERE name = \'' + id + '\'', function(result){
                                log(JSON.stringify(result));
                                // GetResults(result);
                                });
                            
                            //  sendTo('sql.0', 'query', 'SELECT * FROM iobroker.datapoints WHERE name = \'' + id + '\'', GetResults);
                            }
                            

                            und das kommt im LOG:

                            16:50:00.943	[info]	javascript.1 script.js.Test.Test2: hm-rpc.0.IEQ0023353.1.TEMPERATURE
                            16:50:00.947	[info]	javascript.1 script.js.Test.Test2: {"error":null,"result":[{"id":21,"name":"hm-rpc.0.IEQ0023353.1.TEMPERATURE"}]}
                            

                            Woher kommt der Error?

                            Was mach ich falsch ?

                            Gruß

                            Michael `

                            createState('Statistik.Luft1.Max24', 0);
                            createState('Statistik.Luft1.Min24', 0);
                            
                            var id = "hm-rpc.0.IEQ0023353.1.TEMPERATURE";
                            var maxid = 'javascript.0.Statistik.Luft1.Max24';
                            var minid = 'javascript.0.Statistik.Luft1.Min24';
                            var dt = 24;//Zeitraum in Stunden
                                dt = dt*3600*1000;
                            
                            schedule("*/5 * * * *", function(){
                                SQLAbfrage(id);
                            });
                            
                            SQLAbfrage(id);
                            
                            // maximum, minimum
                            function minimum(result) {
                                ///log(JSON.stringify(result.result));
                                setState(minid, result.result[0].MinVal);
                            }
                            
                            function maximum(result) {
                                ///log('Fn Max'+ JSON.stringify(result.result));
                                setState(maxid, result.result[0].MaxVal);
                            }
                            
                            function SQLAbfrage () {
                                ///log(id);
                                sendTo('sql.0', 'query', 'SELECT * FROM iobroker.datapoints WHERE name = \'' + id + '\'', GetResults);
                            }
                            
                            function GetResults (dpoint) {
                                var end_time = new Date().getTime();
                                var start_time = new Date().getTime() - dt;
                                ///log(JSON.stringify(dpoint.result)+'//'+start_time);
                                ///log(dpoint.result[0].id + '---//---' + dpoint.result[0].name);
                                sendTo('sql.0', 'query', 'SELECT Round(Min(val),1) As MinVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',minimum);
                                sendTo('sql.0', 'query', 'SELECT Round(Max(val),1) As MaxVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',maximum);
                            }
                            

                            js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

                            admin: 3.6.0

                            javascript: 4.1.10

                            web: 2.4.1 vis: 1.1.10

                            cloud: 2.6.2

                            Server: DELL FX170 / linux: Debian 9.5 Stretch

                            Adapter: MegaD-2561, Mega-ES…

                            1 Reply Last reply
                            0
                            • F Offline
                              F Offline
                              Farmer-cb
                              wrote on last edited by
                              #33

                              juhu

                              so funktioniert es jetzt

                              var id = "s7.0.DBs.DB100.Aussentemp";
                              
                              //var maxid = 'javascript.0.Statistik.Luft1.Max24';
                              //var minid = 'javascript.0.Statistik.Luft1.Min24';
                              var maxid = "javascript.0.scriptEnabled.common.minmax.Statistik.Aussentemp.max24";/*max24*/
                              var minid = "javascript.0.scriptEnabled.common.minmax.Statistik.Aussentemp.min24";/*min24*/
                              
                              var dt = 24;//Zeitraum in Stunden
                                dt = dt*3600*1000;
                              
                              schedule("*/5 * * * *", function(){SQLAbfrage(id);});
                              
                              SQLAbfrage(id);
                              
                              // minimum
                              function minimum(result) 
                                  {
                                    log('Fn Min'+JSON.stringify(result.result));
                                    setState(minid, result.result[0].MinVal);
                                  }
                              
                              // maximum
                              function maximum(result) 
                                  {
                                    log('Fn Max'+ JSON.stringify(result.result));
                                    setState(maxid, result.result[0].MaxVal);
                                  }
                              
                              function SQLAbfrage () 
                                  {
                                  log('Name: '+id);
                                  sendTo('sql.0', 'query', 'SELECT * FROM iobroker.datapoints WHERE name = \'' + id + '\'', GetResults);
                                  }
                              
                              function GetResults (dpoint) 
                                  {
                                    var end_time = new Date().getTime();
                                    var start_time = new Date().getTime() - dt;
                                    log('startzeit: '+start_time);
                                    log('endzeit: '+end_time);
                                    log(JSON.stringify(dpoint.result));
                                    log('id: '+dpoint.result[0].name);
                              
                                    //log(JSON.stringify(dpoint.result)+'//'+start_time);
                                    //log(dpoint.result[0].id + '---//---' + dpoint.result[0].name);
                                    sendTo('sql.0', 'query', 'SELECT Round(Min(val),1) As MinVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',minimum);
                                    sendTo('sql.0', 'query', 'SELECT Round(Max(val),1) As MaxVal FROM iobroker.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',maximum);
                              
                                  }
                              
                              

                              meldung im Log:

                              18:26:27.313	[info]	javascript.0 Stop script script.js.common.minmax.Aussentemp
                              18:26:27.352	[info]	javascript.0 Start javascript script.js.common.minmax.Aussentemp
                              18:26:27.353	[info]	javascript.0 script.js.common.minmax.Aussentemp: schedule(cron=*/5 * * * *)
                              18:26:27.354	[info]	javascript.0 script.js.common.minmax.Aussentemp: Name: s7.0.DBs.DB100.Aussentemp
                              18:26:27.354	[info]	javascript.0 script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT * FROM iobroker.datapoints WHERE name = 's7.0.DBs.DB100.Aussentemp'")
                              18:26:27.355	[info]	javascript.0 script.js.common.minmax.Aussentemp: registered 0 subscriptions and 1 schedule
                              18:26:27.472	[info]	javascript.0 script.js.common.minmax.Aussentemp: startzeit: 1514913987450
                              18:26:27.472	[info]	javascript.0 script.js.common.minmax.Aussentemp: endzeit: 1515000387450
                              18:26:27.473	[info]	javascript.0 script.js.common.minmax.Aussentemp: [{"id":11,"name":"s7.0.DBs.DB100.Aussentemp","type":0}]
                              18:26:27.474	[info]	javascript.0 script.js.common.minmax.Aussentemp: id: s7.0.DBs.DB100.Aussentemp
                              18:26:27.475	[info]	javascript.0 script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT Round(Min(val),1) As MinVal FROM iobroker.ts_number WHERE ts >= 1514913987450 AND id=11 GROUP BY id")
                              18:26:27.475	[info]	javascript.0 script.js.common.minmax.Aussentemp: sendTo(adapter=sql.0, cmd=query, msg="SELECT Round(Max(val),1) As MaxVal FROM iobroker.ts_number WHERE ts >= 1514913987450 AND id=11 GROUP BY id")
                              18:26:28.007	[info]	javascript.0 script.js.common.minmax.Aussentemp: Fn Max[{"MaxVal":6.2}]
                              18:26:28.008	[info]	javascript.0 script.js.common.minmax.Aussentemp: setForeignState(id=javascript.0.scriptEnabled.common.minmax.Statistik.Aussentemp.max24, state=6.2)
                              18:26:28.029	[info]	javascript.0 script.js.common.minmax.Aussentemp: Fn Min[{"MinVal":1.5}]
                              18:26:28.030	[info]	javascript.0 script.js.common.minmax.Aussentemp: setForeignState(id=javascript.0.scriptEnabled.common.minmax.Statistik.Aussentemp.min24, state=1.5)
                              
                              

                              finde keine error ausgabe, sollte also funzn

                              Vielen Dank bis hierhin schon mal und für die Geduld 😄

                              hab jetzt nur noch diese Fehlermeldung in der Log 😢 :

                              admin.0	2018-01-03 18:26:28.047	error	change ID is empty: {"common":{"enabled":1.5},"from":"system.adapter.javascript.0","ts":1515000388026,"_id":null}
                              cloud.0	2018-01-03 18:26:28.037	error	change ID is empty: {"common":{"enabled":1.5},"from":"system.adapter.javascript.0","ts":1515000388026,"_id":null}
                              sql.0	2018-01-03 18:26:28.036	error	change ID is empty: {"common":{"enabled":1.5},"from":"system.adapter.javascript.0","ts":1515000388026,"_id":null}
                              javascript.0	2018-01-03 18:26:28.035	error	change ID is empty: {"common":{"enabled":1.5},"from":"system.adapter.javascript.0","ts":1515000388026,"_id":null}
                              web.0	2018-01-03 18:26:28.033	error	change ID is empty: {"common":{"enabled":1.5},"from":"system.adapter.javascript.0","ts":1515000388026,"_id":null}
                              sql.0	2018-01-03 18:26:28.021	error	change ID is empty: {"common":{"enabled":6.2},"from":"system.adapter.javascript.0","ts":1515000388010,"_id":null}
                              javascript.0	2018-01-03 18:26:28.023	error	change ID is empty: {"common":{"enabled":6.2},"from":"system.adapter.javascript.0","ts":1515000388010,"_id":null}
                              cloud.0	2018-01-03 18:26:28.022	error	change ID is empty: {"common":{"enabled":6.2},"from":"system.adapter.javascript.0","ts":1515000388010,"_id":null}
                              web.0	2018-01-03 18:26:28.018	error	change ID is empty: {"common":{"enabled":6.2},"from":"system.adapter.javascript.0","ts":1515000388010,"_id":null}
                              
                              

                              die Werte stehen aber im Datenpunkt
                              4639_datenpunkt_minmax.gif

                              mach ich da noch etwas verkehrt

                              hab die error-meldungen mal in ein eigenen Thread gesetzt

                              http://forum.iobroker.net/viewtopic.php?f=8&t=10313

                              smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

                              5 x Echo Show, 2 x Echo Dot

                              1 Reply Last reply
                              1
                              • D Offline
                                D Offline
                                der_Auge
                                wrote on last edited by Jey Cee
                                #34

                                super

                                nun habe ich es verstanden.

                                der Datenbankname der im Adapter hinterlegt wurde muss mit angegeben werden.

                                // -----------------------------------------------------------------------------
                                // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
                                // -----------------------------------------------------------------------------
                                // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
                                var id = "javascript.0.eBus.Temperatur.FlowTemp"/*Vorlauf */;
                                // ----- Datenpunkte in die gespeichert werden soll ----------------------------
                                var maxid = 'javascript.0.Statistik.FlowTemp.Max24';
                                var minid = 'javascript.0.Statistik.FlowTemp.Min24';
                                var dt = 24;                // Zeitraum in Stunden
                                   dt = dt*3600*1000;      // Zeitraum umrechnen in ??
                                // ----- Datenpunkte anlegen ---------------------------------------------------
                                createState(maxid, " ");
                                createState(minid, " ");
                                log('1\. ) Datenpunkte angelegt ');
                                SQLAbfrage(id);
                                //-----  SQL-Abfrage durchführen
                                function SQLAbfrage () {
                                   log('2\. ) Datenpunkt => ' + id);
                                   log('2a.) Abfrage    => SELECT * FROM datapoints WHERE name = \'' + id + '\'');
                                   sendTo('sql.0', 'query', 'SELECT * FROM ioBmaster.datapoints WHERE name = \'' + id + '\'', GetResults);
                                }
                                //---------------------------------------
                                function GetResults (dpoint) {
                                   log('3\. ) Funktion -> GetResults aufrufen');
                                   var end_time =   new Date().getTime();
                                   var start_time = new Date().getTime() - dt;
                                   log('3a.) Startzeit : ' + start_time);
                                   log('3b.) Endzeit   : ' + end_time);
                                   log('     Datenpunkt: ' + dpoint.result);
                                   log('3c.) result    : ' + JSON.stringify(dpoint.result) + ' -//- ' + start_time);
                                   log('     Datenpunkt: ' + dpoint.result[0].id + ' ---//--- ' + dpoint.result[0].name);
                                   sendTo('sql.0', 'query', 'SELECT Round(Min(val),1) As MinVal FROM ioBmaster.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',minimum);
                                   sendTo('sql.0', 'query', 'SELECT Round(Max(val),1) As MaxVal FROM ioBmaster.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',maximum);
                                }
                                //-----  Werte schreiben (maximum, minimum)
                                //-----  minimum
                                function minimum(result) {
                                 log('min )Funktion -> ' + JSON.stringify(result.result));
                                 setState(minid, result.result[0].MinVal);
                                }
                                //-----  maximum
                                function maximum(result) {
                                   log('max )Funktion -> ' + JSON.stringify(result.result));
                                   setState(maxid, result.result[0].MaxVal);
                                   log('---- fertig -----------------------------------------');
                                
                                }
                                //---------------------------------------
                                // ----- Funktion jede Minute aufrufen
                                schedule("*/1 * * * *", function(){SQLAbfrage(id);});
                                

                                Nun kann ich weiter versuchen die Tages, Wochen, Jahres-Werte aus der Datenbank abzufragen

                                Gruß

                                Jürgen

                                Master: DN2820FYKH (4GB) Linux NUC 4.4.0-22-generic #40-Ubuntu x86_64

                                Slave: Linux RPi2-1 4.1.19-v7+ #858 v4.4.3 # 2.15.1

                                SQL-DB : Linux DS 3.10.77 #7321 x86_64 synology412+

                                Test : DS916+ VM Debian

                                Test : Tinker mit piVCCU

                                1 Reply Last reply
                                0
                                • ThisoftT Offline
                                  ThisoftT Offline
                                  Thisoft
                                  wrote on last edited by
                                  #35

                                  @der_Auge:

                                  der Datenbankname der im Adapter hinterlegt wurde muss mit angegeben werden. `

                                  Könnt Ihr mir bitte noch verraten welche Db ihr verwendet? Bei meiner (MSSQL) darf ich den nämlich nicht mit angeben sonst sagt er mir die Tabelle sei unbekannt.

                                  22 HM-Geräte; PivCCU2 auf RasPi

                                  ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

                                  1 Reply Last reply
                                  0
                                  • D Offline
                                    D Offline
                                    der_Auge
                                    wrote on last edited by
                                    #36

                                    @Thisoft:

                                    @der_Auge:

                                    der Datenbankname der im Adapter hinterlegt wurde muss mit angegeben werden. `

                                    Könnt Ihr mir bitte noch verraten welche Db ihr verwendet? Bei meiner (MSSQL) darf ich den nämlich nicht mit angeben sonst sagt er mir die Tabelle sei unbekannt. `
                                    3361_sql_db.png

                                    Master: DN2820FYKH (4GB) Linux NUC 4.4.0-22-generic #40-Ubuntu x86_64

                                    Slave: Linux RPi2-1 4.1.19-v7+ #858 v4.4.3 # 2.15.1

                                    SQL-DB : Linux DS 3.10.77 #7321 x86_64 synology412+

                                    Test : DS916+ VM Debian

                                    Test : Tinker mit piVCCU

                                    1 Reply Last reply
                                    0
                                    • F Offline
                                      F Offline
                                      Farmer-cb
                                      wrote on last edited by
                                      #37

                                      Mahlzeit

                                      ich nutze mysql, da gehts

                                      smartes Haus durch Digitalstrom, enocean, SPS S7-1215, Homematik, Motioneye, iobroker auf einem HP-mini mit Proxmox

                                      5 x Echo Show, 2 x Echo Dot

                                      1 Reply Last reply
                                      0
                                      • Q Offline
                                        Q Offline
                                        Qlink
                                        wrote on last edited by
                                        #38

                                        @der_Auge:

                                        Nun kann ich weiter versuchen die Tages, Wochen, Jahres-Werte aus der Datenbank abzufragen

                                        Gruß

                                        Jürgen `

                                        Hi Jürgen,

                                        könntest du dein Script hier reinstellen, sobald du es um die Tages, Wochen und Jahres Werte erweitert hast ?

                                        Das wäre toll.

                                        Beste Grüße

                                        1 Reply Last reply
                                        0
                                        • D Offline
                                          D Offline
                                          der_Auge
                                          wrote on last edited by
                                          #39

                                          @Qlink:

                                          @der_Auge:

                                          Nun kann ich weiter versuchen die Tages, Wochen, Jahres-Werte aus der Datenbank abzufragen

                                          Gruß

                                          Jürgen `
                                          Hi Jürgen,

                                          könntest du dein Script hier reinstellen, sobald du es um die Tages, Wochen und Jahres Werte erweitert hast ?

                                          Das wäre toll.

                                          Beste Grüße `

                                          Das werde ich machen.

                                          Habe aber bereits festgestellt, das es nicht so einfach ist mit den SQL Befehlen.

                                          sendTo('sql.0', 'query', 'SELECT * As MinVal FROM ioBmaster.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',minimum);
                                          sendTo('sql.0', 'query', 'SELECT * As MaxVal FROM ioBmaster.ts_number WHERE ts >= ' + start_time + ' AND id=' + dpoint.result[0].id + ' GROUP BY id',maximum);
                                          
                                          

                                          Hiermit muss ich ja die Werte "von" / "bis" abfragen

                                          Vielleicht hat ja jemand eine Idee?

                                          Werde es aber weiter versuchen.

                                          Gruß

                                          Jürgen

                                          Master: DN2820FYKH (4GB) Linux NUC 4.4.0-22-generic #40-Ubuntu x86_64

                                          Slave: Linux RPi2-1 4.1.19-v7+ #858 v4.4.3 # 2.15.1

                                          SQL-DB : Linux DS 3.10.77 #7321 x86_64 synology412+

                                          Test : DS916+ VM Debian

                                          Test : Tinker mit piVCCU

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          398

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe