NEWS
Visualisierung mit Node Red erstellen
-
@mickym So, hier bitte:
Da kann ich das Leerzeichen zwischen DD. und MM. YYYY wahrscheinlich weglassen
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym So, hier bitte:
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.
-
@mickym Danke Dir , was eine schwere Geburt - zumindest für mich - Gefühle 5 Stunden um ein Datum korrekt darzustellen.
-
@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? -
@mickym Es ist ein string den ich erhalte, aber was ich bei der Change Node ändern muss, weiß ich jetzt auf Anhieb nicht.
-
@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:
muss man halt das fixe Datum durch die payload ersetzen.
Die finale Lösung sieht also so aus:
$moment(payload, "YYYY-MM-DD").format("DD.MM.YYYY")
Das wars dann von meiner Seite.
-
@mickym Ach okay, ich muss den payload nur unten mit eintragen. Danke - erhole Dich jetzt mal von dem Stress mit mir.
-
@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:
Gewünscht war diese Form der Ausgabe:
Und diese Eintragungen in der moment Node waren notwendig:
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.
-
@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.
-
@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.
Irgendwie komme ich auf keine Lösung.
-
@garf Du brauchst doch in einer Change Node nur den Wert payload.1130968.timezone ändern
-
@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.
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.Edit2:
Ich habe es gelöst. Vielleicht geht es noch einfacher. Aber das Ergebnis ist schon einmal so wie gewünscht. -
@mickym Ich finde auf der Seite gerade den Teil nicht wo das mit der Umrechnung der Zeit beschrieben ist, da ich Minuten in Stunden und Minuten umwandeln will.
Habe nur das aber hier ist es nicht ausführlich beschrieben.
https://docs.jsonata.org/date-time-functions -
-
@mickym Danke habe es hinbekommen.
-
@mickym Ich habe meine ganze Darstellung der Gesundheitsdaten geändert.
-
@damrak2022 Na schaut doch gut aus
- bis auf dass Du zu wenig schläfst.
-
@mickym Wem sagst Du das. Laufen muss ich auch viel mehr.
Ich wollte da auch noch eine kleine Grafik einfügen, bekomme es aber nicht hin, das diese zentriert zwischen dem Wort "Schritte" und der angezeigten "Zahl" eingefügt wird.
Wenn ich das mit dem normalen Befehl mache, wird die Grafik immer direkt hinter das Wort "Schritte" platziert und das Wort Schritte wird leicht nach oben gedrückt. Habe es schon mit "center" usw. probiert, leider erfolglos. -
@damrak2022 Na ich hab Dir gesagt - dafür ist eine Textnode nicht gedacht - dann musst halt selbst HTML programmieren und eine template Node nutzen. Aber wie ich anfangs schon sagte - da wärst Du lieber bei VIS geblieben, wenn Du aufwendige Grafikseiten aufbauen willst.
-
@mickym Nein will ich nicht. Ich dachte es gibt vielleicht eine einfache Möglichkeit. Aber dann kann ich mich ja mal mit der template Node auseinandersetzen und etwas rumprobieren.