NAME

Mail::Decency::ContentFilter::CRM114

DESCRIPTION

Filters messages trough crm114 discriminator.

CONFIG

---

disable: 0

cmd_train: '/usr/share/crm114/mailreaver.crm --fileprefix=%user% -u %user% --report_only'
cmd_learn_spam: '/usr/share/crm114/mailfilter.crm --fileprefix=%user% -u %user% --learnspam'
cmd_unlearn_spam: '/usr/share/crm114/mailfilter.crm --fileprefix=%user% -u %user% --learngood'
cmd_learn_ham: '/usr/share/crm114/mailfilter.crm --fileprefix=%user% -u %user% --learngood'
cmd_unlearn_ham: '/usr/share/crm114/mailfilter.crm --fileprefix=%user% -u %user% --learnspam'


# set a global crm directory .. for isp like configs, not per user
#   the "/" at the end is important!!
default_user: /var/spool/crm114/

# weight for known innocent (good) mails
#weight_innocent: 20

# weight for known spam (bad) mails
#weight_spam: -100

# translate crm114 generated weightings into weightings
#   used in the content filter context (can't use each's
#   content filter out, cause they use their own scale)
#   the following translated any crm114 score equal or
#   bigger then 1 to 100, any score between 1 and -2 to
#   internal score of 0 and anything below 
weight_translate:
    1: 100
    -2: 0
    -3: -100

INSTALL CRM114

This is a very simplified installation. For detailed information and more in-depth information refer to google.

Assuming you don't want an per-user but a global css database...

First of get crm. In a debian system that would be:

aptitude install crm114

(for source compilation or other distries refer to google)

Then make some crm114 directory. This might get large (depending on the amount of trained mails)

mkdir /var/spool/crm114
cd /var/spool/crm114

Now copy the basic configuration files there

cp /usr/share/crm114/mailfilter.cf .

Create empty priority and whitelist files

touch rewrites.mfp priolist.mfp whitelist.mfp blacklist.mfp

Create empty css files for spam and ham

cssutil -b -r spam.css
cssutil -b -r nonspam.css

Make some modifications in the config file mailfilter.cf (again: google for info about that matter)

:spw: /mypassword/
:add_verbose_stats: /no/
:add_extra_stuff: /no/
:rewrites_enabled: /no/
:spam_flag_subject_string: //
:unsure_flag_subject_string: //
:log_to_allmail.txt: /no/

Mark the following for later tuning:

:good_threshold: /10.0/
:spam_threshold: /-5.0/

Now allow your decency filter user write-access to the config dir

chown -R mailuser:mailgroup /var/spool/crm114

TRAIN

Train your first mails into crm like this.

/usr/share/crm114/mailtrainer.crm --spam=/path/to/spamdir --good=/path/to/hamdir \
    --fileprefix=/var/spool/crm114/

CLASS ATTRIBUTES

METHODS

handle_filter_result

get_user_fallback

CRM114 runs normally with $USER_HOME/.crm114 .. this fallback method implements that. As long as no "cmd_user" is set, it will be used.

SEE ALSO

AUTHOR

Ulrich Kautz <uk@fortrabbit.de>

COPYRIGHT

Copyright (c) 2010 the "AUTHOR" as listed above

LICENCSE

This library is free software and may be distributed under the same terms as perl itself.