RabbitMQ (AMQP)
Schemes: amqp://, amqps://, rabbitmq://, rabbitmqs://
Query parameters recognised as config fields for this connector. The object-typed tls is set with a JSON literal, e.g. ?tls={...}. Any other ?key=value pair is passed through unchanged as a driver option on the connection URL.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
delayed_ack | boolean | no | false | (Publisher only) If true, do not wait for an acknowledgement when sending to broker. Defaults to false. |
exchange | string | no | — | The exchange to publish to or bind the queue to. |
no_declare_queue | boolean | no | false | (Publisher only) If true, do not attempt to declare the queue. Assumes the queue already exists. Defaults to false. |
no_persistence | boolean | no | false | If true, declare queues as non-durable (transient). Defaults to false. Affects both Consumer (queue durability) and Publisher (message persistence). |
password | string | no | — | Optional password for authentication. |
prefetch_count | integer | no | — | (Consumer only) Number of messages to prefetch. Defaults to 100. |
queue | string | no | — | The AMQP queue name. |
subscribe_mode | boolean | no | false | (Consumer only) If true, act as a Subscriber (fan-out). Defaults to false. |
tls | object | no | see below | TLS configuration. |
url | string | yes | — | AMQP connection URI. The lapin client connects to a single host specified in the URI. If it contains userinfo, it will be treated as a secret. For high availability, provide the address of a load balancer or use DNS resolution that points to multiple brokers. Example: “amqp://localhost:5672/vhost”. |
username | string | no | — | Optional username for authentication. |
Struct-typed fields
tls
TLS configuration for secure connections.
Configures Transport Layer Security (TLS/SSL) for encrypted communication. Supports both client certificate (mutual TLS) and server certificate validation.
Examples
use mq_bridge::models::TlsConfig;
let tls = TlsConfig {
required: true,
ca_file: Some("/path/to/ca.pem".to_string()),
cert_file: Some("/path/to/cert.pem".to_string()),
key_file: Some("/path/to/key.pem".to_string()),
..Default::default()
};
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
accept_invalid_certs | boolean | no | false | If true, disable server certificate verification (insecure). |
ca_file | string | no | — | Path to the CA certificate file. |
cert_file | string | no | — | Path to the client certificate file (PEM). |
cert_password | string | no | — | Password for the private key (if encrypted). |
key_file | string | no | — | Path to the client private key file (PEM). |
required | boolean | no | false | If true, enable TLS/SSL. |