Skip to content

hellysmile/aio-pika

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aio-pika

Coveralls Travis CI Latest Version

Wrapper for the PIKA for asyncio and humans.

Installation

pip install aio-pika

Usage example

import asyncio
from aio_pika import connect


@acyncio.coroutine
def main(loop):
    connection = yield from connect("amqp://guest:guest@127.0.0.1/", loop=loop)

    queue_name = "test_queue"
    routing_key = "test_queue"

    # Creating channel
    channel = yield from connection.channel()

    # Declaring exchange
    exchange = yield from channel.declare_exchange('direct', auto_delete=True)

    # Declaring queue
    queue = yield from channel.declare_queue(queue_name, auto_delete=True)

    # Binding queue
    yield from queue.bind(exchange, routing_key)


    yield from exchange.publish(
        Message(
            bytes('Hello', 'utf-8'),
            content_type='text/plain',
            headers={'foo': 'bar'}
        ),
        routing_key
    )

    # Receiving message
    incoming_message = yield from queue.get(timeout=5)

    # Confirm message
    incoming_message.ack()

    yield from queue.unbind(exchange, routing_key)
    yield from queue.delete()
    yield from connection.close()


if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main(loop))

About

Wrapper for the PIKA for asyncio and humans.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%