ruby-stopforumspam

Ruby wrapper for stopforumspam.com API. Check IP addresses, email addresses, and usernames for known spam activity.

Usage

Add the gem to your Gemfile:

gem 'ruby-stopforumspam'

Then in your project:

require 'stopforumspam'

spam_check = StopForumSpam::Check.new(parameters)
spam.check.spammer? # returns Boolean
spam.check.result   # returns Hash

Supply a String to check one IP address, e-mail, or username:

spam_check = StopForumSpam::Check.new('198.51.100.1')
spam_check.spammer? # is this person a spammer?
=> false
spam_check.result   # see full results from API
=> {"ip"=>{"value"=>"198.51.100.1", "frequency"=>"0", "appears"=>"0"}}

Or supply an Array of Strings:

spam_check = StopForumSpam::Check.new(['198.51.100.1', '[email protected]'])
spam_check.spammer?
=> true
spam_check.result
=> {"ip"=>{"value"=>"198.51.100.1", "frequency"=>"0", "appears"=>"0"}, "email"=>{"value"=>"[email protected]", "lastseen"=>"2014-10-06 13:33:08", "frequency"=>"3", "appears"=>"1"}}

Or supply an Array of Hashes to override the check type (e.g. to force a username check for a string that looks like an IP address):

spam_check = StopForumSpam::Check.new([{check: '198.51.100.1', type: 'username'}])
spam_check.spammer?
=> true
spam_check.result
=> {"username"=>{"value"=>"198.51.100.1", "frequency"=>"0", "appears"=>"0"}}

License

MIT license. See LICENSE.

Author

Warren Guy [email protected]

https://warrenguy.me