Is there a node available like the "events state" node of Home Assistant that gives updates of the final time (when the node is waiting) when the node will continue with the output?

I have created a flow to control my covers to go up or down depending if the sun is shining at my windows by using an illuminance sensor.

For this I'm using the "events state" node for Home Assistant in Node-RED.

So I have a node:

if state < 40000 lux for 25 minutes the next node of the flow will be executed.

The events state node has only one output. So when the condition is succeeded it will go to the next flow.

What I want is to have a time indication when the next node will be executed so that I can publish this as a MQTT message for showing in my UI.

The big timer node has an output every minute. So in this output you can get all kind of information.

Does anybody know if there is also such a node for my case so that I get updates between the illuminance is for the first time below the 40.000 lux and then the wait time of 25 minutes. So that i can publish the final time when the my cover will go up.

I'm not familiar with HA.
How do you get the 'state'? is it produced by another node in the flow (events state node?), and is the state triggered just once or every 'n' seconds/minutes?

This is my flow:

[{"id":"8bc354d2.3f8c88","type":"tab","label":"Rolluiken automatisch zon licht","disabled":false,"info":""},{"id":"21f88732.b5b428","type":"server-state-changed","z":"8bc354d2.3f8c88","name":">= 40000 lux voor 5 min","server":"63f26c18.71f4f4","version":3,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"sensor.zijraam_woonkamer_lux","entityidfiltertype":"exact","outputinitially":false,"state_type":"num","haltifstate":"40000","halt_if_type":"num","halt_if_compare":"gte","outputs":2,"output_only_on_state_change":true,"for":"5","forType":"num","forUnits":"minutes","ignorePrevStateNull":true,"ignorePrevStateUnknown":true,"ignorePrevStateUnavailable":true,"ignoreCurrentStateUnknown":true,"ignoreCurrentStateUnavailable":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":140,"y":80,"wires":[["5c796cc5da3bf133"],[]]},{"id":"dc434259.ab2d7","type":"server-state-changed","z":"8bc354d2.3f8c88","name":"< 40000 lux for 25 min","server":"63f26c18.71f4f4","version":3,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"sensor.zijraam_woonkamer_lux","entityidfiltertype":"exact","outputinitially":false,"state_type":"num","haltifstate":"40000","halt_if_type":"num","halt_if_compare":"lt","outputs":2,"output_only_on_state_change":false,"for":"25","forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":120,"y":460,"wires":[["6f7dc7dcbdb31a3c"],[]]},{"id":"985c29ef.b51248","type":"comment","z":"8bc354d2.3f8c88","name":"Rolluiken sluiten bij felle zon","info":"","x":160,"y":40,"wires":[]},{"id":"1fa00b1e.8126f5","type":"comment","z":"8bc354d2.3f8c88","name":"Rolluiken open na verlaten zon","info":"","x":150,"y":400,"wires":[]},{"id":"954f19af.13cb18","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering zon bescherming?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluiken","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":220,"y":180,"wires":[["7a8023f9.f82acc","8e7d6611.387088"],[]]},{"id":"e788d33.c7b663","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering ingeschakeld?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.automatiseringen_enabled","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":930,"y":80,"wires":[["954f19af.13cb18"],[]]},{"id":"fef8b4c7.04f548","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zijraam rolluik sluiten","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"close_cover","entityId":"cover.zijraam","data":"{\"entity_id\":\"cover.zijraam\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":800,"y":260,"wires":[["1f7ca772.48c919"]]},{"id":"1f7ca772.48c919","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Melding in logboek","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik zijraam\",\"message\":\"Rolluik zijraam gesloten vanwege felle zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1030,"y":260,"wires":[[]]},{"id":"18a182e1.fcbd7d","type":"time-range-switch","z":"8bc354d2.3f8c88","name":"","lat":"51.81828","lon":"4.78229","startTime":"08:00","endTime":"21:00","startOffset":0,"endOffset":0,"x":610,"y":80,"wires":[["e788d33.c7b663"],[]]},{"id":"7a8023f9.f82acc","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Zijraam enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_zijraam","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":310,"y":260,"wires":[["5677bd347e7c2cd6"],[]]},{"id":"44f2e363.95569c","type":"time-range-switch","z":"8bc354d2.3f8c88","name":"","lat":"51.81828","lon":"4.78229","startTime":"08:00","endTime":"21:00","startOffset":0,"endOffset":0,"x":610,"y":460,"wires":[["8d5842ec.b0278"],[]]},{"id":"8d5842ec.b0278","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering ingeschakeld?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.automatiseringen_enabled","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":930,"y":460,"wires":[["88ee0d74.7b7c4"],[]]},{"id":"88ee0d74.7b7c4","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering zon bescherming?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluiken","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":200,"y":560,"wires":[["190b4c8c.9dde53","54687993.e82e68"],[]]},{"id":"ddd17ee8.daa0b","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zijraam rolluik openen","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"open_cover","entityId":"cover.zijraam","data":"{\"entity_id\":\"cover.zijraam\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":820,"y":640,"wires":[["810168fb.e5eaf8"]]},{"id":"810168fb.e5eaf8","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Melding in logboek","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik zijraam\",\"message\":\"Rolluik zijraam geopend vanwege geen zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1050,"y":640,"wires":[[]]},{"id":"190b4c8c.9dde53","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Zijraam enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_zijraam","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":330,"y":640,"wires":[["042a59ef6e1a54ea"],[]]},{"id":"8e7d6611.387088","type":"api-call-service","z":"8bc354d2.3f8c88","name":"SLUITEN rolluiken (vanwege zon)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"notify","service":"mobile_app_iphone_van_martin","entityId":"","data":"{\"message\":\"De zon schijnt vel en daarom wordt het rolluik van het zijraam gesloten.\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":840,"y":160,"wires":[[]]},{"id":"54687993.e82e68","type":"api-call-service","z":"8bc354d2.3f8c88","name":"OPENEN rolluiken (zon is weg)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"notify","service":"mobile_app_iphone_van_martin","entityId":"","data":"{\"message\":\"De zon is verdwenen en daarom wordt het rolluik van het zijraam geopend.\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":690,"y":540,"wires":[[]]},{"id":"5677bd347e7c2cd6","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zet slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_06_zijraam_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":560,"y":260,"wires":[["fef8b4c7.04f548"]]},{"id":"042a59ef6e1a54ea","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zet slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_06_zijraam_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":580,"y":640,"wires":[["ddd17ee8.daa0b"]]},{"id":"6fd1fcf5973529c9","type":"server-state-changed","z":"8bc354d2.3f8c88","name":">= 40000 lux voor 5 min","server":"63f26c18.71f4f4","version":3,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"sensor.computerkamer_lux","entityidfiltertype":"exact","outputinitially":false,"state_type":"num","haltifstate":"40000","halt_if_type":"num","halt_if_compare":"gte","outputs":2,"output_only_on_state_change":true,"for":"5","forType":"num","forUnits":"minutes","ignorePrevStateNull":true,"ignorePrevStateUnknown":true,"ignorePrevStateUnavailable":true,"ignoreCurrentStateUnknown":true,"ignoreCurrentStateUnavailable":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":140,"y":1320,"wires":[["36343564ccbf285c"],[]]},{"id":"d8cf686809408215","type":"comment","z":"8bc354d2.3f8c88","name":"Rolluiken sluiten bij felle zon","info":"","x":160,"y":1280,"wires":[]},{"id":"25a28638d2b54c1f","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering zon bescherming?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluiken","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":220,"y":1420,"wires":[["32ceef6b2e85b9d9","4c31e24f14dd089b","a9740422fb4e6466"],[]]},{"id":"94f5a29bcc4632f4","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering ingeschakeld?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.automatiseringen_enabled","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":590,"y":1320,"wires":[["25a28638d2b54c1f"],[]]},{"id":"36343564ccbf285c","type":"time-range-switch","z":"8bc354d2.3f8c88","name":"","lat":"51.81828","lon":"4.78229","startTime":"08:00","endTime":"21:00","startOffset":0,"endOffset":0,"x":350,"y":1320,"wires":[["94f5a29bcc4632f4"],[]]},{"id":"4a841defb60cfcf0","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Computerkamer rolluik sluiten","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"close_cover","entityId":"cover.computer_kamer","data":"{\"entity_id\":\"cover.computer_kamer\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":810,"y":1520,"wires":[["609c9aa9527249d4"]]},{"id":"609c9aa9527249d4","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Melding in logboek","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik computer kamer\",\"message\":\"Rolluik computer kamer gesloten vanwege felle zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1050,"y":1520,"wires":[[]]},{"id":"32ceef6b2e85b9d9","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Computer kamer enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_computer_kamer","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":320,"y":1520,"wires":[["55afa01ba99d7b40"],[]]},{"id":"7b760b49afbdbc9c","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Hal 1e etage rolluik sluiten","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"close_cover","entityId":"cover.hal_1e_etage","data":"{\"entity_id\":\"cover.hal_1e_etage\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":800,"y":1580,"wires":[["e0e30b175f8bdfa0"]]},{"id":"e0e30b175f8bdfa0","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Melding in logboek","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik hal 1e etage\",\"message\":\"Rolluik hal 1e etage gesloten vanwege felle zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1050,"y":1580,"wires":[[]]},{"id":"4c31e24f14dd089b","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Hal 1e etage enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_hal_1e_etage","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":300,"y":1580,"wires":[["47e5431928a10623"],[]]},{"id":"a9740422fb4e6466","type":"api-call-service","z":"8bc354d2.3f8c88","name":"SLUITEN rolluiken (vanwege zon)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"notify","service":"mobile_app_iphone_van_martin","entityId":"","data":"{\"message\":\"De zon schijnt vel en daarom worden de rolluiken west 1e etage gesloten.\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":840,"y":1400,"wires":[[]]},{"id":"55afa01ba99d7b40","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zet slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_04_computer_kamer_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":560,"y":1520,"wires":[["4a841defb60cfcf0"]]},{"id":"47e5431928a10623","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zet slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_05_hal_1e_etage_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":560,"y":1580,"wires":[["7b760b49afbdbc9c"]]},{"id":"fe4dfc055543ad87","type":"server-state-changed","z":"8bc354d2.3f8c88","name":"< 40000 lux for 25 min","server":"63f26c18.71f4f4","version":3,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"sensor.computerkamer_lux","entityidfiltertype":"exact","outputinitially":false,"state_type":"num","haltifstate":"40000","halt_if_type":"num","halt_if_compare":"lt","outputs":2,"output_only_on_state_change":true,"for":"25","forType":"num","forUnits":"minutes","ignorePrevStateNull":true,"ignorePrevStateUnknown":true,"ignorePrevStateUnavailable":true,"ignoreCurrentStateUnknown":true,"ignoreCurrentStateUnavailable":true,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":120,"y":1820,"wires":[["ee6d37215c2ca647"],[]]},{"id":"bd8ef5c83099982c","type":"comment","z":"8bc354d2.3f8c88","name":"Rolluiken open na verlaten zon","info":"","x":150,"y":1760,"wires":[]},{"id":"ee6d37215c2ca647","type":"time-range-switch","z":"8bc354d2.3f8c88","name":"","lat":"51.81828","lon":"4.78229","startTime":"08:00","endTime":"21:00","startOffset":0,"endOffset":0,"x":330,"y":1820,"wires":[["5b05f4019255d69f"],[]]},{"id":"5b05f4019255d69f","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering ingeschakeld?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.automatiseringen_enabled","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":570,"y":1820,"wires":[["6118d1930a1fc811"],[]]},{"id":"6118d1930a1fc811","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Automatisering zon bescherming?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluiken","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":200,"y":1920,"wires":[["6efdbfcd55c19525","9c45f1974f54d0a7","c47ed72edf608ef3"],[]]},{"id":"97a5f3c4f7709f8a","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Computerkamer rolluik openen","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"open_cover","entityId":"cover.computer_kamer","data":"{\"entity_id\":\"cover.computer_kamer\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":750,"y":2000,"wires":[["b2540918a3cdfe50"]]},{"id":"b2540918a3cdfe50","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Melding in logboek","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik computer kamer\",\"message\":\"Rolluik computer kamer geopend vanwege geen zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1050,"y":2000,"wires":[[]]},{"id":"6efdbfcd55c19525","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Computer kamer enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_computer_kamer","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":240,"y":2000,"wires":[["46825af78df07d67"],[]]},{"id":"5d66255c236e5bf6","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Hal 1e etage rolluik openen","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"open_cover","entityId":"cover.hal_1e_etage","data":"{\"entity_id\":\"cover.hal_1e_etage\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":740,"y":2060,"wires":[["f8b2315f52a60752"]]},{"id":"f8b2315f52a60752","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Melding in logboek","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik hal 1e etage\",\"message\":\"Rolluik hal 1e etage geopend vanwege geen zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1050,"y":2060,"wires":[[]]},{"id":"9c45f1974f54d0a7","type":"api-current-state","z":"8bc354d2.3f8c88","name":"Hal 1e etage enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_hal_1e_etage","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":220,"y":2060,"wires":[["73088e50c6c928ab"],[]]},{"id":"c47ed72edf608ef3","type":"api-call-service","z":"8bc354d2.3f8c88","name":"OPENEN rolluiken (zon is weg)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"notify","service":"mobile_app_iphone_van_martin","entityId":"","data":"{\"message\":\"De zon is verdwenen en daarom worden rolluiken west 1e etage geopend.\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":690,"y":1900,"wires":[[]]},{"id":"46825af78df07d67","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zet slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_04_computer_kamer_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":480,"y":2000,"wires":[["97a5f3c4f7709f8a"]]},{"id":"73088e50c6c928ab","type":"api-call-service","z":"8bc354d2.3f8c88","name":"Zet slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_05_hal_1e_etage_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":480,"y":2060,"wires":[["5d66255c236e5bf6"]]},{"id":"6f7dc7dcbdb31a3c","type":"time-range-switch","z":"8bc354d2.3f8c88","name":"","lat":"51.817801260963634","lon":"4.781895875930787","startTime":"08:00","endTime":"sunset","startOffset":0,"endOffset":0,"x":340,"y":460,"wires":[["44f2e363.95569c"],[]]},{"id":"5c796cc5da3bf133","type":"time-range-switch","z":"8bc354d2.3f8c88","name":"","lat":"51.817801260963634","lon":"4.781895875930787","startTime":"08:00","endTime":"sunset","startOffset":0,"endOffset":0,"x":360,"y":80,"wires":[["18a182e1.fcbd7d"],[]]},{"id":"63f26c18.71f4f4","type":"server","name":"Home Assistant","version":2,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30}]

It's fairly easy to create the resettable 25 minute delay (try the example flow below which has a 25 second resettable delay, and 2 inject nodes to simulate the lux 'states').

But it's a bit more difficult to include a countdown without resorting to javascript in a function node. In javascript, you could create a countdown function using setInterval, which could be resettable, and also emit msg's as the countdown progresses.

But let's see what other users suggest.

[{"id":"3215d4e76e416b0a","type":"trigger","z":"b3b413d1.05b1b","name":"","op1":"","op2":"GO","op1type":"nul","op2type":"str","duration":"25","extend":true,"overrideDelay":false,"units":"s","reset":"","bytopic":"all","topic":"topic","outputs":1,"x":465,"y":1340,"wires":[["cc1959f0c0d58e7f"]]},{"id":"cc1959f0c0d58e7f","type":"debug","z":"b3b413d1.05b1b","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":635,"y":1340,"wires":[]},{"id":"82dadaacd3fad661","type":"inject","z":"b3b413d1.05b1b","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"41000","payloadType":"num","x":115,"y":1330,"wires":[["1bc41baccb7ea332"]]},{"id":"50ebd5f27e9b02c3","type":"inject","z":"b3b413d1.05b1b","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"38230","payloadType":"num","x":115,"y":1375,"wires":[["1bc41baccb7ea332"]]},{"id":"1bc41baccb7ea332","type":"switch","z":"b3b413d1.05b1b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"gte","v":"40000","vt":"num"},{"t":"lt","v":"40000","vt":"num"}],"checkall":"true","repair":false,"outputs":2,"x":265,"y":1330,"wires":[["3215d4e76e416b0a"],["c7ab6e74b3b75395"]]},{"id":"c7ab6e74b3b75395","type":"change","z":"b3b413d1.05b1b","name":"Reset timer","rules":[{"t":"move","p":"payload","pt":"msg","to":"reset","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":300,"y":1375,"wires":[["3215d4e76e416b0a"]]}]

With a little help from @sammachin here is an example using a countdown function, in a function node.
To slow the countdown, I've put a comment in the function node (also change the text 'seconds' to 'minutes'.

count

[{"id":"82dadaacd3fad661","type":"inject","z":"b3b413d1.05b1b","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"41000","payloadType":"num","x":90,"y":1335,"wires":[["1bc41baccb7ea332"]]},{"id":"50ebd5f27e9b02c3","type":"inject","z":"b3b413d1.05b1b","name":"","props":[{"p":"payload"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"38230","payloadType":"num","x":90,"y":1375,"wires":[["1bc41baccb7ea332"]]},{"id":"1bc41baccb7ea332","type":"switch","z":"b3b413d1.05b1b","name":"","property":"payload","propertyType":"msg","rules":[{"t":"gte","v":"40000","vt":"num"},{"t":"lt","v":"40000","vt":"num"}],"checkall":"true","repair":false,"outputs":2,"x":215,"y":1355,"wires":[["1f851e9c38357199"],["c7ab6e74b3b75395"]]},{"id":"c7ab6e74b3b75395","type":"change","z":"b3b413d1.05b1b","name":"Reset","rules":[{"t":"set","p":"payload","pt":"msg","to":"reset","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":335,"y":1375,"wires":[["55c4eed448ba4463"]]},{"id":"530bd1a46f441617","type":"function","z":"b3b413d1.05b1b","name":"","func":"var desc = \"Closing blinds\"\nvar counter = 25\nvar msg1, msg2\nvar countdown = context.get('countdown')\n\nif (msg.payload == \"reset\") {\n    clearInterval(countdown)\n} else {\n    clearInterval(countdown)\n    countdown = setInterval(function () {\n        msg2 = { \"payload\": desc + \" in \" + counter + \" seconds\" }\n        node.send([[null], msg2])\n        counter--;\n        if (counter === -1) {\n            clearInterval(countdown)\n            msg1 = { \"payload\": \"Run\" }\n            msg2 = { \"payload\": \"Closed\" }\n            node.send([[msg1], msg2])\n        }\n// To slow the countdown to minutes change to\n// }, 60000)\n\n    }, 1000)\n    context.set('countdown', countdown)\n}","outputs":2,"noerr":0,"initialize":"","finalize":"","libs":[],"x":600,"y":1355,"wires":[["ab3bc47455914ff8"],["f57fa5b2121526b7"]]},{"id":"ab3bc47455914ff8","type":"debug","z":"b3b413d1.05b1b","name":"To blinds","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":740,"y":1330,"wires":[]},{"id":"f57fa5b2121526b7","type":"debug","z":"b3b413d1.05b1b","name":"To MQTT","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"payload","statusType":"auto","x":740,"y":1380,"wires":[]},{"id":"55c4eed448ba4463","type":"rbe","z":"b3b413d1.05b1b","name":"","func":"rbe","gap":"","start":"","inout":"out","septopics":false,"property":"payload","topi":"topic","x":470,"y":1355,"wires":[["530bd1a46f441617"]]},{"id":"1f851e9c38357199","type":"change","z":"b3b413d1.05b1b","name":"change","rules":[{"t":"set","p":"payload","pt":"msg","to":"on","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":345,"y":1335,"wires":[["55c4eed448ba4463"]]}]

EDIT 8/12 - flow edited to stop countdown needlessly resetting.

The trigger node does exactly this.

@bakman2 - I suggested the trigger node in a post above, but what about...

Hi Paul,

Interesting piece of code. I don't have much experience with javascript so far. But I have also tried something.

For my case there will be some node that is sending every second an update about the lux value.

This is what I have created:

[{"id":"000d7dea9e0ec066","type":"tab","label":"Test zon rolluik","disabled":false,"info":"","env":[]},{"id":"bd5084c821d76f4e","type":"poll-state","z":"000d7dea9e0ec066","name":"Zijraam lux","server":"63f26c18.71f4f4","version":2,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"updateinterval":"1","updateIntervalType":"num","updateIntervalUnits":"seconds","outputinitially":false,"outputonchanged":false,"entity_id":"sensor.zijraam_woonkamer_lux","state_type":"num","halt_if":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"x":100,"y":100,"wires":[["6d14446bf2dd78dc"]]},{"id":"b367c40a964f79d2","type":"function","z":"000d7dea9e0ec066","name":"Cover up/down logic","func":"// Outputs\n// [\n//      information, \n//      signal to open covers, \n//      signal to close covers\n// ]\n\n\nvar luxTriggerValue = 40000;\nvar secondsAboveLuxToCloseCovers = 5 * 60;\nvar secondsBelowLuxToOpenCovers =  25 * 60;\n\n\nvar msgInfo = msg;\nvar msgOpenCovers, msgCloseCovers = null;\n\nmsgInfo.scheduled_open_cover_execution_time = null;\nmsgInfo.last_executed_open_cover_time = null;\nmsgInfo.scheduled_close_cover_execution_time = null;\nmsgInfo.last_executed_close_cover_time = null;\n\nvar lux = msg.payload;\nif (lux >= luxTriggerValue)\n{\n    // The lux value is above our trigger value\n    // Now check if the covers should be closed...\n\n    // reset the open covers helpers flags\n    flow.set(\"flow_trigger_start_time_open_cover\", null)\n    flow.set(\"flow_is_open_cover_executed\", false)\n\n    var triggerStartTimeCloseCover = flow.get(\"flow_trigger_start_time_close_cover\");\n    var isCloseCoverExecuted = flow.get(\"flow_is_close_cover_executed\");\n    var lastExecutedCloseCoverTime = flow.get(\"flow_last_executed_close_cover_time\")\n\n    if (triggerStartTimeCloseCover == null)\n    {\n        // We have the first trigger of starting our delay before the covers are closed\n        triggerStartTimeCloseCover = new Date(Date.now());\n        flow.set(\"flow_trigger_start_time_close_cover\", triggerStartTimeCloseCover)\n    }\n    \n    msgInfo.trigger_start_time_close_cover = triggerStartTimeCloseCover;\n    msgInfo.last_executed_close_cover_time = lastExecutedCloseCoverTime;\n            \n    var durationAboveTrigger = (new Date(Date.now()).getTime() - new Date(triggerStartTimeCloseCover).getTime());\n    var durationAboveTriggerSeconds = Math.abs(durationAboveTrigger / 1000);\n    \n    if (isCloseCoverExecuted == false)\n    {\n        if (durationAboveTriggerSeconds >= secondsAboveLuxToCloseCovers)\n        {\n            // We need to close the covers\n            isCloseCoverExecuted = true;\n            flow.set(\"flow_is_close_cover_executed\", isCloseCoverExecuted)\n            msgCloseCovers = { \"payload\": \"closing\" }\n            \n            // reset the scheduled cover closing time\n            msgInfo.scheduled_close_cover_execution_time = null;\n            \n            // Save the last cover closed time\n            lastExecutedCloseCoverTime = new Date(Date.now());\n            flow.set(\"flow_last_executed_close_cover_time\", lastExecutedCloseCoverTime)\n            msgInfo.last_executed_close_cover_time = lastExecutedCloseCoverTime;\n        }\n        else        \n        {\n            msgInfo.scheduled_close_cover_execution_time = new Date(new Date(triggerStartTimeCloseCover).getTime() + secondsAboveLuxToCloseCovers * 1000);\n        }\n    }\n}\nelse\n{\n    // The lux value is below our trigger value\n    // Now check if the covers should be openend or that we have to wait some time...\n    \n    // reset the close covers helpers flags\n    flow.set(\"flow_trigger_start_time_close_cover\", null)\n    flow.set(\"flow_is_close_cover_executed\", false)\n\n    var triggerStartTimeOpenCover = flow.get(\"flow_trigger_start_time_open_cover\");\n    var isOpenCoverExecuted = flow.get(\"flow_is_open_cover_executed\");\n    var lastExecutedOpenCoverTime = flow.get(\"flow_last_executed_open_cover_time\")\n\n    if (triggerStartTimeOpenCover == null)\n    {\n        // We have the first trigger of starting our delay before the covers are opened\n        triggerStartTimeOpenCover = new Date(Date.now());\n        flow.set(\"flow_trigger_start_time_open_cover\", triggerStartTimeOpenCover)\n    }\n    \n    msgInfo.trigger_start_time_open_cover = triggerStartTimeOpenCover;\n    msgInfo.last_executed_open_cover_time = lastExecutedOpenCoverTime;\n            \n    var durationBelowTrigger = (new Date(Date.now()).getTime() - new Date(triggerStartTimeOpenCover).getTime());\n    var durationBelowTriggerSeconds = Math.abs(durationBelowTrigger / 1000);\n    \n    if (isOpenCoverExecuted == false)\n    {\n        if (durationBelowTriggerSeconds >= secondsBelowLuxToOpenCovers)\n        {\n            // We need to open the covers\n            isOpenCoverExecuted = true;\n            flow.set(\"flow_is_open_cover_executed\", isOpenCoverExecuted)\n            msgOpenCovers = { \"payload\": \"opening\" }\n            \n            // reset the scheduled cover opening time\n            msgInfo.scheduled_open_cover_execution_time = null;\n            \n            // Save the last cover openend time\n            lastExecutedOpenCoverTime = new Date(Date.now());\n            flow.set(\"flow_last_executed_open_cover_time\", lastExecutedOpenCoverTime)\n            msgInfo.last_executed_open_cover_time = lastExecutedOpenCoverTime;\n        }\n        else        \n        {\n            msgInfo.scheduled_open_cover_execution_time = new Date(new Date(triggerStartTimeOpenCover).getTime() + secondsBelowLuxToOpenCovers * 1000);\n        }\n    }\n}\n\nreturn [msgInfo, msgOpenCovers, msgCloseCovers];","outputs":3,"noerr":0,"initialize":"// Code added here will be run once\n// whenever the node is started.\nflow.set(\"flow_trigger_start_time_open_cover\", null)\nflow.set(\"flow_is_open_cover_executed\", false)\n\nflow.set(\"flow_trigger_start_time_close_cover\", null)\nflow.set(\"flow_is_close_cover_executed\", false)","finalize":"","libs":[],"x":840,"y":100,"wires":[["19ffff57eb0a0f5f"],["8737f731f99468cb"],["09beaa5946482cb8"]],"outputLabels":["Information","Open","Close"]},{"id":"6a078ffc57e5d889","type":"mqtt out","z":"000d7dea9e0ec066","name":"Publish MQTT Message","topic":"Huis\\Covers\\AutomaticSunProtection","qos":"","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"df1a845b.2c4808","x":1270,"y":40,"wires":[]},{"id":"19ffff57eb0a0f5f","type":"function","z":"000d7dea9e0ec066","name":"Create mqtt message","func":"msg.payload = {\n    \"scheduled_open_cover_execution_time\": msg.scheduled_open_cover_execution_time,\n    \"last_executed_open_cover_time\": msg.last_executed_open_cover_time,\n    \"scheduled_close_cover_execution_time\": msg.scheduled_close_cover_execution_time,\n    \"last_executed_close_cover_time\": msg.last_executed_close_cover_time\n    }\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":1020,"y":40,"wires":[["6a078ffc57e5d889"]]},{"id":"09beaa5946482cb8","type":"api-current-state","z":"000d7dea9e0ec066","name":"Automations enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.automatiseringen_enabled","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":200,"y":480,"wires":[["84ccca9b4b4f2abd"],[]]},{"id":"a9b3a8edb457d7d5","type":"api-call-service","z":"000d7dea9e0ec066","name":"Close cover (zijraam)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"close_cover","entityId":"cover.zijraam","data":"{\"entity_id\":\"cover.zijraam\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":720,"y":560,"wires":[["adbde6bf6744b82c"]]},{"id":"adbde6bf6744b82c","type":"api-call-service","z":"000d7dea9e0ec066","name":"Add message to logbook","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik zijraam\",\"message\":\"Rolluik zijraam gesloten vanwege felle zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":970,"y":560,"wires":[[]]},{"id":"6f4dbc7413ccb5e6","type":"api-call-service","z":"000d7dea9e0ec066","name":"Notification close cover (zijraam)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"notify","service":"mobile_app_iphone_van_martin","entityId":"","data":"{\"message\":\"De zon schijnt vel en daarom wordt het rolluik van het zijraam gesloten.\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1170,"y":480,"wires":[[]]},{"id":"b44f81b0c357e689","type":"api-call-service","z":"000d7dea9e0ec066","name":"Apply slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_06_zijraam_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":490,"y":560,"wires":[["a9b3a8edb457d7d5"]]},{"id":"84ccca9b4b4f2abd","type":"api-current-state","z":"000d7dea9e0ec066","name":"Automation sun protection enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluiken","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":510,"y":480,"wires":[["1a4c19dcc75f1506"],[]]},{"id":"1a4c19dcc75f1506","type":"api-current-state","z":"000d7dea9e0ec066","name":"Automation enabled (zijraam)?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_zijraam","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":810,"y":480,"wires":[["b44f81b0c357e689","6f4dbc7413ccb5e6"],[]]},{"id":"f4bbf82d3c866da2","type":"time-range-switch","z":"000d7dea9e0ec066","name":"","lat":"51.81828","lon":"4.78229","startTime":"08:00","endTime":"21:00","startOffset":0,"endOffset":0,"x":550,"y":100,"wires":[["b367c40a964f79d2"],[]]},{"id":"8737f731f99468cb","type":"api-current-state","z":"000d7dea9e0ec066","name":"Automations enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.automatiseringen_enabled","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":220,"y":240,"wires":[["6d98ed4927f63b3b"],[]]},{"id":"94ae8d6855e8c4dc","type":"api-call-service","z":"000d7dea9e0ec066","name":"Open cover (zijraam)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"cover","service":"open_cover","entityId":"cover.zijraam","data":"{\"entity_id\":\"cover.zijraam\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":960,"y":320,"wires":[["c181823cd8c2a87f"]]},{"id":"c181823cd8c2a87f","type":"api-call-service","z":"000d7dea9e0ec066","name":"Add message to logbook","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"logbook","service":"log","entityId":"sensor.automation_covers_log_entity","data":"{\"name\":\"Rolluik zijraam\",\"message\":\"Rolluik zijraam geopend vanwege geen zon.\",\"domain\":\"cover\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1210,"y":320,"wires":[[]]},{"id":"087ce740c029b8aa","type":"api-current-state","z":"000d7dea9e0ec066","name":"Automation enabled (zijraam)?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluik_zijraam","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":870,"y":240,"wires":[["b45a3ec59c912383","7dcbbba85877b8ee"],[]]},{"id":"7dcbbba85877b8ee","type":"api-call-service","z":"000d7dea9e0ec066","name":"OPENEN rolluiken (zon is weg)","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"notify","service":"mobile_app_iphone_van_martin","entityId":"","data":"{\"message\":\"De zon is verdwenen en daarom wordt het rolluik van het zijraam geopend.\"}","dataType":"json","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1190,"y":240,"wires":[[]]},{"id":"b45a3ec59c912383","type":"api-call-service","z":"000d7dea9e0ec066","name":"Apply slow speed","server":"63f26c18.71f4f4","version":3,"debugenabled":false,"service_domain":"switch","service":"turn_on","entityId":"switch.do_not_use_06_zijraam_low_speed","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":710,"y":320,"wires":[["94ae8d6855e8c4dc"]]},{"id":"6d14446bf2dd78dc","type":"time-range-switch","z":"000d7dea9e0ec066","name":"","lat":"51.817801260963634","lon":"4.781895875930787","startTime":"08:00","endTime":"sunset","startOffset":0,"endOffset":0,"x":300,"y":100,"wires":[["f4bbf82d3c866da2"],[]]},{"id":"6d98ed4927f63b3b","type":"api-current-state","z":"000d7dea9e0ec066","name":"Automation sun protection enabled?","server":"63f26c18.71f4f4","version":2,"outputs":2,"halt_if":"true","halt_if_type":"bool","halt_if_compare":"is","entity_id":"input_boolean.zon_bescherming_rolluiken","state_type":"habool","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"x":530,"y":240,"wires":[["087ce740c029b8aa"],[]]},{"id":"63f26c18.71f4f4","type":"server","name":"Home Assistant","version":2,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30},{"id":"df1a845b.2c4808","type":"mqtt-broker","name":"","broker":"192.168.1.110","port":"1883","clientid":"","usetls":false,"compatmode":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"Dit is de test meldddding","birthMsg":{},"closeTopic":"","closeQos":"0","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"sessionExpiry":""}]

It is maybe to complex, probably it could be simpler. Also some nodes that checks if the process is allowed to run between some times and if some automations are enabled, should also be moved in the function node.

Unfortunately not many forum users use HA (including me), so we would not be able to understand your screenshot, or load your flow without installing & setting up HA (which we don't like doing!)

However I think that you have almost solved the problem yourself :+1:

1 Like