StopForumSpam
A nodejs wrapper for the StopForumSpam.com REST API
Install
$ npm install --save stopforumspam
Usage
var stopforumspam = require('stopforumspam');
The simplest way to use this is to create a user like this
var sfsUser = stopforumspam.User('127.0.0.1', 'test@test.com', 'testUserName');
// REMEMBER! StopForumSpam.com only supports IPv4, not IPv6 addresses
Then you can check the stopforumspam.com database easily.
sfsUser.isSpammer()
.then(function (result) {
// result is false if not found
// if true result looks something like this
// result = {
// success: 1,
// username: {
// lastseen: '2015-03-09 15:22:49',
// frequency: 3830,
// appears: 1,
// confidence: 90.2 } }
});
You can easily submit them if they're spammers too.
stopforumspam.Key('my-api-key');
sfsUser.submit('This text is an optional way to tell SFS why you submitted the user.');
// you can use .then() if you want to wait until after the submit, though I can't imagine why
If you would prefer to call things manually, that's fine too. For example:
stopforumspam.isSpammer({ ip: '123.456.789.100', email: 'test@test.com', username: 'Spammer!' })
.then(function (result) {
// result is just like above
});
You don't need to search with every parameter. You can search only for one or two if you like.
stopforumspam.isSpammer({ ip: '123.456.789.100' })
.then(function (result) {
// result is just like above
});
And if you're using ES6 and want synchronous code, then there's a Sync function for everything
var spammer = stopforumspam.isSpammerSync({ ip: '123.456.789.100', email: 'test@test.com', username: 'Spammer!' });
if (spammer) {
// do stuff
}
// User functions too!
var sfsUser = stopforumspam.User('127.0.0.1', 'test@test.com', 'testUserName');
if (sfsUser.isSpammerSync()) {
// do stuff
}
These are promises, so you can capture errors as well if you like.
sfsUser.submit('This text is an optional way to tell SFS why you submitted the user.')
.fail(function (error) {
// deal with the error that occured while submitting
});
License
MIT © Ted