Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Werte aus JSON Array in Datenpunkt übernehmen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Werte aus JSON Array in Datenpunkt übernehmen

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      Chief42 @paul53 last edited by

      @paul53, vielen Dank für die schnelle Rückmeldung! Als Ergebnis bekomme ich:

      ergebnis.JPG

      Das Ergebnis wird, wie Du geschrieben hast, in einer JSON-Liste dargestellt. Ich bräuchte das aber als einzelne Werte. Die einzelnen Werte müssten als Einzelwerte in den Datenpunkt geschrieben werden. Also pro Zeile ein Wert wobei die Uhrzeit aus der Liste übernommen werden müsste. D.h. als Timestamp die Uhrzeit und als Wert der Wert der Frequenz so als wenn es als einzelner Wert von einem Sensor kommen würde. Ich hoffe ich habe mich verständlich ausgedrückt. Das ist zumindest meine naive Vorstellung wie ich das umsetzen würde.

      Ziel ist es, die Freqenz aus dem JASON Array in Gafana mit Werten, die mir ein anderer Sensor liefert, zu vergleichen.

      Vermutlich führen auch andere Wege zum Ergebnis. Könnte man die JSON-Liste, so wie sie im Datenpunkt vorliegt, direkt mit Grafana in einem Diagramm darstellen? Wenn ja, hast Du ein Stichwort wo ich das nachlesen kann? Das würde ich dann versuchen umzusetzen. Wenn das ginge wäre das vermutlich auch etwas eleganter.

      paul53 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @Chief42 last edited by

        @chief42 sagte: mit Grafana in einem Diagramm darstellen?

        Mit Grafana kenne ich mich nicht aus.

        C 1 Reply Last reply Reply Quote 0
        • C
          Chief42 @paul53 last edited by

          @paul53 Gibt es eine Möglichkeit das Array in einzelne Werte, so wie beschrieben, umzuwandeln?

          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Chief42 last edited by paul53

            @chief42 sagte: als Timestamp die Uhrzeit

            In Blockly benötigt man dafür eine Javascript-Funktion:

            setState(id, {val: val, ts: ts, lc: ts, ack: true});
            

            Blockly_temp.JPG

            Ich habe aber keine Ahnung, ob die Historisierung den Timestamp übernimmt.

            C 1 Reply Last reply Reply Quote 0
            • C
              Chief42 @paul53 last edited by

              @paul53 Cool, die Werte werden jetzt in Einzelwerte aufgeteilt:

              scriptlog.JPG

              Die 10 Werte pro Datensatz "rasseln" auch in der Anzeige durch, das kann man sehen wie sie sich ändern

              datenpunkt.JPG

              aber im Verlauf werden die nicht aufgeführt:

              db-verlauf.JPG

              Scheinbar wird der Timestamp nicht übernommen. Könnte das am Format der Daten liegen (2025-01-05 15:42:38) die man erst noch umwandeln (5.1.20225 16:16:25.636) müsste?

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Chief42 last edited by paul53

                @chief42 sagte. Könnte das am Format der Daten liegen (2025-01-05 15:42:38)

                Das Format wird richtig in ms seit 1.1.1970 umgewandelt.

                C 1 Reply Last reply Reply Quote 0
                • C
                  Chief42 @paul53 last edited by

                  @paul53 Ja, die ms sind dabei, aber das Datum passt nicht.

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Chief42 last edited by paul53

                    @chief42 sagte: das Datum passt nicht.

                    ?? "5.1.2025 15:01:40.000" passt doch.
                    Mit diesem Format als Quelle kann Javascript nicht umgehen, jedoch mit "YYYY-MM-DD hh:mm:ss".

                    C 1 Reply Last reply Reply Quote 0
                    • C
                      Chief42 @paul53 last edited by

                      @paul53 Ich meinte, die Formatierung die vorliegt entspricht nicht der, die im Datenpunkt bei anderen Werten erscheint. Das war ja auch nur eine Vermutung von mir. Woran könnte es denn liegen das die Daten nicht übernommen werden?

                      Homoran 1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @Chief42 last edited by

                        @chief42 sagte in Werte aus JSON Array in Datenpunkt übernehmen:

                        die Formatierung die vorliegt entspricht nicht der, die im Datenpunkt bei anderen Werten erscheint

                        bist du sicher?

                        wenn du die Anzeige im Admin unter Objekte meinst, kann und wird es sein dass der Admin den Wert nur ander formatiert darstellt, aber auch in Unixtime speichert

                        Was genau meinst du?

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          Chief42 @Homoran last edited by

                          @homoran Ich bin nicht so tief in dem Thema drin um beurteilen zu können wie die Daten intern abgespeichert werden. Wenn Du sagst, dass es nur anders dargestellt wird aber intern richtig übernommen wird, wird es stimmen. Das war nur eine Idee von mir woran es evtl. liegen könnte da die Anzeige im Objekt abweicht. Das kann man dann wohl als Grund dafür, dass es nicht funktioniert, ausschließen.

                          MartinP 1 Reply Last reply Reply Quote 0
                          • MartinP
                            MartinP @Chief42 last edited by

                            @chief42 Man kann in der Influxdb schon Einträge für in der Vergangenheit liegende Zeitpunkte nachträglich einfügen. Deshalb vermute ich eher, dass die Problematik im Influx Adapter liegt.
                            Entweder also am Influx Adapter vorbei direkt in die Datenbank schreiben, oder mit einem Zeitversatz leben, und die zehn Werte im Sekundentakt nacheinander in den Datenpunkt schreiben.

                            C 1 Reply Last reply Reply Quote 0
                            • C
                              Chief42 @MartinP last edited by

                              Schade das es hier keine Lösung gibt. Trotzdem Danke für die Tips und Hilfe!

                              mickym 1 Reply Last reply Reply Quote 0
                              • mickym
                                mickym Most Active @Chief42 last edited by

                                @chief42 sagte in Werte aus JSON Array in Datenpunkt übernehmen:

                                Schade das es hier keine Lösung gibt. Trotzdem Danke für die Tips und Hilfe!

                                Na die Lösung ist, wie @MartinP schreibt. Schreib selbst in Datenbank.

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                1.0k
                                Online

                                31.6k
                                Users

                                79.6k
                                Topics

                                1.3m
                                Posts

                                5
                                16
                                497
                                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