amqp v1.2.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.