Skip to main content

Queue reader for python abstracting message brokers such as RabbitMQ

Project description

MessageBrokers

MessageBrokers is a Python library that provides a simple and efficient way to work with message brokers such as RabbitMQ, Amazon SQS and Apache Kafka. It abstracts away the complexities of interacting with different message broker systems, allowing you to focus on writing your application logic.

Installation

To install MessageBrokers you can use pip, the package is listed on PyPi: pip install uugai_python_dynamic_queue

The package can be imported in your Python document using: from uugai_python_dynamic_queue import MessageBrokers

Features

Supports popular message broker systems such as RabbitMQ, SQS, and Kafka. Abstracted to following methods:

Initialization

The initialization methods in the MessageBrokers library allow you to create instances of different message broker systems. Here are the available initialization methods:

  • RabbitMQ(queue_name: str, exchange: str, host: str, username: str, password: str): Initializes a connection to a RabbitMQ message broker. You need to provide the queue name, exchange, host, username, and password. --> Returns 1 single message

  • TO BE TESTED SQS(queue_name: str, aws_access_key_id: str, aws_secret_access_key: str): Initializes a connection to an Amazon Simple Queue Service (SQS) message broker. You need to provide the queue name, AWS access key ID, and AWS secret access key. --> Returns all messages?

  • TO BE TESTED Kafka(queue_name: str, broker: str, group_id: str, mechanism: str, security: str, username: str, password: str): Initializes a connection to a Kafka message broker. You need to provide the queue name, broker address, group ID, authentication mechanism, security protocol, username, and password. --> Returns 1 single message?

ReceiveMessage

The receive_message() method is a part of the MessageBrokers library in Python. It is used to receive a message from the message broker system that you have initialized.

Once you have established a connection to a specific message broker system using one of the initialization methods (RabbitMQ(), SQS(), or Kafka()), you can call the receive_message() method to start receiving messages from the specified queue.

This method allows you to retrieve a message from the message broker and process them in your application logic. It provides a simple and efficient way to consume messages from the message broker system without having to handle the complexities of interacting with different message broker systems directly.

SendMessage

The send_message(message: str) method is a part of the MessageBrokers library in Python. It is used to send a message to the message broker system that you have initialized.

Once you have established a connection to a specific message broker system using one of the initialization methods (RabbitMQ(), SQS(), or Kafka()), you can call the send_message() method to send a message to the specified queue.

This method takes a single parameter 'message', which is a string representing the content of the message you want to send. You can use this method to publish messages to the message broker system, allowing other applications or services to consume and process them.

Close

The close() method is a part of the MessageBrokers library in Python. It is used to close the connection to the message broker system that you have initialized.

After you have finished using the message broker system and no longer need to receive or send messages, you can call the close() method to gracefully close the connection. This ensures that any resources used by the message broker system are properly released.

Example usage

The code snippet provided demonstrates the usage of the MessageBrokers library in Python. It showcases how to initialize a connection to a message broker system, receives a message from a queue, send a message to the queue, and close the connection. The library abstracts away the complexities of interacting with different message broker systems, allowing developers to focus on writing their application logic.

from uugai_python_dynamic_queue.MessageBrokers import RabbitMQ

# Initialize a connection to RabbitMQ message broker
rabbitmq = RabbitMQ(queue_name='my_queue', 
                    target_queue_name = 'my_target_queue', 
                    exchange='my_exchange', 
                    host='host', 
                    username='guest',
                    password='guest')

# Receive message from the queue
message = rabbitmq.receive_messages()

# Process the received message
print(f"Received message: {message}")

# Send a message to the queue
rabbitmq.send_message("Hello, RabbitMQ!")

# Close the connection
rabbitmq.close()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

uugai_python_dynamic_queue-1.0.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file uugai_python_dynamic_queue-1.0.0.tar.gz.

File metadata

File hashes

Hashes for uugai_python_dynamic_queue-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ceace61d1c817aec4e79992e840b986fb214c03cda7f2e9f858e22e70bf88ec8
MD5 894a4669d1646a73bf6089c25d7c22ac
BLAKE2b-256 27041d76a488c09d2f6524feaa095b38c6054afd929c24703058078b903818a6

See more details on using hashes here.

File details

Details for the file uugai_python_dynamic_queue-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for uugai_python_dynamic_queue-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f0befebc0ccd00fae53b4a96f82e54f12fd027f4e0b5fa9c371430dc87a6275e
MD5 2fa5680107b1ee0f7ba4b6df86ec9498
BLAKE2b-256 521e37377599bc22f1028e31da1fadf9d9f8ebde97f3120b5334f0ebfe40cd21

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page