mirror of
https://github.com/mailscope/kumomta.git
synced 2026-09-10 20:42:14 +00:00
1.6 KiB
1.6 KiB
kumo.amqp.build_client(URI)
Constructs an AMQP client object.
URI is the URI that references the AMQP server to which you want to connect.
local client = kumo.amqp.build_client 'amqp://localhost'
local confirm = client:publish {
routing_key = 'hello',
payload = 'w00t!',
}
local result = confirm:wait()
assert(result.status == 'NotRequested')
Client Methods
The returned client object has the following methods:
client:publish({PARAMS})
Publishes a message. PARAMS is an object style table with the
following keys:
routing_key- required string; the name of the queue to which to send the messagepayload- required string; the message to sendexchange- optional string; the exchange through which to send the message. If unspecified, the empty string is used, which corresponds to a default exchange.
Returns a confirmation object that can be used to await the final disposition
of the send. That confirmation object has a single wait method which returns
a confirmation object with the following fields:
status- one of"NotRequested","Ack", or"Nack"depending on the disposition of the message delivery attempt.reply_code- may be nil, but is otherwise a status code from the ack returned from the queue machinery.reply_text- may be nil, but is otherwise status text from the ack returned from the queue machinery.
local client = kumo.amqp.build_client 'amqp://localhost'
local confirm = client:publish {
routing_key = 'hello',
payload = 'w00t!',
}
local result = confirm:wait()
assert(result.status == 'NotRequested')