We have recently been developing a program which involves retrieving emails into a ASP.NET system written in C#.
It was quickly realised that we would also need a spam filter to avoid spam messages clogging up the system. Firstly we created a black list and a white list to allow us to pre-approve/disapprove emails from certain addresses.
Next, we needed some way of retrieving a spam score (or probability) for the remaining messages. We looked immpediately to SpamAssassin and easily got it working on our Windows server using the excellent how to guide: Using SpamAssassin with Win32.
However, we did not want the mail to be filtered at the mail server level, we wanted to spam check the messages in our system as they were retrieved and store their spam score.
(more…)