A Django app to sends notifications to internal users.
Project description
DRF Notification System
An app that sends notifications to internal users.
Requirements
- Django (2.2 <= 3.2 )
- Django REST framework
- django_filters
- Celery
Installation
pip install drf-notification-system
Post-Install Setup
Django Settings
INSTALLED_APPS = [
...
'notification_system',
]
Include the notification system urls in your project urls.py like this
path('notification-system/', include('notification_system.urls')),
-
Run
python manage.py migrate
to create the notification system models. -
If you want to change send email notification default queue name, set
EMAIL_NOTIFICATION_QUEUE_NAME
constance on thesettings.py
file. the default value is 'send_email_notification' -
If you want to change send update outgoing message status default queue name, set
UPDATE_OUTGOING_MESSAGE_STATUS_QUEUE_NAME
constance on thesettings.py
file. the default value is 'update_outgoing_message_status' -
If you want to change send email notification rate limit, set
NOTIFICATION_SYSTEM_SEND_EMAIL_RATE_LIMIT
constance on thesettings.py
file. the default value is '700/m' -
If you want to change user fields to pass template as context data, set
NOTIFICATION_SYSTEM_DEFAULT_USER_FIELD
constance on thesettings.py
file. the default value is ['id', 'username', 'first_name', 'last_name', 'email'] -
Run Celery worker with the following command
celery -A 'project_name' worker --loglevel DEBUG -Q 'queue_name' --concurrency=1
celery -A 'project_name' worker --loglevel DEBUG -Q send_email_notification --concurrency=1
celery -A 'project_name' worker --loglevel DEBUG -Q update_outgoing_message_status --concurrency=1
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
Hashes for drf-notification-system-1.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3f12ae76e3e1bfcaa613232d8d7cd73695a384585e30e419e6e9a660973c986b |
|
MD5 | 61e6e0d370725f7d0b1b6c2a4c9df297 |
|
BLAKE2b-256 | 9c6c7532b9ed82c3e1655124cdb4414c11e8d2af75dfafbf7b18aa0ff1dc5684 |