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. Skripten / Logik
  4. Blockly
  5. Blockly - Mit getHistory Daten aus InfluxDB auslesen

NEWS

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

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

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

Blockly - Mit getHistory Daten aus InfluxDB auslesen

Geplant Angeheftet Gesperrt Verschoben Blockly
23 Beiträge 9 Kommentatoren 5.2k Aufrufe 7 Watching
  • Ä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.
  • YunkieY Yunkie

    Moin zusammen,

    ich würde das Thema gerne nochmal kurz aufgreifen.

    Ich versuche mit dem getHistory-Block Daten aus der normalen History auszulesen.
    Allerdings fällt es mir schwer die Ausgabe zu parsen. Hat da vielleicht nochmal jemand ein Beispiel für, wie das mit Blockly geht?
    Wie bekomme zum Beispiel den ersten und den letzten Wert aus dem Ergebnis?

    Ich habe mir folgenden Forum-Beitrag dazu angesehen:
    https://forum.iobroker.net/topic/5978/json-in-blockly-parsen/9

    Aber da ich irgendwie keine "Objekt-Namen" habe, weiß ich nicht wie ich anders an den Index des jeweiligen Objekts komme.

    [{'val':19449.052,'ts':1695247278863},{'val':19449.06,'ts':1695248178856},{'val':19449.068,'ts':1695249078870},{'val':19449.076,'ts':1695249998821},{'val':19449.084000000003,'ts':1695250888829},{'val':19449.092,'ts':1695251788894},{'val':19449.1,'ts':1695252678869},{'val':19449.107,'ts':1695253568871},{'val':19449.115,'ts':1695254498882},{'val':19449.129,'ts':1695255388912},{'val':19449.137000000002,'ts':1695256288903},{'val':19449.144,'ts':1695257178918},{'val':19449.152000000002,'ts':1695258078937},{'val':19449.17,'ts':1695258978931},{'val':19449.18,'ts':1695259898917},{'val':19449.188000000002,'ts':1695260798945},{'val':19449.195,'ts':1695261688969},{'val':19449.203,'ts':1695262588974},{'val':19449.214,'ts':1695263488995},{'val':19449.225,'ts':1695264389017},{'val':19449.399,'ts':1695265278973},{'val':19449.541,'ts':1695266178985},{'val':19449.686999999998,'ts':1695267099060},{'val':19449.876,'ts':1695267988996},{'val':19450.09,'ts':1695268889020},{'val':19450.402000000002,'ts':1695269779062},{'val':19450.726000000002,'ts':1695270699066},{'val':19450.762000000002,'ts':1695270709103},{'val':19451.263,'ts':1695271609127},{'val':19451.698,'ts':1695272499091},{'val':19452.165,'ts':1695273399103},{'val':19452.747,'ts':1695274309109},{'val':19453.234,'ts':1695275209095},{'val':19453.654000000002,'ts':1695276099151},{'val':19454.012000000002,'ts':1695276999160},{'val':19454.458,'ts':1695277899183},{'val':19454.801,'ts':1695278789152},{'val':19455.179,'ts':1695279709191},{'val':19455.659,'ts':1695280609216},{'val':19456.067000000003,'ts':1695281509247},{'val':19456.527000000002,'ts':1695282399224},{'val':19456.970999999998,'ts':1695283299199},{'val':19457.487,'ts':1695284209236},{'val':19457.968,'ts':1695285109236},{'val':19458.484,'ts':1695286009221},{'val':19458.974000000002,'ts':1695286899247},{'val':19459.372,'ts':1695287799267},{'val':19459.756,'ts':1695288689291},{'val':19460.190000000002,'ts':1695289609233},{'val':19460.631,'ts':1695290499339},{'val':19461.017,'ts':1695291389319},{'val':19461.481,'ts':1695292309347},{'val':19461.953999999998,'ts':1695293199288},{'val':19462.305,'ts':1695294099288},{'val':19462.652000000002,'ts':1695294989363},{'val':19462.983,'ts':1695295909379},{'val':19463.333,'ts':1695296809334},{'val':19463.747,'ts':1695297699333},{'val':19464.191,'ts':1695298599357},{'val':19464.581,'ts':1695299489419},{'val':19464.957000000002,'ts':1695300409387},{'val':19465.397,'ts':1695301299455},{'val':19465.764000000003,'ts':1695302199403},{'val':19466.135000000002,'ts':1695303089419}]
    

    Wäre über eine kurze Hilfestellung froh :-)

    Danke und Gruß!

    T Offline
    T Offline
    tobi55222
    schrieb am zuletzt editiert von
    #21

    @yunkie Ich hoffe, du hast dein Problem inzwischen lösen können. Falls nicht (und für alle anderen, die diesen Thread finden): Das ist kein json, sondern Attribute von Objekten in einer Liste. Man muss daher auch nichts parsen, sondern kann in Blockly direkt damit arbeiten:
    blockly.png

    Eigentlich total logisch und einfach (nachdem ich erstmal über die "ungültige JSON Syntax" geflucht hatte...).

    M 1 Antwort Letzte Antwort
    1
    • T tobi55222

      @yunkie Ich hoffe, du hast dein Problem inzwischen lösen können. Falls nicht (und für alle anderen, die diesen Thread finden): Das ist kein json, sondern Attribute von Objekten in einer Liste. Man muss daher auch nichts parsen, sondern kann in Blockly direkt damit arbeiten:
      blockly.png

      Eigentlich total logisch und einfach (nachdem ich erstmal über die "ungültige JSON Syntax" geflucht hatte...).

      M Offline
      M Offline
      Monsterkiller
      schrieb am zuletzt editiert von
      #22

      @tobi55222 Danke dafür, das hat mir die Tage sehr geholfen.

      Kann es sein das wenn man einen zu großen Zeitabschnitt auswerten will das ganze dann nicht mehr funktioniert?

      Ich wollte die Werte vom letzten Jahr mal rausziehen und addieren aber da sind scheinbar zuviel Daten hintendran.

      Wenn ich monatlich auswerte stimmt die Debug Ausgabe, meine Idee war das dann in kleinere Abschnitte aufzuteilen und in einer Schleife durchzugehen. Das kommt aber scheinbar auch durcheinander weil die Funktion ja irgendwie mit Callbacks arbeitet.

      Gibts da nen Trick um auf den getHistory Baustein passend zu warten? (Am besten per Blocky :) )

      M 1 Antwort Letzte Antwort
      0
      • M Monsterkiller

        @tobi55222 Danke dafür, das hat mir die Tage sehr geholfen.

        Kann es sein das wenn man einen zu großen Zeitabschnitt auswerten will das ganze dann nicht mehr funktioniert?

        Ich wollte die Werte vom letzten Jahr mal rausziehen und addieren aber da sind scheinbar zuviel Daten hintendran.

        Wenn ich monatlich auswerte stimmt die Debug Ausgabe, meine Idee war das dann in kleinere Abschnitte aufzuteilen und in einer Schleife durchzugehen. Das kommt aber scheinbar auch durcheinander weil die Funktion ja irgendwie mit Callbacks arbeitet.

        Gibts da nen Trick um auf den getHistory Baustein passend zu warten? (Am besten per Blocky :) )

        M Offline
        M Offline
        Monsterkiller
        schrieb am zuletzt editiert von Monsterkiller
        #23

        Also so richtig werde ich nicht schlau mit dem getHistory, ich dachte wenn im else Zweig zum Schluss etwas steht wird dieser erst aufgerufen wenn der Callback kommt? Aber der wird immer ausgeführt auch wenn eigl noch gewartet werden soll.

        getHistory({
          id: 'ID auswählen',
          start: /* start of day */ (() => { const d = new Date(); d.setHours(0, 0, 0, 0); return d.getTime(); })(),
          end: /* end of day */ (() => { const d = new Date(); d.setHours(23, 59, 59, 999); return d.getTime(); })(),
          aggregate: 'none',
          removeBorderValues: true,
        }, async (err, result) => {
          if (err) {
            console.error(err);
          }
        else
        {
        ???Hier wird nur ausgeführt beim Callback???
        }
        });
        

        Wie kann dieser Baustein je Sinn in Blockly machen? In anderen Threats sind da noch awaits reingefummelt aber dann ists ja kein Blockly mehr.

        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

        732

        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