[Mailman-Developers] Add mail to database

Mark Sapiro mark at msapiro.net
Thu Apr 1 22:56:59 CEST 2010


On 4/1/2010 3:35 AM, Илья Чистяков wrote:
> Hello I want to store mails in database, so, can you explain in what module
> emails are filtered? After that I can implement my "add-mail-to-database"
> function. For example, then unregistred user send a message. Sincerely,
> Elias.


I am not sure what you are asking. If you want to know where in
Mailman's processing a message can be held for approval, rejected or
discarded, the answer is in several places depending on the specific reason.

The global pipeline handlers SpamDetect, Moderate, Hold, MimeDel,
Scrubber and Emergency can all hold, reject or discard a message
depending on the message and the list configuration.

If you want to store in your database only those messages which have
been accepted for the list, consider using an external archiver to do
this. See the documentation in Defaults.py for PUBLIC_EXTERNAL_ARCHIVER
and PRIVATE_EXTERNAL_ARCHIVER. Also, see the FAQ at
<http://wiki.list.org/x/RAKJ>.

If you'd rather not depend on the lists having archiving turned on,
consider adding a custom handler to the pipeline somewhere between
Emergency and the end. See the FAQ at <http://wiki.list.org/x/l4A9>.

If what you are looking for is a way to store all incoming mail
regardless of disposition, i.e., ahead of any filtering, consider adding
a custom handler to the beginning of the pipeline.

Finally, if what you want is a way to store only held, discarded and
rejected mail, you'd probably need to do this in the exception handling
of the _dopipeline() function in IncomingRunner.py

-- 
Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan



More information about the Mailman-Developers mailing list