Mail::SpamAssassin::PerMsgStatus - per-message status (spam or not-spam)
my $spamtest = new Mail::SpamAssassin ({ 'rules_filename' => '/etc/spamassassin.rules', 'userprefs_filename' => $ENV{HOME}.'/.spamassassin.cf' }); my $mail = Mail::Audit->new();
my $status = $spamtest->check ($mail); if ($status->is_spam()) { $status->rewrite_mail (); $mail->accept("caught_spam"); } ...
The Mail::SpamAssassin check()
method returns an object of this class. This object encapsulates all the
per-message state.
After a mail message has been checked, this method can be called. It will return 1 for mail determined likely to be spam, 0 if it does not seem spam-like.
After a mail message has been checked, this method can be called. It will return a comma-separated string, listing all the symbolic test names of the tests which were trigged by the mail.
After a mail message has been checked, this method can be called. It will return the number of hits this message incurred.
After a mail message has been checked, this method can be called. It will return the number of hits required for a mail to be considered spam.
Deliver a ``spam report'' on the checked mail message. This contains details of how many spam detection rules it triggered.
The report is returned as a multi-line string, with the lines separated by
\n
characters.
Rewrite the mail message. This will add headers, and possibly body text, to reflect it's spam or not-spam status.
The modifications made are as follows:
The string *****SPAM*****
is prepended to the subject.
A string, Yes, hits=nn required=nn tests=...
is set in this header to reflect the filter status. The keys in this string
are as follows:
Set to YES
.
Set to text/plain
, in order to defang HTML mail or other active content that could ``call
back'' to the spammer.
The SpamAssassin report is added to top of the mail message body.
A string, No, hits=nn required=nn tests=...
is set in this header to reflect the filter status. The keys in this string
are the same as for spam mails (see above).
If this mail message has a high enough hit score, report it to
spam-tracking services straight away, without waiting for user
confirmation. See the documentation for spamassassin's -r
switch for details on what spam-tracking services are used.
Mail::SpamAssassin
spamassassin