unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-5.0)
Page:
Section:
Apropos / Subsearch:
optional field

Mail::Message::Head::SUserrContributed PerlMail::Message::Head::SpamGroup(3pm)



NAME
       Mail::Message::Head::SpamGroup - spam fighting related header fields

INHERITANCE
        Mail::Message::Head::SpamGroup
          is a Mail::Message::Head::FieldGroup
          is a Mail::Reporter

SYNOPSIS
        my $sg = Mail::Message::Head::SpamGroup->new(head => $head, ...);
        $head->addSpamGroup($sg);

        my $sg = $head->addSpamGroup( <options> );
        $sg->delete;

        my @sgs = $head->spamGroups;

DESCRIPTION
       A spam group is a set of header fields which are added by spam
       detection and spam fighting software.  This class knows various details
       about that software.

METHODS
       Constructors

       $obj->clone

           See "Constructors" in Mail::Message::Head::FieldGroup

       $obj->fighter(NAME, [SETTINGS])

       Mail::Message::Head::SpamGroup->fighter(NAME, [SETTINGS])

           Get the SETTINGS of a certain spam-fighter, optionally after
           setting them.  The knownFighters() method returns the defined
           names.  The names are case-sensitive.

            Option --Default
            fields   <required>
            isspam   <required>
            version  undef

           . fields => REGEXP

               The regular expression which indicates which of the header
               fields are added by the spam fighter software.

           . isspam => CODE

               The CODE must return true or false, to indicate whether the
               spam fighter thinks that the message contains spam.  The CODE
               ref is called with the spamgroup object (under construction)
               and the header which is inspected.

           . version => CODE

               Can be called to collect the official name and the version of
               the software which is used to detect spam.  The CODE ref is
               called with the spamgroup object (under construction) and the
               header which is inspected.

           example: adding your own spam-fighter definitions

            Mail::Message::Head::SpamGroup->fighter( 'MY-OWN',
               fields => qw/^x-MY-SPAM-DETECTOR-/,
               isspam => sub { my ($sg, $head) = @_; $head->fields > 100 }
              );

       $obj->from(HEAD|MESSAGE, OPTIONS)

           Returns a list of "Mail::Message::Head::SpamGroup" objects, based
           on the specified MESSAGE or message HEAD.

            Option--Default
            types   undef

           . types => ARRAY-OF-NAMES

               Only the specified types will be tried.  If the ARRAY is empty,
               an empty list is returned.  Without this option, all sets are
               returned.

       $obj->habeasSweFieldsCorrect([MESSAGE|HEAD])

       Mail::Message::Head::SpamGroup->habeasSweFieldsCorrect([MESSAGE|HEAD])

           Returns a true value if the MESSAGE or HEAD contains "Habeas-SWE"
           fields which are correct.  Without argument, this is used as
           instance method on an existing Spam-Group.

           example: checking Habeas-SWE fields

            if(Mail::Message::Head::SpamGroup->habeasSweFieldsCorrect($message))
            {   $message->label(spam => 0);
            }

            my $sg = $message->head->spamGroups('Habeas-SWE');
            if($sg->habeasSweFieldsCorrect) { ... };

            use List::Util 'first';
            if(first {$_->habeasSweFieldsCorrect} $head->spamGroups)
            {   ...
            }

       $obj->implementedTypes

       Mail::Message::Head::SpamGroup->implementedTypes

           See "Constructors" in Mail::Message::Head::FieldGroup

       $obj->isSpamGroupFieldName(NAME)

       Mail::Message::Head::SpamGroup->isSpamGroupFieldName(NAME)

       $obj->knownFighters

       Mail::Message::Head::SpamGroup->knownFighters

           Returns an unsorted list of all names representing pre-defined
           spam-fighter software.  You can ask details about them, and
           register more fighters with the fighter() method.

       Mail::Message::Head::SpamGroup->new(FIELDS, OPTIONS)

           Construct an object which maintains one set of fields which were
           added by spam fighting software.

            Option  --Defined in     --Default
            head      Mail::Message::Head::FieldGroup  undef
            log       Mail::Reporter   'WARNINGS'
            software  Mail::Message::Head::FieldGroup  undef
            trace     Mail::Reporter   'WARNINGS'
            type      Mail::Message::Head::FieldGroup  undef
            version   Mail::Message::Head::FieldGroup  undef

           . head => HEAD

           . log => LEVEL

           . software => STRING

           . trace => LEVEL

           . type => STRING

           . version => STRING

       $obj->spamDetected([BOOLEAN])

           Returns (after setting) whether this group of spam headers thinks
           that this is spam.  See
           Mail::Message::Head::Complete::spamDetected().

           example:

             die if $head->spamDetected;

             foreach my $sg ($head->spamGroups)
             {   print $sg->type." found spam\n" if $sg->spamDetected;
             }

       The header

       $obj->add((FIELD, VALUE) | OBJECT)

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->addFields([FIELDNAMES])

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->attach(HEAD)

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->delete

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->fieldNames

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->fields

           See "The header" in Mail::Message::Head::FieldGroup

       $obj->head

           See "The header" in Mail::Message::Head::FieldGroup

       Access to the header

       $obj->software

           See "Access to the header" in Mail::Message::Head::FieldGroup

       $obj->type

           See "Access to the header" in Mail::Message::Head::FieldGroup

       $obj->version

           See "Access to the header" in Mail::Message::Head::FieldGroup

       Internals

       $obj->collectFields([NAME])

           See "Internals" in Mail::Message::Head::FieldGroup

       $obj->detected(TYPE, SOFTWARE, VERSION)

           See "Internals" in Mail::Message::Head::FieldGroup

       Error handling

       $obj->AUTOLOAD

           See "Error handling" in Mail::Reporter

       $obj->addReport(OBJECT)

           See "Error handling" in Mail::Reporter

       $obj->defaultTrace([LEVEL]|[LOGLEVEL, TRACELEVEL]|[LEVEL, CALLBACK])

       Mail::Message::Head::SpamGroup->defaultTrace([LEVEL]|[LOGLEVEL,
       TRACELEVEL]|[LEVEL, CALLBACK])

           See "Error handling" in Mail::Reporter

       $obj->details

           See "Error handling" in Mail::Message::Head::FieldGroup

       $obj->errors

           See "Error handling" in Mail::Reporter

       $obj->log([LEVEL [,STRINGS]])

       Mail::Message::Head::SpamGroup->log([LEVEL [,STRINGS]])

           See "Error handling" in Mail::Reporter

       $obj->logPriority(LEVEL)

       Mail::Message::Head::SpamGroup->logPriority(LEVEL)

           See "Error handling" in Mail::Reporter

       $obj->logSettings

           See "Error handling" in Mail::Reporter

       $obj->notImplemented

           See "Error handling" in Mail::Reporter

       $obj->print([FILEHANDLE])

           See "Error handling" in Mail::Message::Head::FieldGroup

       $obj->report([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->reportAll([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->trace([LEVEL])

           See "Error handling" in Mail::Reporter

       $obj->warnings

           See "Error handling" in Mail::Reporter

       Cleanup

       $obj->DESTROY

           See "Cleanup" in Mail::Reporter

       $obj->inGlobalDestruction

           See "Cleanup" in Mail::Reporter

DETAILS
       Spam fighting fields

       Detected spam fighting software

       The Mail::Message::Head::SpamGroup class can be used to detect fields
       which were produced by different spam fighting software.

       o   SpamAssassin

           These fields are added by Mail::SpamAssassin, which is the central
           implementation of the spam-assassin package.  The homepage of this
           GPL'ed project can be found at <http://spamassassin.org>;.

       o   Habeas-SWE

           Habeas tries to fight spam via the standard copyright protection
           mechanism: Sender Warranted E-mail (SWE). Only when you have a
           contract with Habeas, you are permitted to add a few copyrighted
           lines to your e-mail. Spam senders will be refused a contract.
           Mail clients which see these nine lines are (quite) sure that the
           message is sincere.

           See <http://www.habeas.com>; for all the details on this commercial
           product.

       o   MailScanner

           The MailScanner filter is developed and maintained by transtec
           Computers.  The software is available for free download from
           <http://www.sng.ecs.soton.ac.uk/mailscanner/>;.  Commercial support
           is provided via <http://www.mailscanner.biz>;.

DIAGNOSTICS
       Error: Package $package does not implement $method.

           Fatal error: the specific package (or one of its superclasses) does
           not implement this method where it should. This message means that
           some other related classes do implement this method however the
           class at hand does not.  Probably you should investigate this and
           probably inform the author of the package.

SEE ALSO
       This module is part of Mail-Box distribution version 2.082, built on
       April 28, 2008. Website: http://perl.overmeer.net/mailbox/

LICENSE
       Copyrights 2001-2008 by Mark Overmeer. For other contributors see
       ChangeLog.

       This program is free software; you can redistribute it and/or modify it
       under the same terms as Perl itself.  See
       http://www.perl.com/perl/misc/Artistic.html



perl v5.10.0                      2008-04-2Mail::Message::Head::SpamGroup(3pm)