cmdz/spam-canner

Extensible Spam Detection Filters based on snook.ca post

0.2.1 2015-01-28 02:11 UTC

This package is not auto-updated.

Last update: 2024-11-23 15:37:28 UTC


README

Build Status Coverage Status Scrutinizer Code Quality

Extensible Spam Detection Filters based on this snook.ca post

Installation

Available on Packagist. Autoloading is PSR-4 compatible.

composer require cmdz/spam-canner

Usage

Filters are located in the src/Filters directory. You can add your own filters as well, they just need to implement CmdZ\SpamCanner\Filters\FilterInterface and then add them to the $filters array that you pass to Score()

$spamScoreIncrease = 1;
$currentCommentBody = 'abcd';
$previousCommentBody = 'abcd';

$testLink = 'http://www.site.de';
$spammyTlds = ['de'];
$domainParser = new \CmdZ\SpamCanner\Utilities\DomainParser;

$filters = [
  new BodyInPreviousComment($spamScoreIncrease, $currentCommentBody, $previousCommentBody),
  new Tlds($spamScoreIncrease, $testLink, $spammyTlds, $domainParser)
];

$utils = new \CmdZ\SpamCanner\Utilities\Utilities;
$score    = new Score($filters, $utils);
$result   = $score->getScore();
$expected = 2;

Available Filters

See snook.ca post for the ideas behind each filter.

Testing

$ phpunit

License

The MIT License (MIT). Please see the License File for more information.