Pour faciliter le démarrage…
Un exemple avec le cas ou la température est inférieure à 10.
Et le flot:
[{"id":"05eb18ce0cc03ea0","type":"inject","z":"fa7ec82ed1316c30","name":"Liste","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"list-all","payload":"","payloadType":"date","x":290,"y":3360,"wires":[["fac2cd859bcaac97"]]},{"id":"7a6624adb54763cb","type":"cronplus","z":"fa7ec82ed1316c30","name":"Clean","outputField":"payload","timeZone":"","persistDynamic":false,"commandResponseMsgOutput":"output1","outputs":1,"options":[{"name":"Reset","topic":"remove-all-dynamic","payloadType":"default","payload":"","expressionType":"cron","expression":"0 0 0 * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"}],"x":290,"y":3420,"wires":[["fac2cd859bcaac97"]]},{"id":"fac2cd859bcaac97","type":"cronplus","z":"fa7ec82ed1316c30","name":"","outputField":"payload","timeZone":"","persistDynamic":false,"commandResponseMsgOutput":"output1","outputs":1,"options":[],"x":800,"y":3420,"wires":[["c92f9f2298359a98","5a1c7eaa284d9f7f"]]},{"id":"200dbae4ce5f7b8c","type":"cronplus","z":"fa7ec82ed1316c30","name":"Prepare le jour","outputField":"payload","timeZone":"","persistDynamic":false,"commandResponseMsgOutput":"output1","outputs":1,"options":[{"name":"Program","topic":"topic1","payloadType":"default","payload":"","expressionType":"cron","expression":"0 5 0 * * * *","location":"","offset":"0","solarType":"all","solarEvents":"sunrise,sunset"}],"x":140,"y":3500,"wires":[["4049d19483d093b8"]]},{"id":"4049d19483d093b8","type":"change","z":"fa7ec82ed1316c30","name":"Fake tempé","rules":[{"t":"set","p":"payload","pt":"msg","to":"7","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":330,"y":3500,"wires":[["f24d7a873eabf0cc"]]},{"id":"f24d7a873eabf0cc","type":"switch","z":"fa7ec82ed1316c30","name":"<= 10","property":"payload","propertyType":"msg","rules":[{"t":"lte","v":"10","vt":"num"}],"checkall":"true","repair":false,"outputs":1,"x":510,"y":3500,"wires":[["73f6d81d4df279a9"]]},{"id":"73f6d81d4df279a9","type":"change","z":"fa7ec82ed1316c30","name":"Define cron","rules":[{"t":"set","p":"payload","pt":"msg","to":"[{\"command\":\"add\",\"name\":\"8:00\",\"expression\":\"0 0 8 * * * *\",\"payload\":\"ON\",\"type\":\"str\",\"limit\":1},{\"command\":\"add\",\"name\":\"9:00\",\"expression\":\"0 0 9 * * * *\",\"payload\":\"OFF\",\"type\":\"str\",\"topic\":\"19:00 - 20:00\",\"limit\":1},{\"command\":\"add\",\"name\":\"19:00\",\"expression\":\"0 0 19 * * * *\",\"payload\":\"ON\",\"type\":\"str\",\"limit\":1},{\"command\":\"add\",\"name\":\"20:00\",\"expression\":\"0 0 20 * * * *\",\"payload\":\"OFF\",\"type\":\"str\",\"topic\":\"Demain\",\"limit\":1}]","tot":"json"},{"t":"set","p":"topic","pt":"msg","to":"add","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":670,"y":3500,"wires":[["fac2cd859bcaac97"]]},{"id":"c92f9f2298359a98","type":"debug","z":"fa7ec82ed1316c30","name":"Payload","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1000,"y":3360,"wires":[]},{"id":"5a1c7eaa284d9f7f","type":"debug","z":"fa7ec82ed1316c30","name":"Topic","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"topic","targetType":"msg","statusVal":"","statusType":"auto","x":990,"y":3460,"wires":[]}]
Je te suggère d’importer ce flot. De comprendre comment ça marche et ensuite de l’enrichir en suivant le même principe.
Pour les autres cas, il « suffit » de rajouter les autres cas au switch et d’y mettre la bonne définition du cron pour ce cas et et connecter ça au cron-plus de droite. Et ça roule.