Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Flot-Editor: Tageshöchstwerte anzeigen lassen

NEWS

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

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

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

Flot-Editor: Tageshöchstwerte anzeigen lassen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
8 Beiträge 3 Kommentatoren 1.2k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • SegwayS Offline
    SegwayS Offline
    Segway
    schrieb am zuletzt editiert von
    #1

    Hallo,

    benutze den Flot-Editor zum anzeigen von Kurven. Früher konnte ich bei FHEM (siehe Bild) mir in der Überschrift zB die Tagestiefst- und höchstwerte anzeigen lassen. Geht das mit dem Flot-editor auch ?

    1043_bildschirmfoto_2018-08-03_um_09.10.18.png

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

    1 Antwort Letzte Antwort
    0
    • SegwayS Offline
      SegwayS Offline
      Segway
      schrieb am zuletzt editiert von
      #2

      Ich habe nun zwei andere Threads gefunden, wo per SQL-Abfrage der Min und Max-Wert ermittelt werden soll. Leider bekomme ich folgenden Fehler:

      sql.0	2018-08-04 20:33:12.901	error	Cannot insert INSERT INTO `iobroker`.datapoints (name, type) VALUES('javascript.0.Statistik_24h_Max_TempAussen', undefined);: Error: ER_BAD_FIELD_ERROR: Unknown column 'undefin
      

      Hier das Javascript dazu - jemand einen Hinweis:

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

      Es geht hauptsächlich um diesen Thread https://forum.iobroker.net/viewtopic.php?f=21&t=5663

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

      1 Antwort Letzte Antwort
      0
      • SegwayS Offline
        SegwayS Offline
        Segway
        schrieb am zuletzt editiert von
        #3

        Vielleicht bin ich ja schon einen Schritt weiter aber nun habe ich einen Fehler mit Duplicate entry:

        annot insert INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(1885, 1533458884463, 0, 1, 14, 0);: Error: ER_DUP_ENTRY: Duplicate entry '1885-1533458884463' f
        

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

        1 Antwort Letzte Antwort
        0
        • SegwayS Offline
          SegwayS Offline
          Segway
          schrieb am zuletzt editiert von
          #4

          Habe nun nach langem hin und her die Lösung gefunden für mein Script warum das nicht läuft.

          Habe https://forum.iobroker.net/viewtopic.php?t=5386 den entscheidenden Hinweis gelesen.

          Schon sehr merkwürdig das man solch wichtige Informationen nicht irgendwo platziert oder in der Hilfe vom Adapter !!! Ich hatte das Script die ganze Zeit im global drin und als ich es daraus genommen hatte kamen auch Meldungen im Log. Schön - hat mich ja nur 4 Tage gekostet.

          Nichts für ungut aber sowas ist schon ärgerlich…...nun bastel ich dann mal weiter.

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

          1 Antwort Letzte Antwort
          0
          • cashC Offline
            cashC Offline
            cash
            Most Active
            schrieb am zuletzt editiert von
            #5

            Das man eigene Scripte die nicht global verfügbar sein sollen nicht in den Ordner global packt steht aber nun wirklich an vielen Stellen.

            Evtl wäre es natürlich möglich den Ordner global nur anzuzeigen wenn der User vorher in der Konfiguration eine bestimmte Änderung vornimmt. Somit würden evtl weniger Anfänger in diesen Fehler laufen

            1 Antwort Letzte Antwort
            0
            • SegwayS Offline
              SegwayS Offline
              Segway
              schrieb am zuletzt editiert von
              #6

              Jo, ich weiß das es schwer ist eine Anleitung für Newbies parat zu haben. Das ist wirklich nicht einfach - gebe ich ja zu.

              ABER dann sollte eben mind. ein Hinweis irgendwo sein oder nicht nur ein Ordner global sondern auch ein Ordner userdefined oder so.

              Oder wie geschrieben hast erstmal den Ordner "verstecken".

              Ich hatte mich die ganze Zeit gewundert warum in dem Log Fenster direkt im Java-Adapter NIE NIE NIE Meldungen drin sind. Da muss doch was faul sein. Als ich einfach mal auf Truescript umgestellt hatte den Internpreter dann kamen aber ganz viele Fehler…..also hab ich den fehler woanders gesucht, da anscheinend ja was im Log kommt.

              Wurde ich aber letztendlich irre geführt. Bis ich den richtigen Hinweis las.

              Naja, 4 Tage waren ja nicht umsonst sondern habe vieles gelernt.....aber ärgerlich ist es trotzdem .-)

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

              1 Antwort Letzte Antwort
              0
              • R Offline
                R Offline
                robsdobs
                schrieb am zuletzt editiert von
                #7

                Anfängern würde ich eindeutig Typescript vor Javascript empfehlen.

                Da sieht man sehr viele Fehler die man machen kann schon beim kompilieren und sucht dann nicht erst lange weil ein Programm einfach nicht so läuft wie man denkt.

                Scripte: http://forum.iobroker.net/viewtopic.php?f=23&t=2799&p=119565#p119565,

                1 Antwort Letzte Antwort
                0
                • SegwayS Offline
                  SegwayS Offline
                  Segway
                  schrieb am zuletzt editiert von
                  #8

                  @Segway:

                  Hier das Javascript dazu - jemand einen Hinweis:

                  ! // –---------------------------------------------------------------------------
                  ! // ----- Abfragen von Werten aus der Datenbank (SQL) ---------------------------
                  ! // -----------------------------------------------------------------------------
                  ! // ----- Datenpunkt der ausgelesen werden soll ---------------------------------
                  ! var id = "hm-rpc.1.KEQ0054069.1.TEMPERATURE"/Temp_Feuchte_Aussen:1.TEMPERATURE/;
                  ! // ----- Datenpunkte in die gespeichert werden soll ----------------------------
                  ! var maxid = 'javascript.0.Statistik_24h_Max_TempAussen';
                  ! var minid = 'javascript.0.Statistik_24h_Min_TempAussen';
                  ! 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 iobroker.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("*/1 * * * *", function(){SQLAbfrage(id);}); `

                  Kurze Frage noch zu dem Script:

                  Schaut das Script im Prinzip IMMER AKTUELL auf die letzten 24 Stunden und macht dann entsprechend des Poll-Script-Aufrufes eine Datenpunktaktualisierung ?also von 19 bis 19 Uhr ? wenn ich um 21Uhr schaue ist es von 21 bis 21 Uhr ?

                  Was wäre zu tun, wenn es immer für den jeweiligen Tag dies machen soll also von 0:00 bis 23:59 ?

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

                  1 Antwort Letzte Antwort
                  0
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate
                  FAQ Cloud / IOT
                  HowTo: Node.js-Update
                  HowTo: Backup/Restore
                  Downloads
                  BLOG

                  427

                  Online

                  32.4k

                  Benutzer

                  81.5k

                  Themen

                  1.3m

                  Beiträge
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                  ioBroker Community 2014-2025
                  logo
                  • Anmelden

                  • Du hast noch kein Konto? Registrieren

                  • Anmelden oder registrieren, um zu suchen
                  • Erster Beitrag
                    Letzter Beitrag
                  0
                  • Home
                  • Aktuell
                  • Tags
                  • Ungelesen 0
                  • Kategorien
                  • Unreplied
                  • Beliebt
                  • GitHub
                  • Docu
                  • Hilfe