Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] Änderung Timestamp

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Änderung Timestamp

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      DGR @haus-automatisierung last edited by

      @haus-automatisierung
      ich muss leider zugeben, dass ich mich mit JavaScript nicht so auskenne.. Ich mache das alles mit Blockly.
      Beispiel: aktualisiere xyz mit Wert von abc

      haus-automatisierung 1 Reply Last reply Reply Quote 0
      • haus-automatisierung
        haus-automatisierung Developer Most Active @DGR last edited by

        @dgr Für Blockly gibt es momentan keinen Baustein wo man einen Zeitstempel manuell übergeben kann. Das soll ja einfach gehalten sein.

        Aber stell doch mal eine konkrete Frage wo es am Verständnis hängt. Du musst Dich ja nicht mit JavaScript auskennen, sondern nur die Objekt-ID anpassen und den Zeitstempel.

        Ich dachte, hier geht es um eine einmalige Sache um einen Wert in die Datenbank zu bekommen. Für doch Dein Problem mal ganz genau aus - dann kann man auch konkreter helfen. Gerade, wenn Detailwissen fehlt.

        S D 2 Replies Last reply Reply Quote 0
        • S
          Siggi0904 @haus-automatisierung last edited by

          @haus-automatisierung ich hatte mir sowas auch einmal gewünscht, da ich alte Zählerstände einlesen wollte. Da bin ich dann auch an den Zeitstempeln gescheitert.

          haus-automatisierung 1 Reply Last reply Reply Quote 0
          • haus-automatisierung
            haus-automatisierung Developer Most Active @Siggi0904 last edited by haus-automatisierung

            @siggi0904 Woran denn genau? Klappt der vorgeschlagene Weg von mir nicht?

            Das kann ja beliebig flexibel ausgestaltet werden. Man muss halt nur darauf achten, dass man das Datum in der richtigen Zeitzone definiert. Sonst landet man schnell bei UTC und hat 1-2 Stunden (je nachdem ob MEZ/MESZ) Abweichung.

            // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/Date
            const d = new Date('2024-12-17T15:34:00Z'); // UTC!!
            setState('0_userdata.0.beispiel', { val: 42, ts: d.getTime() });
            
            S 1 Reply Last reply Reply Quote 0
            • S
              Siggi0904 @haus-automatisierung last edited by

              @haus-automatisierung naja mangels richtigen Workflow die Datensätze in die Datenbank zu bekommen, hatte ich das aufgegeben.

              Ich hätte das gern per Blockly realisiert.

              1 Reply Last reply Reply Quote 0
              • D
                DGR @haus-automatisierung last edited by

                @haus-automatisierung
                es ist kein wirkliches Problem für mich. Es geht eigentlich um die Darstellung in Grafana. Ich zeige dort den Gasverbrauch der letzten 7 Tage anhand der Daten um jeweils 23:59 des Vortages. Diese Darstellung ging bisher logischerweise nich aktuell für den laufenden Tag. Hier ändern sich die Werte nach einer von mir vorgegebenen Zeit. Ich habe für die tagesaktuellen Werte einen eigenen Datenpunkt mit Übergabe an influxdb2v erstellt, in den ich die aktuellen Werte des Tages eintrage. Für die Darstellung in Grafana lösche ich diese Datenbank mit dem Wert und trage anschließend den neuen aktuellen Wert ein. In Grafana wird dieser Wert natürlich nur als Punkt dargestellt, da es keinen Bezug zu einem vorhergehenden Wert gibt. Dieser vorhergehende Wert wäre der Wert des Vortages um 23:59 Uhr. Wenn ich diesen Wert und zusätzlich den jeweils aktuellen Wert in diese Datenbank eintrage, dann wird der Zeitstempel des Werts vom Vortag in den Zeitstempel des Eintrags geändert. Damit ist es so nicht möglich, eine Verbindungslinie zwischen dem letzten Wert (Vortag) zum aktuellen Wert darzustellen.

                Wie gesagt, es ist nicht wirklich ein richtiges Problem.
                Gasverbrauch.JPG

                haus-automatisierung 1 Reply Last reply Reply Quote 0
                • haus-automatisierung
                  haus-automatisierung Developer Most Active @DGR last edited by

                  @dgr sagte in Änderung Timestamp:

                  Ich habe für die tagesaktuellen Werte einen eigenen Datenpunkt mit Übergabe an influxdb2v erstellt, in den ich die aktuellen Werte des Tages eintrage.

                  In dem Fall könntest Du entweder immer nur den letzten Wert je aggregiertem Zeitraum auswählen (last) oder den Wert immer wieder überschreiben. Das macht InfluxDB ja dann automatisch. Also den Zeitstempel für das Ende des Tages berechnen und diesen immer wieder setzen.

                  @dgr sagte in Änderung Timestamp:

                  In Grafana wird dieser Wert natürlich nur als Punkt dargestellt, da es keinen Bezug zu einem vorhergehenden Wert gibt.

                  Werte in InfluxDB stehen generell nie in Bezug zueinander. Oder was verstehe ich falsch.

                  D 1 Reply Last reply Reply Quote 0
                  • D
                    DGR @haus-automatisierung last edited by

                    @haus-automatisierung
                    Mit "Bezug zueinander" meinte ich nur, dass eine Linie vom vorhergehenden Wert zum folgenden Wert dargestellt wird in Grafana.
                    Meine Abfrage in Grafana sieht so aus:

                    from(bucket: "iobroker_all")
                      |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                      |> filter(fn: (r) => r["_measurement"] == "ViessmannGas" or r["_measurement"] == "Gasverbr" or r["_measurement"] == "Gas-aktuellerStand")
                      |> filter(fn: (r) => r["_field"] == "value")
                      |> truncateTimeColumn(unit: 1d) 
                    

                    Wobei hier "ViessmannGas" z.Zt. nicht dargestellt wird. Die gelbe Linie kommt von den Daten aus "Gasverbr" und der einzelne Punkt aus "Gas-aktuellerStand"

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      DGR @DGR last edited by DGR

                      @dgr
                      ich möchte das Thema zum Abschluss bringen. Ich lösche jetzt alle 20min. Den aktuellen Stand mit influx delete und schreibe den Wert neu in den Datenpunkt. Im Ergebnis sieht das dann so aus (jetzt mit Balkendiagramm) :
                      Screenshot_20250202_232157_Chrome_1.jpg

                      mickemup 1 Reply Last reply Reply Quote 0
                      • mickemup
                        mickemup @DGR last edited by

                        @dgr
                        in Grafana gehen so Sachen elegant mit der aggregatewindow funktion.
                        Da musst du nichts löschen usw...

                        https://docs.influxdata.com/flux/v0/stdlib/universe/aggregatewindow/

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

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

                        799
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

                        4
                        14
                        376
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo