diff options
Diffstat (limited to 'tools/doc/consume.xml')
-rw-r--r-- | tools/doc/consume.xml | 173 |
1 files changed, 173 insertions, 0 deletions
diff --git a/tools/doc/consume.xml b/tools/doc/consume.xml new file mode 100644 index 0000000..448ade6 --- /dev/null +++ b/tools/doc/consume.xml @@ -0,0 +1,173 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.docbook.org/xml/4.5/docbookx.dtd" +[ +<!ENTITY date SYSTEM "man-date.ent" > +] +> +<refentry lang="en"> + <refentryinfo> + <productname>RabbitMQ C Client</productname> + <authorgroup> + <corpauthor>The RabbitMQ Team <<ulink url="mailto:info@rabbitmq.com"><email>info@rabbitmq.com</email></ulink>></corpauthor> + </authorgroup> + <date>&date;</date> + </refentryinfo> + + <refmeta> + <refentrytitle>amqp-consume</refentrytitle> + <manvolnum>1</manvolnum> + <refmiscinfo class="manual">RabbitMQ C Client</refmiscinfo> + </refmeta> + + <refnamediv> + <refname>amqp-consume</refname> + <refpurpose>Consume messages from a queue on an AMQP server</refpurpose> + </refnamediv> + + <refsynopsisdiv> + <cmdsynopsis> + <command>amqp-consume</command> + <arg choice="opt" rep="repeat"> + <replaceable>OPTION</replaceable> + </arg> + <arg choice="req"> + <replaceable>command</replaceable> + </arg> + <arg choice="opt" rep="repeat"> + <replaceable>args</replaceable> + </arg> + </cmdsynopsis> + </refsynopsisdiv> + + <refsect1> + <title>Description</title> + <para> + <command>amqp-consume</command> consumes messages from a + queue on an AMQP server. For each message that arrives, a + receiving command is run, with the message body supplied + to it on standard input. + </para> + <para> + <command>amqp-consume</command> can consume from an + existing queue, or it can create a new queue. It can + optionally bind the queue to an existing exchange, or to a + newly created exchange. + </para> + <para> + By default, messages will be consumed with explicit + acknowledgements. A message will only be acknowledged if + the receiving command exits successfully (i.e. with an + exit code of zero). The AMQP <quote>no ack</quote> mode + (a.k.a. auto-ack mode) can be enable with the + <option>-A</option> option. + </para> + </refsect1> + + <refsect1> + <title>Options</title> + <variablelist> + <varlistentry> + <term><option>-q</option></term> + <term><option>--queue</option>=<replaceable class="parameter">queue name</replaceable></term> + <listitem> + <para> + The name of the queue to consume messages + from. If the specified queue does not exist, + an auto-delete queue is created with the given + name. If this option is omitted, a new + auto-delete queue will be created, with a + unique name assigned to the queue by the AMQP + server; that unique name will be displayed on + stderr. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>-e</option></term> + <term><option>--exchange</option>=<replaceable class="parameter">exchange name</replaceable></term> + <listitem> + <para> + The name of the exchange to bind the queue to. + If omitted, binding is not performed. The + specified exchange should already exist unless + the <option>--exchange-type</option> option is + used to request the creation of an exchange. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>-t</option></term> + <term><option>--exchange-type</option>=<replaceable class="parameter">type</replaceable></term> + <listitem> + <para> + This option indicates that an auto-delete + exchange of the specified type should be + created. The name of the exchange should be + given by the <option>--exchange</option> + option. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>-r</option></term> + <term><option>--routing-key</option>=<replaceable class="parameter">routing key</replaceable></term> + <listitem> + <para> + The routing key for the binding. If omitted, + an empty routing key is assumed. + </para> + </listitem> + </varlistentry> + <varlistentry> + <term><option>-A</option></term> + <term><option>--no-ack</option>=<replaceable class="parameter">routing key</replaceable></term> + <listitem> + <para> + Enable <quote>no ack</quote> mode: The AMQP + server will unconditionally acknowledge each + message that is delivered, regardless of + whether the target command exits successfully + or not. + </para> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1> + <title>Examples</title> + <variablelist> + <varlistentry> + <term>Consume messages from the queue + <quote><systemitem + class="resource">myqueue</systemitem></quote>, and + output the message bodies on standard output via + <command>cat</command>:</term> + <listitem> + <screen><prompt>$ </prompt><userinput>amqp-publish -q myqueue cat</userinput></screen> + </listitem> + </varlistentry> + + <varlistentry> + <term>Bind a newly created auto-delete queue to an + exchange <quote><systemitem + class="resource">myexch</systemitem></quote>, and send + each message body to the script + <filename>myscript</filename>, automatically + acknowledging them on the server:</term> + <listitem> + <screen><prompt>$ </prompt><userinput>amqp-consume -A -e myexch ./myscript</userinput></screen> + </listitem> + </varlistentry> + </variablelist> + </refsect1> + + <refsect1> + <title>See also</title> + <para> + <citerefentry><refentrytitle>librabbitmq-tools</refentrytitle><manvolnum>7</manvolnum></citerefentry> + describes connection-related options common to all the + RabbitMQ C Client tools. + </para> + </refsect1> +</refentry> |