Skip to main content

Stores and sends canned email responses.

Project description


Stores and sends canned email responses.

Ever had to change the signature or add a recipient to N hardcoded emails spread all throughout your code? Hardcode no more! Use mailrobot instead.

Depends on Django, with a version between 3.2 and 6.0, inclusive.

Installation

  1. Install the library, for instance with pip:

    pip install django-mailrobot
  2. Add the library to your INSTALLED_APPS of an exiting project:

    INSTALLED_APPS += ['mailrobot']
  3. Add the tables to the existing project.

    $ ./manage.py migrate

Demo

Copy the entire django-mailrobot directory somewhere, set up and enter a virtualenv, then provided you are on some Un*x:

make demo

This’ll create a demo-user “demo” with the password “demo”.

The demo should now be running on http://127.0.0.1/

Tests

To run the tests, first install the testing-requirements:

pip install -r requirements/test.txt

then run the tests with:

make test APP=mailrobot

Development

Install the dev-requirements with:

pip install -r requirements/test.txt

This’ll give you ipython for a prettier shell-experience, but more importantly it’ll install pre-commit. Pre-commit will check for syntax errors and merge conflicts, and fix trailing whitespaces and mixed line-endings for you.

Usage

Add mails and addresses through the django admin.

In code

Fetch a mail-template:

template = Mail.objects.get(name='hello-world').

Fill it:

mail = template.make_message(
    sender='Yep <overridden-from@example.com'>,
    recipients=('extra1@example.com', u'Blåbærsyltetøy <extra2@example.com>'),
    context={'world': 'Mailrobot'}
)

Have a look:

print mail.message

Send it:

mail.send()

Niceties

In case you need to send an email somewhere else for testing/debugging, clone an existing email in the admin:

  1. Select it

  2. Choose “Clone selected mails” in the action list

  3. Hit “Go”

The clone will share everything with its original except the name, which will be suffixed with a timestamp.

Edit the name of the clone to what you need, change recipients, CCs, BCCs. Then, where you send the mail from, choose the clone if settings.DEBUG is True.

Version:

0.8.2

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_mailrobot-0.8.2.tar.gz (20.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_mailrobot-0.8.2-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file django_mailrobot-0.8.2.tar.gz.

File metadata

  • Download URL: django_mailrobot-0.8.2.tar.gz
  • Upload date:
  • Size: 20.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.3

File hashes

Hashes for django_mailrobot-0.8.2.tar.gz
Algorithm Hash digest
SHA256 f62bda49829cf76f24a24609e7a0e73c4b6a5e18673e1da5b878ebf0c04fc222
MD5 0697481408d5a82729c812fa6226c984
BLAKE2b-256 6e465fed75043e4ca149f6d2a52b67d12d1a0e91a81b3fdeab26f54e52b91506

See more details on using hashes here.

File details

Details for the file django_mailrobot-0.8.2-py3-none-any.whl.

File metadata

File hashes

Hashes for django_mailrobot-0.8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8246225886b49de2ef6d96dc01290839c6def9e33869fb0fe22d0d596800ce72
MD5 25b6c1d381d4c49de743828c5988c5aa
BLAKE2b-256 d6c5ec42670e7865c545b4b6728fef246c07a98f86b9b54a4860ddff549a4632

See more details on using hashes here.

Supported by

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