What Is This?
CRM-114 is a powerful program for classifying text.
Around here, we use it to fight spam, unsolicited commercial email,
and other unwanted email.
At present, there's only a few of us using it; if you run into
problems, though, get in touch with one of us and maybe we can
help.
This page outlines what you need to do in order to start using
CRM-114 to fight bad email in your CIS account.
If you're using email provided elsewhere on campus (say, through ITS
or some other department), you'll have to contact them to
see what options you have for fighting spam.
If you don't mind, let me offer you some frank advice, before we begin:
You might want to check and see what kind of spam fighting tools
your email program already provides you; it might well be sufficient for your
needs.
For example, we know that
Mozilla
Thunderbird
provides a built-in spam filter that some people use with good results.
Apple's
Mail tool also has
built in spam filtering.
I specifically
discourage you from using
Microsoft's
Outlook tool: its spam filter
can't learn and adapt to
your email, and really isn't worth the trouble to turn it on.
Windows users might consider, in addition to
Thunderbird,
the
Opera and
Eudora
mail clients.
If it sounds as if I'm warning you off CRM-114, I'm not.
But, it is true that CRM-114 isn't for everyone.
Obviously, if your email tool doesn't already provide
spam filtering and management, then CRM-114 is a good
choice. People who use
Pine,
Mutt,
and even CDE
dtmail 
can use CRM-114 to add
spam management to their email environment.
But, most importantly, CRM-114 is useful to those people
whose email simply overwhelms the existing spam tools
they have, and need something more powerful.
In some ways, CRM-114 is the TacNuke of the spam fighting world.
However, with that power comes some responsibility on your part, and
a little bit of work.
You see, CRM-114 learns what
your spam looks like, and adapts itself
to it.
In the beginning (usually just a few days, or perhaps one week),
you'll have to train it to recognize what kind of email you want to see,
and what kind you don't.
After it's trained, CRM-114 generally doesn't require more than a few
minutes of your time for you to check its performance over, to ensure
that it's doing what you want.
Spam, as you know, changes over time; the spam you got last year, or even
last month, doesn't look like the spam you're getting today, does it?
That's where a tool like CRM-114 really shines: you can quickly train it
to recognize the new spam as time goes on.
So, let's get started.
Logging Into Your Account
The steps outlined on this page can be run from any
Sun Solaris system in the Center.
If you're working remotely, use a tool like
ssh
to log onto a DIP or UDIP lab machine.
You don't need a GUI, or graphic, environment to
make these changes; you just need a "terminal"
window and a text editor.
Pick whichever are your favorites:
rxvt or
xterm,
pico,
vi,
textedit, and so on...
If you aren't comfortable working in a Unix environment,
like Solaris, the CIS system administrators can do these
tasks on your behalf. Send them an email explaining
what you need, and they'll take it from there.
Suspending Your Incoming Email
While you make changes to your email environment,
it's very important that you suspend the delivery
of incoming messages.
Just imagine what happens if the system starts
the delivery of a new mail message to your account,
and at the same moment, you're in the middle of writing
a file in your account. The system could get confused,
it might only see part of your changes; the mail
could be corrupted or lost.
Therefore, it's critically important that, while you're
editing files that direct how your email environment work,
you temporarily suspend the delivery of new messages.
Don't worry,
you won't lose email, they'll just be held by the system
in a queue to be delivered later.
You do this by typing the following command.
chmod +t ~
It is critically important that when you're done editing
your email configuration, you
resume delivery of email
to your account. If you don't do this, you might wonder
why you aren't getting any email!
So, even if you skip other steps in this document,
always make sure you
turn email delivery back on.
Pre-existing CRM-114 Installations
If you're already a user of CRM-114, you should be careful with
some of the commands in this document.
You could easily overwrite existing configurations and CSS files
that hold the knowledge you've trained into CRM-114 about your
spam.
But, sometimes, you might want to start over from scratch.
If you want this, the easiest thing to do is rename your existing
~/.crm directory to something else, as in the following command.
mv ~/.crm ~/.crm.old
On the other hand,
if you're new to CRM-114 and setting it up for the first time,
then just go right ahead with all of the
commands below in this document.
Setting Up Your CRM-114 Directory
CRM-114 requires a small bunch of files in your account; these
files are how it keeps track of what your spam looks like,
special email addresses you might want always accepted or filtered out,
and so on.
This section will set those files up.
To make things easy, we'll put all of our CRM-114 files into a
directory named
.crm in your home account.
Note the leading dot; this will keep it out of your way when you
ls your account.
You can create this directory with the following command.
mkdir -m 0700 ~/.crm
Now, we need to create the files that CRM-114 needs.
We already have a place set up on the system that holds
some starting versions of these files for you to use.
Copy them to the new empty CRM directory.
cp /cis/share/crm/* ~/.crm
You've just created five files in your CRM directory.
You now have to customize them a little bit.
Use your favorite text editor to edit each of the files
listed below.
~/.crm/mailfilter.cf
This is the file that directs how CRM-114 will operate as an email
filter for your account. The version you've just copied has
settings most appropriate for your use here in CIS.
If you want to make other changes, go right head, but be certain
you understand what you're doing; otherwise, just leave the
bulk of the file unchanged.
You need to set a password on your CRM-114 commands.
One of the ways you can control CRM-114, you see, is by sending
email messages to yourself that tell CRM-114 what to do.
In order to ensure that other people can't send messages to your
CRM-114 robot, we just set up a simple password.
Even if you never intend to control CRM-114 this way, you still
need to set a password.
Do this by looking for the line that contains
:spw:
(
secret
pass
word)
and changing the text between the two
/ characters to your
password. Don't delete the
/ characters or any other part
of the line. For example, let's say you chose
jobHorb0
as your password. The password line in this file would look like
:spw: /jobHorb0/
That's the only change you
have to make to this file.
~/.crm/rewrites.mfp
This file is partially set up for you. You don't have to worry
about setting up your mail router names, or its IP address.
All you have to do is change the first couple lines of this file
so that it accurately reflects your email addresses and names.
Replace the first line of the file with lines that list all the
different email addresses that
personally refer to you.
For example, you wouldn't list mailing lists that you subscribe
to, but you would list any common aliases you get mail under.
Each address gets one line in the file, and you only have to replace
the text before the
>-> arrow.
The idea is that you want to convert any instances of your email
addresses, whatever they may be, to the same string,
MyEmailAddress.
This will improve CRM-114's ability to recognize mail with your
email address in it.
Replace the second line of the file with lines that list all the
personal names that you receive email under. This can be harder
to predict, so don't worry about it too much; just list the common
names that use when they address mail to you.
You don't have to list every single alias and nickname!
The intent is similar to the one above; we want to intercept any
instances of common names with which people refer to you, and
change them all to
MyEmailName so that CRM-114 can better see
when something appears to really be "for you".
Here's an example of the file that you might wind up with.
krz@cis.rit.edu>->MyEmailAddress
rskpci@rit.edu>->MyEmailAddress
rskpci@ritvax.isc.rit.edu>->MyEmailAddress
[[:space:]]Bob Krzaczek>->MyEmailName
[[:space:]]Robert Krzaczek>->MyEmailName
mail.cis.rit.edu>->MyLocalMailRouter
saturn.cis.rit.edu>->MyLocalMailRouter
129.21.57.10>->MyLocalMailRouterIP
~/.crm/whitelist.mfp
You can leave this file empty, if you wish.
Or, you can use it to identify email messages that should
never ever be filtered out.
That is, if a message matches something in this file,
it will always be considered good email, never spam.
Obviously, you should be careful with this, since it
circumvents the entire spam filtering process.
If there are email addresses from which you never
receive spam, and absolutely cannot risk that they get
filtered into spam, you can list them here.
For example, let's say that I have two friends whose
email addresses aren't publicly known. Spammers will
never forge email as if it came from them.
These friends are fanatical about keeping their computers
free of worms and virus, and never pass spam on to their
friends.
I might add them to the whitelist file this way:
From:.*tim@example\.com
From:.*pat@example\.com
Here's another way this file might be used. I have a friend
Mike that always adds a special extra line in the emails he
sends.
It's a unique string, it only appears in mail that he sends,
and it isn't going to appear in emails
from spammers.
He's told me privately what the string is, so I've added it to
my whitelist. (Obviously, if you do this,
don't use this string
shown here, since this is a public page and spammers might use it).
X-Ice-Weasels: foobar
Having shown you all that... you don't have to use this file at
all. You can just leave it empty. In practise, this file is
usually empty, or very short; CRM-114 rarely needs the extra
instruction that this file provides. I've included the explanation
here for your reference, but if you're setting CRM-114 up for the
first time, feel free to skip this and leave it empty.
~/.crm/blacklist.mfp
This file has the same format as your whitelist file above, but
it has exactly the opposite effect.
Any mail message that matches a pattern in this file is
always
unconditionally considered to be bad email (spam).
Typically, you would use this file to filter out mail from a
particularly bad domain or person.
In practice, though, you don't need to use this file; training CRM-114
to recognize spam works well, and you can leave this file empty.
But, if you need this extra "last line of defense" against some tricky
spam that CRM-114 can't learn for some reason, this is where you use it.
Be very careful that you don't add a pattern that matches legitimate
email!
~/.crm/priolist.mfp
This file is another way to identify messages that should
be blacklisted or whitelisted in your account.
Its syntax is a little different than the previous files,
though.
You shouldn't need to use this file, so leave it empty.
CRM-114 Sparse Spectra files
There are two files left for you to add to your
special CRM-114 directory.
Unlike the
.mfp files above that you might edit from
time to time, you'll only have to perform these steps once.
Here, we'll initialize the files that CRM-114 maintains
its knowledge of what is spam and what is good email.
These are binary files; you can't edit them.
Just run the following two commands, and you're done here;
trust me.
Each command will print a whole bunch of statistics, but since
you're creating the files for the first time, they should all
be zero.
cssutil -b -r ~/.crm/spam.css
cssutil -b -r ~/.crm/nonspam.css
Now, at this point, CRM-114 is ready to go.
Next we'll hook it into your email account.
You're done with the hard parts; from here, it's all downhill.
Configuring Procmail
Have you already set up procmail in your account?
If you have, then you can skip this step.
If you haven't, or you aren't sure, then you should
hop over to the
ConfiguringProcmail topic.
When you're done, hit your browser's
back button and continue
with setting up CRM-114.
Do it now; don't worry, we'll wait.
Adding CRM-114 Recipes to Procmail
Add the following line to your
.procmailrc file in your
home directory.
Use any text editor you like for this.
INCLUDERC=/cis/share/procmail/crm114
By default, a folder named
spam will be used by the
crm114
recipe to hold the mail it believes is bad. If you want to use
a folder with a different name, set the
SPAMFOLDER variable
in your
.procmailrc file
before you reference the script.
For example, if I wanted my email spam to appear in a folder
named
junk, my
.procmailrc would include this text:
SPAMFOLDER=junk
INCLUDERC=/cis/share/procmail/crm114
Okay, you're done. You're ready to turn email back on for your account.
Resuming Your Incoming Email
Now that you're done with all the major changes to your email
environment, it's time to resume the delivery of email
to your account.
Remember, you
temporarily suspended it
when you started configuring CRM-114 in your account.
You do this with the following command.
chmod -t ~
Any mail that the system received on your behalf while delivery
was suspended was kept in a queue outside of your account.
Don't worry, the mail isn't lost; you can expect the messages
to arrive any time in the next few hours, depending on when the
system rechecks your account.
Training CRM-114
Okay, so... now what? CRM-114 is happily examining your email
as it arrives, and procmail is sorting those messages into
your
spam or
inbox mail folders.
But what is CRM-114 using to recognize good and bad mail?
Nothing! You haven't trained it yet.
For the next few days, you'll need to teach CRM-114 what
good email looks like, and what spam looks like.
CRM-114 is going to make mistakes for a while, because it
just hasn't seen enough of your mail yet to know what you
like and what you don't like.
Because of this, you'll need to check both your new
spam folder
as well as your
inbox regularly.
When you see mail in the wrong place (that is, when you see
legitimate email in your
spam folder, or you see spam in
your
inbox), you'll need to send that message back to
CRM-114 so it learns from its mistake.
After a few days, maybe a week at most, CRM-114 should be
working well enough that you only need to check your spam
box once a day or so to fish out any mistakes that CRM-114
might make.
Right now, though, you'll be checking your spam folder as
often as you check your inbox.
Here is a key concept: you train CRM-114 by correcting it when
it makes mistakes. As it makes fewer and fewer mistakes, you
can relax on how often you check your spam folder.
But
you must monitor your spam folder from time to time.
Spam is constantly changing and evolving (unfortunately), and
you need to keep an eye on it to keep CRM-114 accurate.
In practice, this is a few minutes of your time every other day
or so; that's not so bad for a spam-free inbox, is it?
Generally, this is the pattern you'll follow:
- Read your inbox
- Send any emails that you decide are spam back to CRM-114 to be learned as spam.
- Read your spam folder
- Send any emails that know are legitimate back to CRM-114 to be learned as nonspam. You also might move those messages into your inbox.
- Delete everything left in your spam folder.
Don't forget that last step. When CRM-114 is working well for
you, you'll be checking your spam filter maybe once a day or
so. We don't want the spam email to consume all available space
in your account, so after you've looked for any good mail that
got misclassified as spam, delete the rest. Don't open them, don't
read them, just nuke them.
So, how do we train CRM-114? There are two ways. Which one you
choose is mostly up to the mail client that you read your email
with.
- Training Method One means that you forward the message to one of two special email addresses we'll set up in your account: for example, let's say your account is rsk4468 in CIS, and you have a mail message that you need to teach to CRM-114 as spam. You would bounce, or forward, this email message to
rsk4468-spam@cis.rit.edu
- Training Method Two means that you forward the message back to yourself. You don't use any special addresses, instead you add a line text at the very top of the message body, before everything else. This text tells CRM-114 that the message is spam, and it includes the secret password you set up previously.
Which one you choose is entirely up to you. If you have a scriptable
email client, one that can add text to messages for you from a menu
command or a special keystroke, then
Method Two is better.
Otherwise, you might be better off with
Method One, since it needs
less typing on your part.
These aren't exclusive, by the way. You can set them both up, and use
whichever one works best for you. Some people use multiple email clients
with different feature sets. Choose either, or both, to match your
work habits.
Training Method One
To use training method one, first choose two words. These should be
short words, and you'll use them as part of the addresses that instruct
CRM-114 to learn that a message is "good" or "bad". You can use words
like "good" and "bad", "nonspam" and "spam", "ham" and "spam", "yes"
and "no"... whatever you like.
Let's say you chose "good" and "bad" as your words.
First, create a file
~/.qmail-good with your text editor
and make it contain this single line.
|/cis/bin/mailfilter.crm --learnnonspam --force --fileprefix=$HOME/.crm/
Now create another file using the other word you chose (in my example,
this would be
~/.qmail-bad) and it should contain.
|/cis/bin/mailfilter.crm --learnspam --force --fileprefix=$HOME/.crm/
Now, with those two files in place, you can train CRM-114 easily.
Let's say that your account name is
rsk4468, and you've set up
.qmail-good and
.qmail-bad files.
- If you want CRM-114 to learn that a particular message in your inbox is spam, you would bounce or forward it to
rsk4468-bad@cis.rit.edu
- If you want CRM-114 to learn that a particular message in your spam folder is not spam, you would bounce or forward it to
rsk4468-good@cis.rit.edu
Why do we encourage you to pick your own words, instead of just
telling you to use
spam and
nonspam, or
bad and
good, or
whatever? Because this is a public page. Spammers can read this
just like you can (and, due to Google, they
will).
If we told you what to use, they'd send their messages to the same
addresses as well.
But, by having you choose your own words (maybe in a language other
than English!), they won't know what words will get their spam into
your inbox. So, be creative, and choose words that mean something
to
you.
Training Method Two
Instead of setting up two extra mailboxes for yourself, the other
way to train CRM-114 is by forwarding the message you need it to
learn back to yourself, but with an extra line of text prepended
to its body.
Remember the password
you set up in mailfilter.cf?
That's the password you use here.
Let's say you have an email message that CRM-114 didn't recognize as
spam, so it got into your inbox.
Now, you want it to be learned as spam.
Simply send the message back to yourself again, but first, insert a
single line of text at the very top of the message body that looks
like the following. Obviously, replace the password you see here
(
jobHorb0) with the password you chose.
command jobHorb0 spam
When CRM-114 sees that at the top of the message body, it will treat
the rest of the email message as an example of spam.
If the opposite condition occurs: you find some good email in your spam
folder, take the same action, replacing
spam with
nonspam in
the command line.
This approach is certainly simpler than
Method One, above.
However, because it requires you to insert text into every message
you train CRM-114 with, it's generally better if you can script it
or otherwise convince your mail program to do it for you.
PatrickStein has just those kind of instructions for Apple's Mail
tool in a later section.
Using CRM-114 With Pine
When viewing a mail message, it's nice to see just how good or bad
CRM-114 thought it was. To enable this, go to Pine's main menu, and
select
Setup, then
Config. Look for a section labeled
viewer-hdrs
and select
Add Value. Add the string
X-CRM114-Status to this entry.
Pine has a "bounce" command that's disabled by default, but is really
useful for redirecting email messages to another address.
You could use this, for example, to redirect misfiled messages to one
of your CRM-114 training addresses.
Look under
Setup and
Config, and look for an
enable command that
turns on the bounce feature.
Bouncing is better than forwarding when training CRM-114: (no messy
message editing, and fewer keystrokes).
You can also combine bouncing with Pine's "roles", and make the whole
training process just a few keystrokes at most.
Using CRM-114 With Apple Mail
PatrickStein...?
Old page contents below... ignore this...
Old Page contents below...
Don't panic, I'm going to use it all, I'm just restructuring a little bit!
If
Configuring CRM 114
Overview
This page is geared mostly toward configuring CRM-144 for
use as a Spam Filter. Most of the material will focus on
how to set it up for use with the Apple Mail application.
This is not meant to be exhaustive information on CRM-114
or Apple Mail. This is meant merely as a quick start.
The basic interaction is this. You run all of your incoming
mail through CRM-114. It makes an educated (more and more
educated as time goes on) guess as to whether or not the
mail is spam. It marks your message with its guess.
We're going to use some Apple Mail rules to filter the
messages based upon CRM-114's guess.
If CRM-114 guesses incorrectly, then we will send a specially
formatted e-mail message back to ourself to tell CRM-114 how
it should have classified that message.
Preparing Apple Mail's Rules
We're going to add two rules to Apple Mail. One rule will be for
things that CRM-114 has guessed are spam. The other rule will be
for things that we have taught CRM-114.
Call the first rule "CRM-114 Guess". Give it a condition
that the "X-Crm114-Status" header "Begins with" "SPAM".
You will have to select "Edit header list..." to add
"X-Crm114-Status" to the list of available headers.
Have it perform the following actions:
- Mark as Read
- Mark as Flagged
- Stop evaluating rules
Call the second rule "CRM-114 Learned". This rule will catch
the mail that you sent back to CRM-114 to teach it. Give it
a condition that the "X-Crm114-Action" header "Contains"
"LEARN". Again, you will have to select "Edit header list..."
to add "X-Crm114-Action" to the list of available headers.
Have the rule perform the following actions:
- Move message to mailbox: Trash
- Mark as Read
Now, under the "Junk Mail" disable Apple's Junk Mail filtering.
Preparing the CRM 114 Data Files
To do this, you're going to need to be on
titan. You will
see a message when you login to
titan that it is not for
general use. This isn't general use. You're going to log
out of it when you're done setting up these data files.
Now, you will need to add
/cis/staff/krz/crm/bin to your
environment variable
PATH. If you have trouble with this
step, the rest of this guide isn't going to get any easier.
To make sure that this was sufficient, you should try the
command:
% crm -v
This should display a copyright notice from CRM-114. If it
does, then we're on the right track.
Now, you're going to need make a directory for CRM-114 to keep
configuration information in. I would recommend using
${HOME}/share/crm. So, create that directory and go there.
% mkdir -p ${HOME}/share/crm
% cd ${HOME}/share/crm
Now, create a file called
rewrites.mfp that CRM-114 will use
to translate important information about you. My
rewrites.mfp
file looks like this:
pafpci@cis.rit.edu>->MyEmailAddress
stein@cis.rit.edu>->MyEmailAddress
mail.cis.rit.edu>->MyLocalMailRouter
This tells CRM-114 that whenever it sees
pafpci@cis.rit.edu
or
stein@cis.rit.edu, it should consider it my email address
and whenever it sees
mail.cis.rit.edu, it should consider it
MyLocalMailRouter. The reason for this is so that if you have
multiple e-mail addresses that get forwarded to your CIS account
or if you have multiple e-mail addresses in the CIS domain, CRM-114
will not ever end up training separately depending upon which email
address is used in the e-mail.
For use as a Spam Filter, it is convenient to train CRM-114
both with what
is spam and what
is not spam. To this end,
we will create one weights file for "spam" and one weights file
for "nonspam". To do this, issue the following two commands:
% cssutil -b -r spam
% cssutil -b -r nonspam
These commands take some time. They write out fairly sizeable
weights files which CRM-114 uses to keep track of what it has
learned.
You will also need a few other files. You can read about how
to configure these files at the CRM-114 web site (
http://crm114.sourceforge.net/). For now, we're just going to make
them empty.
% touch blacklist.mfp
% touch priolist.mfp
% touch whitelist.mfp
And, you also need some files to adapt CRM-114 to the way it
will be used in e-mail. These are
mailfilter.cf
and
mailfilter.crm. Copy
these into your
${HOME}/share/crm directory.
Then, in your favorite editor, find the line in
mailfilter.cf
that starts with
:spw:. Change what's between the slashes to
some password of your own. Do
not use a password that you be
sad if anyone else guessed. Do
not, for example, use a password
that you also use for any RIT account. This is just supposed to
be so that other people can't train your spam filter. It doesn't
have to be ultra-secure. And, in fact, it won't be ultra-secure
since it's going to get sent back and forth in e-mail a few times
a day (more before CRM-114 starts catching on to what is spam).
Preparing Procmail
The next step will be to get
procmail to run all of your incoming
mail through CRM-114. My
${HOME}/.procmailrc looks like this:
:0fw
|/usr/local/bin/formail -I X-Crm-114-Status
:0fw: crm.lock
|/cis/staff/krz/crm/bin/crm -u /cis/staff/pafpci/share/crm mailfilter.crm
:0a
|/usr/local/bin/formail >> /cis/staff/pafpci/.mailbox
Obviously, you will need to change the
/cis/staff/pafpci/ stuff to
point to your home directory. But, you should leave the
/cis/staff/krz/
stuff alone. The first
procmail rule filters out any previous
status left in the mail by CRM-114. The next rule runs CRM-114 on
the mail. The last rule plops the resulting mail onto the end of
your mailbox.
Then, make yourself a
${HOME}/.qmail file to invoke
procmail:
| preline -f /usr/local/bin/procmail
Checking What We Have Set Up So Far
Send yourself some e-mail. Then, view the full headers of the e-mail
message when you receive it. With Apple Mail, you can do this with
SHIFT-APPLE-H or with the menu item View > Message > Long Headers.
The last two headers should be
X-Crm114-Version and
X-Crm114-Status.
If CRM-114 thought the message was spam, the status will look
something like "=SPAM ( pR: -306.3516 )=". If CRM-114 did not think
the message was spam, the status will look something like
"=Good ( pR: 306.3516 )=".
Adding Applescripts to Train CRM-114
To train CRM-114, we're going to have to send e-mail back to
ourselves (through CRM-114) to tell it what it got wrong. I have
written the scripts
NonSpam___shift-n.scpt
and
Spam___shift-j.scpt.
If you're using Mac OS 10.3.*, then put these scripts in the folder
${HOME}/Library/Scripts/Mail Scripts/ on your Mac. If you're using Mac OS 10.4.*,
then put these scripts in the folder
${HOME}/Library/Scripts/Applications/Mail/
on your Mac.
You will have to edit both scripts to replace the "=pwgoeshere=" with
whatever you used for the CRM-114 password when you editted
mailfilter.cf
above.
Now, open up the Applescript AppleScript Utility. This is in the
Applications > AppleScript folder. It should bring up a preference
pane when you open it. I forget exactly how this looks under 10.3.*. But,
the idea is to enable the "Show Script Menu in menu bar". In 10.3.*, this
will show up before the "Help" menu (and maybe before the "Window" menu?)
in Mail. In 10.4.*, it will be at the right end of the menu bar along
with your "Displays" and "Wireless Signal Strength" and "Battery Power"
and "Clock" and "Spotlight" doo-dads. It's shaped like a little scroll.
If you're using Apple Mail from Mac OS 10.3.*, you can just hit 'SHIFT-n'
on a message that CRM-114 identified as spam but is really non-spam. You
can hit 'SHIFT-j' on a message that CRM-114 identified as good which should
really have been junk. You may have to restart mail or select 'Update Something Or Other' from the scripts menu to get the new scripts to show up.
In Mac OS 10.4.*, you will have to actually select
the script from the menu. Hopefully, they will fix that soon.
The 'SHIFT-j' and 'SHIFT-n' are because that's what we put after the three underscores in the filenames for the scripts. If you want to change those,
go ahead.
Daily Use
The way we set up the "CRM-114 Guess" and "CRM-114 Learned" rules, mail that
CRM-114 thinks is good will not be affected by the rules. Mail that CRM-114
thinks is spam will be flagged and marked as read. This will keep you from
thinking you have twelve new messages even if they are all spam. But, it will
also keep them flagged so that you can easily distinguish them from good
messages you have already read.
You can periodically delete all of the flagged messages that are, in fact, spam.
You can use the "NonSpam" script on any of the flagged messages to teach
CRM-114 that those are not spam.
Caveats
I had to edit the scripts dramatically to get them to work with 10.4.*.
I'm not sure they still work with 10.3.*. There is a funky thing where
a message is supposed to have an Applescript property that references
the mailbox the message belongs to. Unfortunately, that only seems to
work
if the message is still in the Inbox and
if you're on 10.3.*.
So, if you'd like to have the rules move the Guessed spam into a separate
folder, you're going to have trouble with the script figuring out where
to send the mail. So, you may need to hack the scripts a bit to suit your
needs.
And, for some reason, Apple Mail under 10.4.* doesn't seem to always
apply my rules. I mean, I look at the long headers and there is clearly
an
X-Crm114-Status: SPAM (blah) line. Yet, even when I explicitly tell
Apple Mail to apply the rules, it does not trigger the rule for some
messages. I'm not sure why yet.
--
PatrickStein - 05 May 2005