iotredloop/flows/K.Thermostat.json

10594 lines
No EOL
197 KiB
JSON

[
{
"id": "80f2ffd4953c67e9",
"type": "tab",
"label": "K.Thermostat",
"disabled": false,
"info": "",
"env": []
},
{
"id": "dbf491fd689e7cd2",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - kernel",
"style": {
"fill": "#777777",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"ccc78d495cbd8f7d",
"e57e9c900c787424",
"8206912d2f9bab36",
"0af18fd6cc155518",
"c311204f22191fa2",
"868902cdeaa428fe",
"467ec12f292b2573",
"6c4b12585b58300e",
"7e9cff1699c061ec",
"272756073495f0a8"
],
"x": 68,
"y": 2453,
"w": 2204,
"h": 2114
},
{
"id": "c3cbb2a2dd06d1bb",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - ui - test",
"style": {
"fill": "#6f2fa0",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"659f9752db0967bc",
"9caafb8c1719d275",
"515b0c184c8a3628",
"13697bbd73295b46",
"c6fdc57a80266f04",
"b7bc73260cea8570",
"d60c017a8962d3f8",
"dc37631fe73fce2a",
"c932311ec07112b5",
"67e91e753d3708e2",
"a86e51fee3e3458d",
"f974a627497b4b7d",
"809635d5f2efc402",
"c9291360c0f0b490",
"f10733a435dc7390",
"f81152d8df61c845",
"bc4771242d5d3bd8",
"135b7546018ecfba",
"6bf593bd1612dbde",
"64405bce10cccde1",
"bf5b9cb6fe9e3550",
"6e4f87c323cc4659"
],
"x": 94,
"y": 5959,
"w": 1752,
"h": 502
},
{
"id": "1338205554153fa8",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "catch error",
"style": {
"fill": "#ff0000",
"fill-opacity": "0.05",
"label": true,
"stroke": "#ff0000"
},
"nodes": [
"104783a075f279a3",
"225fbec54fe689f8",
"efdfaa2b7173a43a"
],
"x": 534,
"y": 19,
"w": 422,
"h": 82
},
{
"id": "ef2c257bbe04f8d2",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - update",
"style": {
"fill": "#777777",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"b3bc1717c16dc7dc",
"6f1f772c23d57e24",
"e653f3ec3dc88a8f",
"93075511ad056e6d",
"8ecd405cd0a1e5ac"
],
"x": 68,
"y": 4613,
"w": 4544,
"h": 1154
},
{
"id": "9cb08113dfb0f712",
"type": "group",
"z": "80f2ffd4953c67e9",
"name": "thermostat - device",
"style": {
"label": true,
"fill": "#777777",
"fill-opacity": "0.05"
},
"nodes": [
"e6edd4684b272434",
"bb2ebd173a2ba06c"
],
"x": 68,
"y": 173,
"w": 3384,
"h": 2174
},
{
"id": "7e9cff1699c061ec",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - compute heat request",
"style": {
"stroke": "#92d04f",
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"1452439e0c937126",
"15d8d0ba06961e4b",
"4b342483a51b0f93"
],
"x": 94,
"y": 2479,
"w": 522,
"h": 82
},
{
"id": "93075511ad056e6d",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "ef2c257bbe04f8d2",
"name": "thermostat - update - outdoor temperature",
"style": {
"label": true,
"fill": "#92d04f",
"fill-opacity": "0.05"
},
"nodes": [
"8bbf52c2a83e09ea",
"0a9cb3219b03ca53",
"37844601d21c6184",
"e3dc3f877be31d77",
"6fbdfc1ab44f9754",
"85f9e2ad24cb8a5a",
"818c3dadf81b379e",
"d6ab285a88335fa2",
"19fa594b351b66f0",
"c8fc469ecc49e36d",
"8f03e932f3d0abb1"
],
"x": 94,
"y": 4639,
"w": 1752,
"h": 142
},
{
"id": "e653f3ec3dc88a8f",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "ef2c257bbe04f8d2",
"name": "thermostat - update - indoor temperature",
"style": {
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"3099e4a17fd21410",
"a2b07c98d61de126",
"d09ad27d05d54698",
"4c169fc26f833802",
"a21c6a2db7aeab09",
"9eb8cf78caf3141d",
"313fbd5fc01985a5",
"b7ffd39578f29c8b",
"c3b17da928d7afba",
"76d38ba7e5924f87",
"7fd575b83b1ea3a9",
"809fde35e7e1f34c",
"94a4df12110c761f"
],
"x": 94,
"y": 4819,
"w": 2392,
"h": 142
},
{
"id": "6f1f772c23d57e24",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "ef2c257bbe04f8d2",
"name": "thermostat - update - offloading",
"style": {
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"5cb2a229a6fec1aa",
"1c4fbd9e3d313b43",
"2aaf95392a970167",
"e78638ee35b8c069",
"2cb92368cb319c65",
"1dd82f8d7e2ccd52",
"91ee9f04019a9999",
"53f044d01f2d18b2",
"2df7aa160cbf3a71",
"db3681610a5d90d9",
"7869c56dce3123ed",
"ea0c6cadf1d594c3",
"285a0091abda1f58",
"96e92d4bad3792d3",
"3de9c88ac7ce9a77",
"808426e9258cd024",
"3b539d9347f6bb28",
"f6875e4f57839bc7",
"540559483eeab8da",
"8a6d0abb6443883d",
"411ef0d570511d83",
"25a5a9737529ff5b",
"abf41c098d653760",
"e5f7588af2fe3ff5",
"2975020541c6b561"
],
"x": 94,
"y": 4999,
"w": 4492,
"h": 142
},
{
"id": "e6edd4684b272434",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "9cb08113dfb0f712",
"name": "thermostat - device",
"style": {
"label": true,
"fill": "#ffC000",
"fill-opacity": "0.05"
},
"nodes": [
"949a8ee5f18f108a",
"fae8eb23e8443ee5",
"c2589545c2409827",
"55333767f9209bca",
"c5b547a57eb368ad",
"958bbeb30de3eada",
"9ca9625cd3f893dc",
"4efebf9bfd65df96",
"96d26c543c5fcf13",
"5f1e10e5657e3138",
"2039bf8bb21c10d1",
"21d8e3e1da7313ff",
"657fe886d2a3f59f",
"f513b11976d16bb9",
"73c382176ddebc2b",
"a900585cd904a957",
"873ead3b33da82c9",
"e069a71e517cb7ea",
"834fc1d89a1493b3",
"c79982618f4e3345",
"cb222ce1c4c3d7dc",
"3006243d30270236",
"1707bc7a4bb0daa5",
"ea848cdc88365d9a",
"0c919f0ee88983ad",
"780cf693ea55249b",
"fb20d3e29fc3092d",
"2b4f4116011a9ca6",
"07b7d259f0949e49",
"a895f0ea053086fe",
"3683e8f63f0dc5aa",
"bae9495793960012",
"d93c5182974350b0",
"ae60f951124d5757"
],
"x": 94,
"y": 199,
"w": 1142,
"h": 1762
},
{
"id": "8ecd405cd0a1e5ac",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "ef2c257bbe04f8d2",
"name": "thermostat - update - aperture opened",
"style": {
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"7837b5fcc1432bfa",
"6632e88ee0633e4c",
"3905527e91730097",
"01c20d4c1e5db317",
"87b35783671bc785",
"c52bde31f64b30dd",
"748b1f355c0e00f8",
"86cb7c12e7bccf56",
"c8d72dec2ba2b842",
"a91a6950282e40e0",
"7cc8434ffb22fe29",
"2b1ba57fb5c945df",
"618c0cd766442117",
"c422635e69d1eaf7",
"092568ca52a77671",
"abef8f252aedce0a",
"632ae6a86b8d4095",
"cff0bca6c0bb1782",
"8d466808ce870af4",
"b315363385257040",
"c86253a53e062d16",
"9a561c9f4fd75edb",
"dba3af356708ccb7",
"3c2f8f4f7cff096c",
"30460d81f866f13d",
"9fb0f58d71f522d1"
],
"x": 94,
"y": 5179,
"w": 3912,
"h": 202
},
{
"id": "b3bc1717c16dc7dc",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "ef2c257bbe04f8d2",
"name": "thermostat - update - operating mode",
"style": {
"stroke": "#a4a4a4",
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"048bc1e501b0f9f2",
"3b8d8924bdb03f80",
"3e40fc1c77ed372a",
"b461040a6c998b61",
"3c808f997ae66a1c",
"069ab711c0c089a6",
"c20295d9b0ac3419",
"34992e101a5f7e1c",
"36eb92fa692e166c",
"d4c1d964e9c56e01",
"abd02925c2597211",
"e267a0404a5c5d6c",
"758acb218148a1d7",
"0728c8c3564e6e93",
"d1c7f4810b12afe2",
"35ea643afefc732d",
"45bd2f5743776c20",
"d6ec98126b0438ab",
"84f1bb54c15f032d",
"f05d34dd5ff9746b",
"080a2e3d678b9119",
"0cac48ac1fa4efa4"
],
"x": 94,
"y": 5419,
"w": 3212,
"h": 322
},
{
"id": "bb2ebd173a2ba06c",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "9cb08113dfb0f712",
"name": "room - ui - thermostat",
"style": {
"fill": "#6f2fa0",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"9737afb19d9c9fbb",
"dd49b4996fb683ff",
"fbb1bdcb44abce21",
"6c6cf33417f59f97",
"fc673a36d8691d63",
"37aa96c6d80d8ade",
"1ef76a4c1fab9b78",
"adc6196b15cf8c39",
"26bdcbaa93cfcc27",
"c4f79cb042dc36a1",
"f391ba85b3d53073",
"7e364afe6e09d405",
"b8374382f89b46c6",
"5b4d546fd3646af7",
"fafbe160c912822f",
"f85914dec075a3d8",
"bd8ab43b4a91a2ae",
"19b6504e1bbece40",
"f968a8fc298f04c3",
"07108de5adf3ae2a",
"bcf6468037b4c2a6",
"37794c3da2ceda38",
"dfd8650d923f73e4",
"4c5adf85df17025b",
"26537f8818c29c61",
"a7420198a3e0f879",
"f23d5105ca948593",
"2efa063af4b505d2",
"6cc81c8342d6ef1c",
"f7ed99ce22cd37cb",
"348134507ffe8815",
"63561fec4fba2afd",
"53f7b3195f6dfeed",
"99e789a941d2af52",
"39615dab9370d868",
"e223793b9998818b",
"136162f12991809c",
"fb9711affc7d14af",
"a9e89b46159c4ec8",
"cb3f8f9fa322b59f",
"51dc21bc28ea3f06",
"272807d6b707d92f",
"4540d4f432f8742d",
"6d0cb16590b1da18",
"bfb0a473b6a09c81",
"61d316384ef1521b",
"27d7b08fb3646a52",
"3f9eefa51c1e5e9e",
"ff2211c1efd24971",
"f814aebd5bd599b5",
"8c3c9bc4a66b1e32",
"0711217590341f99",
"3930f84bd36fd5aa",
"b6f3145afc37707c",
"7a9f4d42d5c7497c",
"dd517b4d06983aac",
"e7dcdd83cf9e08e1",
"73dc6a2b0e041f8e",
"bcfed6ac5d278d3c",
"93e874f6e4a1f87a",
"fcbda9c625fdecac",
"f5cf184989e2cc69",
"3d40410e159beaab",
"4565730f04bd7072",
"95eb528329f90cf2",
"79764253e9e92fda",
"3e6cd35a857771f8",
"4ad97596d0efa64b",
"f19ecf4219ed5190",
"33fde1af7428bf26",
"1d92bf6b8fc98959",
"25b3542fda8fae4d",
"4b8267934ced5596",
"151d5194b8538480",
"f670239d8cf08808",
"a4b56ada8159bff6",
"990b4d58c23a68a2",
"ee3e358d88bbf249",
"6f096e24c9634c56",
"83b16f9aed4fa051",
"db3ebf0b6421aeae",
"10c3697bddec1a05",
"4f0ea1cdd4d0b719",
"ad09f7f6ad1acedd",
"7bb3239b80bb5650",
"b87af6e4d9e65d33",
"aefd619aa22eea0b",
"bc775d86aa14a73f",
"b74bf0ca5e271336",
"f914f5311d82ce56",
"e0613fa53ec99a7d",
"b0670866409f1f18"
],
"x": 1334,
"y": 199,
"w": 2092,
"h": 2122
},
{
"id": "ccc78d495cbd8f7d",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - pilot",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"cfeaa3a9e12b40eb",
"2b98ac8845853557",
"1b79850c96d3d208",
"014df3b24c891646",
"d67d4a70e837c744",
"b809a2344b2a162c",
"b5123d0e6886505f",
"2311d66d2d2f1a5a",
"d2ded0d940485aa7",
"80b02c9d206eb796",
"e50f34cde29f1023",
"502bf87b213069c7",
"4e6ed9498ff4530e",
"12cadcc5d1bee95b",
"b54dd8d3915e207f",
"06abf52a6249bd22",
"93d2b581d45d7631"
],
"x": 94,
"y": 4099,
"w": 2152,
"h": 262
},
{
"id": "e57e9c900c787424",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - status",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"cd96635eddc7da1f",
"4fc3e55ddfdaa010",
"529ee15b89c1a59a",
"559221227a779f47",
"5473623028666410",
"61a83a7757b78adc",
"889157da2139e8ff",
"503a81673f2d7fb0",
"a4c6172c4c4737ac",
"4cdca41467e84399",
"6335a0ba7e4fd02e",
"ffdbc6f74f0bd44a",
"1ff0b0648a927b0f",
"f0e65595e5827e60",
"54a377fdde983cc9"
],
"x": 94,
"y": 3739,
"w": 1952,
"h": 322
},
{
"id": "8206912d2f9bab36",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - offloading",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"f3335edf661bfc8d",
"82489d3f8ae606cf",
"c91c042b412afd7f",
"8a7f5acb317722bc",
"aa80f7b58c825d6d",
"cbb6f339addc057f",
"772937ddeb3e1b72",
"1b11e45ef3e9f02f",
"3bc159f186c762cd",
"0ea437f46160f0e5"
],
"x": 94,
"y": 3499,
"w": 1632,
"h": 202
},
{
"id": "0af18fd6cc155518",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - udpate - temperature setpoint",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"e7a80893daf9f5cd",
"85d6369076d887c9",
"1164fe72097e884c",
"0eb756ee244751a4",
"3a3af17d95ca520a",
"70c27df7cb0add1d",
"64754ad76b3561d6",
"f9fad454dec37bc7",
"55660ec49f882e13",
"3a23d8541c5bc71c"
],
"x": 94,
"y": 3199,
"w": 1412,
"h": 262
},
{
"id": "c311204f22191fa2",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - delayed aperture",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"f1240da189a60ba8",
"ecda411603ebcccf",
"f3eb2e8c09f67e89",
"f305bda7c25657e5",
"6a726c7db415e700",
"4658e2323b1a287a",
"37b31a14146e2a3f",
"92add418b3868c54",
"6893398018de38e9"
],
"x": 94,
"y": 3019,
"w": 1592,
"h": 142
},
{
"id": "868902cdeaa428fe",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - metric - input",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"266e831763ed3b77",
"ed42e96a79df8e09",
"7b43ab1cda2d8f3f",
"ff4225d872a9a0d3",
"623975efd8e9bbcd",
"be58e8ac1e1b6eb1"
],
"x": 94,
"y": 2599,
"w": 1172,
"h": 142
},
{
"id": "467ec12f292b2573",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - update - heat request",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"1ed6b5ff63020d07",
"69fda60f897db5fd",
"d75bdce71118a56f",
"5f6fd378f40e4c81",
"0fb59058d3aa9663",
"0998eafda2346961",
"5409904037bf4a62",
"7d5ba4790bc3a720",
"92e341f726c9c5ac",
"e13e76f216b98c22"
],
"x": 94,
"y": 2779,
"w": 1732,
"h": 202
},
{
"id": "6c4b12585b58300e",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - metric - output",
"style": {
"label": true,
"fill": "#ff0000",
"fill-opacity": "0.05"
},
"nodes": [
"a091b2e84a4e89e6",
"34e6817c2f435667",
"9ba0a97276e93540",
"147aa94543fa77cb"
],
"x": 94,
"y": 4399,
"w": 592,
"h": 142
},
{
"id": "272756073495f0a8",
"type": "group",
"z": "80f2ffd4953c67e9",
"g": "dbf491fd689e7cd2",
"name": "thermostat - compute cool request",
"style": {
"stroke": "#92d04f",
"fill": "#92d04f",
"fill-opacity": "0.05",
"label": true
},
"nodes": [
"0162f458d02a06ca",
"736b4f85b471f119",
"97694aa50cf4ce0e"
],
"x": 664,
"y": 2479,
"w": 522,
"h": 82
},
{
"id": "cfeaa3a9e12b40eb",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat - update - pilot metric",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 2055,
"y": 4260,
"wires": []
},
{
"id": "2b98ac8845853557",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "trigger",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "status",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 4200,
"wires": [
[
"1b79850c96d3d208"
]
]
},
{
"id": "1b79850c96d3d208",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "status",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "powered",
"vt": "str"
},
{
"t": "eq",
"v": "reached",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 3,
"x": 430,
"y": 4200,
"wires": [
[
"b809a2344b2a162c"
],
[
"d67d4a70e837c744"
],
[
"d67d4a70e837c744"
]
]
},
{
"id": "014df3b24c891646",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "to true",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 830,
"y": 4260,
"wires": [
[
"4e6ed9498ff4530e",
"12cadcc5d1bee95b",
"b5123d0e6886505f"
]
]
},
{
"id": "d67d4a70e837c744",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "to false",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 840,
"y": 4200,
"wires": [
[
"12cadcc5d1bee95b",
"4e6ed9498ff4530e",
"b5123d0e6886505f"
]
]
},
{
"id": "b809a2344b2a162c",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "system offloaded",
"property": "metrics.system.mode.offloading",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "offloaded",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 630,
"y": 4140,
"wires": [
[
"b54dd8d3915e207f"
],
[
"014df3b24c891646"
]
]
},
{
"id": "b5123d0e6886505f",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "cycle time",
"rules": [
{
"t": "set",
"p": "tc",
"pt": "msg",
"to": "th['cycle time']",
"tot": "msg"
},
{
"t": "set",
"p": "delay",
"pt": "msg",
"to": "msg.tc * 60000",
"tot": "jsonata"
},
{
"t": "delete",
"p": "tc",
"pt": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1020,
"y": 4320,
"wires": [
[
"d2ded0d940485aa7"
]
]
},
{
"id": "2311d66d2d2f1a5a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat / offloading",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1060,
"y": 4140,
"wires": [
[
"502bf87b213069c7"
]
]
},
{
"id": "d2ded0d940485aa7",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "wait delay then send false, reset on false",
"op1": "",
"op2": "false",
"op1type": "nul",
"op2type": "bool",
"duration": "30",
"extend": false,
"overrideDelay": true,
"units": "min",
"reset": "false",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 1300,
"y": 4320,
"wires": [
[
"4e6ed9498ff4530e",
"12cadcc5d1bee95b"
]
]
},
{
"id": "80b02c9d206eb796",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "wait 1 min then send last",
"op1": "",
"op2": "",
"op1type": "nul",
"op2type": "payl",
"duration": "1",
"extend": true,
"overrideDelay": false,
"units": "min",
"reset": "",
"bytopic": "topic",
"topic": "bucket",
"outputs": 1,
"x": 1870,
"y": 4320,
"wires": [
[
"cfeaa3a9e12b40eb",
"93d2b581d45d7631"
]
]
},
{
"id": "e50f34cde29f1023",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat - update - pilot",
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 4200,
"wires": [
[
"2b98ac8845853557"
]
]
},
{
"id": "502bf87b213069c7",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat - update - pilot",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1795,
"y": 4140,
"wires": []
},
{
"id": "4e6ed9498ff4530e",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat / last pilot",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "last pilot",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "",
"tot": "date"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1620,
"y": 4200,
"wires": [
[
"502bf87b213069c7",
"06abf52a6249bd22"
]
]
},
{
"id": "12cadcc5d1bee95b",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "metric cible / pilot",
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
},
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "cible",
"tot": "str"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "pilot",
"tot": "str"
},
{
"t": "delete",
"p": "th",
"pt": "msg"
},
{
"t": "set",
"p": "repeat",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1610,
"y": 4260,
"wires": [
[
"80b02c9d206eb796",
"cfeaa3a9e12b40eb",
"93d2b581d45d7631"
]
]
},
{
"id": "b54dd8d3915e207f",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "to false",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 840,
"y": 4140,
"wires": [
[
"2311d66d2d2f1a5a",
"b5123d0e6886505f"
]
]
},
{
"id": "06abf52a6249bd22",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "thermostat / last pilot",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1880,
"y": 4200,
"wires": []
},
{
"id": "93d2b581d45d7631",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "ccc78d495cbd8f7d",
"name": "xxx / cible / pilot",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 2120,
"y": 4320,
"wires": []
},
{
"id": "cd96635eddc7da1f",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "operating mode",
"property": "th['operating mode']",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "off",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 460,
"y": 3780,
"wires": [
[
"5473623028666410"
],
[
"4fc3e55ddfdaa010"
]
]
},
{
"id": "4fc3e55ddfdaa010",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "offloading",
"property": "th.offloading",
"propertyType": "msg",
"rules": [
{
"t": "true"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 660,
"y": 3840,
"wires": [
[
"61a83a7757b78adc"
],
[
"529ee15b89c1a59a"
]
]
},
{
"id": "529ee15b89c1a59a",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "delayed aperture",
"property": "th['delayed aperture']",
"propertyType": "msg",
"rules": [
{
"t": "true"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 870,
"y": 3900,
"wires": [
[
"889157da2139e8ff"
],
[
"559221227a779f47"
]
]
},
{
"id": "559221227a779f47",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "heat request",
"property": "th['heat request']",
"propertyType": "msg",
"rules": [
{
"t": "true"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 1090,
"y": 3960,
"wires": [
[
"503a81673f2d7fb0"
],
[
"54a377fdde983cc9"
]
]
},
{
"id": "5473623028666410",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "stopped",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "stopped",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
"y": 3780,
"wires": [
[
"4cdca41467e84399"
]
]
},
{
"id": "61a83a7757b78adc",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "offloaded",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "offloaded",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
"y": 3840,
"wires": [
[
"4cdca41467e84399"
]
]
},
{
"id": "889157da2139e8ff",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "suspended",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "suspended",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1470,
"y": 3900,
"wires": [
[
"4cdca41467e84399"
]
]
},
{
"id": "503a81673f2d7fb0",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "powered",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "powered",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
"y": 3960,
"wires": [
[
"4cdca41467e84399"
]
]
},
{
"id": "a4c6172c4c4737ac",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "reached",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "reached",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1460,
"y": 4020,
"wires": [
[
"4cdca41467e84399"
]
]
},
{
"id": "4cdca41467e84399",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat / status",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "status",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1670,
"y": 3840,
"wires": [
[
"1ff0b0648a927b0f",
"f0e65595e5827e60"
]
]
},
{
"id": "6335a0ba7e4fd02e",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "trigger",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "heat request",
"vt": "str"
},
{
"t": "eq",
"v": "operating mode",
"vt": "str"
},
{
"t": "eq",
"v": "offloading",
"vt": "str"
},
{
"t": "eq",
"v": "delayed aperture",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 4,
"x": 270,
"y": 3840,
"wires": [
[
"cd96635eddc7da1f"
],
[
"cd96635eddc7da1f"
],
[
"cd96635eddc7da1f"
],
[
"cd96635eddc7da1f"
]
]
},
{
"id": "ffdbc6f74f0bd44a",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat - update - status",
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 3840,
"wires": [
[
"6335a0ba7e4fd02e"
]
]
},
{
"id": "1ff0b0648a927b0f",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat - update - status",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1835,
"y": 3840,
"wires": []
},
{
"id": "f0e65595e5827e60",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "thermostat / status",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1910,
"y": 3780,
"wires": []
},
{
"id": "54a377fdde983cc9",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e57e9c900c787424",
"name": "cycle time",
"property": "th['last pilot']",
"propertyType": "msg",
"rules": [
{
"t": "lt",
"v": "$millis() - ($number(msg.th.'cycle time') * 60000)",
"vt": "jsonata"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1280,
"y": 4020,
"wires": [
[
"a4c6172c4c4737ac"
]
]
},
{
"id": "f3335edf661bfc8d",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "trigger",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "offloading",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 3600,
"wires": [
[
"82489d3f8ae606cf"
]
]
},
{
"id": "82489d3f8ae606cf",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "is true",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "true"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 430,
"y": 3600,
"wires": [
[
"c91c042b412afd7f",
"cbb6f339addc057f",
"772937ddeb3e1b72"
]
]
},
{
"id": "c91c042b412afd7f",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "set delay",
"rules": [
{
"t": "set",
"p": "delay",
"pt": "msg",
"to": "metrics.thermostat.config['offloading delay']",
"tot": "global"
},
{
"t": "set",
"p": "delay",
"pt": "msg",
"to": "$number(msg.delay) * 60000",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 600,
"y": 3660,
"wires": [
[
"8a7f5acb317722bc"
]
]
},
{
"id": "8a7f5acb317722bc",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "wait delay then false",
"op1": "",
"op2": "false",
"op1type": "nul",
"op2type": "bool",
"duration": "1",
"extend": true,
"overrideDelay": true,
"units": "min",
"reset": "",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 820,
"y": 3660,
"wires": [
[
"aa80f7b58c825d6d"
]
]
},
{
"id": "aa80f7b58c825d6d",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "system offloaded",
"property": "metrics.system.mode.offloading",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "offloaded",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 1070,
"y": 3660,
"wires": [
[
"c91c042b412afd7f"
],
[
"cbb6f339addc057f"
]
]
},
{
"id": "cbb6f339addc057f",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat / offloading",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1320,
"y": 3600,
"wires": [
[
"3bc159f186c762cd",
"0ea437f46160f0e5"
]
]
},
{
"id": "772937ddeb3e1b72",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat / offloading count",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading count",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th['offloading count']",
"tot": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$number(msg.payload) + 1",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 660,
"y": 3540,
"wires": [
[
"3bc159f186c762cd"
]
]
},
{
"id": "1b11e45ef3e9f02f",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat - update - offloading",
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 3600,
"wires": [
[
"f3335edf661bfc8d"
]
]
},
{
"id": "3bc159f186c762cd",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat - update - offloading",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1495,
"y": 3540,
"wires": []
},
{
"id": "0ea437f46160f0e5",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "8206912d2f9bab36",
"name": "thermostat / offloading",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1580,
"y": 3600,
"wires": []
},
{
"id": "e7a80893daf9f5cd",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "trigger",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "operating mode",
"vt": "str"
},
{
"t": "eq",
"v": "confort setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "eco setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "cold setpoint",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 4,
"x": 270,
"y": 3300,
"wires": [
[
"85d6369076d887c9"
],
[
"85d6369076d887c9"
],
[
"85d6369076d887c9"
],
[
"85d6369076d887c9"
]
]
},
{
"id": "85d6369076d887c9",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "check operating mode",
"property": "th['operating mode']",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "cool",
"vt": "str"
},
{
"t": "eq",
"v": "confort",
"vt": "str"
},
{
"t": "eq",
"v": "eco",
"vt": "str"
},
{
"t": "eq",
"v": "anti-freeze",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 4,
"x": 480,
"y": 3300,
"wires": [
[
"3a23d8541c5bc71c"
],
[
"1164fe72097e884c"
],
[
"0eb756ee244751a4"
],
[
"3a3af17d95ca520a"
]
]
},
{
"id": "1164fe72097e884c",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "confort",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th['confort setpoint']",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 690,
"y": 3300,
"wires": [
[
"70c27df7cb0add1d"
]
]
},
{
"id": "0eb756ee244751a4",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "eco",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th['eco setpoint']",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 690,
"y": 3360,
"wires": [
[
"70c27df7cb0add1d"
]
]
},
{
"id": "3a3af17d95ca520a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "anti-freeze",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "7",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 710,
"y": 3420,
"wires": [
[
"70c27df7cb0add1d"
]
]
},
{
"id": "70c27df7cb0add1d",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat / temperature setpoint",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "temperature setpoint",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 980,
"y": 3300,
"wires": [
[
"f9fad454dec37bc7",
"55660ec49f882e13"
]
]
},
{
"id": "64754ad76b3561d6",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat - update - temperature setpoint",
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 3300,
"wires": [
[
"e7a80893daf9f5cd"
]
]
},
{
"id": "f9fad454dec37bc7",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat - update - tempearture setpoint",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1195,
"y": 3300,
"wires": []
},
{
"id": "55660ec49f882e13",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "thermostat / temperature setpoint",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1320,
"y": 3240,
"wires": []
},
{
"id": "f1240da189a60ba8",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "trigger",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "aperture opened",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 3120,
"wires": [
[
"ecda411603ebcccf"
]
]
},
{
"id": "ecda411603ebcccf",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "delay 250 ms",
"pauseType": "delay",
"timeout": "250",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 450,
"y": 3120,
"wires": [
[
"4658e2323b1a287a"
]
]
},
{
"id": "f3eb2e8c09f67e89",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "wait delay then false, reset on true",
"op1": "",
"op2": "false",
"op1type": "nul",
"op2type": "bool",
"duration": "2",
"extend": false,
"overrideDelay": true,
"units": "min",
"reset": "true",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 900,
"y": 3060,
"wires": [
[
"6a726c7db415e700"
]
]
},
{
"id": "f305bda7c25657e5",
"type": "trigger",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "wait delay then true, reset on false",
"op1": "",
"op2": "true",
"op1type": "nul",
"op2type": "bool",
"duration": "2",
"extend": false,
"overrideDelay": true,
"units": "min",
"reset": "false",
"bytopic": "topic",
"topic": "th.bucket",
"outputs": 1,
"x": 900,
"y": 3120,
"wires": [
[
"6a726c7db415e700"
]
]
},
{
"id": "6a726c7db415e700",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat / delayed aperture",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "delayed aperture",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1220,
"y": 3120,
"wires": [
[
"92add418b3868c54",
"6893398018de38e9"
]
]
},
{
"id": "4658e2323b1a287a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "set delay",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$boolean(msg.th.'aperture opened')",
"tot": "jsonata"
},
{
"t": "set",
"p": "delay",
"pt": "msg",
"to": "metrics.thermostat.config['aperture delay']",
"tot": "global"
},
{
"t": "set",
"p": "delay",
"pt": "msg",
"to": "msg.delay * 60000",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 640,
"y": 3120,
"wires": [
[
"f3eb2e8c09f67e89",
"f305bda7c25657e5"
]
]
},
{
"id": "37b31a14146e2a3f",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat - update - delayed aperture",
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 3120,
"wires": [
[
"f1240da189a60ba8"
]
]
},
{
"id": "92add418b3868c54",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat - update - delayed aperture",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1405,
"y": 3120,
"wires": []
},
{
"id": "6893398018de38e9",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "c311204f22191fa2",
"name": "thermostat / delayed aperture",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1520,
"y": 3060,
"wires": []
},
{
"id": "266e831763ed3b77",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "thermostat - metric - input",
"links": [
"031a6afd8300356a"
],
"x": 135,
"y": 2700,
"wires": [
[
"ed42e96a79df8e09"
]
]
},
{
"id": "ed42e96a79df8e09",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "check measurement",
"property": "measurement",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "thermostat",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 320,
"y": 2700,
"wires": [
[
"7b43ab1cda2d8f3f"
]
]
},
{
"id": "7b43ab1cda2d8f3f",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "check field",
"property": "metrics[msg.bucket][msg.measurement]",
"propertyType": "global",
"rules": [
{
"t": "hask",
"v": "pilot",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 550,
"y": 2700,
"wires": [
[
"ff4225d872a9a0d3"
]
]
},
{
"id": "ff4225d872a9a0d3",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "get thermostat from global metrics",
"rules": [
{
"t": "set",
"p": "th",
"pt": "msg",
"to": "metrics[msg.bucket][msg.measurement]",
"tot": "global"
},
{
"t": "set",
"p": "th.bucket",
"pt": "msg",
"to": "bucket",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 820,
"y": 2700,
"wires": [
[
"623975efd8e9bbcd",
"be58e8ac1e1b6eb1"
]
]
},
{
"id": "623975efd8e9bbcd",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "thermostat - metric - input",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1110,
"y": 2640,
"wires": []
},
{
"id": "be58e8ac1e1b6eb1",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "868902cdeaa428fe",
"name": "thermostat - update - metric",
"mode": "link",
"links": [
"0998eafda2346961",
"1b11e45ef3e9f02f",
"37b31a14146e2a3f",
"64754ad76b3561d6",
"e50f34cde29f1023",
"ffdbc6f74f0bd44a",
"6e0cafa29c0a6d42"
],
"x": 1035,
"y": 2700,
"wires": []
},
{
"id": "1ed6b5ff63020d07",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat / heat request",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "heat request",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$number(msg.th.compute)>0",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1390,
"y": 2880,
"wires": [
[
"0fb59058d3aa9663",
"5f6fd378f40e4c81"
]
]
},
{
"id": "69fda60f897db5fd",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "trigger",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "temperature setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "indoor temperature",
"vt": "str"
},
{
"t": "eq",
"v": "outdoor temperature",
"vt": "str"
},
{
"t": "eq",
"v": "operating mode",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 4,
"x": 270,
"y": 2880,
"wires": [
[
"92e341f726c9c5ac"
],
[
"92e341f726c9c5ac"
],
[
"92e341f726c9c5ac"
],
[
"92e341f726c9c5ac"
]
]
},
{
"id": "d75bdce71118a56f",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "",
"links": [
"1452439e0c937126"
],
"linkType": "static",
"timeout": "30",
"x": 780,
"y": 2940,
"wires": [
[
"1ed6b5ff63020d07"
]
]
},
{
"id": "5f6fd378f40e4c81",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat / heat request",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": true,
"complete": "true",
"targetType": "full",
"statusVal": "th.compute",
"statusType": "msg",
"x": 1670,
"y": 2820,
"wires": []
},
{
"id": "0fb59058d3aa9663",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat - update - heat request",
"mode": "link",
"links": [
"147aa94543fa77cb"
],
"x": 1575,
"y": 2880,
"wires": []
},
{
"id": "0998eafda2346961",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "thermostat - update - heat request",
"links": [
"be58e8ac1e1b6eb1"
],
"x": 135,
"y": 2880,
"wires": [
[
"69fda60f897db5fd"
]
]
},
{
"id": "a091b2e84a4e89e6",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6c4b12585b58300e",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
},
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "delete",
"p": "th",
"pt": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 280,
"y": 4500,
"wires": [
[
"34e6817c2f435667",
"9ba0a97276e93540"
]
]
},
{
"id": "34e6817c2f435667",
"type": "link out",
"z": "80f2ffd4953c67e9",
"d": true,
"g": "6c4b12585b58300e",
"name": "thermostat - metric - output",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 415,
"y": 4500,
"wires": []
},
{
"id": "9ba0a97276e93540",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "6c4b12585b58300e",
"name": "thermostat - metric - output",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 520,
"y": 4440,
"wires": []
},
{
"id": "147aa94543fa77cb",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "6c4b12585b58300e",
"name": "thermostat - update - metric",
"links": [
"0fb59058d3aa9663",
"1ff0b0648a927b0f",
"3bc159f186c762cd",
"502bf87b213069c7",
"92add418b3868c54",
"f9fad454dec37bc7",
"ab22bd17459bcba2"
],
"x": 135,
"y": 4500,
"wires": [
[
"a091b2e84a4e89e6"
]
]
},
{
"id": "1452439e0c937126",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "7e9cff1699c061ec",
"name": "thermostat - compute heat request",
"links": [],
"x": 135,
"y": 2520,
"wires": [
[
"15d8d0ba06961e4b"
]
]
},
{
"id": "15d8d0ba06961e4b",
"type": "function",
"z": "80f2ffd4953c67e9",
"g": "7e9cff1699c061ec",
"name": "thermostat compute heat request",
"func": "var souscalcul = ((msg.th['temperature setpoint'] - msg.th['indoor temperature']) * msg.th['indoor coefficient']) + ((msg.th['indoor temperature'] - msg.th['outdoor temperature']) * msg.th['outdoor coefficient']);\nvar calculb = (souscalcul / 100 * msg.th['cycle time']);\nvar calculc = (msg.th['cycle time'] * msg.th['preheat time'] / 100);\ncalculb = calculb.toFixed(1);\ncalculc = calculc.toFixed(1);\n\n// positive result for heat request\nmsg.th.compute = calculb - calculc;\n\nif (msg.th.compute > 0) {\n node.status({\n fill: \"red\", shape: \"ring\", text: msg.th.bucket+' heat resquest at '+msg.th.compute\n });\n}\nif (msg.th.compute <= 0) {\n node.status({\n fill: \"green\", shape: \"ring\", text: msg.th.bucket+' at '+msg.th.compute\n });\n}\n\n\nreturn msg;",
"outputs": 1,
"timeout": "",
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 360,
"y": 2520,
"wires": [
[
"4b342483a51b0f93"
]
]
},
{
"id": "4b342483a51b0f93",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "7e9cff1699c061ec",
"name": "thermostat - compute heat request",
"mode": "return",
"links": [],
"x": 575,
"y": 2520,
"wires": []
},
{
"id": "8bbf52c2a83e09ea",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "thermostat - update - outdoor temperature",
"links": [
"031a6afd8300356a"
],
"x": 135,
"y": 4740,
"wires": [
[
"0a9cb3219b03ca53"
]
]
},
{
"id": "0a9cb3219b03ca53",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "trigger",
"property": "path",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "parking/temperature/probe",
"vt": "str"
},
{
"t": "eq",
"v": "jardin/temperature/probe",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 270,
"y": 4740,
"wires": [
[
"85f9e2ad24cb8a5a"
],
[
"85f9e2ad24cb8a5a"
]
]
},
{
"id": "37844601d21c6184",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "split by buckets",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "bucket",
"property": "payload",
"x": 700,
"y": 4740,
"wires": [
[
"19fa594b351b66f0"
]
]
},
{
"id": "e3dc3f877be31d77",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "outdoor temperature",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "old_payload",
"tot": "msg"
},
{
"t": "set",
"p": "repeat",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1360,
"y": 4740,
"wires": [
[
"6fbdfc1ab44f9754",
"818c3dadf81b379e"
]
]
},
{
"id": "6fbdfc1ab44f9754",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "thermostat - update - outdoor temperature",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 1495,
"y": 4740,
"wires": []
},
{
"id": "85f9e2ad24cb8a5a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "load global metrics",
"rules": [
{
"t": "set",
"p": "jardin",
"pt": "msg",
"to": "metrics.jardin.temperature.probe",
"tot": "global"
},
{
"t": "set",
"p": "parking",
"pt": "msg",
"to": "metrics.parking.temperature.probe",
"tot": "global"
},
{
"t": "set",
"p": "old_payload",
"pt": "msg",
"to": "$round(($number(msg.jardin)+$number(msg.parking)*2)/3, 1)",
"tot": "jsonata"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "metrics",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 470,
"y": 4740,
"wires": [
[
"37844601d21c6184"
]
]
},
{
"id": "3099e4a17fd21410",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "thermostat - update - indoor temperature",
"links": [
"031a6afd8300356a"
],
"x": 135,
"y": 4920,
"wires": [
[
"4c169fc26f833802"
]
]
},
{
"id": "a2b07c98d61de126",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "old_measurement",
"tot": "msg"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "indoor temperature",
"tot": "str"
},
{
"t": "set",
"p": "repeat",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2000,
"y": 4920,
"wires": [
[
"d09ad27d05d54698",
"c3b17da928d7afba"
]
]
},
{
"id": "d09ad27d05d54698",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "thermostat - update - indoor temperature",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 2135,
"y": 4920,
"wires": []
},
{
"id": "4c169fc26f833802",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "trigger",
"property": "measurement",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "temperature",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 4920,
"wires": [
[
"a21c6a2db7aeab09"
]
]
},
{
"id": "a21c6a2db7aeab09",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "load global metrics",
"rules": [
{
"t": "set",
"p": "old_payload",
"pt": "msg",
"to": "payload",
"tot": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "metrics[msg.bucket]",
"tot": "global"
},
{
"t": "set",
"p": "scene.bucket",
"pt": "msg",
"to": "bucket",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 470,
"y": 4920,
"wires": [
[
"76d38ba7e5924f87"
]
]
},
{
"id": "9eb8cf78caf3141d",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "",
"links": [
"ddd39f991efd9d31"
],
"linkType": "static",
"timeout": "30",
"x": 1370,
"y": 4920,
"wires": [
[
"313fbd5fc01985a5"
]
]
},
{
"id": "313fbd5fc01985a5",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "rsp",
"property": "search.response",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "1",
"vt": "num"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1570,
"y": 4920,
"wires": [
[
"b7ffd39578f29c8b"
]
]
},
{
"id": "b7ffd39578f29c8b",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "limit 1 msg / s / topic",
"pauseType": "queue",
"timeout": "5",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": true,
"allowrate": false,
"outputs": 1,
"x": 1780,
"y": 4920,
"wires": [
[
"a2b07c98d61de126"
]
]
},
{
"id": "5cb2a229a6fec1aa",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "thermostat - update - offloading",
"links": [
"031a6afd8300356a"
],
"x": 135,
"y": 5100,
"wires": [
[
"1c4fbd9e3d313b43"
]
]
},
{
"id": "1c4fbd9e3d313b43",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "trigger",
"property": "path",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "system/mode/offloading",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 5100,
"wires": [
[
"e78638ee35b8c069"
]
]
},
{
"id": "2aaf95392a970167",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "mode offloading",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "offloaded",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 880,
"y": 5100,
"wires": [
[
"1dd82f8d7e2ccd52"
]
]
},
{
"id": "e78638ee35b8c069",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "mode master",
"property": "metrics.system.mode.master",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "about.automate",
"vt": "global"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 450,
"y": 5100,
"wires": [
[
"2cb92368cb319c65"
]
]
},
{
"id": "2cb92368cb319c65",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "mode automate",
"property": "metrics.system.mode.automate",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "automatic",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 660,
"y": 5100,
"wires": [
[
"2aaf95392a970167"
]
]
},
{
"id": "1dd82f8d7e2ccd52",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "load global metrics",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "metrics",
"tot": "global"
},
{
"t": "set",
"p": "offloading",
"pt": "flow",
"to": "0",
"tot": "num"
},
{
"t": "set",
"p": "sort",
"pt": "flow",
"to": "[]",
"tot": "json"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1110,
"y": 5100,
"wires": [
[
"540559483eeab8da"
]
]
},
{
"id": "91ee9f04019a9999",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "load thermostat",
"rules": [
{
"t": "set",
"p": "th",
"pt": "msg",
"to": "metrics[msg.payload.bucket]thermostat",
"tot": "global"
},
{
"t": "set",
"p": "th.bucket",
"pt": "msg",
"to": "payload.bucket",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 3560,
"y": 5100,
"wires": [
[
"53f044d01f2d18b2"
]
]
},
{
"id": "53f044d01f2d18b2",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "state offloading",
"property": "th.offloading",
"propertyType": "msg",
"rules": [
{
"t": "false"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 3780,
"y": 5100,
"wires": [
[
"db3681610a5d90d9"
]
]
},
{
"id": "2df7aa160cbf3a71",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
},
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "true",
"tot": "bool"
},
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "offloading",
"tot": "flow"
},
{
"t": "set",
"p": "offloading",
"pt": "flow",
"to": "$number(msg.tmp) + 1",
"tot": "jsonata"
},
{
"t": "delete",
"p": "parts",
"pt": "msg"
},
{
"t": "delete",
"p": "th",
"pt": "msg"
},
{
"t": "delete",
"p": "tmp",
"pt": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 4160,
"y": 5100,
"wires": [
[
"7869c56dce3123ed",
"3b539d9347f6bb28"
]
]
},
{
"id": "db3681610a5d90d9",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "state pilot",
"property": "th.pilot",
"propertyType": "msg",
"rules": [
{
"t": "true"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 3980,
"y": 5100,
"wires": [
[
"2df7aa160cbf3a71"
]
]
},
{
"id": "7869c56dce3123ed",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "thermostat - update - offloading",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 4295,
"y": 5100,
"wires": []
},
{
"id": "ea0c6cadf1d594c3",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "delay 50 ms",
"pauseType": "delay",
"timeout": "50",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 3190,
"y": 5100,
"wires": [
[
"285a0091abda1f58"
]
]
},
{
"id": "285a0091abda1f58",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "limit",
"property": "offloading",
"propertyType": "flow",
"rules": [
{
"t": "lt",
"v": "2",
"vt": "num"
}
],
"checkall": "true",
"repair": false,
"outputs": 1,
"x": 3370,
"y": 5100,
"wires": [
[
"91ee9f04019a9999"
]
]
},
{
"id": "96e92d4bad3792d3",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "",
"x": 3010,
"y": 5100,
"wires": [
[
"ea0c6cadf1d594c3"
]
]
},
{
"id": "3de9c88ac7ce9a77",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "sort offloading count",
"rules": [
{
"t": "set",
"p": "sort",
"pt": "msg",
"to": "sort",
"tot": "flow"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$sort(msg.sort, function($l, $r) {\t $l.nb > $r.nb\t})",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2800,
"y": 5100,
"wires": [
[
"96e92d4bad3792d3"
]
]
},
{
"id": "808426e9258cd024",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "delay 50 ms",
"pauseType": "delay",
"timeout": "50",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 2570,
"y": 5100,
"wires": [
[
"3de9c88ac7ce9a77"
]
]
},
{
"id": "659f9752db0967bc",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "indoor temperature",
"label": "Température intèrieur",
"tooltip": "",
"order": 2,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "indoor temperature",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "30",
"step": 1,
"className": "",
"x": 870,
"y": 6120,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "9caafb8c1719d275",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "outdoor temperature",
"label": "Température extèrieur",
"tooltip": "",
"order": 4,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "outdoor temperature",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "30",
"step": 1,
"className": "",
"x": 880,
"y": 6240,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "515b0c184c8a3628",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "temperature setpoint",
"label": "Température consigne",
"tooltip": "",
"order": 1,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "temperature setpoint",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "30",
"step": 1,
"className": "",
"x": 880,
"y": 6060,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "13697bbd73295b46",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "indoor coefficient",
"label": "Coefficient intèrieur",
"tooltip": "",
"order": 3,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "indoor coefficient",
"topicType": "str",
"thumbLabel": true,
"min": "1",
"max": "200",
"step": 1,
"className": "",
"x": 870,
"y": 6180,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "c6fdc57a80266f04",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "preheat time",
"label": "Temps de chauffe",
"tooltip": "",
"order": 7,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "preheat time",
"topicType": "str",
"thumbLabel": true,
"min": "5",
"max": "60",
"step": "5",
"className": "",
"x": 850,
"y": 6420,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "b7bc73260cea8570",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "cycle time",
"label": "Temps de cycle",
"tooltip": "",
"order": 6,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "cycle time",
"topicType": "str",
"thumbLabel": true,
"min": "5",
"max": "90",
"step": "5",
"className": "",
"x": 840,
"y": 6360,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "d60c017a8962d3f8",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "field",
"rules": [
{
"t": "set",
"p": "th",
"pt": "msg",
"to": "thermostattest",
"tot": "flow"
},
{
"t": "set",
"p": "th[msg.topic]",
"pt": "msg",
"to": "payload",
"tot": "msg"
},
{
"t": "set",
"p": "thermostattest",
"pt": "flow",
"to": "th",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1090,
"y": 6060,
"wires": [
[
"6e4f87c323cc4659"
]
]
},
{
"id": "dc37631fe73fce2a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "reset",
"rules": [
{
"t": "set",
"p": "th",
"pt": "msg",
"to": "{\t 'indoor temperature':20,\t 'outdoor temperature':20,\t 'temperature setpoint':20,\t 'indoor coefficient':5,\t 'outdoor coefficient':5,\t 'preheat time':10,\t 'cycle time':30\t }",
"tot": "jsonata"
},
{
"t": "set",
"p": "thermostattest",
"pt": "flow",
"to": "th",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 330,
"y": 6000,
"wires": [
[
"67e91e753d3708e2",
"6e4f87c323cc4659"
]
]
},
{
"id": "c932311ec07112b5",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['indoor temperature']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6120,
"wires": [
[
"659f9752db0967bc"
]
]
},
{
"id": "67e91e753d3708e2",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "100 ms",
"pauseType": "delay",
"timeout": "100",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 500,
"y": 6060,
"wires": [
[
"c932311ec07112b5",
"f974a627497b4b7d",
"f81152d8df61c845",
"bc4771242d5d3bd8",
"135b7546018ecfba",
"6bf593bd1612dbde",
"64405bce10cccde1"
]
]
},
{
"id": "a86e51fee3e3458d",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "thermostat - ui - test",
"links": [],
"x": 135,
"y": 6000,
"wires": [
[
"dc37631fe73fce2a"
]
]
},
{
"id": "f974a627497b4b7d",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['outdoor temperature']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6240,
"wires": [
[
"9caafb8c1719d275"
]
]
},
{
"id": "809635d5f2efc402",
"type": "ui-button",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "reset",
"label": "RAZ",
"order": 8,
"width": "6",
"height": "1",
"tooltip": "",
"color": "",
"bgcolor": "",
"className": "",
"icon": "",
"iconPosition": "left",
"payload": "",
"payloadType": "str",
"topic": "topic",
"topicType": "msg",
"x": 170,
"y": 6060,
"wires": [
[
"dc37631fe73fce2a"
]
]
},
{
"id": "c9291360c0f0b490",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"order": 9,
"width": "6",
"height": "1",
"name": "calcul",
"label": "Résultat",
"format": "{{msg.payload}}",
"layout": "row-spread",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 1770,
"y": 6000,
"wires": []
},
{
"id": "f10733a435dc7390",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"group": "75a98516fdcdf832",
"name": "outdoor coefficient",
"label": "Coefficient extèrieur",
"tooltip": "",
"order": 5,
"width": "6",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "outdoor coefficient",
"topicType": "str",
"thumbLabel": true,
"min": "1",
"max": "200",
"step": 1,
"className": "",
"x": 870,
"y": 6300,
"wires": [
[
"d60c017a8962d3f8"
]
]
},
{
"id": "f81152d8df61c845",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['temperature setpoint']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6060,
"wires": [
[
"515b0c184c8a3628"
]
]
},
{
"id": "bc4771242d5d3bd8",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['indoor coefficient']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6180,
"wires": [
[
"13697bbd73295b46"
]
]
},
{
"id": "135b7546018ecfba",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['outdoor coefficient']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6300,
"wires": [
[
"f10733a435dc7390"
]
]
},
{
"id": "6bf593bd1612dbde",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['preheat time']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6420,
"wires": [
[
"c6fdc57a80266f04"
]
]
},
{
"id": "64405bce10cccde1",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "topic",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "thermostattest['cycle time']",
"tot": "flow"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 670,
"y": 6360,
"wires": [
[
"b7bc73260cea8570"
]
]
},
{
"id": "bf5b9cb6fe9e3550",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "payload",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th.compute",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1600,
"y": 6000,
"wires": [
[
"c9291360c0f0b490"
]
]
},
{
"id": "6e4f87c323cc4659",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "c3cbb2a2dd06d1bb",
"name": "",
"links": [
"1452439e0c937126"
],
"linkType": "static",
"timeout": "30",
"x": 1340,
"y": 6000,
"wires": [
[
"bf5b9cb6fe9e3550"
]
]
},
{
"id": "104783a075f279a3",
"type": "catch",
"z": "80f2ffd4953c67e9",
"g": "1338205554153fa8",
"name": "catch error",
"scope": null,
"uncaught": false,
"x": 620,
"y": 60,
"wires": [
[
"225fbec54fe689f8"
]
]
},
{
"id": "225fbec54fe689f8",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "1338205554153fa8",
"name": "topic",
"rules": [
{
"t": "set",
"p": "topic",
"pt": "msg",
"to": "thermostat",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 790,
"y": 60,
"wires": [
[
"efdfaa2b7173a43a"
]
]
},
{
"id": "efdfaa2b7173a43a",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "1338205554153fa8",
"name": "catch error",
"mode": "link",
"links": [
"a52f0e788cd4dca3"
],
"x": 915,
"y": 60,
"wires": []
},
{
"id": "949a8ee5f18f108a",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat - kernel - device - catch",
"links": [
"f1898b7dbc641cd6"
],
"x": 135,
"y": 240,
"wires": [
[
"fae8eb23e8443ee5"
]
]
},
{
"id": "fae8eb23e8443ee5",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "field",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "pilot",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 270,
"y": 240,
"wires": [
[
"c2589545c2409827"
]
]
},
{
"id": "c2589545c2409827",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "measurement",
"property": "measurement",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "thermostat",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 460,
"y": 240,
"wires": [
[
"9ca9625cd3f893dc",
"55333767f9209bca",
"c5b547a57eb368ad",
"c79982618f4e3345",
"958bbeb30de3eada",
"4efebf9bfd65df96",
"96d26c543c5fcf13",
"73c382176ddebc2b",
"a900585cd904a957",
"873ead3b33da82c9",
"e069a71e517cb7ea",
"834fc1d89a1493b3",
"cb222ce1c4c3d7dc",
"ea848cdc88365d9a",
"2039bf8bb21c10d1",
"21d8e3e1da7313ff",
"657fe886d2a3f59f",
"f513b11976d16bb9",
"5f1e10e5657e3138",
"0c919f0ee88983ad",
"780cf693ea55249b",
"fb20d3e29fc3092d",
"2b4f4116011a9ca6",
"07b7d259f0949e49",
"3683e8f63f0dc5aa",
"bae9495793960012",
"d93c5182974350b0",
"ae60f951124d5757"
]
]
},
{
"id": "55333767f9209bca",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / confort setpoint / number / 21",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "confort setpoint",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "21",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 360,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "c5b547a57eb368ad",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / eco setpoint / number / 19",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "eco setpoint",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "19",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 420,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "958bbeb30de3eada",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / operating mode / text / eco",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "operating mode",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "eco",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 600,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "9ca9625cd3f893dc",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / actif / boolean / true",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "actif",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 300,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "4efebf9bfd65df96",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture opened / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture opened",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 660,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "96d26c543c5fcf13",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / delayed aperture / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "delayed aperture",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 780,
"y": 720,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "5f1e10e5657e3138",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading power / number / 500",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading power",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "500",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 1440,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "2039bf8bb21c10d1",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / indoor coefficient / number / 50",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "indoor coefficient",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "50",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 1200,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "21d8e3e1da7313ff",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / outdoor coefficient / number / 5",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "outdoor coefficient",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "5",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 1260,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "657fe886d2a3f59f",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / cycle time / number / 60",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "cycle time",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "60",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 1320,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "f513b11976d16bb9",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / preheat time / number / 15",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "preheat time",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "15",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 1380,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "73c382176ddebc2b",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / outdoor temperature / number / 20",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "outdoor temperature",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "20",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 780,
"y": 780,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "a900585cd904a957",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / indoor temperature / number / 21",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "indoor temperature",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "21",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 770,
"y": 840,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "873ead3b33da82c9",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / heat request / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "heat request",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 900,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "e069a71e517cb7ea",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / status / text / stopped",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "status",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "stopped",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 740,
"y": 960,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "834fc1d89a1493b3",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading / boolean / false",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "boolean",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 1020,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "c79982618f4e3345",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / temperature setpoint / number / 19",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "temperature setpoint",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "19",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 780,
"y": 540,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "cb222ce1c4c3d7dc",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / last pilot / number / 0",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "last pilot",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 740,
"y": 1080,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "3006243d30270236",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat - device",
"mode": "link",
"links": [
"bfa594bf1f876c92"
],
"x": 1195,
"y": 240,
"wires": []
},
{
"id": "1707bc7a4bb0daa5",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "...",
"rules": [],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1050,
"y": 240,
"wires": [
[
"3006243d30270236"
]
]
},
{
"id": "ea848cdc88365d9a",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading count / number / 0",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading count",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 1140,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "0c919f0ee88983ad",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 1 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 1",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1500,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "780cf693ea55249b",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 2 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 2",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1560,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "fb20d3e29fc3092d",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 3 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 3",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1620,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "2b4f4116011a9ca6",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 4 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 4",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1680,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "07b7d259f0949e49",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 5 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 5",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1740,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "a895f0ea053086fe",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "scan device registration to find xxx / thermostat / pilot",
"info": "",
"x": 310,
"y": 300,
"wires": []
},
{
"id": "3683e8f63f0dc5aa",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture delay / number / 5",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture delay",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "5",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 1860,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "bae9495793960012",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / offloading delay / number / 30",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "offloading delay",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "30",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 760,
"y": 1920,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "7837b5fcc1432bfa",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat - update - aperture opened",
"links": [
"031a6afd8300356a"
],
"x": 135,
"y": 5280,
"wires": [
[
"3905527e91730097"
]
]
},
{
"id": "6632e88ee0633e4c",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat - update - aperture opened",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 3675,
"y": 5340,
"wires": []
},
{
"id": "01c20d4c1e5db317",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "get thermostat from metrics",
"rules": [
{
"t": "set",
"p": "th",
"pt": "msg",
"to": "payload.thermostat",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1200,
"y": 5280,
"wires": [
[
"87b35783671bc785"
]
]
},
{
"id": "3905527e91730097",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "trigger",
"property": "measurement",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "aperture",
"vt": "str"
},
{
"t": "eq",
"v": "photovoltaic",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 270,
"y": 5280,
"wires": [
[
"c8d72dec2ba2b842"
],
[
"c8d72dec2ba2b842"
]
]
},
{
"id": "87b35783671bc785",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "trigger",
"property": "path",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "th['aperture 1']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 2']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 3']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 4']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 5']",
"vt": "msg"
},
{
"t": "eq",
"v": "th['aperture 6']",
"vt": "msg"
}
],
"checkall": "false",
"repair": false,
"outputs": 6,
"x": 1430,
"y": 5280,
"wires": [
[
"632ae6a86b8d4095"
],
[
"632ae6a86b8d4095"
],
[
"632ae6a86b8d4095"
],
[
"632ae6a86b8d4095"
],
[
"632ae6a86b8d4095"
],
[
"632ae6a86b8d4095"
]
]
},
{
"id": "c52bde31f64b30dd",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat exists",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "hask",
"v": "thermostat",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 930,
"y": 5280,
"wires": [
[
"01c20d4c1e5db317"
]
]
},
{
"id": "748b1f355c0e00f8",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "compare",
"property": "old_payload",
"propertyType": "msg",
"rules": [
{
"t": "neq",
"v": "th['aperture opened']",
"vt": "msg"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 3360,
"y": 5340,
"wires": [
[
"86cb7c12e7bccf56"
]
]
},
{
"id": "86cb7c12e7bccf56",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "th.bucket",
"tot": "msg"
},
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture opened",
"tot": "str"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "old_payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 3540,
"y": 5340,
"wires": [
[
"6632e88ee0633e4c",
"a91a6950282e40e0"
]
]
},
{
"id": "c8d72dec2ba2b842",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "get global metrics",
"rules": [
{
"t": "set",
"p": "old_payload",
"pt": "msg",
"to": "payload",
"tot": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "metrics",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 470,
"y": 5280,
"wires": [
[
"7cc8434ffb22fe29"
]
]
},
{
"id": "a91a6950282e40e0",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "thermostat - update - aperture opened",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 3810,
"y": 5280,
"wires": []
},
{
"id": "7cc8434ffb22fe29",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "split by buckets",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "",
"x": 700,
"y": 5280,
"wires": [
[
"c52bde31f64b30dd"
]
]
},
{
"id": "3b539d9347f6bb28",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "thermostat - update - offloading",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 4410,
"y": 5040,
"wires": []
},
{
"id": "c3b17da928d7afba",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "thermostat - update - indoor temperature",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 2280,
"y": 4860,
"wires": []
},
{
"id": "818c3dadf81b379e",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "thermostat - update - outdoor temperature",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 1640,
"y": 4680,
"wires": []
},
{
"id": "f6875e4f57839bc7",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "à modifier",
"info": "",
"x": 280,
"y": 5040,
"wires": []
},
{
"id": "048bc1e501b0f9f2",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "confort",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "confort",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 5700,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "3b8d8924bdb03f80",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "eco",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "eco",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 5640,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "3e40fc1c77ed372a",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "mode heating",
"property": "metrics.system.mode.heating",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "off",
"vt": "str"
},
{
"t": "eq",
"v": "cool",
"vt": "str"
},
{
"t": "eq",
"v": "anti-freeze",
"vt": "str"
},
{
"t": "eq",
"v": "automatic",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 4,
"x": 1820,
"y": 5520,
"wires": [
[
"b461040a6c998b61"
],
[
"0cac48ac1fa4efa4"
],
[
"3c808f997ae66a1c"
],
[
"069ab711c0c089a6"
]
]
},
{
"id": "b461040a6c998b61",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "off",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "off",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 5460,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "3c808f997ae66a1c",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "anti-freeze",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "anti-freeze",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2470,
"y": 5580,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "069ab711c0c089a6",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "hour confort",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "0",
"vt": "num"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2050,
"y": 5640,
"wires": [
[
"3b8d8924bdb03f80"
],
[
"35ea643afefc732d"
]
]
},
{
"id": "c20295d9b0ac3419",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "bucket",
"pt": "msg",
"to": "scene.bucket",
"tot": "msg"
},
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "scene.measurement",
"tot": "msg"
},
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "scene.field",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2840,
"y": 5520,
"wires": [
[
"e267a0404a5c5d6c",
"34992e101a5f7e1c"
]
]
},
{
"id": "34992e101a5f7e1c",
"type": "debug",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode",
"active": false,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "true",
"targetType": "full",
"statusVal": "",
"statusType": "auto",
"x": 3110,
"y": 5460,
"wires": []
},
{
"id": "36eb92fa692e166c",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "rsp",
"property": "routine.response",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "1",
"vt": "num"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1630,
"y": 5520,
"wires": [
[
"3e40fc1c77ed372a"
]
]
},
{
"id": "d4c1d964e9c56e01",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "",
"links": [
"c1a22098f4c6b607"
],
"linkType": "static",
"timeout": "30",
"x": 1450,
"y": 5520,
"wires": [
[
"36eb92fa692e166c"
]
]
},
{
"id": "abd02925c2597211",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "scene thermostat / operating mode / text",
"rules": [
{
"t": "set",
"p": "scene.bucket",
"pt": "msg",
"to": "room",
"tot": "msg"
},
{
"t": "set",
"p": "scene.measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "scene.field",
"pt": "msg",
"to": "operating mode",
"tot": "str"
},
{
"t": "set",
"p": "scene.format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "scene.type",
"pt": "msg",
"to": "thermostat",
"tot": "str"
},
{
"t": "set",
"p": "scene.on",
"pt": "msg",
"to": "eco",
"tot": "str"
},
{
"t": "set",
"p": "scene.off",
"pt": "msg",
"to": "off",
"tot": "str"
},
{
"t": "delete",
"p": "room",
"pt": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1160,
"y": 5520,
"wires": [
[
"d4c1d964e9c56e01"
]
]
},
{
"id": "e267a0404a5c5d6c",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode",
"mode": "link",
"links": [
"206c1fb4a48067df"
],
"x": 2975,
"y": 5520,
"wires": []
},
{
"id": "758acb218148a1d7",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "don not call system/mode/heating as thermostat because of modes off are different",
"info": "",
"x": 1670,
"y": 5460,
"wires": []
},
{
"id": "0728c8c3564e6e93",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "compare",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "neq",
"v": "routine[msg.scene.field]",
"vt": "msg"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 2660,
"y": 5520,
"wires": [
[
"c20295d9b0ac3419"
]
]
},
{
"id": "d1c7f4810b12afe2",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode - out",
"links": [
"0857f7c3fc012063",
"2ced5243fb4aa8a7",
"2df681beb21344f6",
"307e1f98694a09a1",
"377374bc3cc49bc5",
"438b7d7c7b096219",
"4a2c85990a2b061e",
"7dc41ad29651ef76",
"9820c6e109f25a2a",
"f8f9a6db99bb33e8"
],
"x": 755,
"y": 5520,
"wires": [
[
"d6ec98126b0438ab"
]
]
},
{
"id": "35ea643afefc732d",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "mode presence",
"property": "metrics.system.mode.presence",
"propertyType": "global",
"rules": [
{
"t": "eq",
"v": "absent",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2260,
"y": 5700,
"wires": [
[
"3b8d8924bdb03f80"
],
[
"048bc1e501b0f9f2"
]
]
},
{
"id": "45bd2f5743776c20",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "sync",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "sync",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 470,
"y": 5520,
"wires": [
[
"84f1bb54c15f032d"
]
]
},
{
"id": "d6ec98126b0438ab",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "room",
"property": "room",
"propertyType": "msg",
"rules": [
{
"t": "istype",
"v": "string",
"vt": "string"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 890,
"y": 5520,
"wires": [
[
"abd02925c2597211"
]
]
},
{
"id": "84f1bb54c15f032d",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating modee - in",
"mode": "link",
"links": [
"30a4c71f8d02384d",
"3dc0abb4933cf52c",
"628c2e8014a8c40c",
"64765643b13c207f",
"6f4850f14b12df44",
"8f0b1f8de9fbfc9f",
"94744f7b1ec149b3",
"afd97549392e0e45",
"c39d452224c976fc",
"eec0c12c5dac7ac0"
],
"x": 595,
"y": 5520,
"wires": []
},
{
"id": "f05d34dd5ff9746b",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "thermostat - update - operating mode - boot",
"links": [
"427c0a5a050502e2"
],
"x": 135,
"y": 5520,
"wires": [
[
"080a2e3d678b9119"
]
]
},
{
"id": "9737afb19d9c9fbb",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "room - ui - thermostat - load",
"links": [
"9e4bfee0db3051d4"
],
"x": 1375,
"y": 240,
"wires": [
[
"fbb1bdcb44abce21",
"4b8267934ced5596"
]
]
},
{
"id": "dd49b4996fb683ff",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "room - ui - thermostat - metric",
"links": [
"b6323e1460f6f50c"
],
"x": 1375,
"y": 300,
"wires": [
[
"7e364afe6e09d405"
]
]
},
{
"id": "fbb1bdcb44abce21",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "reset",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "{\t \"groups\": {\t \"hide\": [\"Pièces:Thermostat\"]\t }\t}",
"tot": "jsonata"
},
{
"t": "set",
"p": "reset",
"pt": "msg",
"to": "true",
"tot": "bool"
},
{
"t": "set",
"p": "class",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 240,
"wires": [
[
"b8374382f89b46c6",
"fafbe160c912822f"
]
]
},
{
"id": "6c6cf33417f59f97",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "set",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "{\t \"groups\": {\t \"show\": [\"Pièces:Thermostat\"]\t }\t}",
"tot": "jsonata"
},
{
"t": "set",
"p": "class",
"pt": "msg",
"to": "remove",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 300,
"wires": [
[
"fafbe160c912822f",
"b8374382f89b46c6"
]
]
},
{
"id": "fc673a36d8691d63",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "reset",
"rules": [],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 360,
"wires": [
[
"f85914dec075a3d8",
"f968a8fc298f04c3",
"37794c3da2ceda38",
"f23d5105ca948593",
"348134507ffe8815",
"93e874f6e4a1f87a",
"3d40410e159beaab",
"4565730f04bd7072",
"79764253e9e92fda",
"4ad97596d0efa64b",
"63561fec4fba2afd",
"07108de5adf3ae2a",
"bcf6468037b4c2a6",
"4c5adf85df17025b",
"3f9eefa51c1e5e9e",
"dfd8650d923f73e4",
"53f7b3195f6dfeed",
"6cc81c8342d6ef1c",
"99e789a941d2af52",
"f7ed99ce22cd37cb",
"cb3f8f9fa322b59f",
"51dc21bc28ea3f06",
"272807d6b707d92f",
"4540d4f432f8742d",
"6d0cb16590b1da18",
"bfb0a473b6a09c81",
"61d316384ef1521b",
"8c3c9bc4a66b1e32",
"ff2211c1efd24971",
"33fde1af7428bf26",
"f814aebd5bd599b5",
"25b3542fda8fae4d",
"e223793b9998818b",
"bc775d86aa14a73f",
"aefd619aa22eea0b",
"b74bf0ca5e271336"
]
]
},
{
"id": "37aa96c6d80d8ade",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "thermostat",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 3120,
"y": 600,
"wires": [
[
"1ef76a4c1fab9b78"
]
]
},
{
"id": "1ef76a4c1fab9b78",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "room - ui - thermostat - metric",
"mode": "link",
"links": [
"2690f4e06626ebda"
],
"x": 3255,
"y": 600,
"wires": []
},
{
"id": "adc6196b15cf8c39",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "field",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "actif",
"vt": "str"
},
{
"t": "eq",
"v": "status",
"vt": "str"
},
{
"t": "eq",
"v": "heat request",
"vt": "str"
},
{
"t": "eq",
"v": "pilot",
"vt": "str"
},
{
"t": "eq",
"v": "aperture opened",
"vt": "str"
},
{
"t": "eq",
"v": "delayed aperture",
"vt": "str"
},
{
"t": "eq",
"v": "temperature setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "indoor temperature",
"vt": "str"
},
{
"t": "eq",
"v": "outdoor temperature",
"vt": "str"
},
{
"t": "eq",
"v": "operating mode",
"vt": "str"
},
{
"t": "eq",
"v": "eco setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "confort setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "cold setpoint",
"vt": "str"
},
{
"t": "eq",
"v": "indoor coefficient",
"vt": "str"
},
{
"t": "eq",
"v": "outdoor coefficient",
"vt": "str"
},
{
"t": "eq",
"v": "preheat time",
"vt": "str"
},
{
"t": "eq",
"v": "cycle time",
"vt": "str"
},
{
"t": "eq",
"v": "aperture delay",
"vt": "str"
},
{
"t": "eq",
"v": "offloading delay",
"vt": "str"
},
{
"t": "eq",
"v": "offloading power",
"vt": "str"
},
{
"t": "eq",
"v": "aperture 1",
"vt": "str"
},
{
"t": "eq",
"v": "aperture 2",
"vt": "str"
},
{
"t": "eq",
"v": "aperture 3",
"vt": "str"
},
{
"t": "eq",
"v": "aperture 4",
"vt": "str"
},
{
"t": "eq",
"v": "aperture 5",
"vt": "str"
},
{
"t": "eq",
"v": "aperture 6",
"vt": "str"
},
{
"t": "eq",
"v": "last pilot",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 27,
"x": 1910,
"y": 600,
"wires": [
[
"f85914dec075a3d8",
"1d92bf6b8fc98959"
],
[
"fb9711affc7d14af"
],
[
"61d316384ef1521b"
],
[
"37794c3da2ceda38"
],
[
"bd8ab43b4a91a2ae"
],
[
"19b6504e1bbece40"
],
[
"a7420198a3e0f879"
],
[
"26537f8818c29c61"
],
[
"27d7b08fb3646a52"
],
[
"151d5194b8538480"
],
[
"07108de5adf3ae2a",
"f670239d8cf08808"
],
[
"bcf6468037b4c2a6",
"a4b56ada8159bff6"
],
[
"b87af6e4d9e65d33",
"bc775d86aa14a73f"
],
[
"6cc81c8342d6ef1c",
"990b4d58c23a68a2"
],
[
"f7ed99ce22cd37cb",
"ee3e358d88bbf249"
],
[
"51dc21bc28ea3f06",
"6f096e24c9634c56"
],
[
"4540d4f432f8742d",
"83b16f9aed4fa051"
],
[
"ff2211c1efd24971",
"db3ebf0b6421aeae"
],
[
"f814aebd5bd599b5",
"10c3697bddec1a05"
],
[
"bfb0a473b6a09c81",
"4f0ea1cdd4d0b719"
],
[
"bcfed6ac5d278d3c"
],
[
"f5cf184989e2cc69"
],
[
"95eb528329f90cf2"
],
[
"3e6cd35a857771f8"
],
[
"f19ecf4219ed5190"
],
[
"f914f5311d82ce56"
],
[
"c4f79cb042dc36a1"
]
]
},
{
"id": "26bdcbaa93cfcc27",
"type": "humanizer",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"input": "msg.payload",
"x": 2250,
"y": 2160,
"wires": [
[
"2efa063af4b505d2"
]
]
},
{
"id": "c4f79cb042dc36a1",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "calcul",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "$round(($millis() - msg.payload)/1000)",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 2160,
"wires": [
[
"26bdcbaa93cfcc27"
]
]
},
{
"id": "f391ba85b3d53073",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "set metric",
"rules": [
{
"t": "set",
"p": "measurement",
"pt": "msg",
"to": "cible",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 3120,
"y": 780,
"wires": [
[
"1ef76a4c1fab9b78"
]
]
},
{
"id": "7e364afe6e09d405",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "measurement",
"property": "measurement",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "thermostat",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1540,
"y": 300,
"wires": [
[
"6c6cf33417f59f97",
"39615dab9370d868",
"fcbda9c625fdecac"
]
]
},
{
"id": "b8374382f89b46c6",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "payload",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "Aucune thermostat",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2620,
"y": 240,
"wires": [
[
"5b4d546fd3646af7"
]
]
},
{
"id": "5b4d546fd3646af7",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 1,
"width": "6",
"height": "1",
"name": "none",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-center",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2790,
"y": 240,
"wires": []
},
{
"id": "fafbe160c912822f",
"type": "ui-control",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"ui": "2d75e4809d2a6fbf",
"events": "all",
"x": 2620,
"y": 300,
"wires": [
[]
]
},
{
"id": "f85914dec075a3d8",
"type": "ui-switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "actif",
"label": "",
"group": "28836135eb153545",
"order": 3,
"width": "1",
"height": "1",
"passthru": false,
"topic": "actif",
"topicType": "str",
"style": "",
"className": "",
"onvalue": "true",
"onvalueType": "bool",
"onicon": "cog",
"oncolor": "teal",
"offvalue": "false",
"offvalueType": "bool",
"officon": "cog-off-outline",
"offcolor": "grey",
"x": 2870,
"y": 600,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "bd8ab43b4a91a2ae",
"type": "ui-switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "aperture opened",
"label": "",
"group": "28836135eb153545",
"order": 7,
"width": "1",
"height": "1",
"passthru": false,
"topic": "topic",
"topicType": "msg",
"style": "",
"className": "",
"onvalue": "true",
"onvalueType": "bool",
"onicon": "door-open",
"oncolor": "teal",
"offvalue": "false",
"offvalueType": "bool",
"officon": "door-closed",
"offcolor": "grey",
"x": 2900,
"y": 840,
"wires": [
[]
]
},
{
"id": "19b6504e1bbece40",
"type": "ui-switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "delayed aperture",
"label": "",
"group": "28836135eb153545",
"order": 8,
"width": "1",
"height": "1",
"passthru": false,
"topic": "topic",
"topicType": "msg",
"style": "",
"className": "",
"onvalue": "true",
"onvalueType": "bool",
"onicon": "timer-remove",
"oncolor": "grey",
"offvalue": "false",
"offvalueType": "bool",
"officon": "timer-check",
"offcolor": "teal",
"x": 2910,
"y": 900,
"wires": [
[]
]
},
{
"id": "f968a8fc298f04c3",
"type": "ui-dropdown",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "operating mode",
"label": "Mode",
"tooltip": "",
"order": 12,
"width": "6",
"height": "1",
"passthru": false,
"multiple": false,
"chips": false,
"clearable": false,
"options": [
{
"label": "Arrêt",
"value": "off",
"type": "str"
}
],
"payload": "",
"topic": "operating mode",
"topicType": "str",
"className": "",
"typeIsComboBox": true,
"x": 2900,
"y": 1140,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "07108de5adf3ae2a",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "eco setpoint",
"label": "",
"tooltip": "",
"order": 14,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "eco setpoint",
"topicType": "str",
"thumbLabel": true,
"min": "15",
"max": "35",
"step": "0.5",
"className": "",
"x": 2890,
"y": 1200,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "bcf6468037b4c2a6",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "confort setpoint",
"label": "",
"tooltip": "",
"order": 16,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "confort setpoint",
"topicType": "str",
"thumbLabel": true,
"min": "15",
"max": "35",
"step": "0.5",
"className": "",
"x": 2900,
"y": 1260,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "37794c3da2ceda38",
"type": "ui-switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "pilot",
"label": "",
"group": "28836135eb153545",
"order": 6,
"width": "1",
"height": "1",
"passthru": false,
"topic": "pilot",
"topicType": "str",
"style": "",
"className": "",
"onvalue": "true",
"onvalueType": "bool",
"onicon": "power-plug",
"oncolor": "teal",
"offvalue": "false",
"offvalueType": "bool",
"officon": "power-plug-off",
"offcolor": "grey",
"x": 2870,
"y": 780,
"wires": [
[
"f391ba85b3d53073"
]
]
},
{
"id": "dfd8650d923f73e4",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 10,
"width": "2",
"height": "1",
"name": "indoor temperature",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-left",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2650,
"y": 1080,
"wires": []
},
{
"id": "4c5adf85df17025b",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 9,
"width": "2",
"height": "1",
"name": "temperature setpoint",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-left",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2660,
"y": 960,
"wires": []
},
{
"id": "26537f8818c29c61",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Interieur à '&msg.payload&'°'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1080,
"wires": [
[
"dfd8650d923f73e4"
]
]
},
{
"id": "a7420198a3e0f879",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Consigne à '&msg.payload&'°'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 960,
"wires": [
[
"4c5adf85df17025b"
]
]
},
{
"id": "f23d5105ca948593",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 41,
"width": "6",
"height": "1",
"name": "seens",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-spread",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2610,
"y": 2160,
"wires": []
},
{
"id": "2efa063af4b505d2",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Dernier ordre il y a '&msg.payload.humanized",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2430,
"y": 2160,
"wires": [
[
"f23d5105ca948593"
]
]
},
{
"id": "6cc81c8342d6ef1c",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "indoor coefficient",
"label": "",
"tooltip": "",
"order": 20,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "indoor coefficient",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "200",
"step": 1,
"className": "",
"x": 2910,
"y": 1380,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "f7ed99ce22cd37cb",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "outdoor coefficient",
"label": "",
"tooltip": "",
"order": 22,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "outdoor coefficient",
"topicType": "str",
"thumbLabel": true,
"min": 0,
"max": "200",
"step": 1,
"className": "",
"x": 2910,
"y": 1440,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "348134507ffe8815",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 4,
"width": "2",
"height": "1",
"name": "status",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-left",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2610,
"y": 660,
"wires": []
},
{
"id": "63561fec4fba2afd",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 13,
"width": "2",
"height": "1",
"name": "eco setpoint (txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2650,
"y": 1200,
"wires": []
},
{
"id": "53f7b3195f6dfeed",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 19,
"width": "2",
"height": "1",
"name": "indoor coefficient (txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2660,
"y": 1380,
"wires": []
},
{
"id": "99e789a941d2af52",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 21,
"width": "2",
"height": "1",
"name": "outdoor coefficient (txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2660,
"y": 1440,
"wires": []
},
{
"id": "39615dab9370d868",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "150 ms",
"pauseType": "delay",
"timeout": "150",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 1740,
"y": 600,
"wires": [
[
"adc6196b15cf8c39"
]
]
},
{
"id": "e223793b9998818b",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 15,
"width": "2",
"height": "1",
"name": "confort setpoint (txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2660,
"y": 1260,
"wires": []
},
{
"id": "136162f12991809c",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"links": [
"df0e4ab2e1efc286"
],
"linkType": "static",
"timeout": "30",
"x": 2260,
"y": 660,
"wires": [
[
"a9e89b46159c4ec8"
]
]
},
{
"id": "fb9711affc7d14af",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "move",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "payload",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 660,
"wires": [
[
"136162f12991809c"
]
]
},
{
"id": "a9e89b46159c4ec8",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "move",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "trans",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 660,
"wires": [
[
"348134507ffe8815"
]
]
},
{
"id": "cb3f8f9fa322b59f",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 23,
"width": "2",
"height": "1",
"name": "preheat time(txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2640,
"y": 1500,
"wires": []
},
{
"id": "51dc21bc28ea3f06",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "preheat time",
"label": "",
"tooltip": "",
"order": 24,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "preheat time",
"topicType": "str",
"thumbLabel": true,
"min": "5",
"max": "60",
"step": "5",
"className": "",
"x": 2890,
"y": 1500,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "272807d6b707d92f",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 25,
"width": "2",
"height": "1",
"name": "cycle time(txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2640,
"y": 1560,
"wires": []
},
{
"id": "4540d4f432f8742d",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "cycle time",
"label": "",
"tooltip": "",
"order": 26,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "cycle time",
"topicType": "str",
"thumbLabel": true,
"min": "5",
"max": "120",
"step": "5",
"className": "",
"x": 2880,
"y": 1560,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "6d0cb16590b1da18",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 31,
"width": "2",
"height": "1",
"name": "offloading power (txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2660,
"y": 1740,
"wires": []
},
{
"id": "bfb0a473b6a09c81",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "offloading power",
"label": "",
"tooltip": "",
"order": 32,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "offloading power",
"topicType": "str",
"thumbLabel": true,
"min": "100",
"max": "1500",
"step": "100",
"className": "",
"x": 2900,
"y": 1740,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "61d316384ef1521b",
"type": "ui-switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "heat request",
"label": "",
"group": "28836135eb153545",
"order": 5,
"width": "1",
"height": "1",
"passthru": false,
"topic": "topic",
"topicType": "msg",
"style": "",
"className": "",
"onvalue": "true",
"onvalueType": "bool",
"onicon": "cog-play",
"oncolor": "teal",
"offvalue": "false",
"offvalueType": "bool",
"officon": "cog-stop-outline",
"offcolor": "grey",
"x": 2890,
"y": 720,
"wires": [
[]
]
},
{
"id": "27d7b08fb3646a52",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Exterieur à '&msg.payload&'°'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1020,
"wires": [
[
"3f9eefa51c1e5e9e"
]
]
},
{
"id": "3f9eefa51c1e5e9e",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 11,
"width": "2",
"height": "1",
"name": "outdoor temperature",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-left",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2660,
"y": 1020,
"wires": []
},
{
"id": "ff2211c1efd24971",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "aperture delay",
"label": "",
"tooltip": "",
"order": 28,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "aperture delay",
"topicType": "str",
"thumbLabel": true,
"min": "1",
"max": "30",
"step": 1,
"className": "",
"x": 2900,
"y": 1620,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "f814aebd5bd599b5",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "offloading delay",
"label": "",
"tooltip": "",
"order": 30,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "offloading delay",
"topicType": "str",
"thumbLabel": true,
"min": "1",
"max": "60",
"step": 1,
"className": "",
"x": 2900,
"y": 1680,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "8c3c9bc4a66b1e32",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 27,
"width": "2",
"height": "1",
"name": "aperture delay(txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2650,
"y": 1620,
"wires": []
},
{
"id": "0711217590341f99",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "from global",
"rules": [
{
"t": "set",
"p": "old_payload",
"pt": "msg",
"to": "payload",
"tot": "msg"
},
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "metrics",
"tot": "global"
},
{
"t": "set",
"p": "thermostat.options",
"pt": "flow",
"to": "[]",
"tot": "jsonata"
},
{
"t": "set",
"p": "thermostat.options[0]",
"pt": "flow",
"to": "{\t 'label': 'non assigné',\t 'value': ''\t}",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1910,
"y": 2220,
"wires": [
[
"3930f84bd36fd5aa"
]
]
},
{
"id": "3930f84bd36fd5aa",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "bucket",
"property": "payload",
"x": 2090,
"y": 2220,
"wires": [
[
"b6f3145afc37707c"
]
]
},
{
"id": "b6f3145afc37707c",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "measurement",
"property": "payload",
"x": 2250,
"y": 2220,
"wires": [
[
"7a9f4d42d5c7497c"
]
]
},
{
"id": "7a9f4d42d5c7497c",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "measurement",
"property": "measurement",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "aperture",
"vt": "str"
},
{
"t": "eq",
"v": "photovoltaic",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2440,
"y": 2220,
"wires": [
[
"dd517b4d06983aac"
],
[
"e0613fa53ec99a7d"
]
]
},
{
"id": "dd517b4d06983aac",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "field",
"property": "payload",
"x": 2630,
"y": 2220,
"wires": [
[
"e7dcdd83cf9e08e1"
]
]
},
{
"id": "e7dcdd83cf9e08e1",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "field",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "neq",
"v": "shutter",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 2790,
"y": 2220,
"wires": [
[
"ad09f7f6ad1acedd"
]
]
},
{
"id": "73dc6a2b0e041f8e",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "add",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "thermostat.options",
"tot": "flow"
},
{
"t": "set",
"p": "count",
"pt": "msg",
"to": "$count(msg.options)-1",
"tot": "jsonata"
},
{
"t": "set",
"p": "count",
"pt": "msg",
"to": "msg.count+1",
"tot": "jsonata"
},
{
"t": "set",
"p": "options[msg.count]",
"pt": "msg",
"to": "{\t 'label': msg.trans.path,\t 'value': msg.metric\t}",
"tot": "jsonata"
},
{
"t": "set",
"p": "thermostat.options",
"pt": "flow",
"to": "options",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 3350,
"y": 2220,
"wires": [
[]
]
},
{
"id": "bcfed6ac5d278d3c",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "options",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "thermostat.options",
"tot": "flow"
},
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "$sort(msg.options, function($l, $r) {\t $l[0].label > $r[0].label\t})",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2080,
"y": 1800,
"wires": [
[
"93e874f6e4a1f87a"
]
]
},
{
"id": "93e874f6e4a1f87a",
"type": "ui-dropdown",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "aperture 1",
"label": "Ouverture 1 :",
"tooltip": "",
"order": 33,
"width": "6",
"height": "1",
"passthru": false,
"multiple": false,
"options": [
{
"label": "non assigné",
"value": "",
"type": "str"
}
],
"payload": "",
"topic": "aperture 1",
"topicType": "str",
"className": "",
"x": 2890,
"y": 1800,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "fcbda9c625fdecac",
"type": "rbe",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"func": "rbe",
"gap": "",
"start": "",
"inout": "out",
"septopics": false,
"property": "bucket",
"topi": "topic",
"x": 1730,
"y": 2220,
"wires": [
[
"0711217590341f99"
]
]
},
{
"id": "f5cf184989e2cc69",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "options",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "thermostat.options",
"tot": "flow"
},
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "$sort(msg.options, function($l, $r) {\t $l[0].label > $r[0].label\t})",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2080,
"y": 1860,
"wires": [
[
"3d40410e159beaab"
]
]
},
{
"id": "3d40410e159beaab",
"type": "ui-dropdown",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "aperture 2",
"label": "Ouverture 2 :",
"tooltip": "",
"order": 34,
"width": "6",
"height": "1",
"passthru": false,
"multiple": false,
"options": [
{
"label": "non assigné",
"value": "",
"type": "str"
}
],
"payload": "",
"topic": "aperture 2",
"topicType": "str",
"className": "",
"x": 2890,
"y": 1860,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "4565730f04bd7072",
"type": "ui-dropdown",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "aperture 3",
"label": "Ouverture 3 :",
"tooltip": "",
"order": 35,
"width": "6",
"height": "1",
"passthru": false,
"multiple": false,
"options": [
{
"label": "non assigné",
"value": "",
"type": "str"
}
],
"payload": "",
"topic": "aperture 3",
"topicType": "str",
"className": "",
"x": 2890,
"y": 1920,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "95eb528329f90cf2",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "options",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "thermostat.options",
"tot": "flow"
},
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "$sort(msg.options, function($l, $r) {\t $l[0].label > $r[0].label\t})",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2080,
"y": 1920,
"wires": [
[
"4565730f04bd7072"
]
]
},
{
"id": "79764253e9e92fda",
"type": "ui-dropdown",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "aperture 4",
"label": "Ouverture 4 :",
"tooltip": "",
"order": 36,
"width": "6",
"height": "1",
"passthru": false,
"multiple": false,
"options": [
{
"label": "non assigné",
"value": "",
"type": "str"
}
],
"payload": "",
"topic": "aperture 4",
"topicType": "str",
"className": "",
"x": 2890,
"y": 1980,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "3e6cd35a857771f8",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "options",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "thermostat.options",
"tot": "flow"
},
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "$sort(msg.options, function($l, $r) {\t $l[0].label > $r[0].label\t})",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2080,
"y": 1980,
"wires": [
[
"79764253e9e92fda"
]
]
},
{
"id": "4ad97596d0efa64b",
"type": "ui-dropdown",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "aperture 5",
"label": "Ouverture 5 :",
"tooltip": "",
"order": 37,
"width": "6",
"height": "1",
"passthru": false,
"multiple": false,
"options": [
{
"label": "non assigné",
"value": "",
"type": "str"
}
],
"payload": "",
"topic": "aperture 5",
"topicType": "str",
"className": "",
"x": 2890,
"y": 2040,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "f19ecf4219ed5190",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "options",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "thermostat.options",
"tot": "flow"
},
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "$sort(msg.options, function($l, $r) {\t $l[0].label > $r[0].label\t})",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2080,
"y": 2040,
"wires": [
[
"4ad97596d0efa64b"
]
]
},
{
"id": "33fde1af7428bf26",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 29,
"width": "2",
"height": "1",
"name": "offloading delay(txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2650,
"y": 1680,
"wires": []
},
{
"id": "1d92bf6b8fc98959",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "msg.payload?\"Gestion de thermostat active\":\"Gestion de thermostat inactive\"",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 600,
"wires": [
[
"25b3542fda8fae4d"
]
]
},
{
"id": "25b3542fda8fae4d",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 2,
"width": "5",
"height": "1",
"name": "actif (txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2620,
"y": 600,
"wires": []
},
{
"id": "4b8267934ced5596",
"type": "delay",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "50 ms",
"pauseType": "delay",
"timeout": "50",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"allowrate": false,
"outputs": 1,
"x": 1510,
"y": 360,
"wires": [
[
"fc673a36d8691d63"
]
]
},
{
"id": "151d5194b8538480",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "options",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "[\t {'label':'Eco','value':'eco'},\t {'label':'Confort','value':'confort'},\t {'label':'Hors-Gel','value':'anti-freeze'},\t {'label':'Climatisation','value':'cool'},\t {'label':'Arrêt','value':'off'}\t]",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2080,
"y": 1140,
"wires": [
[
"f968a8fc298f04c3"
]
]
},
{
"id": "f670239d8cf08808",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Mode eco à '&msg.payload&'°'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1200,
"wires": [
[
"63561fec4fba2afd"
]
]
},
{
"id": "a4b56ada8159bff6",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Mode confort à '&msg.payload&'°'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1260,
"wires": [
[
"e223793b9998818b"
]
]
},
{
"id": "990b4d58c23a68a2",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Coef. int. de '&msg.payload",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1380,
"wires": [
[
"53f7b3195f6dfeed"
]
]
},
{
"id": "ee3e358d88bbf249",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Coef. ext. de '&msg.payload",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1440,
"wires": [
[
"99e789a941d2af52"
]
]
},
{
"id": "6f096e24c9634c56",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Préchauffe de '&msg.payload&'m'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1500,
"wires": [
[
"cb3f8f9fa322b59f"
]
]
},
{
"id": "83b16f9aed4fa051",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Cycle de '&msg.payload&'m'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1560,
"wires": [
[
"272807d6b707d92f"
]
]
},
{
"id": "db3ebf0b6421aeae",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Délai ouvrant '&msg.payload&'m'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1620,
"wires": [
[
"8c3c9bc4a66b1e32"
]
]
},
{
"id": "10c3697bddec1a05",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Délai délestage '&msg.payload&'m'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1680,
"wires": [
[
"33fde1af7428bf26"
]
]
},
{
"id": "4f0ea1cdd4d0b719",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Puissance de '&msg.payload&'w'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1740,
"wires": [
[
"6d0cb16590b1da18"
]
]
},
{
"id": "ad09f7f6ad1acedd",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "metric",
"rules": [
{
"t": "set",
"p": "metric",
"pt": "msg",
"to": "msg.bucket&'/'&msg.measurement&'/'&msg.field",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2950,
"y": 2220,
"wires": [
[
"7bb3239b80bb5650"
]
]
},
{
"id": "7bb3239b80bb5650",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"links": [
"025e219749a67439"
],
"linkType": "static",
"timeout": "30",
"x": 3150,
"y": 2220,
"wires": [
[
"73dc6a2b0e041f8e"
]
]
},
{
"id": "080a2e3d678b9119",
"type": "gate",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "gate scene",
"controlTopic": "gate scene",
"defaultState": "closed",
"openCmd": "open",
"closeCmd": "close",
"toggleCmd": "toggle",
"defaultCmd": "default",
"statusCmd": "status",
"persist": false,
"storeName": "onFile",
"x": 290,
"y": 5520,
"wires": [
[
"45bd2f5743776c20"
]
]
},
{
"id": "d93c5182974350b0",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / cold setpoint / number / 0",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "cold setpoint",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "number",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "0",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 750,
"y": 480,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "b87af6e4d9e65d33",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "format",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "'Mode froid à '&msg.payload&'°'",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2070,
"y": 1320,
"wires": [
[
"aefd619aa22eea0b"
]
]
},
{
"id": "aefd619aa22eea0b",
"type": "ui-text",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"order": 17,
"width": "2",
"height": "1",
"name": "cold setpoint (txt)",
"label": "",
"format": "{{msg.payload}}",
"layout": "row-right",
"style": false,
"font": "",
"fontSize": 16,
"color": "#717171",
"className": "",
"x": 2650,
"y": 1320,
"wires": []
},
{
"id": "bc775d86aa14a73f",
"type": "ui-slider",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "cold setpoint",
"label": "",
"tooltip": "",
"order": 18,
"width": "4",
"height": "1",
"passthru": false,
"outs": "end",
"topic": "cold setpoint",
"topicType": "str",
"thumbLabel": "true",
"showTicks": "false",
"min": "18",
"max": "30",
"step": "0.5",
"className": "",
"iconPrepend": "",
"iconAppend": "",
"color": "",
"colorTrack": "",
"colorThumb": "",
"x": 2890,
"y": 1320,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "0162f458d02a06ca",
"type": "link in",
"z": "80f2ffd4953c67e9",
"g": "272756073495f0a8",
"name": "thermostat - compute cool request",
"links": [],
"x": 705,
"y": 2520,
"wires": [
[
"736b4f85b471f119"
]
]
},
{
"id": "736b4f85b471f119",
"type": "function",
"z": "80f2ffd4953c67e9",
"g": "272756073495f0a8",
"name": "thermostat compute cool request",
"func": "// 26in 30out 23set : 30-23+26-23 : 30+26-(2x23) : 56-46 : 10\n// 23in 27out 23set : 27+23-(2x23) : 50-46 : 4\n// 24in 25out 23set : 25+24-(2x23) : 49-46 : 3\n// 24in 25out 24set : 49-48 : 1\n// 24in 25out 19set : 49-38 : 11\n// 26in 30out 0set : 30+0-(2x26) : 30-56 : -26\n\nvar calcul = msg.th['outdoor temperature'] + msg.th['indoor temperature'] - 2 * msg.th['temperature setpoint'] - 5;\ncalcul = calcul.toFixed(1);\n\n// positive result for heat request\nmsg.th.compute = calcul;\n\nif (msg.th.compute > 0) {\n node.status({\n fill: \"blue\", shape: \"ring\", text: msg.th.bucket+' cool resquest at '+msg.th.compute\n });\n}\nif (msg.th.compute <= 0) {\n node.status({\n fill: \"green\", shape: \"ring\", text: msg.th.bucket+' at '+msg.th.compute\n });\n}\n\nreturn msg;",
"outputs": 1,
"timeout": "",
"noerr": 0,
"initialize": "",
"finalize": "",
"libs": [],
"x": 930,
"y": 2520,
"wires": [
[
"97694aa50cf4ce0e"
]
]
},
{
"id": "97694aa50cf4ce0e",
"type": "link out",
"z": "80f2ffd4953c67e9",
"g": "272756073495f0a8",
"name": "thermostat - compute cool request",
"mode": "return",
"links": [],
"x": 1145,
"y": 2520,
"wires": []
},
{
"id": "0cac48ac1fa4efa4",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "b3bc1717c16dc7dc",
"name": "cool",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "cool",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2450,
"y": 5520,
"wires": [
[
"0728c8c3564e6e93"
]
]
},
{
"id": "3a23d8541c5bc71c",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "0af18fd6cc155518",
"name": "cold",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "th['cold setpoint']",
"tot": "msg"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 690,
"y": 3240,
"wires": [
[
"70c27df7cb0add1d"
]
]
},
{
"id": "5409904037bf4a62",
"type": "link call",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "",
"links": [
"0162f458d02a06ca"
],
"linkType": "static",
"timeout": "30",
"x": 1080,
"y": 2820,
"wires": [
[
"1ed6b5ff63020d07"
]
]
},
{
"id": "7d5ba4790bc3a720",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "check temperature setpoint",
"property": "th['temperature setpoint']",
"propertyType": "msg",
"rules": [
{
"t": "gte",
"v": "19",
"vt": "num"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 760,
"y": 2880,
"wires": [
[
"5409904037bf4a62"
],
[
"e13e76f216b98c22"
]
]
},
{
"id": "92e341f726c9c5ac",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "check operating mode",
"property": "th['operating mode']",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "cool",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 480,
"y": 2880,
"wires": [
[
"7d5ba4790bc3a720"
],
[
"d75bdce71118a56f"
]
]
},
{
"id": "e13e76f216b98c22",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "467ec12f292b2573",
"name": "force compute to -1",
"rules": [
{
"t": "set",
"p": "th['compute']",
"pt": "msg",
"to": "-1",
"tot": "num"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1030,
"y": 2880,
"wires": [
[
"1ed6b5ff63020d07"
]
]
},
{
"id": "2b1ba57fb5c945df",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "cool operating mode",
"property": "th['operating mode']",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "cool",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2560,
"y": 5280,
"wires": [
[
"30460d81f866f13d"
],
[
"abef8f252aedce0a"
]
]
},
{
"id": "632ae6a86b8d4095",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "apertures",
"rules": [
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "th['aperture 1']",
"tot": "msg"
},
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "msg.tmp!=\"\"?msg.tmp:'a/a/a'",
"tot": "jsonata"
},
{
"t": "set",
"p": "spl",
"pt": "msg",
"to": "$split(msg.tmp,'/')",
"tot": "jsonata"
},
{
"t": "set",
"p": "apertures[msg.tmp]",
"pt": "msg",
"to": "metrics[msg.spl[0]][msg.spl[1]][msg.spl[2]]",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1600,
"y": 5280,
"wires": [
[
"cff0bca6c0bb1782"
]
]
},
{
"id": "618c0cd766442117",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "aperture",
"rules": [
{
"t": "set",
"p": "apertures[msg.path]",
"pt": "msg",
"to": "old_payload",
"tot": "msg"
},
{
"t": "set",
"p": "old_payload",
"pt": "msg",
"to": "false",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1960,
"y": 5280,
"wires": [
[
"c422635e69d1eaf7"
]
]
},
{
"id": "c422635e69d1eaf7",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "apertures",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "aperture_path",
"property": "apertures",
"x": 2140,
"y": 5280,
"wires": [
[
"dba3af356708ccb7"
]
]
},
{
"id": "092568ca52a77671",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "payload",
"property": "apertures",
"propertyType": "msg",
"rules": [
{
"t": "true"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2520,
"y": 5340,
"wires": [
[
"9a561c9f4fd75edb"
],
[
"abef8f252aedce0a"
]
]
},
{
"id": "9a561c9f4fd75edb",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "true",
"rules": [
{
"t": "set",
"p": "old_payload",
"pt": "msg",
"to": "true",
"tot": "bool"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 3030,
"y": 5280,
"wires": [
[
"abef8f252aedce0a"
]
]
},
{
"id": "abef8f252aedce0a",
"type": "join",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "",
"mode": "auto",
"build": "object",
"property": "payload",
"propertyType": "msg",
"key": "topic",
"joiner": "\\n",
"joinerType": "str",
"useparts": false,
"accumulate": true,
"timeout": "",
"count": "",
"reduceRight": false,
"reduceExp": "",
"reduceInit": "",
"reduceInitType": "",
"reduceFixup": "",
"x": 3190,
"y": 5340,
"wires": [
[
"748b1f355c0e00f8"
]
]
},
{
"id": "cff0bca6c0bb1782",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "apertures",
"rules": [
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "th['aperture 2']",
"tot": "msg"
},
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "msg.tmp!=\"\"?msg.tmp:'a/a/a'",
"tot": "jsonata"
},
{
"t": "set",
"p": "spl",
"pt": "msg",
"to": "$split(msg.tmp,'/')",
"tot": "jsonata"
},
{
"t": "set",
"p": "apertures[msg.tmp]",
"pt": "msg",
"to": "metrics[msg.spl[0]][msg.spl[1]][msg.spl[2]]",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1630,
"y": 5280,
"wires": [
[
"c86253a53e062d16"
]
]
},
{
"id": "c86253a53e062d16",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "apertures",
"rules": [
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "th['aperture 3']",
"tot": "msg"
},
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "msg.tmp!=\"\"?msg.tmp:'a/a/a'",
"tot": "jsonata"
},
{
"t": "set",
"p": "spl",
"pt": "msg",
"to": "$split(msg.tmp,'/')",
"tot": "jsonata"
},
{
"t": "set",
"p": "apertures[msg.tmp]",
"pt": "msg",
"to": "metrics[msg.spl[0]][msg.spl[1]][msg.spl[2]]",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1670,
"y": 5280,
"wires": [
[
"b315363385257040"
]
]
},
{
"id": "b315363385257040",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "apertures",
"rules": [
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "th['aperture 4']",
"tot": "msg"
},
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "msg.tmp!=\"\"?msg.tmp:'a/a/a'",
"tot": "jsonata"
},
{
"t": "set",
"p": "spl",
"pt": "msg",
"to": "$split(msg.tmp,'/')",
"tot": "jsonata"
},
{
"t": "set",
"p": "apertures[msg.tmp]",
"pt": "msg",
"to": "metrics[msg.spl[0]][msg.spl[1]][msg.spl[2]]",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1710,
"y": 5280,
"wires": [
[
"8d466808ce870af4"
]
]
},
{
"id": "8d466808ce870af4",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "apertures",
"rules": [
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "th['aperture 5']",
"tot": "msg"
},
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "msg.tmp!=\"\"?msg.tmp:'a/a/a'",
"tot": "jsonata"
},
{
"t": "set",
"p": "spl",
"pt": "msg",
"to": "$split(msg.tmp,'/')",
"tot": "jsonata"
},
{
"t": "set",
"p": "apertures[msg.tmp]",
"pt": "msg",
"to": "metrics[msg.spl[0]][msg.spl[1]][msg.spl[2]]",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1740,
"y": 5280,
"wires": [
[
"3c2f8f4f7cff096c"
]
]
},
{
"id": "dba3af356708ccb7",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "production",
"property": "aperture_path",
"propertyType": "msg",
"rules": [
{
"t": "regex",
"v": "production power",
"vt": "str",
"case": false
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2330,
"y": 5280,
"wires": [
[
"2b1ba57fb5c945df"
],
[
"092568ca52a77671"
]
]
},
{
"id": "3c2f8f4f7cff096c",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "apertures",
"rules": [
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "th['aperture 6']",
"tot": "msg"
},
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "msg.tmp!=\"\"?msg.tmp:'a/a/a'",
"tot": "jsonata"
},
{
"t": "set",
"p": "spl",
"pt": "msg",
"to": "$split(msg.tmp,'/')",
"tot": "jsonata"
},
{
"t": "set",
"p": "apertures[msg.tmp]",
"pt": "msg",
"to": "metrics[msg.spl[0]][msg.spl[1]][msg.spl[2]]",
"tot": "global"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 1780,
"y": 5280,
"wires": [
[
"618c0cd766442117"
]
]
},
{
"id": "ae60f951124d5757",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "e6edd4684b272434",
"name": "thermostat / aperture 6 / text / ",
"rules": [
{
"t": "set",
"p": "field",
"pt": "msg",
"to": "aperture 6",
"tot": "str"
},
{
"t": "set",
"p": "format",
"pt": "msg",
"to": "text",
"tot": "str"
},
{
"t": "set",
"p": "default",
"pt": "msg",
"to": "",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 730,
"y": 1800,
"wires": [
[
"1707bc7a4bb0daa5"
]
]
},
{
"id": "b74bf0ca5e271336",
"type": "ui-dropdown",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"group": "28836135eb153545",
"name": "aperture 6",
"label": "Ouverture 6 :",
"tooltip": "",
"order": 38,
"width": "6",
"height": "1",
"passthru": false,
"multiple": false,
"chips": false,
"clearable": false,
"options": [
{
"label": "non assigné",
"value": "",
"type": "str"
}
],
"payload": "",
"topic": "aperture 6",
"topicType": "str",
"className": "",
"typeIsComboBox": true,
"x": 2890,
"y": 2100,
"wires": [
[
"37aa96c6d80d8ade"
]
]
},
{
"id": "f914f5311d82ce56",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "options",
"rules": [
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "thermostat.options",
"tot": "flow"
},
{
"t": "set",
"p": "options",
"pt": "msg",
"to": "$sort(msg.options, function($l, $r) {\t $l[0].label > $r[0].label\t})",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2080,
"y": 2100,
"wires": [
[
"b74bf0ca5e271336"
]
]
},
{
"id": "e0613fa53ec99a7d",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "field",
"property": "payload",
"x": 2630,
"y": 2280,
"wires": [
[
"b0670866409f1f18"
]
]
},
{
"id": "b0670866409f1f18",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "bb2ebd173a2ba06c",
"name": "field",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "production power",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 2790,
"y": 2280,
"wires": [
[
"ad09f7f6ad1acedd"
]
]
},
{
"id": "30460d81f866f13d",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "production > offloading",
"property": "th['offloading power']",
"propertyType": "msg",
"rules": [
{
"t": "gt",
"v": "apertures",
"vt": "msg"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 2820,
"y": 5220,
"wires": [
[
"9a561c9f4fd75edb"
],
[
"abef8f252aedce0a"
]
]
},
{
"id": "d6ab285a88335fa2",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "check field",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "hask",
"v": "outdoor temperature",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1170,
"y": 4740,
"wires": [
[
"e3dc3f877be31d77"
]
]
},
{
"id": "19fa594b351b66f0",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "split by measurements",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "measurement",
"property": "payload",
"x": 940,
"y": 4740,
"wires": [
[
"d6ab285a88335fa2"
]
]
},
{
"id": "76d38ba7e5924f87",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "split by measurements",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "old_measurement",
"property": "payload",
"x": 720,
"y": 4920,
"wires": [
[
"809fde35e7e1f34c"
]
]
},
{
"id": "7fd575b83b1ea3a9",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "check field",
"property": "field",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "indoor temperature",
"vt": "str"
}
],
"checkall": "false",
"repair": false,
"outputs": 1,
"x": 1150,
"y": 4920,
"wires": [
[
"9eb8cf78caf3141d"
]
]
},
{
"id": "809fde35e7e1f34c",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "split by fields",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "field",
"property": "payload",
"x": 950,
"y": 4920,
"wires": [
[
"7fd575b83b1ea3a9"
]
]
},
{
"id": "540559483eeab8da",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "split by buckets",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "bucket",
"property": "payload",
"x": 1340,
"y": 5100,
"wires": [
[
"8a6d0abb6443883d"
]
]
},
{
"id": "8a6d0abb6443883d",
"type": "split",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "split by measurements",
"splt": "\\n",
"spltType": "str",
"arraySplt": 1,
"arraySpltType": "len",
"stream": false,
"addname": "measurement",
"property": "payload",
"x": 1580,
"y": 5100,
"wires": [
[
"411ef0d570511d83"
]
]
},
{
"id": "411ef0d570511d83",
"type": "switch",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "check field",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "hask",
"v": "offloading count",
"vt": "str"
},
{
"t": "else"
}
],
"checkall": "false",
"repair": false,
"outputs": 2,
"x": 1810,
"y": 5100,
"wires": [
[
"25a5a9737529ff5b"
],
[
"abf41c098d653760"
]
]
},
{
"id": "25a5a9737529ff5b",
"type": "change",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "get offloading count",
"rules": [
{
"t": "set",
"p": "tmp",
"pt": "msg",
"to": "payload['offloading count']",
"tot": "msg"
},
{
"t": "set",
"p": "sort[msg.parts.index]",
"pt": "flow",
"to": "{\t \"bucket\":msg.bucket,\t \"nb\":msg.tmp\t }",
"tot": "jsonata"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 2030,
"y": 5040,
"wires": [
[
"abf41c098d653760"
]
]
},
{
"id": "abf41c098d653760",
"type": "join",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "",
"mode": "auto",
"build": "object",
"property": "payload",
"propertyType": "msg",
"key": "topic",
"joiner": "\\n",
"joinerType": "str",
"accumulate": true,
"timeout": "",
"count": "",
"reduceRight": false,
"reduceExp": "",
"reduceInit": "",
"reduceInitType": "",
"reduceFixup": "",
"x": 2230,
"y": 5100,
"wires": [
[
"e5f7588af2fe3ff5"
]
]
},
{
"id": "e5f7588af2fe3ff5",
"type": "join",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "",
"mode": "auto",
"build": "object",
"property": "payload",
"propertyType": "msg",
"key": "topic",
"joiner": "\\n",
"joinerType": "str",
"accumulate": true,
"timeout": "",
"count": "",
"reduceRight": false,
"reduceExp": "",
"reduceInit": "",
"reduceInitType": "",
"reduceFixup": "",
"x": 2390,
"y": 5100,
"wires": [
[
"808426e9258cd024"
]
]
},
{
"id": "c8fc469ecc49e36d",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "search thermostats metrics",
"info": "",
"x": 490,
"y": 4680,
"wires": []
},
{
"id": "2975020541c6b561",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "6f1f772c23d57e24",
"name": "search thermostats metrics",
"info": "",
"x": 1130,
"y": 5040,
"wires": []
},
{
"id": "9fb0f58d71f522d1",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "8ecd405cd0a1e5ac",
"name": "search thermostats metrics",
"info": "",
"x": 490,
"y": 5220,
"wires": []
},
{
"id": "94a4df12110c761f",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "e653f3ec3dc88a8f",
"name": "search thermostats metrics",
"info": "",
"x": 490,
"y": 4860,
"wires": []
},
{
"id": "8f03e932f3d0abb1",
"type": "comment",
"z": "80f2ffd4953c67e9",
"g": "93075511ad056e6d",
"name": "use personnal trigger",
"info": "",
"x": 220,
"y": 4680,
"wires": []
}
]