amqp v1.1.1 AMQP.Queue View Source

Functions to operate on Queues.

Link to this section Summary

Functions

Binds a Queue to an Exchange

Returns a number of active consumers on the queue

Declares a queue. The optional queue parameter is used to set the name. If set to an empty string (default), the server will assign a name

Deletes a Queue by name

Returns true if queue is empty (has no messages ready), false otherwise

Returns the number of messages that are ready for delivery (e.g. not pending acknowledgements) in the queue

Discards all messages in the Queue

Returns the message count and consumer count for the given queue. Uses Queue.declare with the passive option set

Convenience to consume messages from a Queue

Unbinds a Queue from an Exchange

Convenience to end a Queue consumer

Link to this section Functions

Link to this function bind(channel, queue, exchange, options \\ []) View Source

Binds a Queue to an Exchange

Link to this function consumer_count(channel, queue) View Source
consumer_count(AMQP.Channel.t(), AMQP.Basic.queue()) :: integer() | no_return()

Returns a number of active consumers on the queue.

Link to this function declare(channel, queue \\ "", options \\ []) View Source
declare(AMQP.Channel.t(), AMQP.Basic.queue(), keyword()) ::
  {:ok, map()} | AMQP.Basic.error()

Declares a queue. The optional queue parameter is used to set the name. If set to an empty string (default), the server will assign a name.

Besides the queue name, the following options can be used:

Options

  • :durable - If set, keeps the Queue between restarts of the broker
  • :auto_delete - If set, deletes the Queue once all subscribers disconnect
  • :exclusive - If set, only one subscriber can consume from the Queue
  • :passive - If set, raises an error unless the queue already exists
Link to this function delete(channel, queue, options \\ []) View Source
delete(AMQP.Channel.t(), AMQP.Basic.queue(), keyword()) ::
  {:ok, map()} | AMQP.Basic.error()

Deletes a Queue by name

Returns true if queue is empty (has no messages ready), false otherwise.

Link to this function message_count(channel, queue) View Source
message_count(AMQP.Channel.t(), AMQP.Basic.queue()) :: integer() | no_return()

Returns the number of messages that are ready for delivery (e.g. not pending acknowledgements) in the queue.

Discards all messages in the Queue

Returns the message count and consumer count for the given queue. Uses Queue.declare with the passive option set.

Link to this function subscribe(channel, queue, fun) View Source
subscribe(AMQP.Channel.t(), AMQP.Basic.queue(), (String.t(), map() -> any())) ::
  {:ok, String.t()} | AMQP.Basic.error()

Convenience to consume messages from a Queue.

The handler function must have arity 2 and will receive as arguments a binary with the message payload and a Map with the message properties.

The consumed message will be acknowledged after executing the handler function. If an exception is raised by the handler function, the message is rejected.

This convenience function will spawn a process and register it using AMQP.Basic.consume.

Link to this function unbind(channel, queue, exchange, options \\ []) View Source

Unbinds a Queue from an Exchange

Link to this function unsubscribe(channel, consumer_tag) View Source

Convenience to end a Queue consumer.