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. JavaScript
  5. Max /Mintemperatur aus influxdb mit gethistory

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Max /Mintemperatur aus influxdb mit gethistory

Scheduled Pinned Locked Moved JavaScript
javascriptmonitoring
18 Posts 5 Posters 3.3k Views 2 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.
  • S Offline
    S Offline
    sonystar
    wrote on last edited by
    #3

    Hallo,

    ich bekomme das Script aus dem Link mit einer InfluxDB nicht zum laufen.

    ! ````
    // -----------------------------------------------------------------------------
    // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
    // -----------------------------------------------------------------------------
    ! // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
    var id = "javascript.0.Wetterstation.Aussentemperatur";
    // ----- Datenpunkte in die gespeichert werden soll ----------------------------
    var maxid = 'javascript.0.Statistik.Aussentemp.Max24';
    var minid = 'javascript.0.Statistik.Aussentemp.Min24';
    var dt = 24; // Zeitraum in Stunden
    dt = dt36001000; // 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('influxdb.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('influxdb.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('influxdb.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 -----------------------------------------');
    

    Endet mit Error:

    javascript.0	2020-12-18 22:04:12.920	info	(3004) Stop script script.js.common.Skript_1
    javascript.0	2020-12-18 22:04:09.753	error	(3004) at process._tickCallback (internal/process/next_tick.js:68:7)
    javascript.0	2020-12-18 22:04:09.753	error	(3004) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
    javascript.0	2020-12-18 22:04:09.753	error	(3004) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
    javascript.0	2020-12-18 22:04:09.753	error	(3004) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17)
    javascript.0	2020-12-18 22:04:09.753	error	(3004) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17)
    javascript.0	2020-12-18 22:04:09.752	error	(3004) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17)
    javascript.0	2020-12-18 22:04:09.752	error	(3004) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
    javascript.0	2020-12-18 22:04:09.752	error	(3004) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
    javascript.0	2020-12-18 22:04:09.752	error	(3004) at Object.createScript (vm.js:277:10)
    javascript.0	2020-12-18 22:04:09.752	error	(3004) at new Script (vm.js:83:7)
    javascript.0	2020-12-18 22:04:09.752	error	(3004) SyntaxError: Unexpected token var
    javascript.0	2020-12-18 22:04:09.752	error	(3004) ^^^
    javascript.0	2020-12-18 22:04:09.752	error	(3004) var id = "javascript.0.Wetterstation.Aussentemperatur";
    javascript.0	2020-12-18 22:04:09.752	error	at script.js.common.Skript_1:6
    javascript.0	2020-12-18 22:04:09.752	error	(3004) script.js.common.Skript_1 compile failed:
    javascript.0	2020-12-18 22:04:09.752	info	(3004) Start javascript script.js.common.Skript_1
    

    Kannst du mir helfen?

    SegwayS paul53P 2 Replies Last reply
    0
    • S sonystar

      Hallo,

      ich bekomme das Script aus dem Link mit einer InfluxDB nicht zum laufen.

      ! ````
      // -----------------------------------------------------------------------------
      // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
      // -----------------------------------------------------------------------------
      ! // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
      var id = "javascript.0.Wetterstation.Aussentemperatur";
      // ----- Datenpunkte in die gespeichert werden soll ----------------------------
      var maxid = 'javascript.0.Statistik.Aussentemp.Max24';
      var minid = 'javascript.0.Statistik.Aussentemp.Min24';
      var dt = 24; // Zeitraum in Stunden
      dt = dt36001000; // 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('influxdb.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('influxdb.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('influxdb.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 -----------------------------------------');
      

      Endet mit Error:

      javascript.0	2020-12-18 22:04:12.920	info	(3004) Stop script script.js.common.Skript_1
      javascript.0	2020-12-18 22:04:09.753	error	(3004) at process._tickCallback (internal/process/next_tick.js:68:7)
      javascript.0	2020-12-18 22:04:09.753	error	(3004) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
      javascript.0	2020-12-18 22:04:09.753	error	(3004) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
      javascript.0	2020-12-18 22:04:09.753	error	(3004) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17)
      javascript.0	2020-12-18 22:04:09.753	error	(3004) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17)
      javascript.0	2020-12-18 22:04:09.752	error	(3004) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17)
      javascript.0	2020-12-18 22:04:09.752	error	(3004) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
      javascript.0	2020-12-18 22:04:09.752	error	(3004) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
      javascript.0	2020-12-18 22:04:09.752	error	(3004) at Object.createScript (vm.js:277:10)
      javascript.0	2020-12-18 22:04:09.752	error	(3004) at new Script (vm.js:83:7)
      javascript.0	2020-12-18 22:04:09.752	error	(3004) SyntaxError: Unexpected token var
      javascript.0	2020-12-18 22:04:09.752	error	(3004) ^^^
      javascript.0	2020-12-18 22:04:09.752	error	(3004) var id = "javascript.0.Wetterstation.Aussentemperatur";
      javascript.0	2020-12-18 22:04:09.752	error	at script.js.common.Skript_1:6
      javascript.0	2020-12-18 22:04:09.752	error	(3004) script.js.common.Skript_1 compile failed:
      javascript.0	2020-12-18 22:04:09.752	info	(3004) Start javascript script.js.common.Skript_1
      

      Kannst du mir helfen?

      SegwayS Offline
      SegwayS Offline
      Segway
      wrote on last edited by
      #4

      @sonystar sagte in Max /Mintemperatur aus influxdb mit gethistory:

      javascript.0.Wetterstation.Aussentemperatur

      Mhhh error 3004 - unexpected token sagt mir grad nix.

      Gibt es den denn Datenpunkt javascript.0.Wetterstation.Aussentemperatur ?
      Wenn ja wie ist dieser definiert ?

      Gruß Dirk
      Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

      1 Reply Last reply
      0
      • S sonystar

        Hallo,

        ich bekomme das Script aus dem Link mit einer InfluxDB nicht zum laufen.

        ! ````
        // -----------------------------------------------------------------------------
        // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
        // -----------------------------------------------------------------------------
        ! // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
        var id = "javascript.0.Wetterstation.Aussentemperatur";
        // ----- Datenpunkte in die gespeichert werden soll ----------------------------
        var maxid = 'javascript.0.Statistik.Aussentemp.Max24';
        var minid = 'javascript.0.Statistik.Aussentemp.Min24';
        var dt = 24; // Zeitraum in Stunden
        dt = dt36001000; // 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('influxdb.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('influxdb.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('influxdb.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 -----------------------------------------');
        

        Endet mit Error:

        javascript.0	2020-12-18 22:04:12.920	info	(3004) Stop script script.js.common.Skript_1
        javascript.0	2020-12-18 22:04:09.753	error	(3004) at process._tickCallback (internal/process/next_tick.js:68:7)
        javascript.0	2020-12-18 22:04:09.753	error	(3004) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
        javascript.0	2020-12-18 22:04:09.753	error	(3004) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
        javascript.0	2020-12-18 22:04:09.753	error	(3004) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17)
        javascript.0	2020-12-18 22:04:09.753	error	(3004) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17)
        javascript.0	2020-12-18 22:04:09.752	error	(3004) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17)
        javascript.0	2020-12-18 22:04:09.752	error	(3004) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
        javascript.0	2020-12-18 22:04:09.752	error	(3004) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
        javascript.0	2020-12-18 22:04:09.752	error	(3004) at Object.createScript (vm.js:277:10)
        javascript.0	2020-12-18 22:04:09.752	error	(3004) at new Script (vm.js:83:7)
        javascript.0	2020-12-18 22:04:09.752	error	(3004) SyntaxError: Unexpected token var
        javascript.0	2020-12-18 22:04:09.752	error	(3004) ^^^
        javascript.0	2020-12-18 22:04:09.752	error	(3004) var id = "javascript.0.Wetterstation.Aussentemperatur";
        javascript.0	2020-12-18 22:04:09.752	error	at script.js.common.Skript_1:6
        javascript.0	2020-12-18 22:04:09.752	error	(3004) script.js.common.Skript_1 compile failed:
        javascript.0	2020-12-18 22:04:09.752	info	(3004) Start javascript script.js.common.Skript_1
        

        Kannst du mir helfen?

        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by paul53
        #5

        @sonystar
        Das Script ist verstümmelt. Lösche alle "! " am Anfang der Zeilen, in denen es vorhanden ist.
        Zeile 11

        dt = dt36001000; // Zeitraum umrechnen in ??
        

        ändern

        dt = dt * 3600 * 1000; // Zeitraum umrechnen in ms
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Reply Last reply
        0
        • S Offline
          S Offline
          sonystar
          wrote on last edited by sonystar
          #6

          @Segway @paul53
          Dankeschön schonmal.
          Jetzt komme ich schonmal ein paar Zeilen weiter:

          javascript.0	2020-12-18 22:14:53.647	info	(3004) Stop script script.js.common.Skript_1
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at process._tickCallback (internal/process/next_tick.js:68:7)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at Object.createScript (vm.js:277:10)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) at new Script (vm.js:83:7)
          javascript.0	2020-12-18 22:14:51.485	error	(3004) SyntaxError: missing ) after argument list
          javascript.0	2020-12-18 22:14:51.485	error	(3004) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
          javascript.0	2020-12-18 22:14:51.485	error	(3004) log('2a.) Abfrage => SELECT * FROM datapoints WHERE name = '' + id + ''');
          javascript.0	2020-12-18 22:14:51.485	error	at script.js.common.Skript_1:20
          javascript.0	2020-12-18 22:14:51.485	error	(3004) script.js.common.Skript_1 compile failed:
          javascript.0	2020-12-18 22:14:51.484	info	(3004) Start javascript script.js.common.Skript_1
          

          Scheint eine Klammer zu fehlen? Wo muss ich die setzten?

          SegwayS 1 Reply Last reply
          0
          • S sonystar

            @Segway @paul53
            Dankeschön schonmal.
            Jetzt komme ich schonmal ein paar Zeilen weiter:

            javascript.0	2020-12-18 22:14:53.647	info	(3004) Stop script script.js.common.Skript_1
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at process._tickCallback (internal/process/next_tick.js:68:7)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1140:17)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1559:17)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1503:37)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1280:28)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at Object.createScript (vm.js:277:10)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) at new Script (vm.js:83:7)
            javascript.0	2020-12-18 22:14:51.485	error	(3004) SyntaxError: missing ) after argument list
            javascript.0	2020-12-18 22:14:51.485	error	(3004) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
            javascript.0	2020-12-18 22:14:51.485	error	(3004) log('2a.) Abfrage => SELECT * FROM datapoints WHERE name = '' + id + ''');
            javascript.0	2020-12-18 22:14:51.485	error	at script.js.common.Skript_1:20
            javascript.0	2020-12-18 22:14:51.485	error	(3004) script.js.common.Skript_1 compile failed:
            javascript.0	2020-12-18 22:14:51.484	info	(3004) Start javascript script.js.common.Skript_1
            

            Scheint eine Klammer zu fehlen? Wo muss ich die setzten?

            SegwayS Offline
            SegwayS Offline
            Segway
            wrote on last edited by
            #7

            @sonystar

            habe meines mal kopiert. sieht so aus

            // -----------------------------------------------------------------------------
            // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
            // -----------------------------------------------------------------------------
            
            // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
            var id = "hm-rpc.1.KEQxxxxxxx.1.TEMPERATURE";
            // ----- Datenpunkte in die gespeichert werden soll ----------------------------
            var maxid = 'javascript.0.Datenpunkte.Temp_Aussen.Statistik_Luft_Aussen_Max24';
            var minid = 'javascript.0.Datenpunkte.Temp_Aussen.Statistik_Luft_Aussen_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 iobroker.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 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);
            }
            
            //-----  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("*/5 * * * *", function(){SQLAbfrage(id);});
            

            Gruß Dirk
            Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

            S 1 Reply Last reply
            0
            • SegwayS Segway

              @sonystar

              habe meines mal kopiert. sieht so aus

              // -----------------------------------------------------------------------------
              // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
              // -----------------------------------------------------------------------------
              
              // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
              var id = "hm-rpc.1.KEQxxxxxxx.1.TEMPERATURE";
              // ----- Datenpunkte in die gespeichert werden soll ----------------------------
              var maxid = 'javascript.0.Datenpunkte.Temp_Aussen.Statistik_Luft_Aussen_Max24';
              var minid = 'javascript.0.Datenpunkte.Temp_Aussen.Statistik_Luft_Aussen_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 iobroker.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 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);
              }
              
              //-----  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("*/5 * * * *", function(){SQLAbfrage(id);});
              
              S Offline
              S Offline
              sonystar
              wrote on last edited by
              #8

              @Segway

              Nachdem ich das Script jetzt angepasst habe auf Influx kommt folgendes raus:

              javascript.0	2020-12-18 22:36:36.669	warn	at processImmediate (timers.js:658:5)
              javascript.0	2020-12-18 22:36:36.669	warn	at tryOnImmediate (timers.js:676:5)
              javascript.0	2020-12-18 22:36:36.669	warn	at runCallback (timers.js:705:18)
              javascript.0	2020-12-18 22:36:36.669	warn	at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:234:41)
              javascript.0	2020-12-18 22:36:36.669	warn	at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5297:71)
              javascript.0	2020-12-18 22:36:36.669	warn	at Object.GetResults [as cb] (script.js.common.Skript_3:37:154)
              javascript.0	2020-12-18 22:36:36.669	warn	(3004) TypeError: Cannot read property 'id' of undefined
              javascript.0	2020-12-18 22:36:36.669	warn	(3004) States system pmessage io.messagebox.system.adapter.javascript.0 {"command":"query","message":{"result":[],"error":"Invalid call"},"from":"system.adapter.influxdb.0","callback":{"message":"SEL
              influxdb.0	2020-12-18 22:36:36.664	error	(3024) query: Error: error parsing query: found NAME, expected identifier, string, number, bool at line 1, char 41
              javascript.0	2020-12-18 22:36:36.663	info	(3004) script.js.common.Skript_3: registered 0 subscriptions and 1 schedule
              javascript.0	2020-12-18 22:36:36.652	info	(3004) Start javascript script.js.common.Skript_3
              

              Hier das Script:

              // -----------------------------------------------------------------------------
              // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
              // -----------------------------------------------------------------------------
               
              // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
              var id = "javascript.0.Wetterstation.Aussentemperatur";
              // ----- Datenpunkte in die gespeichert werden soll ----------------------------
              var maxid = 'javascript.0.Statistik.Temp_Aussen_Max24';
              var minid = 'javascript.0.Statistik.Temp_Aussen_Min24';
              var dt = 24;                // Zeitraum in Stunden
                  dt = dt*3600*1000;      // Zeitraum umrechnen in ms
               
              // ----- 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('influxdb.0', 'query', 'SELECT * FROM iobroker.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('influxdb.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('influxdb.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);
              }
               
              //-----  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("*/5 * * * *", function(){SQLAbfrage(id);});
              
              
              SegwayS 1 Reply Last reply
              0
              • S sonystar

                @Segway

                Nachdem ich das Script jetzt angepasst habe auf Influx kommt folgendes raus:

                javascript.0	2020-12-18 22:36:36.669	warn	at processImmediate (timers.js:658:5)
                javascript.0	2020-12-18 22:36:36.669	warn	at tryOnImmediate (timers.js:676:5)
                javascript.0	2020-12-18 22:36:36.669	warn	at runCallback (timers.js:705:18)
                javascript.0	2020-12-18 22:36:36.669	warn	at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:234:41)
                javascript.0	2020-12-18 22:36:36.669	warn	at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5297:71)
                javascript.0	2020-12-18 22:36:36.669	warn	at Object.GetResults [as cb] (script.js.common.Skript_3:37:154)
                javascript.0	2020-12-18 22:36:36.669	warn	(3004) TypeError: Cannot read property 'id' of undefined
                javascript.0	2020-12-18 22:36:36.669	warn	(3004) States system pmessage io.messagebox.system.adapter.javascript.0 {"command":"query","message":{"result":[],"error":"Invalid call"},"from":"system.adapter.influxdb.0","callback":{"message":"SEL
                influxdb.0	2020-12-18 22:36:36.664	error	(3024) query: Error: error parsing query: found NAME, expected identifier, string, number, bool at line 1, char 41
                javascript.0	2020-12-18 22:36:36.663	info	(3004) script.js.common.Skript_3: registered 0 subscriptions and 1 schedule
                javascript.0	2020-12-18 22:36:36.652	info	(3004) Start javascript script.js.common.Skript_3
                

                Hier das Script:

                // -----------------------------------------------------------------------------
                // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
                // -----------------------------------------------------------------------------
                 
                // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
                var id = "javascript.0.Wetterstation.Aussentemperatur";
                // ----- Datenpunkte in die gespeichert werden soll ----------------------------
                var maxid = 'javascript.0.Statistik.Temp_Aussen_Max24';
                var minid = 'javascript.0.Statistik.Temp_Aussen_Min24';
                var dt = 24;                // Zeitraum in Stunden
                    dt = dt*3600*1000;      // Zeitraum umrechnen in ms
                 
                // ----- 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('influxdb.0', 'query', 'SELECT * FROM iobroker.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('influxdb.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('influxdb.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);
                }
                 
                //-----  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("*/5 * * * *", function(){SQLAbfrage(id);});
                
                
                SegwayS Offline
                SegwayS Offline
                Segway
                wrote on last edited by
                #9

                @sonystar
                Irgendwas passt da nicht.

                Den Datenpunkt den du auslesen möchtest ist ja unter javascript .0 usw
                Macht das Sinn?
                Normalerweise kommt der Datenpunkt doch von einem Messgerät wie zB bei mir von einem Homemtaic Temp/Humidity Gerät! Dieses lese ich dann aus.
                Dein Datenpunkt ist ja anscheinend selber angelegt daher die Frage wie das konfiguriert ist

                Gruß Dirk
                Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                S 1 Reply Last reply
                0
                • SegwayS Segway

                  @sonystar
                  Irgendwas passt da nicht.

                  Den Datenpunkt den du auslesen möchtest ist ja unter javascript .0 usw
                  Macht das Sinn?
                  Normalerweise kommt der Datenpunkt doch von einem Messgerät wie zB bei mir von einem Homemtaic Temp/Humidity Gerät! Dieses lese ich dann aus.
                  Dein Datenpunkt ist ja anscheinend selber angelegt daher die Frage wie das konfiguriert ist

                  S Offline
                  S Offline
                  sonystar
                  wrote on last edited by
                  #10

                  @Segway
                  Nee das passt schon so.

                  {
                    "common": {
                      "name": "Temperatur Außen",
                      "type": "number",
                      "role": "state",
                      "unit": "°C",
                      "custom": {
                        "influxdb.0": {
                          "enabled": true,
                          "changesOnly": true,
                          "debounce": "1000",
                          "retention": 0,
                          "changesRelogInterval": "1800",
                          "changesMinDelta": 0,
                          "storageType": "Number",
                          "aliasId": ""
                        }
                      }
                    },
                    "native": {
                      "name": "Temperatur Außen",
                      "type": "number",
                      "role": "state",
                      "unit": "°C"
                    },
                    "type": "state",
                    "from": "system.adapter.javascript.0",
                    "user": "system.user.admin",
                    "ts": 1606934334904,
                    "_id": "javascript.0.Wetterstation.Aussentemperatur",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  }
                  

                  Unbenannt.png

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    adsfa
                    wrote on last edited by adsfa
                    #11

                    Hallo,
                    auch wenn das Thema schon etwas älter ist, würde ich gerne den gleichen Ansatz nutzen.
                    Leider erhalte ich immer folgende Warnung. Hast du vielleicht eine Idee @Segway :)?

                    javascript.0 (129) TypeError: Cannot read property 'id' of undefined at Object.GetResults [as cb] (script.js.Allgemein.Testen.SQL:38:154) at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5618:71) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:232:37) at processImmediate (internal/timers.js:461:21)
                    
                    // -----------------------------------------------------------------------------
                    // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
                    // -----------------------------------------------------------------------------
                     
                    // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
                    var id = 'alias.0.Arbeitszimmer.Temperatur.ACTUAL';
                    // ----- Datenpunkte in die gespeichert werden soll ----------------------------
                    var maxid = 'javascript.0.Statistik.Temp_Aussen_Max24';
                    var minid = 'javascript.0.Statistik.Temp_Aussen_Min24';
                    var dt = 24;                // Zeitraum in Stunden
                        dt = dt*3600*1000;      // Zeitraum umrechnen in ms
                     
                    // ----- 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('influxdb.0', 'query', 'SELECT * FROM iobroker.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('influxdb.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('influxdb.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);
                    }
                     
                    //-----  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("*/5 * * * *", function(){SQLAbfrage(id);});
                     
                    
                    

                    ee20e0c6-48eb-4db6-b651-61253a2d43fc-image.png

                    SegwayS 1 Reply Last reply
                    0
                    • A adsfa

                      Hallo,
                      auch wenn das Thema schon etwas älter ist, würde ich gerne den gleichen Ansatz nutzen.
                      Leider erhalte ich immer folgende Warnung. Hast du vielleicht eine Idee @Segway :)?

                      javascript.0 (129) TypeError: Cannot read property 'id' of undefined at Object.GetResults [as cb] (script.js.Allgemein.Testen.SQL:38:154) at change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5618:71) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:232:37) at processImmediate (internal/timers.js:461:21)
                      
                      // -----------------------------------------------------------------------------
                      // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
                      // -----------------------------------------------------------------------------
                       
                      // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
                      var id = 'alias.0.Arbeitszimmer.Temperatur.ACTUAL';
                      // ----- Datenpunkte in die gespeichert werden soll ----------------------------
                      var maxid = 'javascript.0.Statistik.Temp_Aussen_Max24';
                      var minid = 'javascript.0.Statistik.Temp_Aussen_Min24';
                      var dt = 24;                // Zeitraum in Stunden
                          dt = dt*3600*1000;      // Zeitraum umrechnen in ms
                       
                      // ----- 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('influxdb.0', 'query', 'SELECT * FROM iobroker.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('influxdb.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('influxdb.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);
                      }
                       
                      //-----  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("*/5 * * * *", function(){SQLAbfrage(id);});
                       
                      
                      

                      ee20e0c6-48eb-4db6-b651-61253a2d43fc-image.png

                      SegwayS Offline
                      SegwayS Offline
                      Segway
                      wrote on last edited by
                      #12

                      @adsfa
                      Kann dir da nicht helfen, da ich die SQL nicht mehr am laufen habe sondern auf Influx umgestiegen bin.

                      Gruß Dirk
                      Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                      A 1 Reply Last reply
                      0
                      • SegwayS Segway

                        @adsfa
                        Kann dir da nicht helfen, da ich die SQL nicht mehr am laufen habe sondern auf Influx umgestiegen bin.

                        A Offline
                        A Offline
                        adsfa
                        wrote on last edited by
                        #13

                        @segway Danke für deine Antwort.
                        Ich nutze auch Influx und würde gerne Datenpunkte in iobroker damit aktualisieren.
                        Wie machst du das jetzt?

                        SegwayS 1 Reply Last reply
                        0
                        • A adsfa

                          @segway Danke für deine Antwort.
                          Ich nutze auch Influx und würde gerne Datenpunkte in iobroker damit aktualisieren.
                          Wie machst du das jetzt?

                          SegwayS Offline
                          SegwayS Offline
                          Segway
                          wrote on last edited by
                          #14

                          @adsfa
                          Inwiefern Datenpunkte aktualisieren ? verstehe ich grad nicht !

                          Gruß Dirk
                          Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                          A 1 Reply Last reply
                          0
                          • SegwayS Segway

                            @adsfa
                            Inwiefern Datenpunkte aktualisieren ? verstehe ich grad nicht !

                            A Offline
                            A Offline
                            adsfa
                            wrote on last edited by
                            #15

                            @segway
                            Ich würde gerne Berechnungen vornehmen, wie z.B. die Min Temperatur der letzten 24h und das Ergebnis in einem Datenpunkt speichern.

                            SegwayS 1 Reply Last reply
                            0
                            • A adsfa

                              @segway
                              Ich würde gerne Berechnungen vornehmen, wie z.B. die Min Temperatur der letzten 24h und das Ergebnis in einem Datenpunkt speichern.

                              SegwayS Offline
                              SegwayS Offline
                              Segway
                              wrote on last edited by
                              #16

                              @adsfa
                              Mit Grafana und Influx brauchst du das nicht ! Das kannst du direkt in Grafana machen :-)

                              Gruß Dirk
                              Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                              1 Reply Last reply
                              0
                              • A Offline
                                A Offline
                                adsfa
                                wrote on last edited by
                                #17

                                @segway
                                Danke dir. Wie gebe ich die berechneten Werte an iobroker zurück? Würde die gerne zum Triggern nutzen.

                                SegwayS 1 Reply Last reply
                                0
                                • A adsfa

                                  @segway
                                  Danke dir. Wie gebe ich die berechneten Werte an iobroker zurück? Würde die gerne zum Triggern nutzen.

                                  SegwayS Offline
                                  SegwayS Offline
                                  Segway
                                  wrote on last edited by
                                  #18

                                  @adsfa sagte in Max /Mintemperatur aus influxdb mit gethistory:

                                  @segway
                                  Danke dir. Wie gebe ich die berechneten Werte an iobroker zurück? Würde die gerne zum Triggern nutzen.

                                  Ah okay, du willst triggern darauf, dann musste es in einen Wert schreiben ja das stimmt.

                                  Gruß Dirk
                                  Intel Proxmox Cluster (3x NUC) mit Debian & Proxmox / IoB als VM unter Debian / 60+ Adapter installiert

                                  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

                                  345

                                  Online

                                  32.6k

                                  Users

                                  82.3k

                                  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