Simple wrapper around django-ses to receive and persist sns event data
Project description
django-ses-sns-tracker
A simple wrapper around django-ses to receive and persist sns event data.
Records mail delivery in the SESMailDelivery
model and updates the state if a matching SNS notification is received.
Requirements
- Django version 2.2+
- A PostgreSQL Database
Quick start
-
Add
ses_sns_tracker
to your INSTALLED_APPS setting like this:INSTALLED_APPS = [ ... 'ses_sns_tracker', ]
-
Run
python manage.py migrate
to create the models. -
Setup
django-ses
-
(Optional) Use
ses_sns_tracker.backends.SESSNSTrackerBackend
as your default email backend:EMAIL_BACKEND = 'ses_sns_tracker.backends.SESSNSTrackerBackend'
This way all emails will be send via the Amazon SES API.
-
(Optional) Send an email via the
SESMailDelivery
manager (doesn't requireSESSNSTrackerBackend
as the default mail backend):from django.core.mail import EmailMessage from ses_sns_tracker.models import SESMailDelivery message = EmailMessage( subject='email subject', body='email body', from_email='from@example.org', to=['recipient@example.org'], ) SESMailDelivery.objects.create_message(message, fail_silently=False, fake_delivery=False)
Settings
-
SES_SNS_TRACKER_DEBUG_BACKEND = 'django.core.mail.backends.console.EmailBackend'
Set mail backend to use for the actual mail delivery in
DEBUG
mode (SESMailDelivery
objects will still be created). Default:None
-
SES_SNS_TRACKER_USE_CRYPTOGRAPHY = True
Use
crypthography
instead ofM2Crypto
to verify the signature of messages received from SNS. Default:True
Development setup
-
Upgrade packaging tools:
pip install --upgrade pip setuptools wheel
-
Install packages from
requirements-dev.txt
:pip install -r requirements-dev.txt
-
(Optional) Override settings in
example_proj/settings_local.py
&tests/settings_local.py
as required.
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
Hashes for django-ses-sns-tracker-1.1.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c47b7afdb4d5b7bd95b26430ca9bbfa016d13e37b764f28a5508ca8f8372ad2 |
|
MD5 | 15d468652b01d407e3a023065b4b1ca5 |
|
BLAKE2b-256 | 3a1c34777705f19b54e1afaa39edec688db593a63add1768dc49af7c8bb06ac2 |
Hashes for django_ses_sns_tracker-1.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b55067be303ca02e977fdb0810b75aaaa6d836f8e749d0d72de687c2f47d5198 |
|
MD5 | 396d69d5eeab697f8ad2d3f24abaa135 |
|
BLAKE2b-256 | 2e3f221e59526ed04b8f71f34b3f69300ea1c094e924f4ce8ffb71da0d028970 |