Actions3
- Queue Actions
- Topic Actions
Overview
This node enables receiving messages from an Azure Service Bus queue using the official Azure SDK protocol. It is designed to fetch multiple messages in a single execution, supporting configurable options such as maximum message count, wait time, and receive mode.
Common scenarios where this node is beneficial include:
- Processing incoming messages from a queue for asynchronous workflows.
- Integrating Azure Service Bus messaging into automation pipelines.
- Building event-driven architectures that react to queued messages.
For example, you can use this node to poll a queue named "orders" to retrieve up to 10 new order messages, waiting up to 60 seconds if no messages are immediately available, and process them within your workflow.
Properties
| Name | Meaning |
|---|---|
| Protocol | Protocol to use for Azure Service Bus connection: - Azure SDK (Recommended) - HTTP REST API (firewall-friendly) |
| Queue Name | The name of the Azure Service Bus queue from which to receive messages. |
| Max Message Count | Maximum number of messages to receive in one execution (e.g., 10). |
| Max Wait Time (seconds) | Maximum time in seconds to wait for messages before returning (e.g., 60). |
| Receive Mode | How messages are received: - Peek Lock: Messages are locked and must be explicitly completed or abandoned. - Receive and Delete: Messages are automatically deleted after receiving. |
Output
The output is an array of JSON objects, each representing a received message with the following structure:
{
"messageId": "string", // Unique identifier of the message
"body": "any", // The content/body of the message
"contentType": "string", // Content type of the message (e.g., application/json)
"enqueuedTimeUtc": "string", // Timestamp when the message was enqueued (UTC)
"applicationProperties": { // Custom properties attached to the message
"key1": "value1",
"key2": "value2"
},
"deliveryCount": "number", // Number of times the message has been delivered
"sequenceNumber": "string" // Sequence number of the message as a string
}
No binary data output is produced by this operation.
Dependencies
- Requires an Azure Service Bus connection string credential with appropriate permissions.
- Uses the official
@azure/service-busSDK for communication. - WebSocket support is attempted for transport; falls back to default transport if unavailable.
- The HTTP REST API protocol is not supported for receiving messages; only the SDK protocol supports it.
Troubleshooting
- Missing or invalid connection string: The node requires a valid Azure Service Bus connection string. If missing or containing placeholder values, the node will throw an error. Ensure the connection string is correctly entered without blank placeholders.
- Protocol mismatch: Receiving messages is only supported when using the Azure SDK protocol. Selecting the HTTP REST API protocol for receiving messages will cause an error.
- Empty queue or timeout: If no messages are available within the specified max wait time, the node returns an empty array.
- Message body empty on send: Although not applicable here, sending messages requires a non-empty body; receiving does not have this restriction.
- WebSocket errors: If WebSocket transport fails, the node falls back to default transport but logs warnings. This usually does not affect functionality.