rdmtc / node-red-contrib-ccu

Node-RED Nodes for the Homematic CCU
https://flows.nodered.org/node/node-red-contrib-ccu
MIT License
70 stars 13 forks source link

ccu-value Node: Weiterbenutzung des Input-msg-Objects, statt Neuinstaziierung #105

Open ttr-75 opened 4 years ago

ttr-75 commented 4 years ago

Ich habe eine Chain, bei der ich am Anfang einen Wert definiere, welchen ich ganz am Ende wieder benötige. (z.B. msg.toggleType) Leider wird in der "ccu-value"-Node die "msg" komplett neu instanziiert und es kommt nur noch der Output der ccu durch.

Wäre es vorstellbar das input "msg" Object beibehalten und die Properties zu überschreiben, anstatt es neu zu instanziieren?

Nebenbemerkungen:

hobbyquaker commented 4 years ago

Beim "Value" Node ist das Prinzipbedingt so, die Nachricht die eingeht hat quasi erst mal nichts mit der ausgehenden Nachricht zu tun. Die eingehende Nachricht sendet ein setValue/putParamset an die Schnittstelle, eine Nachricht am Ausgang kommt wenn von der Schnittstelle ein Event empfangen wurde. Das kann - aber muss nicht - in kausalen Zusammenhang stehen. Um Dein Wunsch zu erfüllen müsste ich quasi bei einer Eingehenden Nachricht die Nachricht selbst und den zu erwartenden Event zwischenspeichern um dann bei Eingang des Events die Nachricht wieder zuordnen zu können. Ich bin mir da grade unschlüssig ob das praktikabel ist, gib mir etwas Zeit, ich denk drüber nach.

schaze commented 4 years ago

Der Issue ist zwar schon etwas älter aber ich hätte ein ähnliches Problem mit dem RPC node. Hier wird auch ein neues MSG objekt erstellt. In diesem Fall wäre es jedoch wesentlich einfacher da hier immer eine Inputnachricht zu einem Output gehört. Wenn ich einen separaten Pullrequest dafür aufmache würdet ihr das dann reinmergen?