I have been thinking about this and I have an idea to get started. How does this sound as a script layout to everyone (my thinking is geared toward IMAP and not POP):
- Each user must have a "Saved" and a "SPAM - To be deleted" (maybe you could use be the "junkmail" folder if your users do not use Horde) email folder created (simple enough).
- Users must be instructed to:
-- Move all legitimate email to the "Saved" folder or a subfolder under "Saved". This possibly could partially be done with email rules for any sender that is in the user's contact list (if the contacts from Outlook and Thunderbird or whatever could be synced with Horde). This also has the side benefit of keeping the number on emails in the Inbox to a minimum which helps startup performance of many email and webmail clients.
-- Do not create any folders outside of the "Saved" folder.
-- Use the Junk email button in their email client (Outlook and Thunderbird or whatever) on any junk emails and the Not Junk button for legitimate emails.
- The script would run every night and look for any new email files (less than a 24 hours old) in the "Saved" folder and subfolders (cur and new) and feed these emails to the "learn as ham" script.
- The script would also look for any new email files (less than a 24 hours old) in the "Junk" and "Junk Email" (any folders that the email client dumps spam into, cur and new) and feed these emails to the "learn as spam" script and then move them to the "SPAM - To be deleted/cur" folder.
- The script would also look for any email files in the "SPAM - To be deleted" folder that are older than 30 days and delete them.
I believe this has the following benefits:
- User's can use their email client's "Junk" and "Not Junk" icons that they are so familiar with and fond of.
- Both the email client and the server are learning what is spam and ham.
- The users have 30 days to recover legitimate emails flagged as spam.
- If the user does not check their email (if they are on vacation, etc) no action is taken on their inbox emails.
Another option would be to have the "learn as ham" part of the script only look for emails in the "cur" subfolders of the "Inbox" and "Saved" folders. This would assume that the user would not mark a spam email as "Read" without clicking the "Junk" icon.
I found a somewhat similar script at
http://www.scalix.com/wiki/index.php?title=HowTos/SpamAssassinPlease let me know your comments. Thanks.
Kevin