Skip to content

Instantly share code, notes, and snippets.

@MatsA
Created April 1, 2024 17:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save MatsA/2c036e70666fdda0f1b946047b92e4a2 to your computer and use it in GitHub Desktop.
Save MatsA/2c036e70666fdda0f1b946047b92e4a2 to your computer and use it in GitHub Desktop.
NodeRed flow for the Bosch XMPP application
[
{
"id": "18b8180a1f03c5f4",
"type": "tab",
"label": "IVT data",
"disabled": false,
"info": "",
"env": []
},
{
"id": "6ae3916ce61d0c54",
"type": "http request",
"z": "18b8180a1f03c5f4",
"name": "",
"method": "GET",
"ret": "obj",
"paytoqs": "ignore",
"url": "",
"tls": "",
"persist": false,
"proxy": "",
"insecureHTTPParser": false,
"authType": "",
"senderr": false,
"headers": [],
"x": 510,
"y": 60,
"wires": [
[
"0152901f06f7eaf5"
]
]
},
{
"id": "bd8d3f1d7ed2b507",
"type": "change",
"z": "18b8180a1f03c5f4",
"name": "Set \"payload\" to \"payload.value\"",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "payload.value",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 500,
"y": 120,
"wires": [
[
"03438aacbc17da01"
]
]
},
{
"id": "0cf64d119789c467",
"type": "function",
"z": "18b8180a1f03c5f4",
"name": "Create URL for local bridge",
"func": "const host = \"127.0.0.1:3001/bridge\";\n\nmsg.url = host + \"/heatingCircuits/hc1/roomtemperature\";\nmsg.topic = \"Indoor temperature °C\";\nnode.send(msg);\n\nmsg.url = host + \"/heatingCircuits/hc1/currentRoomSetpoint\";\nmsg.topic = \"Indoor setpoint temperature °C\";\nnode.send(msg);\n\nmsg.url = host + \"/heatSources/actualSupplyTemperature\";\nmsg.topic = \"Flow temperature °C\";\nnode.send(msg);\n\nmsg.url = host + \"/heatSources/returnTemperature\";\nmsg.topic = \"Return temperature °C\";\nnode.send(msg);\n\nmsg.url = host + \"/heatSources/actualModulation\";\nmsg.topic = \"Actual modulation %\";\nnode.send(msg);\n\nmsg.url = host + \"/system/sensors/temperatures/outdoor_t1\";\nmsg.topic = \"Outdoor temperature °C\";\n\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 300,
"y": 60,
"wires": [
[
"6ae3916ce61d0c54"
]
]
},
{
"id": "03438aacbc17da01",
"type": "ui_chart",
"z": "18b8180a1f03c5f4",
"name": "",
"group": "ceb2fc6beb0ec7be",
"order": 12,
"width": 0,
"height": 0,
"label": "Temperatures",
"chartType": "line",
"legend": "false",
"xformat": "HH:mm:ss",
"interpolate": "linear",
"nodata": "",
"dot": false,
"ymin": "",
"ymax": "",
"removeOlder": 1,
"removeOlderPoints": "",
"removeOlderUnit": "86400",
"cutout": 0,
"useOneColor": false,
"useUTC": false,
"colors": [
"#1f77b4",
"#aec7e8",
"#ff7f0e",
"#2ca02c",
"#98df8a",
"#d62728",
"#ff9896",
"#9467bd",
"#c5b0d5"
],
"outputs": 1,
"useDifferentColor": false,
"className": "",
"x": 740,
"y": 120,
"wires": [
[]
]
},
{
"id": "e3e3082b44dca68b",
"type": "inject",
"z": "18b8180a1f03c5f4",
"name": "Inject",
"props": [
{
"p": "payload"
},
{
"p": "topic",
"vt": "str"
}
],
"repeat": "120",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "",
"payloadType": "date",
"x": 90,
"y": 60,
"wires": [
[
"0cf64d119789c467"
]
]
},
{
"id": "f5039b0b20c18fb4",
"type": "http request",
"z": "18b8180a1f03c5f4",
"name": "",
"method": "GET",
"ret": "obj",
"paytoqs": "ignore",
"url": "",
"tls": "",
"persist": false,
"proxy": "",
"insecureHTTPParser": false,
"authType": "",
"senderr": false,
"headers": [],
"x": 490,
"y": 260,
"wires": [
[
"45033048e730ed10"
]
]
},
{
"id": "15fc8a980fdaa52c",
"type": "debug",
"z": "18b8180a1f03c5f4",
"name": "Debug complete msg object",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 440,
"y": 320,
"wires": []
},
{
"id": "12e554f6b704ceb8",
"type": "inject",
"z": "18b8180a1f03c5f4",
"name": "",
"props": [
{
"p": "payload"
}
],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"payload": "",
"payloadType": "str",
"x": 90,
"y": 260,
"wires": [
[
"561e4db60f273265"
]
]
},
{
"id": "561e4db60f273265",
"type": "function",
"z": "18b8180a1f03c5f4",
"name": "Create URL for local bridge",
"func": "const host = \"127.0.0.1:3001/bridge\"\n// const value = \"/heatingCircuits/hc1/roomtemperature\"\nconst value = \"/application\"\nmsg.url = host + value\n\nreturn msg;",
"outputs": 1,
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 280,
"y": 260,
"wires": [
[
"f5039b0b20c18fb4"
]
]
},
{
"id": "1f6fac0c4f67e854",
"type": "comment",
"z": "18b8180a1f03c5f4",
"name": "Testing various URL",
"info": "",
"x": 130,
"y": 200,
"wires": []
},
{
"id": "45033048e730ed10",
"type": "switch",
"z": "18b8180a1f03c5f4",
"name": "",
"property": "statusCode",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "200",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 1,
"x": 110,
"y": 320,
"wires": [
[
"15fc8a980fdaa52c"
]
]
},
{
"id": "0152901f06f7eaf5",
"type": "switch",
"z": "18b8180a1f03c5f4",
"name": "Forward only if statusCode = 200",
"property": "statusCode",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "200",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 1,
"x": 200,
"y": 120,
"wires": [
[
"bd8d3f1d7ed2b507"
]
]
},
{
"id": "ceb2fc6beb0ec7be",
"type": "ui_group",
"name": "Group 1",
"tab": "19fb412169661123",
"order": 1,
"disp": false,
"width": "16",
"collapse": false,
"className": ""
},
{
"id": "19fb412169661123",
"type": "ui_tab",
"name": "IVT Data",
"icon": "dashboard",
"order": 4,
"disabled": false,
"hidden": false
}
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment