Skip to main content

A Django email backend using Dramatiq to send emails using background workers

Project description

Django Dramatiq Email

Email backend for Django sending emails via Dramatiq.

Test Status Lint Status Code coverage Status Code style: black

Installation

To enable django-dramatiq-email configure the Django EMAIL_BACKEND to django_dramatiq_email.backends.DramatiqEmailBackend and make sure add Django Dramatiq Email to your Django INSTALLED_APPS. This package is tested up to Django 3.

Configuration

The dramatiq task's configuration can be changed via the setting DRAMATIQ_EMAIL_TASK_CONFIG of type dict. By default tasks are being pushed to the 'django_email' queue. The settings in DRAMATIQ_EMAIL_TASK_CONFIG are being used at load time to construct the actor.

Example configuration (using the Retry middleware):

DRAMATIQ_EMAIL_TASK_CONFIG = {
    "max_retries": 20,
    "min_backoff": 15000,
    "max_backoff": 86400000,
    "queue_name": "my_custom_queue"
}

You can change the actual email backend being used by changing DRAMATIQ_EMAIL_BACKEND.

Bulk emails

Bulk emails are send using individual Dramatiq tasks. Doing so these tasks can be restarted individually.

Maintainer

Tim Drijvers

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

django-dramatiq-email-1.3.0.tar.gz (4.5 kB view hashes)

Uploaded Source

Built Distribution

django_dramatiq_email-1.3.0-py3-none-any.whl (5.1 kB view hashes)

Uploaded Python 3

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