A django package which act as a gateway to send and receive email with amazon SES.
Switch branches/tags
Clone or download
Latest commit 53cefff Mar 24, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
django_email_gateway
docs
.gitignore
LICENSE
MANIFEST.in
README.rst
setup.py

README.rst

django-email-gateway:

Documentation Status https://travis-ci.org/MicroPyramid/django-email-gateway.svg?branch=master Latest Release https://coveralls.io/repos/github/MicroPyramid/django-email-gateway/badge.svg?branch=master Code Health

Introduction:

A Simple Django app to easily send emails, receive inbound emails from users with different email vendors like AWS SES, Sendgrid, Mailgun.

Django email gateway is used for sending mails from your verified domains. It can be used to send emails from different email vendors like (AWS SES, Sendgrid, MailGun). Using this app, we can easily use different email vendors to verified, non-verified users.

Installation Procedure

  1. Use pip to install easily with one step:

    $ pip install django-email-gateway
    
  2. Pull the code from github using the following command:

    git clone git://github.com/micropyramid/django-email-gateway.git
    
    cd django-email-gateway
    
    python setup.py install
    

Configuration

  • After installing/cloning the django app, add the following details in settings file to setup your email vendor for verified & non-verified users:

    MAIL_SENDER = 'AMAZON' | 'SENDGRID' | 'MAILGUN'
    INACTIVE_MAIL_SENDER = 'AMAZON' | 'SENDGRID' | 'MAILGUN'
  • If you're using Amazon as a email vendor, add the following settings with their values:

    AWS_ACCESS_KEY_ID = "Your AWS Access Key"
    
    AWS_SECRET_ACCESS_KEY = "Your AWS Secret Key"
  • If you're using Sendgrid as a email vendor, add the following settings with their values:

    SG_USER = "Your Sendgrid Username"
    SG_PWD = "Your Sendgrid Password"
  • If you're using Mailgun as a email vendor, add the following settings with their values:

    MGUN_API_URL = "Your MailGun Api Url"
    MGUN_API_KEY = "Your MailGun Api Key"

How It Works?

  • Sending Emails:

    You can easily send emails to verified and non-verified users from different email vendors like AWS SES, Sendgrid, Mailgun. With sending_mail function, you can send custom emails to users. By default, it'll send emails from sendgrid. Based on user verification, it will send emails to users from the specified email vendor.

  • Receiving Email:

    You can easily get the receving emails from different vendors like sendgrid, aws ses, mailgun, by configuring and veririfying your website records in the specified email vendors like SES.

    Now It supports only ses for receiving emails, we'll release a version to support sendgrid, mailgun.

How To Use:

  1. Add these settings to send & receive emails from different vendors.
  1. Sending email:

    sending_mail(subject, email_template_name, context, from_email, to_email, verified)
    
  2. Receiving emails:

    from django_email_gateway.receiving_mail import sns_notification
    subject, from_mail, to_mail, hash_code, mail_content = sns_notification(request.body)
    

It will process your message content, will return the email subject, from mail, to email(abc@yourdomain.com), hashcode(abc), mail content.

Visit our Django web development page Here

We welcome your feedback and support, raise github ticket if you want to report a bug. Need new features? Contact us here