[Mailman-Developers] Building a boucing detector

Paulo Eduardo Neves neves@samba-choro.com.br
Wed, 20 Sep 2000 22:15:35 -0300


Hi,
In my site, I send a lot of emails to users. I'd like to build a
software to detect bouncing email, and automatically take some actions,
like removing the user from the database. I'm considering using mailman
code to do it. Why build, if you can steal?:-)

I have two options:
	1. Do a hack, copying and pasting some of mailman code to do it.
	2. Build some auxiliary classes around mailman code so other people can
also use it. 

Sure, I prefer number 2. It also has the technical advantage that I can
incorporate mailman improvements in bounce detection. I'm writing to
hear some opinions about it. Is it feasible?

After a quick look in the code, here is my approach. I would like very
much to hear people more knowledgeable about Mailman code criticize it. 

There's two spots that handle bouncing email. The files in directory 
Bouncers/ identify if a message is a bounce. Calling BounceAPI.py with a
message  instance and a list instance calls the RegisterBounce method in
list if the email is a bounce.

Bouncer.py is the mix-in class that handle the bounces and calls some
methods of its sibiling and subclasses (e.g. IsMember and Save). 

I'd put a pipe in the alias file to pass it to a simple program that
builds the message object, the list object and pass them to BounceAPI.

Subclass Bouncer class in Bouncer.py to redefine list objects methods
that would be defined in other classes. Some would be dummy methods,
others do the real action.

Any opinions? Is there any trap?

thanks in advance,
-- 
Paulo Eduardo Neves
maito:neves@samba-choro.com.br