Skip to main content

Framework for handling email in zope

Project description

[![Build Status](https://travis-ci.org/syslabcom/slc.mailrouter.svg?branch=master)](https://travis-ci.org/syslabcom/slc.mailrouter)

Introduction

slc.mailrouter bridges the gap between zope and email. It is based on the same idea as products such as mailboxer: a script is invoked by your mail transfer agent (postfix, exim) and the body of the email is passed to this script on stdin. This is then communicated to zope using an http post, where it is parsed and handled.

slc.mailrouter implements a component model for the handling of emails. By itself it allows the user to send an email to a folder and have all attachments on the email stored in that folder. The folder can be addressed either by its UID, or by assigning a friendly alias to the folder in the plone control panel.

The MailToFolder router is implemented using an adapter pattern. If you want to change the way this works, Implement an adapter that adapts IFolderish and implements slc.mailrouter.interfaces.IMailImportAdapter. The add() method on this adapter receives the message as an argument and is responsible for persisting the contents of the message to the folder.

Additional mail routes can be implemented by other products by creating a utility and registering it under the interface slc.mailrouter.interfaces.IMailRouter. Such mail router utilities are called one after the other until one of them reports that the message was successfully delivered. In this way it mirrors the way exim’s routers work.

Credits

Izak Burger <isburger@gmail.com> Manuel Reinhardt <reinhardt@syslab.com>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for slc.mailrouter, version 2.1.1
Filename, size File type Python version Upload date Hashes
Filename, size slc.mailrouter-2.1.1.tar.gz (17.9 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page