RabbitMQ
Publish messages to RabbitMQ queues and exchanges in Axellero workflows.
RabbitMQ Node
Publish messages to RabbitMQ queues and exchanges in Axellero workflows. Currently supports message publishing with AMQP authentication.
Available Operations
- Publish: Send messages to RabbitMQ exchanges and queues
Current Capabilities
This implementation supports message publishing only. Message consumption and queue management operations are not supported.
Connection Configuration
| Parameter | Type | Required | Description |
|---|---|---|---|
host | TEXT | Yes | RabbitMQ server hostname |
port | INT | No | RabbitMQ server port (default: 5672) |
username | TEXT | Yes | AMQP username for authentication |
password | TEXT | Yes | AMQP password for authentication |
vhost | TEXT | No | Virtual host (default: /) |
{
"host": "rabbitmq.example.com",
"port": 5672,
"username": "{{ctx.consts.RABBITMQ_USERNAME}}",
"password": "{{ctx.consts.RABBITMQ_PASSWORD}}",
"vhost": "production"
}Message Publishing
| Parameter | Type | Required | Description |
|---|---|---|---|
exchange | TEXT | Yes | Exchange name |
routingKey | TEXT | No | Routing key for message routing |
queue | TEXT | No | Direct queue name (alternative to exchange) |
payload | TEXT | Yes | Message content |
Exchange Publishing
{
"exchange": "events",
"routingKey": "user.signup",
"payload": "{{ctx.nodes.eventFormatter.outputs.userEvent}}"
}Direct Queue Publishing
{
"queue": "notifications",
"payload": "{\"type\": \"email\", \"recipient\": \"{{ctx.user.email}}\", \"message\": \"{{ctx.vars.notificationText}}\"}"
}Topic Exchange with Routing
{
"exchange": "user-events",
"routingKey": "{{ctx.user.attrs.orgId}}.{{ctx.vars.eventType}}",
"payload": "{{ctx.nodes.activityLogger.outputs.activityData}}"
}Workflow Integration
Use workflow context to construct exchange names and message content:
{
"exchange": "{{ctx.workspace_slug}}-events",
"routingKey": "{{ctx.vars.department}}.{{ctx.vars.eventType}}",
"payload": "{{ctx.nodes.messageFormatter.outputs.formattedMessage}}"
}Response Format
Success Response
{
"success": true,
"exchange": "events",
"routingKey": "user.signup",
"messageId": "msg_12345"
}Error Response
{
"success": false,
"error": "Failed to publish message to exchange"
}Use Cases
- Event Publishing: Publish workflow events for downstream processing
- Notification Distribution: Send notification messages to processing queues
- Data Broadcasting: Distribute processed data to multiple consumers
- Task Distribution: Send work items to processing queues