[spambayes-dev] web service

TronixSoft TronixSoft at comcast.net
Sat Jul 2 09:48:37 CEST 2005



I'm writing spam filtering service for the "free" email services bundled
with Windows server 2003.  (Which consist of just SMTP and pop3 services.)
I would like to leverage the client side spambayes database to provide
server side filtering.  The approach I would like to take is to leave
spambayes intact on the client and leverage its (superb) efforts, and have
the (email) server updated with the results.


Here is what the server will do:

Receive email

Check for spam based on the recipient's individual (spambayes) database

If spam, take preconfigured action (move, delete, tag, etc.)

If not spam, cache the results for a preconfigured amount of time (say, a
day) and wait for a ham/spam report from the client

If a ham/spam report arrives, update the database accordingly

If no report arrives within timeout period, take a preconfigured course of
action (update db based on current results, assume good/bad, ignore, etc.)

Forward email to the next hop as appropriate

Listen for updates from spambayes clients via web service


Here is what the client would do, without an update to spambayes

Receive email

Allow spambayes to process

Forward results (clues?) for the current email to the server; or send copy
of db to server and let server digest the entire db; each via additional
Outlook plug-in


Forward db to sever as a manual/calendar update (i.e. not on arrival of each


Here is what the client could do with an update to spambayes (presumptuous,
I know and apologize)

Receive email


Connect to server via web services (xml/soap) and upload results for the
current email


Yes, this would mean a separate db per user on the server which I think is a
good thing, but may cause scalability issues.  However, I would like to get
started 'somewhere'.  I also realize that I could forgo the web services and
just have the xml package emailed to a service account inbox on the server,
but I'm not too keen on the idea of automating the sending of email from
Outlook or otherwise.  Also, by using a web service, this would leave the
door open to many options and features.  One would be a single interface by
which a user can update preferences on the server, regardless of the client
(web page, binary, from within spambayes itself).


My question is:  Can someone help me with a utility to export or convert the
spambayes db to text?  The reason I'm asking for help is due to a desire to
code this in VB.NET.  I took some classes in C many years ago, but ended up
spending all my time "growing up" with VB.  I could learn python and figure
this out, but I'm hoping to focus on the areas I know best.  Not to step on
anyone's pickle, but how about an option in spambayes to choose whether to
use a db, or xml for storage.  Drive space is cheap, I wouldn't mind a
larger database if it meant that I could parse it from another application
(OS, etc.)  XML would make sharing the db a lot easier.  Just a thought.


By the way, I may even develop a script version whereby the xml package can
be copied to a share or emailed to a special inbox on the server that a
script will monitor, digest and update config/db files for each user
accordingly.  Currently I'm using a simple VB script on the server,
implementing some WMI calls (cpu friendly way to monitor folder for new
files), and a white/black list.  Of course I understand this to be very
rudimentary.  But it is a surprisingly effective (and free) way to handle
some of the more obvious spam.  The white list is based on email addresses,
and the black list is comprised of keywords (such as viagra, etc.)  


Any thoughts, comments, encouragement, and/or assistance would be greatly




-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/spambayes-dev/attachments/20050702/5e27a42b/attachment.htm

More information about the spambayes-dev mailing list