Hi all!
I agreed with Brett on the fact that filtering must be server-side insteed of client-side.
Until this week-end, my IMAP server was Courier-IMAP without any support for server-side filtering rules configured and a badly working SpamAssassin... Only my Outlook client does filtering ... With spam traffic growing days after days, I've to filter each days over 500 email on 5 mail accounts and usually Outlook stops responding after few seconds!
If RoundCube implement such a system, users who log in need to wait that all the messages have been filtered... If you recieve a lot of spam or mailing-list messages, you'll have to wait before you can read your mails !
SquirrelMail, Gmail, Yahoo, Hotmail and others implements server-sides filtering rules!! nothing more, nothing less
If you look at the SquirrelMail website, under the "Plugins" section, you'll find that the so-called 'filtering' feature is in fact a simple plugin who help users managing their rules on the server using SpamAssassin, Cieve or others mechanisms (i.e. running commands on the server)
I've choosed DoveCot for his plugin for DSPAM (learning of false-positive or false-negative with only a move between Inbox and Spam folder!) and the Sieve-plugin (automatic action for mails with "X-DSPAM-Result: SPAM" in headers)
Sieve is a simple language for manipulating mail messages and take actions regarding of the headers contents...
For example, this is the sieve-rule to move DSPAM tagged mail to the Spam folder:
require "fileinto";
if header :contains "X-DSPAM-Result" "Spam" {
fileinto "Spam";
}
A simple PHP script can help editing rules like the above inside the RC interface and voila! (of course, this script must be writed before :p)... The most difficult is to keep in mind all server-side filtering possibilities, plugins are good for this
SquirrelMail already have several (12) plugins for editing user-rules, RC can have his own set of plugins
(I hope!!)
Everything can arrive to whom is waiting
This is my little point of view on the subject !
Best Regards
P.S.: sorry for my poor english :p