[{"id":"6095dfc333161240","type":"tab","label":"Viessmann","disabled":false,"info":"","env":[]},{"id":"06eb9450dbb1debf","type":"switch","z":"6095dfc333161240","name":"check value","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"Standby","vt":"str"},{"t":"eq","v":"DHW","vt":"str"},{"t":"eq","v":"DHW-heat","vt":"str"},{"t":"eq","v":"Cont-reduced","vt":"str"},{"t":"eq","v":"Cont-normal","vt":"str"},{"t":"eq","v":"Cooling","vt":"str"}],"checkall":"true","repair":false,"outputs":6,"x":550,"y":80,"wires":[["fed7ed71e0dae078"],["fed7ed71e0dae078"],["fed7ed71e0dae078"],["fed7ed71e0dae078"],["fed7ed71e0dae078"],["fed7ed71e0dae078"]]},{"id":"072e6f7bcd1d2206","type":"mqtt in","z":"6095dfc333161240","name":"MQTT","topic":"vcontrold/setOpMode","qos":"0","datatype":"auto","broker":"9fdfaef3.5aff18","nl":false,"rap":false,"inputs":0,"x":70,"y":80,"wires":[["06eb9450dbb1debf"]]},{"id":"f8fdc51bb533fe2b","type":"exec","z":"6095dfc333161240","command":"vclient -h 192.168.2.120:3002","addpay":"payload","append":"","useSpawn":"false","timer":"","winHide":false,"oldrc":false,"name":"vclient","x":1050,"y":240,"wires":[["4aa7c050b905dd20"],["4aa7c050b905dd20"],["4aa7c050b905dd20"]]},{"id":"d72647a111284324","type":"switch","z":"6095dfc333161240","name":"check value","property":"payload","propertyType":"msg","rules":[{"t":"btwn","v":"40","vt":"num","v2":"60","v2t":"num"}],"checkall":"true","repair":false,"outputs":1,"x":550,"y":240,"wires":[["7f0a34776714cd20"]]},{"id":"2d6ccdcab7b71bdd","type":"mqtt in","z":"6095dfc333161240","name":"MQTT","topic":"vcontrold/setDHWSetpoint","qos":"0","datatype":"auto","broker":"9fdfaef3.5aff18","nl":false,"rap":false,"inputs":0,"x":70,"y":240,"wires":[["d72647a111284324"]]},{"id":"23afb744fe099264","type":"template","z":"6095dfc333161240","name":"set RoomTempNormal","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"setRoomTempNormal {{payload}}","output":"str","x":820,"y":360,"wires":[["f8fdc51bb533fe2b"]]},{"id":"7f0a34776714cd20","type":"template","z":"6095dfc333161240","name":"set DHWSetPoint","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"'setDHWSetpoint {{payload}}'","output":"str","x":810,"y":240,"wires":[["f8fdc51bb533fe2b","4aa7c050b905dd20"]]},{"id":"cf7a8c74768db6d4","type":"template","z":"6095dfc333161240","name":"set RoomTempReduced","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"'setRoomTempReduced {{payload}}'","output":"str","x":830,"y":460,"wires":[[]]},{"id":"165cedeb366a3078","type":"template","z":"6095dfc333161240","name":"set RoomTempParty","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"'setRoomTempPartyMode {{payload}}'","output":"str","x":820,"y":560,"wires":[[]]},{"id":"fed7ed71e0dae078","type":"template","z":"6095dfc333161240","name":"set OpMode","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"'setOpMode {{payload}}'","output":"str","x":790,"y":80,"wires":[["f8fdc51bb533fe2b"]]},{"id":"f9493508e59711d4","type":"mqtt in","z":"6095dfc333161240","name":"MQTT","topic":"HASS/setPreset","qos":"0","datatype":"auto","broker":"9fdfaef3.5aff18","nl":false,"rap":false,"inputs":0,"x":70,"y":820,"wires":[["57d7e3fb780e50d8"]]},{"id":"57d7e3fb780e50d8","type":"switch","z":"6095dfc333161240","name":"check value","property":"payload","propertyType":"msg","rules":[{"t":"eq","v":"none","vt":"str"},{"t":"eq","v":"reduced","vt":"str"},{"t":"eq","v":"party","vt":"str"}],"checkall":"false","repair":false,"outputs":3,"x":230,"y":820,"wires":[["a1c37f4bf5e4f10e","3c2aa670c2d92f59"],["a1c37f4bf5e4f10e","59ee4a7e51b29764"],["a1c37f4bf5e4f10e","3d645e6db74819ac"]]},{"id":"737cda88ca55491a","type":"debug","z":"6095dfc333161240","name":"debug","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":610,"y":1040,"wires":[]},{"id":"b2a2cee7ecdf4df3","type":"mqtt in","z":"6095dfc333161240","name":"MQTT","topic":"vcontrold/setRoomTemp","qos":"0","datatype":"auto","broker":"9fdfaef3.5aff18","nl":false,"rap":false,"inputs":0,"x":70,"y":460,"wires":[["8dc45b7a0925cdef"]]},{"id":"a1c37f4bf5e4f10e","type":"template","z":"6095dfc333161240","name":"set sub","field":"payload","fieldType":"msg","format":"handlebars","syntax":"mustache","template":"'setPresetMode {{payload}}'","output":"str","x":460,"y":1040,"wires":[["737cda88ca55491a"]]},{"id":"3c2aa670c2d92f59","type":"change","z":"6095dfc333161240","name":"set topic","rules":[{"t":"set","p":"topic","pt":"msg","to":"setRoomTempNormal","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":460,"y":720,"wires":[["521fe2a0b4ed4531"]]},{"id":"6eca378b952f5aac","type":"function","z":"6095dfc333161240","name":"Join","func":"// Access the topic of the first node\nvar firstNodeTopic = flow.get('firstNodeTopic');\nvar firstNodePayload = flow.get('firstNodePayload');\nvar secondNodeTopic = flow.get('secondNodeTopic');\nvar secondNodePayload = flow.get('secondNodePayload');\n\n// Set the topic of the second node to the topic of the first node\nmsg.topic = firstNodeTopic;\nmsg.payload = secondNodePayload;\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":390,"y":460,"wires":[["d9a0f9cad7a9656f"]]},{"id":"521fe2a0b4ed4531","type":"change","z":"6095dfc333161240","name":"set Flow","rules":[{"t":"set","p":"firstNodeTopic","pt":"flow","to":"topic","tot":"msg"},{"t":"set","p":"firstNodePayload","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":680,"y":720,"wires":[["6eca378b952f5aac"]]},{"id":"8dc45b7a0925cdef","type":"change","z":"6095dfc333161240","name":"set Flow","rules":[{"t":"set","p":"secondNodeTopic","pt":"flow","to":"topic","tot":"msg"},{"t":"set","p":"secondNodePayload","pt":"flow","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":220,"y":460,"wires":[["6eca378b952f5aac"]]},{"id":"59ee4a7e51b29764","type":"change","z":"6095dfc333161240","name":"set topic","rules":[{"t":"set","p":"topic","pt":"msg","to":"setRoomTempReduced","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":460,"y":820,"wires":[["521fe2a0b4ed4531"]]},{"id":"3d645e6db74819ac","type":"change","z":"6095dfc333161240","name":"set topic","rules":[{"t":"set","p":"topic","pt":"msg","to":"setRoomTempPartyMode","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":460,"y":920,"wires":[["521fe2a0b4ed4531"]]},{"id":"d9a0f9cad7a9656f","type":"switch","z":"6095dfc333161240","name":"check value","property":"topic","propertyType":"msg","rules":[{"t":"eq","v":"setRoomTempNormal","vt":"str"},{"t":"eq","v":"setRoomTempReduced","vt":"str"},{"t":"eq","v":"setRoomTempPartyMode","vt":"str"}],"checkall":"false","repair":false,"outputs":3,"x":550,"y":460,"wires":[["23afb744fe099264"],["cf7a8c74768db6d4"],["165cedeb366a3078"]]},{"id":"7434c3308b1b735d","type":"comment","z":"6095dfc333161240","name":"Todo: change temp-range based on presets","info":"","x":570,"y":1000,"wires":[]},{"id":"9c58d4582ae778aa","type":"comment","z":"6095dfc333161240","name":"Todo: reduced room temp","info":"","x":830,"y":420,"wires":[]},{"id":"8c87c0b1e7c6d976","type":"comment","z":"6095dfc333161240","name":"Todo: party room temp","info":"","x":820,"y":520,"wires":[]},{"id":"e2a3c3fc21bbfbd3","type":"comment","z":"6095dfc333161240","name":"Normal room temp","info":"","x":810,"y":320,"wires":[]},{"id":"484c3b475956d711","type":"comment","z":"6095dfc333161240","name":"DHW temp","info":"","x":80,"y":200,"wires":[]},{"id":"4968615fe08a5204","type":"comment","z":"6095dfc333161240","name":"Operation mode","info":"","x":100,"y":40,"wires":[]},{"id":"c70b4865197e3611","type":"comment","z":"6095dfc333161240","name":"Preset: normal/reduced/party","info":"","x":140,"y":760,"wires":[]},{"id":"37e52c4cc6f9a78b","type":"comment","z":"6095dfc333161240","name":"Room temp","info":"","x":90,"y":420,"wires":[]},{"id":"1408e900c0929bbc","type":"comment","z":"6095dfc333161240","name":"Normal","info":"","x":450,"y":680,"wires":[]},{"id":"226c15b57044c441","type":"comment","z":"6095dfc333161240","name":"Reduced","info":"","x":460,"y":780,"wires":[]},{"id":"88635f7da531d2b5","type":"comment","z":"6095dfc333161240","name":"Party","info":"","x":450,"y":880,"wires":[]},{"id":"cde6f2c5decb100e","type":"comment","z":"6095dfc333161240","name":"Debug","info":"","x":1230,"y":80,"wires":[]},{"id":"4aa7c050b905dd20","type":"debug","z":"6095dfc333161240","name":"debug 3","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1240,"y":120,"wires":[]},{"id":"9fdfaef3.5aff18","type":"mqtt-broker","name":"Mosquitto","broker":"192.168.1.3","port":"1883","clientid":"Node-RED","autoConnect":true,"usetls":false,"compatmode":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"autoUnsubscribe":true,"birthTopic":"vcontrold/status","birthQos":"0","birthRetain":"true","birthPayload":"online","birthMsg":{},"closeTopic":"vcontrold/status","closeQos":"0","closeRetain":"true","closePayload":"offline","closeMsg":{},"willTopic":"","willQos":"0","willRetain":"false","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""}]