gnus: SpamOracle

 
 9.17.6.11 Using SpamOracle with Gnus
 ....................................
 
 An easy way to filter out spam is to use SpamOracle.  SpamOracle is an
 statistical mail filtering tool written by Xavier Leroy and needs to be
 installed separately.
 
    There are several ways to use SpamOracle with Gnus.  In all cases,
 your mail is piped through SpamOracle in its _mark_ mode.  SpamOracle
 will then enter an ‘X-Spam’ header indicating whether it regards the
 mail as a spam mail or not.
 
    One possibility is to run SpamOracle as a ‘:prescript’ from the See
 Mail Source Specifiers, (SeeSpamAssassin).  This method has the
 advantage that the user can see the _X-Spam_ headers.
 
    The easiest method is to make ‘spam.el’ (SeeSpam Package) call
 SpamOracle.
 
    To enable SpamOracle usage by ‘spam.el’, set the variable
 ‘spam-use-spamoracle’ to ‘t’ and configure the ‘nnmail-split-fancy’ or
 ‘nnimap-split-fancy’.  SeeSpam Package.  In this example the
 ‘INBOX’ of an nnimap server is filtered using SpamOracle.  Mails
 recognized as spam mails will be moved to ‘spam-split-group’, ‘Junk’ in
 this case.  Ham messages stay in ‘INBOX’:
 
      (setq spam-use-spamoracle t
            spam-split-group "Junk"
            ;; for nnimap you’ll probably want to set nnimap-split-methods, see the manual
            nnimap-split-inbox '("INBOX")
            nnimap-split-fancy '(| (: spam-split) "INBOX"))
 
  -- Variable: spam-use-spamoracle
      Set to ‘t’ if you want Gnus to enable spam filtering using
      SpamOracle.
 
  -- Variable: spam-spamoracle-binary
      Gnus uses the SpamOracle binary called ‘spamoracle’ found in the
      user’s PATH.  Using the variable ‘spam-spamoracle-binary’, this can
      be customized.
 
  -- Variable: spam-spamoracle-database
      By default, SpamOracle uses the file ‘~/.spamoracle.db’ as a
      database to store its analysis.  This is controlled by the variable
      ‘spam-spamoracle-database’ which defaults to ‘nil’.  That means the
      default SpamOracle database will be used.  In case you want your
      database to live somewhere special, set ‘spam-spamoracle-database’
      to this path.
 
    SpamOracle employs a statistical algorithm to determine whether a
 message is spam or ham.  In order to get good results, meaning few false
 hits or misses, SpamOracle needs training.  SpamOracle learns the
 characteristics of your spam mails.  Using the _add_ mode (training
 mode) one has to feed good (ham) and spam mails to SpamOracle.  This can
 be done by pressing ‘|’ in the Summary buffer and pipe the mail to a
 SpamOracle process or using ‘spam.el’’s spam- and ham-processors, which
 is much more convenient.  For a detailed description of spam- and
 ham-processors, SeeSpam Package.
 
  -- Variable: gnus-group-spam-exit-processor-spamoracle
      Add this symbol to a group’s ‘spam-process’ parameter by
      customizing the group parameter or the
      ‘gnus-spam-process-newsgroups’ variable.  When this symbol is added
      to a group’s ‘spam-process’ parameter, spam-marked articles will be
      sent to SpamOracle as spam samples.
 
      _WARNING_
 
      Instead of the obsolete
      ‘gnus-group-spam-exit-processor-spamoracle’, it is recommended that
      you use ‘(spam spam-use-spamoracle)’.  Everything will work the
      same way, we promise.
 
  -- Variable: gnus-group-ham-exit-processor-spamoracle
      Add this symbol to a group’s ‘spam-process’ parameter by
      customizing the group parameter or the
      ‘gnus-spam-process-newsgroups’ variable.  When this symbol is added
      to a group’s ‘spam-process’ parameter, the ham-marked articles in
      _ham_ groups will be sent to the SpamOracle as samples of ham
      messages.
 
      _WARNING_
 
      Instead of the obsolete ‘gnus-group-ham-exit-processor-spamoracle’,
      it is recommended that you use ‘(ham spam-use-spamoracle)’.
      Everything will work the same way, we promise.
 
    _Example:_ These are the Group Parameters of a group that has been
 classified as a ham group, meaning that it should only contain ham
 messages.
       ((spam-contents gnus-group-spam-classification-ham)
        (spam-process ((ham spam-use-spamoracle)
                       (spam spam-use-spamoracle))))
    For this group the ‘spam-use-spamoracle’ is installed for both ham
 and spam processing.  If the group contains spam message (e.g., because
 SpamOracle has not had enough sample messages yet) and the user marks
 some messages as spam messages, these messages will be processed by
 SpamOracle.  The processor sends the messages to SpamOracle as new
 samples for spam.