Net::Akismet - Perl interface to Akismet - comment and trackback spam fighter
my $akismet = Net::Akismet->new( KEY => 'secret-baba-API-key', URL => 'http://example.blog.net/', ) or die('Key verification failure!'); my $verdict = $akismet->check( USER_IP => '10.10.10.11', COMMENT_USER_AGENT => 'Mozilla/5.0', COMMENT_CONTENT => 'Run, Lola, Run, the spam will catch you!', COMMENT_AUTHOR => 'dosser', COMMENT_AUTHOR_EMAIL => 'dosser@subway.de', REFERRER => 'http://lola.home/', ) or die('Is the server here?'); if ('true' eq $verdict) { print "I found spam. I am a spam-founder!\n"; }
Net::Akismet->new(PARAM => ...);
Acceptable parameters:
The API key being verified for use with the API.
The front page or home URL of the instance making the request. For a blog or wiki this would be the front page.
If supplied the value is prepended to this module's identification string to become something like:
your-killer-app/0.042 Perl-Net-Akismet/0.01 libwww-perl/5.8
Otherwise just Akismet Perl's user agent string will be sent.
If supplied, the host of the service API. The default is rest.akismet.com
If supplied, the API version. The default is 1.1
If verification of the key was unsuccessful new() returns undef.
new()
undef
$akismet->check(USER_IP => ..., COMMENT_CONTENT => ..., ...)
To be or not to be... check is meant to tell you. Give it enough details about the comment and expect 'true', 'false' or undef as a result. 'true' means spam, 'false' means not spam, undef is returned on errror in submission of the comment.
check
'true'
'false'
Acceptable comment characteristics:
Required. Represents the IP address of the comment submitter.
Required. User agent string from the comment submitter's request.
Comment text.
HTTP Referer header.
Referer
Permanent link to the subject of the comment.
May be blank, 'comment', 'trackback', 'pingback', or a made up value like 'registration'.
Name of submitter.
Submitter e-mail.
Submitter web page.
Reports a certain comment as spam. Accepts the same arguments as check().
check()
In case of failed submission returns undef, otherwise - a perl-known truth.
This call is intended for the marking of false positives, things that were incorrectly marked as spam. It takes identical arguments as check() and spam().
spam()
Although almost all comment characteristics are optional, performance can drop dramatically if you exclude certain elements. So please, supply as much comment detail as possible.
http://akismet.com/
http://akismet.com/development/api/
Nikolay Bachiyski <nb@nikolay.bg>
Peter Pentchev
John Belmonte
Copyright (C) 2006, 2007, 2008 by Nikolay Bachiyski
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.7 or, at your option, any later version of Perl 5 you may have available.
$Id: Akismet.pm 38 2008-06-05 17:15:12Z humperdink $
To install Net::Akismet, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Net::Akismet
CPAN shell
perl -MCPAN -e shell install Net::Akismet
For more information on module installation, please visit the detailed CPAN module installation guide.