I am looking for a .NET/ JAVA free or opensource SPAM detectors accessible via an API that yield good results. I would consider paying for a good service that accomplishes this as well, but ideally, I would like to go open source. Does any one have any good experiences with any or recommendations?
Ideally, I would get the text/markup to a message in memory, I would call a method from this API, and it would return a bool or likelyhood of SPAM.
A quick Google search yielded some results, but users with experience to share are greatly appreciated.
Checkout the Akismet .NET 2.0 Api on CodePlex.
Here's an example from the CodePlex page:
// Verify key
Akismet api = new Akismet("key", "http://url.com", "Test/1.0");
if (!api.VerifyKey()) throw new Exception("Key could not be verified.");
// Create comment object for testing
AkismetComment comment = new AkismetComment();
comment.Blog = "http://joel.net";
comment.UserIp = "147.202.45.202";
comment.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)";
comment.CommentContent = "<a href=\"http://someone.finderinn.com\">find someone</a>";
comment.CommentType = "comment";
comment.CommentAuthor = "someone";
comment.CommentAuthorEmail = "backthismailtojerry@fastmail.fm";
comment.CommentAuthorUrl = "http://someone.finderrin.com";
// Test comment against akismet's service
bool isSpam = api.COmmentCheck(comment);
Akismet rocks.
-Charles