Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
58 lines (39 sloc) 1.81 KB

Spamd (SpamAssassin) client for node.js

This library use sockets to send a message to SpamAssassin daemon for evaluation.

Based on the SpamAssassin plugin from Haraka.

Install from npm

npm install node-spamd

Usage

var Spamd = require("node-spamd");
var spamd  = new Spamd(sender, receiver, host, port);

spamd.evaluate(subject, message, function(res, err){

	if(err) {
		console.log(err);
	} else {
		if(res.spam) {
			console.log('The message is Spam, is evaluated with ' + res.evaluation + " points in a maximun of " + res.allowed);
		}else{
			console.log('The message is not Spam, is evaluated with ' + res.evaluation + " points in a maximun of " + res.allowed);
		}
	}
});

sender: Sender e-mail address/user. Default value: root
receiver: Receiver e-mail address/user. Default value: root
host: Spamd address. Default value: localhost
port: Spamd port. Default value: 783
subject: String containing the message subject.
message: String containing the message body.

Return value

The method returns an object, with the following attributes:

spam = true or false. Indicates the result of SpamAssassing analysis.
evaluation = Number or points or hits, that the message has obtained.
allowed = Configured minimal required points for SpamAssassin mark the message as SPAM. This is a spamd setting.
rules = Array with detected spam infractions

TODO

  • document source code;
  • real documentation;
  • jsHint standards we don't like code standards.

License

Copyright (C) 2012 Humantech

Distributed under the MIT License, the same as Node.js.

Read this if you're in doubt.