Search code examples
node-red

throttle messages within an array


I have a function that outputs a nested array of messages. ie return [[message]]. This is so that all messages are sent on Output 1, which is a requirement since I have no control over the number of messages.

The problem I have is that the mqtt device I'm controlling (Tasmota) can't handle the flood of messages so I need to throttle them within node red. I tried the delay node, but that only throttled the array once, rather than throttling each message element within the array.


Solution

  • As thrashed out in the comments. The delay node has several modes, for this particular problem you need the "Limit rate to" mode.