NEWS
Visualisierung mit Node Red erstellen
-
@damrak2022 Na weil wir doch ein Objekt brauchen in dem wir beide Eigenschaften in einem Nachrichtenobjekt haben,
wie wir hier in dem Post festgestellt haben: https://forum.iobroker.net/post/885965
Denn solange die Eigenschaften in unterschiedlichen Objekten ist, bringst Du die ja nicht zusammen, wie Du ja bereits festgestellt haben.
-
@mickym Ja okay, das hattest Du gesagt. Mir war nur nicht klar das dies der Weg ist
-
@damrak2022 Gut nachdem die Nachrichtenobjekte nicht aufeinander warten müssen wir diesen Wert in einer Variable, im Flow Kontext speichern, damit wir unabhängig davon sind , wann welche Node getriggert wird, und wir immer Zugriff auf den Wert der anderen Node habe.
In der oberen speichern wir also den Wert der payload Eigenschaft systole in einer Variable Systole, in der unteren Node speichern wir den Wert der payload Eigenschaft diastole in einer Variable Diastole.
Du betätigst wieder beide Inject Nodes und postest bitte den Flow-Kontext. (sowas haben wir bei deinem iMac mit dem Bewegungsmelderflow gemacht).
Wir haben nun also in jeder Change Node - 3 Regeln.
Wenn wir beide Inject Nodes betätigen haben wir immer noch 2 Nachrichtenobjekte aber nur mit einer Eigenschaft:
Dein Kontext wird nach Betätigung der Inject Nodes so aussehen:
Poste dann bitte die aktuelle Change Node. - Wenn Du es nicht weißt - poste ich die Lösung
-
@mickym So sieht das momentan aus
Meine 3. Regel stimmt nicht denn ich bekomme an der Seite was ganz anderes angezeigt
-
@damrak2022 Nein ist leider falsch - Du sollst die Variable Systole und Diastole setzen. Quelle ist die payload.systole bzw. payload.diastole des Nachrichtenobjektes.
Merke - Wenn Du in Deiner Change Node SETZE verwendest, dann steht OBEN das ZIEL und UNTEN die QUELLE.
(Das $ Zeichen hat hier nichts verloren)
das ist eine Umgebungsvariable.
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
Meine 3. Regel stimmt nicht denn ich bekomme an der Seite was ganz anderes angezeigt
Wir haben nirgends etwas global gesetzt.
Merke bei SETZE = OBEN das ZIEL
UNTEN die QUELLEDie Lösung ist also
Und Du musst das doch nur lesen:
Setze flow.Diastole (to the value = auf den Wert ) msg.payload.diastole
Also einfach Lesen, was gemacht werden soll!!!
-
@mickym Jetzt sieht das so aus:
-
@damrak2022 Nein Du steckst die ganze payload da rein. Du sollst doch 2 Variablen erstellen. Ich hab Dir doch die Lösung gepostet. Also das abzuschreiben und die Systole und Diastole in die Regel schreiben, sollte eigentlich möglich sein - insbesondere wenn Du das verstehst, was ich geschrieben habe.
Der Kontext muss so aussehen.
-
@mickym Okay, dann lass mich noch ein bisschen probieren. Ich werde das rausfinden wie es stimmt und das von Dir nochmal in Ruhe lesen.
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym Okay, dann lass mich noch ein bisschen probieren. Ich werde das rausfinden wie es stimmt und das von Dir nochmal in Ruhe lesen.
Sorry da gibts nicht zu probieren - ich hab Dir die Lösung gepostet - schaust Du das nicht an?????
-
@mickym Doch
-
@damrak2022 Ja ist nur verkehrt rum - normalerweise ist die Systole der höhere Wert.
Das payload Objekt solltest Du aus dem Flow Kontext wieder löschen. Das war "Schwachsinn".
-
@mickym Ja, warte mal, ich habe es gerade von der Anzeige her korrekt, aber verdreht.
-
@mickym So:
-
@damrak2022 So und nun setzt Du in der Change Node die den systolischen Wert in der payload Eigenschaft hat, den diastolischen Wert und umgekehrt.
Dann wieder beide Inject Nodes betätigen und die Debug Ausgabe posten.
-
@mickym Sorry, verstehe ich nicht. Eine 4. Regel setzen?
-
@damrak2022 Ja in einer 4. Regel.
-
@mickym Meinst Du so?
-
@damrak2022 Nein das payload Objekt enthält doch keine 2 Eigenschaften. Nun schreiben wir die in dem Kontext gespeicherten Werte in die jeweilige Node, in der die entsprechende Eigenschaft fehlt.
Hier die Lösung:
und in der anderen Node halt entsprechend umgekehrt.
-