About Elegant Chaos
About me and my friends
Software from Elegant Chaos
Other stuff...

Report Spam

The current version is 1.3. The latest release notes are available here.

Report Spam was written by Sam Deane, and is Copyright (C) 1999 Elegant Chaos. The Outlook Express plug-in was written by Omar Shahine - thanks Omar!

What Is It?

This AppleScript is an attempt to combat unsolicited email (Spam), by automating the process of reporting it to the relevant authorities.

NB: I strongly advise you NOT to use this script as part of an automatic spam filter. For one thing, your filter might get it wrong and you may end up falsely accusing people of spamming. For another thing, you may cause a horrible mail loop. In any case, you use it at your own peril, and I will not be held responsible for the consequences - you have been warned!

Where Do I Get It?

You can get it here.

How Much Does It Cost?

This script is DonationWare!

As a point of principle I don't want to charge money for something that fights Spam, but if you want to support its maintenance and future development, all donations are welcome (you could always register some of my other shareware if you find something that you like).

Payments for any of my software can be made via Kagi, either by credit card online at this secure page, or by phone, fax or post using a special registration application.

How Does It Work?

What the script tries to do is look at the "Received:" lines in the message header, and extract the domain names of all the machines that have passed on the message. It then composes a message to the "postmaster@" address for these domains, which explains what has happened - the hope being that the person who picks up the mail for these addresses is in a position to do something about the Spam.

In an attempt to make the script useable by as many people as possible, I have avoided using any scripting additions, and I've also resisted the urge to do anything clever like doing a whois lookup on the domains. This means that you don't have to download anything extra to make the script work, and you don't have to be online when you run the script.

The downside of this is that the domain extracting code is fairly simplistic, and could occasionally make a silly mistake and come up with a domain that doesn't exist. This should not result in the wrong people getting your report, but it might result in the report bouncing back to you.

How Do I Use It?

Claris Emailer: copy the script into the "Applescripts" folder inside your "Claris Emailer Files" folder. Copy the "Report Spam Clients" folder into the "Claris Emailer" folder. The next time you start Claris Emailer, you should see a "Report Spam" option under the scripts menu.

Outlook Express: copy the script into the "Script Menu Items" folder inside your "Outlook Express" folder. Copy the "Report Spam Clients" folder into the "Outlook Express" folder. The next time you start Outlook Express, you should see a "Report Spam" option under the scripts menu.

To report a spam that you've received, simply select or open the spam in your mailer, then choose the "Report Spam" menu item from the scripts menu.

How Does It Know Which Email Client I'm Using?

It doesn't! The first time you run the script, it will ask you which client you are using - simply choose the correct client from the list. If your client isn't in the list, it means that Report Spam doesn't support it yet (sorry).

If you switch clients, and need to tell Report Spam which client you are now using, open the "clients" folder. You should see an alias file called "Selected Client". If you delete this file, Report Spam will ask you which client you are using when you next run it.

Configuration Options

There are quite a few configuration options, which you can use to customise the behaviour of Report Spam to suit your exact needs.

When you first run the script, it will place a file called "Report Spam Preferences" into the preferences folder in your system folder. This file is actually an AppleScript itself, which you can open with the Script Editor (just double-click on the file).

Inside, you will see a some code defining a number of properties - for example:

        -- Set this property to false if you just want the report
        -- to be put into your outbox without you seeing it
        property pShowReport : false

Each property determines some aspect of Report Spam's operation. The lines beginning with "--" are comments which describe what the property does.

To edit a property, simply change it's value, which is the bit on the right hand side of the colon.

Because you are actually editing some AppleScript code, you need to be careful to get it right, otherwise the code will not compile properly! Don't worry - you won't cause any lasting harm if you get it wrong, and if you get into a total mess simply delete the "Report Spam Preferences" file and a new one will be created next time you run the script.

Editing AppleScript Properties: A Very Brief Tutorial

If the value of the property is the word true or the word false, then the property is a yes/no type - it turns some feature on or off. Simply change the true to false, or vice versa, to alter the setting. If the value is some text in quotes (for example "postmaster"), simply replace the text with your own, making sure that you don't delete the quotes at the beginning and the end, and don't include any extra quotes in the text.

If the value is enclosed in angle brackets (for example {"", ""}) then it defines a list of items. Each item is seperated from the previous one by a comma, so if you want to add a new item to the list, simply place a comma at the end of the list (but before the closing bracket), and follow it with your new item - so the list above would become:

  {"", "", "my new item"}

Note that you don't put a comma at the end of the list!

As a last resort, you could always mail me (see the address below) with a specific question, and I'll try to help...

Feedback Please

If anyone has any suggestions about how to improve the domain extracting code, the wording of the report, or any other clever spam reporting strategies, please email them to

I am also keen to know what you think of the idea in general - and whether you think that a script like this is itself a breach of netiquette. The messages that this script creates could be seen as a kind of anti-spam spam - and I am really anxious not to make the Spam problem worse!


Sam Deane.
April 1999, London.