Registry / messaging / node-red-contrib-multiple-queue

node-red-contrib-multiple-queue

JSON →
library0.2.1jsnpmunverified

A Node-RED node providing multiple, independently controlled message queues, each with pause/resume, flush, peek, drop, and other controls. Version 0.2.1 is stable. Designed as a more flexible alternative to single-queue nodes like node-red-contrib-queue-gate, it allows per-queue selection via msg.topic (or any property), dynamic queue creation/destruction, memory limiting, and support for 'keep newest' mode. Customizable control flags and command payloads make it adaptable to complex flow-control scenarios.

npm install node-red-contrib-multiple-queue
INSTALL
IMPORT
SIG · NODE-RED-CONTRIB-M
N
node-red-contrib-multiple-queue
messagingjavascriptv0.2.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

m-queue node
Install via npm in Node-RED user directory, then use node type 'm-queue' in editor
Trying to import as a JavaScript module
This is a Node-RED node, used via the editor palette—no JavaScript require/import.

Demonstrates installation and basic usage of m-queue node in Node-RED, including queueing and control messages.

// In Node-RED, install the node via Manage Palette or: // > cd ~/.node-red && npm install node-red-contrib-multiple-queue // Then use the 'm-queue' node in a flow. // Basic setup: send a message with msg.topic to select queue, e.g. // msg = { topic: 'myQueue', payload: 'some data' } // To control: set msg.controlFlag (default true) and payload to e.g. 'trigger', 'pause', 'flush'
Debug
Known issues
gotchaQueue Selector default is msg.topic; ensure msg.topic is set or messages go to the Default Queue.
fix
Explicitly set the Queue Selector property to a non-empty string or configure a different property in the node settings.
affects: >=0.0.0
gotchaControl Flag defaults to true; be careful not to set msg.controlFlag accidentally on normal messages, as they will be treated as commands.
fix
Use a dedicated boolean property for controlFlag (e.g., .control = true) that is not present on regular messages, or change the control flag property name in the node settings.
affects: >=0.0.0
gotchaPayloads are compared case-insensitively, so 'PAUSE', 'Pause', and 'pause' all work, but unexpected numbers/booleans are converted to strings (e.g., true becomes 'true') — make sure your commands match accordingly.
fix
Always send command payload as a string in the expected case-insensitive form.
affects: >=0.0.0
gotchaWhen a queue is full (default limited), incoming messages are discarded unless 'Keep newest messages' is enabled—this can lead to silent data loss if not configured properly.
fix
Set a reasonable queue limit or enable 'Keep newest messages' to avoid discarding old messages. Monitor queue status via the 'status' control message.
affects: >=0.0.0
gotchaPaused queues ignore many commands, including 'trigger', 'pause', 'resume', 'flush', etc. Only 'peek', 'status', 'delete', and 'reset' work during pause. This can lead to confusion if a queue appears unresponsive.
fix
Before sending a command, check queue status via control message or note that only certain commands work while paused. Resume the queue before sending other commands.
affects: >=0.0.0
Errors
Common errors & fixes
TypeError: Cannot read properties of undefined (reading 'topic')
Queue Selector property (default msg.topic) is missing or undefined on incoming message.
fix
Ensure every message has the Queue Selector property set, or change the node configuration to use a different property that is always defined.
The payload was not matched to any command: undefined
Control flag is set but payload is undefined or empty string, or the command string does not match any defined command (case-insensitive).
fix
Send a valid command string as payload (e.g., 'trigger', 'pause', 'flush') and ensure it matches one of the defined commands. Check spelling and case.
Queue 'myQueue' not found — dropping message
A message addressed to a queue that does not exist and the queue creation is disabled or the queue was deleted.
fix
Ensure the queue name in the Queue Selector property matches the name of an active queue. Queues are created automatically when first message arrives, but can be deleted via 'delete' command.
Warning: Queue limit reached, discarding message
Queue has reached its maximum size limit (default configurable) and 'Keep newest messages' is disabled, so oldest messages are kept and new ones discarded.
fix
Increase the queue limit, enable 'Keep newest messages' to keep newest instead of oldest, or add control to flush/trigger the queue before it fills up.
Upgrade
Version history
0.2.1latest on npm
Audit
Dependencies
node-redrequiredrequires Node-RED runtime to function
Agent activity
5 hits · last 30 days
node
4
OpenAI (training)
1
Resources
node-red-contrib-multiple-queue — npm install node-red-contrib-multiple-queue · libregistry