The zimran-events provides amqp interface
Project description
zimran-events
The zimran-py-events
module provides AMQP interface
Installation
pip install zimran-events
Usage example
Producer
from zimran.events import AsyncProducer
producer = AsyncProducer(broker_url='')
await producer.connect()
# message publishing
await producer.publish('some.event.routing', {'msg': 'hello, world'})
Consumer
# < 0.4.0
from zimran.events import Consumer
from zimran.events.dto import Exchange
consumer = Consumer(service_name='my-service', broker_url='')
consumer.add_event_handler(
name='routing-key',
handler=handler_func,
exchange=Exchange(
name='exchange-name',
type='exchange-type',
durable=True,
)
)
# or
from zimran.events import Consumer
consumer = Consumer(service_name='my-service', broker_url='')
@consumer.event_handler('routing-key')
def handler_func(**kwargs):
...
# >= 0.4.0 version
from zimran.events.routing import Router
from zimran.events.consumer AsyncConsumer
router = Router()
@router.event_handler('routing-key')
async def handler(message: aio_pika.IncomingMessage):
pass
router.add_event_handler('routing-key', some_handler)
async def main():
consumer = AsyncConsumer(..., router=router)
await consumer.run()
Code
The code and issue tracker are hosted on GitHub: https://github.com/zimran-tech/zimran-py-events.git
Features
- AMQP interfaces
For contributors
Setting up development environment
Clone the project:
git clone https://github.com/zimran-tech/zimran-py-events.git
cd zimran-py-events
Create a new virtualenv:
python3 -m venv venv
source venv/bin/activate
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
zimran-events-0.5.0.tar.gz
(14.9 kB
view hashes)
Built Distribution
Close
Hashes for zimran_events-0.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 68a6c39e7a478497fccf5f6f5f4a97f32d60dd03cbaf95f0b0c35e044954c34c |
|
MD5 | 435cf57f4b14abaaaa58b47815979308 |
|
BLAKE2b-256 | 29100a49b0a1dfa60322a8e476d09f1aecd4400d0f3c2a8a2f6cfc286712cc53 |