44 lines
1.2 KiB
JavaScript
44 lines
1.2 KiB
JavaScript
|
// name: Heatfunction
|
||
|
// outputs: 3
|
||
|
// initialize: DEBUG = false;\n\nkey_user_setpoint = "user_setpoint_sleep_madi"
|
||
|
// finalize: // Der Code hier wird ausgeführt,\n// wenn der Node gestoppt wird\n
|
||
|
// info:
|
||
|
if (DEBUG)
|
||
|
{
|
||
|
node.warn(msg)
|
||
|
}
|
||
|
|
||
|
out_1 = null;
|
||
|
out_2 = null;
|
||
|
out_3 = null;
|
||
|
|
||
|
user_setpoint = flow.get(key_user_setpoint)
|
||
|
|
||
|
if (msg.topic == "valve_setpoint")
|
||
|
{
|
||
|
if (user_setpoint == undefined)
|
||
|
{
|
||
|
flow.set(key_user_setpoint, msg.payload)
|
||
|
}
|
||
|
}
|
||
|
else if (msg.topic == "user_setpoint")
|
||
|
{
|
||
|
flow.set(key_user_setpoint, msg.payload)
|
||
|
out_1 = {topic: "new_setpoint", payload: {"current_heating_setpoint": msg.payload}};
|
||
|
out_2 = {topic: "trigger", reset: true};
|
||
|
}
|
||
|
else if (msg.topic == "boost")
|
||
|
{
|
||
|
if (user_setpoint != undefined)
|
||
|
{
|
||
|
out_1 = {topic: "boost_setpoint", payload: {"current_heating_setpoint": user_setpoint + 5}};
|
||
|
out_2 = {topic: "trigger", payload: null};
|
||
|
out_3 = {topic: "boost_state", payload: true};
|
||
|
}
|
||
|
}
|
||
|
else if (msg.topic == "trigger")
|
||
|
{
|
||
|
out_1 = {topic: "user_setpoint", payload: {"current_heating_setpoint": user_setpoint}};
|
||
|
out_3 = {topic: "boost_state", payload: false};
|
||
|
}
|
||
|
return [out_1, out_2, out_3];
|