Nun würde ich gerne in node-red die eingestellte Zieltemperatur abfragen und stelle bekomme es nicht hin. Hat jemand eine Tipp für mich, stehe gerade tierisch auf dem Schlauch.
Was willst du machen? Abfragen? In der Ausgabe der Debug-Node kannst du auf “Pfad kopieren” klicken dann hast du den Namen der entsrepchenden Variable. Der erste Teil wird nicht kopiert, da musst du msg. vorne dran setzen. Bei der Solltemperatur wäre das dann msg.data.attributes.temperature
Definiere eleganter. Kommt halt drauf an was du überhaupt machts. Function ist universal und damit kannst du alles machen was mit vorgefertigten nodes auch geht.
Du hast die Temperatur in allen nachfolgenden Nodes weiterhin zur Verfügung und musst sie nicht zwingend nach msg.payload kopieren. Das Kopieren ist nur nötig wenn ein nachfolgendes Node zwingend msg.payload fordert.
Das Kopieren selbst könntest du mit dem “change” Node machen. Einfach im change mode “msg.payload = msg.data.attributes.temperature” setzen. Function ist aber auch nicht “unelegant”.
Bevor man beurteilt ob es eleganter geht müsste man wissen was du später mit der Temperatur selbst machen willst.
Ich versuche einen function-Node nur einzusetzen, wenn es keinen normalen Node zur Lösung der Aufgaben gibt. Wenn du in deinem Fall nur die Temperatur im Payload benötigst, dann könntest du es, wie @mostie es erwähnt hat, mit einen change-Node lösen. Du hättest aber auch die Möglichkeit es direkt in dem current_state-Node zu erledigen, dann benötigst du keinen function oder change-Node .