# SpamBayes Configuration

Many SpamBayes configuration options are managed via the SpamBayes manager, available from the SpamBayes toolbar item. While this dialog allows you to configure standard options, there are a number of other options that can be set manually.
WARNING: Please read the following before going any further.

- To change these options, you will need to use a text editor to edit the main SpamBayes configuration file. If something goes wrong here, you may lose your existing SpamBayes configuration. Taking a copy of any files you edit is recommended.
- SpamBayes stores all configuration options, including the list of folders, in this file. Do NOT change anything you don't understand. Some of these lines are extremely long - please ensure they remain as a single line.
- Before manually changing any configuration files, please ensure you have shut down Outlook - otherwise the configuration changes you have made will be lost if SpamBayes itself automatically saves its configuration.

If you have any further questions, please post them to the SpamBayes mailing list.

## About SpamBayes configuration files

SpamBayes configuration options are stored in the directory \Documents and Settings\{username}\Application Data\SpamBayes\{outlook-profile-name}.ini. Note that the name of the file depends on the name of your current Outlook profile; if you use Outlook in Internet Only mode, then the profile is generally named Microsoft Outlook Internet Settings. This file is a standard text file, and can be edited with any text editor.
A configuration file has a number of sections, and each section contains a number of named values. For example, you will find the following excerpt in your INI file:

    [Filter]

    enabled:True

This defines a section named Filter, with value enabled set to value True. The valid section names, value names and valid values depends on the option. Note that in some cases, we will refer to options being in a certain section, but when you check your INI file, you will find no such section defined. In this case, simply add the section header, and any values manually. For example, it will not be uncommon for you to add a line

    [General]

if you need to set options in this section, as by default, your INI file will have no such section.

## Additional Options

The following options are supported in this version

Section | Option Name | Valid Values | Default | Comments
[Filter] | spam_mark_as_read | True, False | False | Determines if spam messages are marked as 'Read' as they are filtered. This can be set to 'True' if the new-mail icon bothers you when the only new items are spam. It can be set to 'False' if you use the 'read' state of these messages to determine which items you are yet to review.
[Filter] | unsure_mark_as_read | True, False | False | Determines if unsure messages are marked as 'Read' as they are filtered. See 'spam_mark_as_read' for more details.
[Filter] | save_spam_info | True, False | True | Determines if the spam score and other information be saved in each message as it is filtered or scored. Note that if this option is disabled, then the Recover From Spam function may recover messages back to the Inbox rather than the folder it was filtered on (as the originating folder is part of the spam information saved.)
[General] | field_score_name |  | Spam | The name of the field used by SpamBayes to record spam scores. This should only be changed if you know what you are doing.
[General] | delete_as_spam_message_state | None, Read, Unread | None | Determines how to set the "Read" state of a message as they are manually managed by the "Delete as Spam" button. By default, the 'Read' state of the message is not changed, but this allows you to explicitly change it to either 'read' or 'unread'. Note that even if you set new messages to Read, the new mail icon in the taskbar does still indicates there is new mail.
[General] | recover_from_spam_message_state | None, Read, Unread | None | Determines how to set the "Read" state of a message as they are manually managed by the "Recover from Spam" button. By default, the 'Read' state of the message is not changed, but this allows you to explicitly change it to either 'read' or 'unread'. See the notes about the new mail icon above.
[General] | data_directory |  |  | The directory where SpamBayes will save its database and primary configuration file. This directory name should not be enclosed in quotes, but can include spaces and extended characters (in which case the default windows encoding is assumed). This can only be set in the 'early' configuration files - see below.
[General] | verbose | Number | 0 | The level of debug output generated by the program. This output is written to the standard log for the application - see the troubleshooting guide for information on locating the log.

### Experimental Configuration Options

There are a special class of configuration options, which the SpamBayes developers have classified experimental. By default, all experimental features will be disabled. If you enable any experimental features, you do so at your own risk - these features are experimental for a reason (but they will generally work OK assuming they are listed here)
All experimental options are in the special [Experimental] section of your configuration file. Be aware that these experimental features may change, or be removed completely in later versions. If the feature is kept for later versions, the configuration options will be moved out of the [Experimental] section into a more appropriate one, so you will need to change these options later.
This release has no experimental options.

## Multiple Configuration Files

There is rudimentary support for multiple configuration files. The intention of these files is to site administrators can set global options for all SpamBayes users. Only some options make sense to store in other configuration files.
All options from all configuration files are "merged". This means that any file can set any option, and as all options files are processed, all values are merged. If multiple configuration files specify the same option, the value from the file last merged is used. When SpamBayes writes its configuration during normal processing, the entire merged set of options is written. The end result of this means that next time SpamBayes is run, the earlier configuration files will have no effect, as the last one loaded (the main config file written by SpamBayes) will have all values already.
SpamBayes processes configuration files in the following order:

- default_configuration.ini in the SpamBayes application directory (ie, the directory where the application lives). By default, no such configuration file will exist.
- default_configuration.ini in the directory \Documents and Settings\{username}\Application Data\SpamBayes. By default, no such configuration file will exist.
- SpamBayes then checks to see if a data_directory has been specified in a [General] section. If so, this is used as the SpamBayes data directory - otherwise, the \Documents and Settings\{username}\Application Data\SpamBayes directory is used.
- {outlook-profile-name}.ini in the data directory. Using the name of the Outlook profile means that SpamBayes will work in a multi-profile environment.
- The main SpamBayes databases are then loaded from the nominated data directory.