Well, I managed to solve the problem myself.
Build a flow with delay and other nodes that do what I want very well.
see:
[{"id":"ad4787ae.9af8d8","type":"debug","z":"cfbb6e4f.6526a","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","x":4270,"y":1380,"wires":[]},{"id":"c8c089a5.a1c128","type":"inject","z":"cfbb6e4f.6526a","name":"","topic":"reset","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":3460,"y":1380,"wires":[["a5b93380.d665c"]]},{"id":"a5b93380.d665c","type":"change","z":"cfbb6e4f.6526a","name":"","rules":[{"t":"set","p":"reset","pt":"msg","to":"true","tot":"bool"},{"t":"delete","p":"payload","pt":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":3660,"y":1380,"wires":[["caf34cff.30d29","fb908b7b.8419d8"]]},{"id":"9245f33b.b547f","type":"inject","z":"cfbb6e4f.6526a","name":"","topic":"","payload":"Hello","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":3890,"y":1380,"wires":[["5eb8db40.6613c4"]]},{"id":"eb362fe1.f702b","type":"function","z":"cfbb6e4f.6526a","name":"","func":"msg.topic = \"control\";\nmsg.payload = \"open\"\nreturn msg;","outputs":1,"noerr":0,"x":4190,"y":1480,"wires":[["fb908b7b.8419d8"]]},{"id":"5eb8db40.6613c4","type":"gate","z":"cfbb6e4f.6526a","name":"","controlTopic":"control","defaultState":"open","openCmd":"open","closeCmd":"close","toggleCmd":"toggle","defaultCmd":"default","persist":false,"x":4090,"y":1380,"wires":[["fe69cd2a.5f1d8","ad4787ae.9af8d8","eb362fe1.f702b"]]},{"id":"caf34cff.30d29","type":"function","z":"cfbb6e4f.6526a","name":"","func":"msg.topic = \"control\";\nmsg.payload = \"open\"\nreturn msg;","outputs":1,"noerr":0,"x":3850,"y":1300,"wires":[["5eb8db40.6613c4"]]},{"id":"fe69cd2a.5f1d8","type":"function","z":"cfbb6e4f.6526a","name":"","func":"msg.topic = \"control\"\nmsg.payload = \"close\"\nreturn msg;","outputs":1,"noerr":0,"x":4090,"y":1300,"wires":[["5eb8db40.6613c4"]]},{"id":"fb908b7b.8419d8","type":"delay","z":"cfbb6e4f.6526a","name":"","pauseType":"delay","timeout":"10","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":3860,"y":1480,"wires":[["5eb8db40.6613c4"]]}]
Well, I realized that my goals are as follows:
- Allow the first message to go smoothly.
- After the first pass, block the passage of any message at the specified time, excluding any sent during that period.
- As soon as time is up, let the first message pass. See, without storage, how the rate limit mode allows.
- Press the reset when desired, allowing an immediate message to pass after the reset.
In fact the rate limit problem is when the option to delete intermediate messages is enabled, it is not possible to restart the count.
Well, I don't know what the problem was, but the flow is already doing what I want.