Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Visualisierung mit Node Red erstellen

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Visualisierung mit Node Red erstellen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Damrak2022
      Damrak2022 @mickym last edited by

      @mickym Ja das schon. Mich irritiert halt nur das er den Wert nicht direkt aus der Iobroker in node übernommen hat. Aber Du sagst ja, das kommt jetzt.

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

        Aber ich stelle gerade fest, Du hast doch nicht den String genommen, der aus der iobroker-In Node kommt.

        Du hast

        10-26-2022
        

        genommen.

        Aus der ioboker-In Node kommt das Datum aber in der Form:
        1e37bd6b-9573-4c60-9eff-3f5f5b687870-image.png

        2022-10-26
        

        Also stimmt Dein Code leider immer noch nicht.

        Damrak2022 1 Reply Last reply Reply Quote 0
        • Damrak2022
          Damrak2022 @mickym last edited by Damrak2022

          @mickym Geändert beim zweiten kommt logischerweise Invalid Date raus.
          Beim ersten stimmt es dann , aber ich habe immer noch das englische Format

          Bildschirmfoto 2022-10-28 um 23.35.40.png Bildschirmfoto 2022-10-28 um 23.34.56.png

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

            Kannst Du mal damit aufhören, wie die Ausgabe aussieht??????????????

            Die richtige Lösung kann nur das erste sein. Das 2. kann doch nur falsch interpretiert werden. Es steht doch kein MM vorne???

            Damrak2022 1 Reply Last reply Reply Quote 0
            • Damrak2022
              Damrak2022 @mickym last edited by

              @mickym Okay, sorry

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

                @damrak2022 sagte in Visualisierung mit Node Red erstellen:

                @mickym Okay, sorry

                So aber Du scheinst das nun verstanden haben - wie Du aus einem beliebigen Datumsformat das korrekte $moments Objekt konstruiert.

                Also die einzige richtige Lösung ist:

                $moment("2022-10-26", "YYYY-MM-DD")
                

                2022-10-26 ist das Format, das aus der iobroker IN Node rauskommt.

                $moment("2022-10-26", "MM-DD-YYYY") schreibst kommt invalidate Date - also ungültiges Datum, da vorne doch eine 4stellige Zahl steht die nicht als Monat interpretiert werden kann. Oder welches ist der 20. Monat im Jahr. Ich denke der wurde noch nicht erfunden.

                Soweit klar?

                Damrak2022 1 Reply Last reply Reply Quote 0
                • Damrak2022
                  Damrak2022 @mickym last edited by Damrak2022

                  @mickym Ja, das ist vollkommen klar. War auch nur ein Versuch, ob er das dann ändert.

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

                    @damrak2022 Gut nachdem wir nun das richtige $moment Objekt erzeugt haben - kümmern wir uns jetzt um die Ausgabeformat des moments Objekts.

                    Das steht hier: https://momentjs.com/docs/#/displaying/

                    8c6e0646-40ff-415f-b639-2691d7eb5817-image.png

                    Das heißt an das moments Objekt schließen wir eine format Ausgabe an. Wie könnte die Aussehen - im Prinzip hast Du es in diesem Post schon beschrieben.

                    Wenn Du es geschaft hast, wieder den JSONATA Code Deiner Change Node und das Debug Fenster als Beweis posten. 😉

                    Damrak2022 1 Reply Last reply Reply Quote 0
                    • Damrak2022
                      Damrak2022 @mickym last edited by

                      @mickym So, hier bitte:
                      Bildschirmfoto 2022-10-28 um 23.53.24.png Bildschirmfoto 2022-10-28 um 23.53.11.png

                      Da kann ich das Leerzeichen zwischen DD. und MM. YYYY wahrscheinlich weglassen

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

                        @damrak2022 sagte in Visualisierung mit Node Red erstellen:

                        @mickym So, hier bitte:
                        Bildschirmfoto 2022-10-28 um 23.53.24.png Bildschirmfoto 2022-10-28 um 23.53.11.png

                        Da kann ich das Leerzeichen zwischen DD. und MM. YYYY wahrscheinlich weglassen

                        Na das schaut doch schon mal sehr gut aus - ja und ich würde das Leerzeichen lieber weglassen, damit das Datum auch schön aussieht - aber letztlich siehst Du, dass Du da reinschreiben kannst was Du willst und das Datum wird genau so ausgeben. Wenn Du also lieber ein Datum mit Leerzeichen schreiben willst - dann kannst Du das wie Du siehst tun.

                        Damrak2022 1 Reply Last reply Reply Quote 0
                        • Damrak2022
                          Damrak2022 @mickym last edited by

                          @mickym Danke Dir , was eine schwere Geburt - zumindest für mich - Gefühle 5 Stunden um ein Datum korrekt darzustellen.

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

                            @damrak2022 Na noch ist es ja nicht fertig, weil Du hast ja das Datum fix eingetragen hast - das musst Du nun noch ändern in die Nachrichteneigenschaft, in der das Datum steckt.
                            Also in welcher Eigenschaft des Nachrichtenobjekts ist das Datum?
                            Wie schaut also der finale Code der Change Node aus?

                            Damrak2022 1 Reply Last reply Reply Quote 0
                            • Damrak2022
                              Damrak2022 @mickym last edited by

                              @mickym Es ist ein string den ich erhalte, aber was ich bei der Change Node ändern muss, weiß ich jetzt auf Anhieb nicht.

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

                                @damrak2022 sagte in Visualisierung mit Node Red erstellen:

                                @mickym Es ist ein string den ich erhalte, aber was ich bei der Change Node ändern muss, weiß ich jetzt auf Anhieb nicht.

                                So nachdem der Datumsstring aus payload der iobroker-In Node kommt:

                                e0c5eb00-71a6-468c-bed4-45e1e6e307d4-image.png

                                muss man halt das fixe Datum durch die payload ersetzen.

                                Die finale Lösung sieht also so aus:

                                2f752fc4-e0d7-4f35-939c-2ad93174ee5d-image.png

                                $moment(payload, "YYYY-MM-DD").format("DD.MM.YYYY")
                                

                                Das wars dann von meiner Seite.

                                Damrak2022 G 2 Replies Last reply Reply Quote 0
                                • Damrak2022
                                  Damrak2022 @mickym last edited by

                                  @mickym Ach okay, ich muss den payload nur unten mit eintragen. Danke - erhole Dich jetzt mal von dem Stress mit mir.

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    Garf @mickym last edited by

                                    @mickym sagte in Visualisierung mit Node Red erstellen:

                                    Die finale Lösung sieht also so aus:

                                    Spricht was gegen die Nutzng der moment-Node?

                                    Damit bekommt man auch ohne JSONata die Aufgabe gelöst. Ich stand vor dem Problem eine Zeitstempel in die gewünschte Form zu bekommen und dazu noch die Zeit um 2 Stunden zu korrigieren.

                                    Der Ausgabewert aus dem Stromzähler über M-Bus sieht wie folgt aus:

                                    386d0be7-3986-4194-bc1a-0754bd5757c6-grafik.png

                                    Gewünscht war diese Form der Ausgabe:

                                    f7195092-fe6c-450e-b753-a1be8b9ab431-grafik.png

                                    Und diese Eintragungen in der moment Node waren notwendig:

                                    b88dd685-fcf0-474c-b601-5944d63b1bb3-grafik.png

                                    Deinen Weg finde ich allerdings auch prima, allerdings wie man da jetzt noch 2h aufaddiert, da hatte ich jetzt nicht viel Lust drauf, dies herauszufinden.

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

                                      @garf Gegen die Nutzung der moment Node spricht, das alles über JSONATA in der Standard-Change Node enthalten ist und somit keinen Mehrwert bietet und nicht mal einen Bruchteil der moments Bibliothek. Da ich generell keine Nodes installiere, die keinen Mehrwert bieten, habe ich die wieder runter geschmissen nachdem ich mit der Moment Bibliothek im Detail beschäftigt habe.

                                      G Damrak2022 2 Replies Last reply Reply Quote 1
                                      • G
                                        Garf @mickym last edited by

                                        @mickym
                                        Alles klar und nachvollziehbar. Mal ne blöde Frage. Wie kann ich einzelne Werte in einem payload objekt anpassen und nachher wieder zu einem Objekt zusammenfassen? Mir fällt dazu nur das function node ein.

                                        Kleines Beispiel: timezone Wert 1 durch Klartext ersetzen und wieder als Objekt weitergeben.

                                        ee9f8091-2dcd-4d2d-a5ac-6ec5b25b20f5-grafik.png

                                        Irgendwie komme ich auf keine Lösung.

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

                                          @garf Du brauchst doch in einer Change Node nur den Wert payload.1130968.timezone ändern

                                          G 1 Reply Last reply Reply Quote 0
                                          • G
                                            Garf @mickym last edited by Garf

                                            @mickym
                                            War nur ein einfaches Besispiel. Das Objekt ist viel größer. Klartext ich lese die Daten aus einer Cloud aus und habe die unterschiedlichsten msg. Teile davon schreibe ich in eine Tabelle, aber z.B. den Zeitstempel möchte ich optisch ändern. Die Tabelle muss allerdings zeitgleich alle Werte erhalten.
                                            db43951c-2b6b-4595-a328-223cb2ec9f35-grafik.png

                                            Im Feld für den Status möchte ich noch aus der 1 den Status Betrieb machen.

                                            Edit:
                                            Mit Hile der change Node und flow Variablen habe ich schon einmal die gewünschten Änderungen vorgenommen. Jetzt frage ich mich nur noch wie ich die Variablen wieder zu einem Objekt zusammenfasse. Grübel. JSONata?
                                            Ach ja, Datum mit dem von dir Gelernten geändert.👍

                                            89417048-26ea-4a0a-bb1c-bd980c9f1b05-grafik.png

                                            Edit2:
                                            Ich habe es gelöst. Vielleicht geht es noch einfacher. Aber das Ergebnis ist schon einmal so wie gewünscht.

                                            7361ec41-c418-4db7-9c89-284cb7d7302c-grafik.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            984
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            4845
                                            2004272
                                            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