RabbitMQ

trigger_rabbitmq · trigger · Triggers · Available · v1.0.0

Description

Run the workflow whenever a message arrives on a RabbitMQ queue. The runtime opens a persistent AMQP 0-9-1 consumer and stays listening — ideal for work-queue architectures where a producer drops jobs (orders, emails to send, processing tasks) and the workflow processes them one by one. Reliable at-least-once delivery by default: the message is ACKed only after the run starts successfully, otherwise it is requeued (NACK) and redelivered — no work lost on a crash. Prefetch controls backpressure; automatic reconnection with exponential backoff on broker/network failure.

⚙️ Configuration parameters

Fields shown in the editor when configuring the node. Generated directly from the NodeDefconfigFields.

FieldTypeRequiredDefaultDescription
url
URL del broker (AMQP)
stringyes
amqps://user:[email protected]:5671/vhost
URI di connessione AMQP. amqps:// = TLS (raccomandato in produzione), amqp:// = in chiaro (solo reti fidate). Include credenziali e vhost. Il consumer resta connesso finché il workflow è abilitato.
queue
Coda (queue)
stringyes
orders.incoming
Nome della coda da consumare. Se non esiste viene dichiarata (assertQueue). La durabilità è controllata dall'opzione qui sotto.
durable
Coda durevole
booleannotrueOn (default): la coda sopravvive al restart del broker. Deve combaciare con come la coda è stata dichiarata dal producer, altrimenti il broker rifiuta la connessione con un errore di parametri incompatibili.
ackMode
Modalità di conferma
enum
manualauto
nomanualmanual (default, consigliata): il messaggio è confermato SOLO se il run parte con successo; su errore torna in coda e viene riconsegnato. Automatica: il broker lo considera consegnato subito — un run fallito lo perde.
prefetch
Prefetch (backpressure)
numberno10Quanti messaggi non ancora confermati il broker può inviare in parallelo. È il regolatore di carico principale: valori bassi = più prudente, alti = più throughput ma più run concorrenti. Solo in modalità Manuale.
jsonParse
Parsa i messaggi come JSON
booleannotrueOn (default): il payload viene parsato come JSON in "data" (fallback alla stringa grezza se non è JSON valido). Off: "data" resta la stringa. "raw" contiene sempre il testo originale del messaggio.
messagePointer
JSON Pointer di filtro/estrazione
stringno
/type oppure /event/name
RFC 6901 JSON Pointer. Se valorizzato, il run parte SOLO se il puntatore risolve a un valore non-undefined (esposto come "matched"). I messaggi senza match vengono comunque confermati al broker (scartati per scelta, non riconsegnati). Vuoto = ogni messaggio fa partire un run.
maxMessagesPerSec
Budget anti-flood (messaggi/sec)
numberno0Tetto di run avviati al secondo. I messaggi oltre il budget vengono rimessi in coda (requeue) per non saturare il runtime. 0 = nessun limite (il prefetch fa già da backpressure — di norma basta quello).
reconnect
Riconnessione automatica
booleannotrueOn (default): su caduta del broker/rete riconnette con backoff esponenziale (1s→2s→…→30s). Off: alla prima disconnessione il consumer si ferma finché non riabiliti/salvi il workflow.

💡 Configuration example

JSON snippet of the node as it appears in the workflow. Values are derived fromdefaultValue and from required parameters.

{
  "id": "node-trigger_rabbitmq-1",
  "defId": "trigger_rabbitmq",
  "label": "RabbitMQ",
  "config": {
    "url": "amqps://user:[email protected]:5671/vhost",
    "queue": "orders.incoming",
    "durable": true,
    "ackMode": "manual",
    "prefetch": 10,
    "jsonParse": true,
    "maxMessagesPerSec": 0,
    "reconnect": true
  }
}

🔗 Related nodes in the same category

Ready to use RabbitMQ?

Available now on all FlowForge plans. Try it free without a credit card.

Start freeBrowse all nodes