Execute functions on PostgreSQL notifications
Project description
PostgreSQL Notification Listener
This project is a Python library that listens to notifications from a PostgreSQL database. It provides a simple way to execute functions when specific events happen in the database.
How it works
The listener connects to the PostgreSQL database and sets up a notification channel. You can then attach callbacks to this channel, which will be executed whenever a notification is received.
Installation
To install the library, run: pip install postgresql-notification-listener
Usage
To use this library, follow these steps:
- Import the library in your Python script:
from postgresql_notification_listener import NotificationListener
- Create instance of the listener
listener = NotificationListener("host=your_host port=your_port dbname=your_database user=your_username password=your_password")
- Define a callback function that will be executed when a notification is received.
- Use the
subscribe_to_channel
method to attach your callback function to the notification channel:listener.subscribe_to_channel("channel_to_listen", callback_function)
- Start listening for notifications by calling the
start
method:listener.start()
- You can trigger a notification from PostgreSQL by
NOTIFY channel_to_listen
statement. - The
start
method will call all attached callbacks once when called. If you don't want this behaviour, pass theinitial_run=False
argument to the start method:listener.start(initial_run=False)
- You can get the notification that caused the callback from the
last_notification
attribute on the listener instancelistener.last_notification
API
- NotificationListener: The main class of this library. It is responsible for setting up a notification channel and managing callbacks.
- subscribe_to_channel : Attaches a callback function to a specific channel. The
subscribe_to_channel
method takes two required parameters: the name of the channel to listen to and the callback function to execute when a notification is received. - start : Starts listening for notifications. If you don't want all attached callbacks to be called once when called, pass
initial_run=False
as an argument. - last_notification: Returns the latest notification that caused a callback.
- subscribe_to_channel : Attaches a callback function to a specific channel. The
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
Built Distribution
Close
Hashes for postgresql_notification_listener-2.0.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | e43c8c216b3dd90bb2f274b33a3933567366fc95e86f92dd9bf72d6d5a4b5a8f |
|
MD5 | e96a4dca74406b23682055734838a692 |
|
BLAKE2b-256 | ec92ba1784dddf9dbbf562a58b13f8b2a4c4c65a460c7a5e68657d844123ba65 |
Close
Hashes for postgresql_notification_listener-2.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7faee987dde5274ffe7ea487e71ec4221ad456ebea7cb7ed47b3f7064402afb |
|
MD5 | bf035e9a2348dd5787fc3c50dc4bbe24 |
|
BLAKE2b-256 | 6876e48ffc4bbb0317e97cb0051fe3d524e7e5ccf8ffc6c06f5cb48502fe805d |