AMQP Client using the rabbitmq-c library.
Project Links
Meta
Author: Ask Solem
Classifiers
Development Status
- 5 - Production/Stable
Operating System
- POSIX
- Microsoft :: Windows
Programming Language
- C
- Python :: 2.7
- Python :: 3.4
- Python :: 3.5
- Python :: 3.6
- Python :: Implementation :: CPython
Intended Audience
- Developers
License
- OSI Approved :: Mozilla Public License 1.0 (MPL)
Topic
- Communications
- System :: Networking
- Software Development :: Libraries
- Version:
- 2.0.0
- Download:
- Code:
- Keywords:
rabbitmq, amqp, messaging, librabbitmq, rabbitmq-c, python, kombu, celery
Python bindings to the RabbitMQ C-library rabbitmq-c. Supported by Kombu and Celery.
Installation
Install via pip:
$ pip install librabbitmq
or, install via easy_install:
$ easy_install librabbitmq
Downloading and installing from source
- Download the latest version from
Then install it by doing the following,:
$ tar xvfz librabbitmq-0.0.0.tar.gz $ cd librabbitmq-0.0.0 $ python setup.py build # python setup.py install # as root
Using the development version
You can clone the repository by doing the following:
$ git clone git://github.com/celery/librabbitmq.git
Then install it by doing the following:
$ cd librabbitmq $ make install # or make develop
Examples
Using with Kombu:
>>> from kombu import Connection >>> x = Connection("librabbitmq://")
Stand-alone:
>>> from librabbitmq import Connection >>> conn = Connection(host="localhost", userid="guest", ... password="guest", virtual_host="/") >>> channel = conn.channel() >>> channel.exchange_declare(exchange, type, ...) >>> channel.queue_declare(queue, ...) >>> channel.queue_bind(queue, exchange, routing_key)
Producing
>>> channel.basic_publish(body, exchange, routing_key, ...)
Consuming
>>> def dump_message(message): ... print("Body:'%s', Properties:'%s', DeliveryInfo:'%s'" % ( ... message.body, message.properties, message.delivery_info)) ... message.ack() >>> channel.basic_consume(queue, ..., callback=dump_message) >>> while True: ... connection.drain_events()
Poll
>>> message = channel.basic_get(queue, ...) >>> if message: ... dump_message(message) ... print("Body:'%s' Properties:'%s' DeliveryInfo:'%s'" % ( ... message.body, message.properties, message.delivery_info))
Other
>>> channel.queue_unbind(queue, ...) >>> channel.close() >>> connection.close()
License
This software is licensed under the Mozilla Public License. See the LICENSE-MPL-RabbitMQ file in the top distribution directory for the full license text.
May 30, 2018
2.0.0
Nov 17, 2014
1.6.1
Nov 17, 2014
1.6.0
May 28, 2014
1.5.2
May 06, 2014
1.5.1
Apr 14, 2014
1.5.0
Nov 15, 2013
1.0.3
Oct 25, 2013
1.0.2
Jan 14, 2013
1.0.1
Nov 02, 2012
1.0.0
Jun 23, 2012
0.9.9
Jun 23, 2012
0.9.8
Jun 23, 2012
0.9.7
Jun 14, 2012
0.9.6
Jun 07, 2012
0.9.5
May 29, 2012
0.9.4
May 22, 2012
0.9.3
May 21, 2012
0.9.2
May 21, 2012
0.9.1
May 21, 2012
0.9.0