[Spambayes] SpamBayes for Outlook 2000 over IMAP?

Tony Meyer tameyer at ihug.co.nz
Tue May 24 01:16:44 CEST 2005

> What I've determined so far.  Please help correct my confusion:
> - The SB Outlook plugin does not filter IMAP.

Incorrect.  The SpamBayes Outlook plug-in filters any incoming mail in
Outlook.  It doesn't know or care what sort of store (IMAP, pst, Exchange,
Hotmail) the mail is on.

> - The SB 1.0.4 Windows install exe does not include 
> "applications suitable for almost all email clients" like the 
> download page says under the Windows heading.  It only 
> contains the Outlook plugin.

Incorrect.  It contains both the Outlook plug-in and sb_server, which covers
Outlook and basically any mail clients that are using POP3 (not IMAP).  It
doesn't contain the SpamBayes IMAP filter (sb_imapfilter); 1.1 (currently in
alpha) does, however.

> - So, I need Python and the SB source for Windows. 

Nope; you'll be fine with the installer and the Outlook plug-in.

> The 1.0.4 .zip package does not decompress in WinZip 8.

Are you certain that you downloaded it correctly?  I would be very surprised
if this was the case.  I have WinZip 9, so can't tell for sure, but it seems
very unlikely.  Check that the file size matches that on the download page.

> - FAQ item 1.5 describes the POP proxy and web interface, 
> both of which I'm afraid to run on a non-NAT'ed machine.

You shouldn't be (and you needn't use the POP3 proxy if your mail is
retrieved via IMAP).  By default the web interface only accepts connections
from the local machine.  You can unrestrict this if you wish, allowing
connections from specific IPs (or from anywhere, if you really want).  You
can also require the web interface to ask for authentication, although this
isn't enabled by default.  If you're connecting to the web interface from
the machine it's running on, no traffic should be sent outside that machine
(unless you have a really weird network configuration).

> - Something (the "IMAP Filter" section of the readme?) 
> clarified that sb_imapfilter.py is not a proxy, but connects 
> to the IMAP server independantly of your e-mail client and 
> scores/filters your mail at certain time intervals.

That's correct.  Again, you don't have to use this, since you can use the
Outlook plug-in.

> - Running sb_imapfilter.py starts the web interface and lets 
> my machine listen for HTTP on port 8880.

Correct again.

> - sb_imapfilter.py does not use the Bayesian database from 
> the Outlook plugin.

By default sb_imapfilter.py (and sb_server.py) uses a different filename for
the database, yes.  It is the same format, though, so you can interchange
them if you want to.  Or you can point sb_imapfilter.py (or the Outlook
plug-in) at the other database, and share them.  (Concurrent access is *not*
supported, however).

> Now, the questions, in addition to "Are the above is correct?":
> - Can I run sb_imapfilter.py without it starting the web interface? 
> Let me configure using interface once, then never run it 
> again; thus never opening up port 8880 for listening.


> - When I first have sb_imapfilter.py connect to my IMAP 
> server, will it score every message in my Inbox?

Every undeleted message, yes.

> Will that 
> erase them all and recreate them (slightly noted somewhere in 
> the FAQ)? 

Yes.  You can't modify IMAP messages (it's a really crap protocol), only
create new copies of them.  So it has to do this.  Again, you can just use
the Outlook plug-in.

> Will it change their read/unread status (which I 
> rely on desperately)?


> - Does spam sit in my Inbox until sb_imapfilter.py does its 
> periodic sweep?


> Or does sb_imapfilter.py detect new mail as 
> it arrives, score it, and filter as necessary (elluded to in 
> the FAQ 1.5.8 overview)?


> - Each time sb_imapfilter.py checks my IMAP Inbox, will it 
> score only new mail since its last check?


> If so, can I avoid 
> the initial scoring (and potential delete/recreate and 
> read-status change) by tricking it somehow?

Yes, but that would be very complicated.

> - Since I don't have cron on Windows, how can I set 
> sb_imapfilter.py to run periodically? 

You can use the -l switch, in which case it will do it itself.

> Task Scheduler?  

You can do this instead if you prefer.

> Leaving a cmd window open all day?

If you run sb_imapfilter.py with pythonw.exe instead of python.exe a cmd
window will not be opened.

> - Does the web interface really keep full-text copies of all 
> my mail (suggested in FAQ 1.5.5), even those 1+meg 
> attachments people sometimes send?

No.  The POP3 proxy does this.  It's a necessary part of how it operates (I
can elaborate if you wish).  Messages expire from the cache after a certain
amount of time (default 7 days).

> Can I disable that,


> or is 
> that the only way to train the system

It's the preferred way to train the POP3 proxy.  It has nothing to do with
the IMAP filter, or the Outlook plug-in (which you should use).

> without opening the spam (triggering spammer alerts)

I don't know what you mean by "opening" here.

> and forwarding it to localhost:8880 (which I'd rather not run)?

Only sb_upload.py "forwards" mail to the web interface, and it's extremely
unlikely that you'd want to use that.  The web interface isn't used for
training by sb_imapfilter or the Outlook plug-in.

> All my reading and testing culminated in me running 
> sb_imapfilter.py, putting my config info in the web 
> interface, then clicking "Save and Shutdown" and having it do 
> nothing but spin the IE page-loading globe endlessly.  
> Killing the python.exe process ended it.

I don't know what happened here, but since you ought to be using the Outlook
plug-in, I won't bother to try and figure it out, unless you do actually
want to use sb_imapfilter.py.


Please always include the list (spambayes at python.org) in your replies
(reply-all), and please don't send me personal mail about SpamBayes.
http://www.massey.ac.nz/~tameyer/writing/reply_all.html explains this. 

More information about the Spambayes mailing list