Skip to main content

email sending for humans

Project description

Email sending for humans

Installation

with pip as easy as:

$ pip install dlvr

or checkout the latest version from github:

$ git clone https://github.com/bmaeser/dlvr.git
$ cd dlvr
$ python setup.py install

Quickstart

open a connection to a server:

>>> from dlvr import SMTPServer
>>> s = SMTPServer()

create a email:

>>> from dlvr import Message
>>> m = Message('bob@example.com', ['alice@gmail.com', 'support@example.com'],
        'testsubject', 'testbody')

send the email:

>>> s.connect()
>>> s.send(m)
>>> s.disconnect()

Full example

from dlvr import SMTPServer, Message

server = SMTPServer(host="smtp.googlemail.com", port='587',
    auth_user='MYUSERNAME', auth_pass='MYPASSWOR', tls=True)

## host (optional): defaults to localhost
## port (optional): defaults to 25
## auth_user (optional): your usernamer
## auth_pass (optional): your passwort
## tls (optional): encrypt the session defaults to False

text = 'here is you link: http://www.google.com'
subject = 'the link you asked for'

html = """\
<html>
    <head></head>
    <body>
        <p>Hi!<br>
        Here is the <a href="http://www.google.com">link to google</a> you wanted.
        </p>
    </body>
</html>
"""

message = Message('bob@example.com', ['alice@gmail.com', 'support@example.com'],
    subject, text, alternatives=[(html, 'text/html')])

## constructor arguments:

## from_email: required, the senders email
## to: required, a list of recipients
## subject: required, the emails subject
## text_message (optional): the text representation of the email body
## cc (optional): a list of the carbon-copy recipients
## bcc (optional): a list of blind-carbon-copy recipients
## attachments (optional): a list of attachments, and the mimetype to use eg:
##      attachments = [('/tmp/image.jpg', 'image/jpeg'), ('/tmp/song.mp3', 'audio/mpeg3')]
## alternatives (optional): a list of alternative representation of the email body
##      and the mimetype to use
## charset (optional): the charset/encoding to use for text_message, defaults to utf-8

## message functions:

# attach_alternative(content, 'mimetype')
# where mimetype is optional und defaults to 'text/html'

# attach_file('/path/to/file', 'mimetype')
# where mimetype is opional and is guessed if not provided

server.connect()
server.send(message)
## send another message with the same open connection ...
server.disconnect()

## or shorthand if you only send one message:
server.send_email(message)

Contribute

pull-request please and/or create a issue on github

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

dlvr-0.2.tar.gz (4.5 kB view details)

Uploaded Source

File details

Details for the file dlvr-0.2.tar.gz.

File metadata

  • Download URL: dlvr-0.2.tar.gz
  • Upload date:
  • Size: 4.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for dlvr-0.2.tar.gz
Algorithm Hash digest
SHA256 eb0bc25eaa511662613e6a8ccf93a4f8f097eb58274b03c668729caf711293d8
MD5 ed18b508eb004a1d674f4cf7081dc468
BLAKE2b-256 59854741acb4eaf8b5062edb64854ed78b7c280f043a1b22fa23dbd11d90a2a6

See more details on using hashes here.

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