| Version 5.4
Introduction
Installation
SysAdmin
Network
Objects
Storage
E-mail
Real-Time
Access
Services
Directory
Clusters
Applications
Miscellaneous
Licensing
WebMail
Pronto!
PBX
Overview | Rules | Filters | SMTP | Local | RPOP | LIST | PIPE
# LIST Module Mailing Lists Configuring the LIST module Creating Mailing Lists Configuring Mailing Lists Renaming Mailing Lists Removing Mailing Lists Composing Service Texts Subscription Processing Subscription Modes Confirmation Requests Welcome and Good Bye Messages Posting Messages Processing Messages Bounce Processing FEED Mode Distribution Digesting and Archiving DIGEST/INDEX Mode Distribution Archiving Subscribers List Adding Subscribers Importing Subscriber Lists Subscribing Lists to Lists Processing Service Requests Routing The CommuniGate Pro LIST module implements the mailing list mechanism. It also implements mail distribution to Groups.

## Mailing Lists

The system administrator can create one or several mailing lists. Users from the same or any other mail system can subscribe to these mailing lists using the Web interface or by sending E-mail. They can post messages on mailing lists by sending E-mail to the list addresses, and posted messages are delivered to all subscribers. All posted messages are stored in the mailing list Mailbox that serves as an archive.

If a user subscribes in the FEED mode, all posted messages are redirected to that user immediately after they are received by the LIST module.

When a user subscribes in the DIGEST mode, the user starts to receive list digests: a multi-part messages generated with the LIST module for each mailing list. Each digest message contains all messages posted on the list since the last digest was generated, prefixed with an index of these messages.

When a user subscribes in the INDEX mode, the user starts to receive messages containing the indexes of newly posted messages. If the user wants to read some of the posted messages, they can use a Web browser to access the mailing list archive.

## Configuring the LIST module

Use the WebAdmin Interface to configure the LIST module. Open the Mail pages in the Settings realm, then open the LIST page.

Processing
Log Level: | Processors:

`Log`
  Use the Log setting to specify what kind of information the LIST module should put in the Server Log. Usually you should use the `Major` (message processing reports) level. But when you experience problems with the LIST module, you may want to set the Log Level setting to `Low-Level` or `All Info`: in these cases more details will be recorded in the System Log. When the problem is solved, set the Log Level setting to its regular value, otherwise your System Log files will grow in size very quickly.
  The LIST module records in the System Log are marked with the `LIST` tag.
`Processors`
  When you specify a non-zero value for the `Processors` setting, the LIST module starts to process queued messages directed to mailing lists, starts to generate digests, and starts to clean the mailing list archives. The module can use several simultaneous processors (threads) to process several mailing lists at the same time. If you have more than 50 mailing lists, or if you have many lists with extremely large (10,000+) subscriber lists, you should allow the module to use more than 1 processor.

Mailing Lists
Name | Domain | Owner
--- | --- | ---
SIMS | node5.communigate.com | ali
CGatePro | test.communigate.com | kwa

This table shows all mailing lists created. By following the links in the table, you can open an individual list setup page, the Domain Settings page for the list Domain, or the Account Settings page for the mailing list owner.

### Creating Mailing Lists

Each Mailing List is created inside the Main or one of the secondary Domains, and each Mailing List belongs to its owner - an Account in the same Domain.

To create a Mailing List, create an Account or choose an existing one - the List owner Account. Use the WebAdmin Interface to open the Account Settings page:

Mailing Lists
Name | Subscribers
--- | ---
rd-list | 1025
marketing | 127

To create a mailing list, type the list name and click the Create Mailing List button.

If you are a Domain Administrator, you should have the Can Create Mailing Lists Access Right to create Mailing Lists in your Domain.

The Server checks that there is no Account or other Object with the same name in this Domain, and creates a new Mailing List.

Several Mailboxes are created in the List owner Account:

listname | this Mailbox is the Mailing List archive: it contains the messages posted to this Mailing List
listname/requests | this Mailbox contains the messages with subscription requests.
listname/reports | this Mailbox contains bounce and other DSN (Delivery Status Notification) messages generated for the messages distributed via this Mailing List.
listname/approval | this Mailbox contains postings that require the list owner approval (moderated postings). To post these messages, the Mailing List owner should redirect them back to the Mailing List using an authenticated submit method: a MAPI or XIMSS client, the CommuniGate Pro WebUser Interface, the XTND XMIT POP3 method, a local "mail" command, the PIPE module, etc.

### Configuring Mailing Lists

To configure a Mailing List, open the Mailing List Settings page. You should select a link to the Settings page either from the list of all mailing lists located in the LIST module Settings page, or from the list owner Account Settings page.

You should have the Users Server Administrator access right or the Domain Administrator access right in order to open the Mailing List Settings pages via the WebAdmin Interface.

In order to modify a Mailing List settings or subscriber lists, the Domain Administrator should have the `CanAccessLists` access right.

The list owners can access the Mailing List settings pages using the WebUser Interface with their Accounts. The WebUser session page listing Mailboxes and Mailbox folders also provides links to the Account Mailing Lists pages.

Log: |  | Subscribers | Owner: | listmaster
--- | --- | --- | --- | ---

`Log`
  Use the Log setting to specify what kind of information about this mailing list should be put in the Server Log. Usually you should use the `Major` (message posting, subscription, digest, and clean-up operations) level. But when you experience problems with this particular mailing list, you may want to set the list Log Level setting to `Low-Level` or `All Info`: in this case more details will be recorded in the System Log. When the problem is solved, set the Log Level setting to its regular value, otherwise your System Log files will grow in size very quickly.
  The mailing list records placed in the System Log are marked with the `List(listname)` tag.
  Only the system administrator can change the mailing list Log setting.

Description: |
Preferred Character Set: |
Digest & Archive: |
Verify Owner Using: |

`Description`
  Use the Description setting to specify the full name of the list. It will be used as a "comment" in the list E-mail address as the Real Name setting is used in account E-mail addresses.
`Preferred Character Set`
  This option specifies how the List module should handle non-ASCII texts. It is used when displaying list messages via the Web interface: messages in the list can be composed using different character sets, and to display them all on one page, the module should know which character set is preferred.
`Digesting and Archiving`
  Posted messages can be stored in a Mailbox created in the list owner Account. Such a Mailbox is used to collect messages for message digests. If messages are not removed from that Mailbox after a digest is created, this Mailbox can be used as a mailing list archive.
  `Enabled`
    All posted messages are stored in the owner Account Mailbox. Use the link next to the pop-up menu to open the Digesting and Archiving Settings page.
  `Disabled`
    The posted messages are not stored in the owner Account Mailbox, archiving and digesting options are disabled.
    All digest and index-mode subscribers are processed as feed-mode subscribers.
    All new attempts to subscribe to the mailing list in the digest or index mode are rejected.
`Verify Owner`
  When the LIST module receives an E-mail message, it checks if the message is sent by the List Owner. First, the message Return-Path is compared to the list owner E-mail address. The Return-Path should be `ownerName@listdomain`, where the ownerName is the owner Account name (not one of its aliases), and the listdomain is the list and owner Account Domain name (not one of its Domain aliases).

  The Verify Owner setting specifies the additional checks to be made:
  `Return-Path`
    When this option is selected, no additional check is made.
  `IP Addresses`
    When this option is selected, the LIST module checks that the message has been submitted either using one of the authenticating methods (see below), or via SMTP, from a computer with an IP address included into the Client IP Addresses list.
  `Authentication`
    When this option is selected, the LIST module checks that the message has been submitted using one of the authenticating methods:
    - via SMTP, using the AUTH authenticaiton;
    - via WebUser Interface;
    - via POP with XTND XMIT extension;
    - via the PIPE module.

The Settings page contains a set of options, settings, and text areas that controls the subscription, postings, message distribution, and bounce processing. See the sections below for the details.

### Renaming Mailing Lists

To rename a mailing list, open that list Settings page via the System Administrator Web interface (see above).

You should have the Users Server Administrator access right or the Domain Administrator access right in order to open the Mailing List Settings pages.

Enter the new name for the list in the Mailing List Settings page, and click the Rename button. The Server checks if there is no Account or Mailing List with the new name in the same Domain and renames the mailing list. Then the Mailing List Settings page is reopened.

### Removing Mailing Lists

To remove a mailing list, open that list Settings page via the System Administrator Web interface (see above).

Click the Remove List button. A confirmation page appears. If you click the Remove button on the confirmation page, the list is removed, the files with the list subscribers and list settings are deleted, and the mailing list Mailboxes are removed from the list owner Account.

## Composing Service Texts

Several Mailing list settings specify texts to be sent to the subscribers - message subjects, message headers and trailers, confirmation requests, etc. A specified text can contain special symbol combinations to be substituted with actual data before the text is inserted into a message.

The following symbol combinations can be used:

Where | Combination | Substituted with
--- | --- | ---
All Texts | `^N` | the listname string
`^D` | the domain string
`^E` | the Description setting
Digest Subject, Header, Trailer | `^X` | the sequence number of the current digest
Feed Subject Prefix, Header, Trailer | `^B` | the sequence number of the current message

If there is a number after a special symbol combination (as in `^N80`), the number specifies the maximum length of the substitution string.
If a substitution is longer than specified, its last symbols are cut off.

If there is a number after a special string combination, and the number starts with 0, as in `^N040`, the number specifies the length of the substitution string.
If a substitution string is longer than specified, its last symbols are cut off, and if a string is shorter than specified, space symbols are added to the beginning of the string.
If the number starts with two 0 symbols, the 0 symbols are used instead of spaces.

## Subscription Processing

Each mailing list is a list of subscribers, i.e. a list of E-mail addresses receiving messages posted on the mailing list.

In order to subscribe, unsubscribe, and change their subscription mode via E-mail, users of the listname@domain mailing list should send any message to the following addresses:

Send to address: | New user | Existing subscriber
--- | --- | ---
`listname``-on`@domain or `listname``-subscribe`@domain | to subscribe to the list in the default mode | to confirm the current subscription mode
`listname``-feed`@domain | to subscribe to the list in the FEED mode | to change the subscription mode to FEED
`listname``-digest`@domain | to subscribe to the list in the DIGEST mode | to change the subscription mode to DIGEST
`listname``-index`@domain | to subscribe to the list in the INDEX mode | to change the subscription mode to INDEX
`listname``-null`@domain | to subscribe to the list in the NULL mode | to change the subscription mode to NULL
`listname``-off`@domain or `listname``-unsubscribe`@domain |  | to unsubscribe from the list
`listname``-confirm`@domain |  | to get the confirmation ID; this ID can be used as the password for other subscription operations and for list archive browsing

When subscription request messages are sent to these addresses, the message `From:` header fields are used as requesters E-mail addresses.

You can specify who can subscribe to the mailing list, and how they should subscribe.

Subscription Policy
Subscribe: |  | Requests to Save |
Default Mode: |  |  | Request Confirmation
Confirmation Request Message
Subject: |
Text: | This is an automated message from the <^N@^D> mailing list manager Somebody (probably you) have requested the ^P operation for your <^A> address If you want to confirm this operation, use the Reply command in your mailer. Check that the Subject of the reply message contains the confirmation ID: ^I, the reply is directed to <^N-^O@^D>, and the 'From' address of your reply is <^A>. If you do not want to confirm the requested operation, simply do nothing All requests about this mailing list should be sent to <^N-request@^D>

`Subscribe`

  `nobody` | users cannot subscribe to this mailing list and/or change the subscription mode by themselves. Only the system administrator and the list owner can do these operations. Users still can unsubscribe by themselves.
  `this domain only` | only users from the mailing list Domain can subscribe.
  `locals Only` | only users registered with this Server can subscribe.
  `anybody` | any user on any system can subscribe to this list.
  `moderated` | all subscription requests will be stored in the `listname/requests` Mailbox (see below) and should be approved by the list owner. The List owner should redirect these requests to the listname-on, listname-feed and other addresses to subscribe new users and to let them change the subscription mode. Users still can unsubscribe by themselves. When user requests are stored in the `listname/requests` Mailbox for approval, they are "flagged" (get the Flag marker).

`Save Requests`
  This setting specifies which subscription requests (i.e. messages sent to the listname-on, listname-off and other addresses listed above) should be stored in the `listname/requests` Mailbox in the list owner Account. Messages stored in this Mailbox can be examined if some user reports problems when trying to subscribe to, unsubscribe from, or change the subscription mode to this list.
  You can specify if none, all, only the accepted, or only the rejected request messages should be stored in the listname/requests Mailbox.
  Requests waiting for the list owner approval are always stored in the `listname/requests` Mailbox.

  All stored request messages get the `X-List-Report` additional header field . This field contains the list manager report (Delivery Status Notification message). It is recommended that the List owners configure their mailer applications so they display the X-List-Report fields.

`Default Mode`
  When a new user sends a subscription request in to the listname-on@domain or listname-subscribe@domain address, i.e. when the subscription mode is not specified, the mode specified with the Default Mode setting is used.

### Subscription Modes

Each list user (E-mail address) is subscribed in one of the following modes:

`FEED`
  In this mode, the subscriber receives list messages as they are posted. See the FEED Mode Distribution section for more details.
`DIGEST`
  In this mode, the subscriber periodically receives digest messages. A digest message starts with the Table Of Content - the list of the messages posted, followed by the posted messages themselves. See the DIGEST/INDEX Mode Distribution section for more details.
`INDEX`
  In this mode, the subscriber periodically receives index messages. An index message is the same as the digest Table Of Content, but it does not contain the posted messages themselves. INDEX subscribers can see if they are interested in any posted messages, and use the Web interface to read those messages in the mailing list archive.
  See the DIGEST/INDEX Mode Distribution section for more details.
`NULL`
  In this mode, the subscriber does not receive any messages from the list. This mode can be used by the "posters" - the list users that only post messages on the list.
`BANNED`
  The "banned" users do not receive messages from the list, and they cannot change their subscription mode themselves.
  You can use this method to make it impossible for certain users to subscribe to your mailing lists, though usually the more generic anti-spam and other system-wide protection methods should be used.

### Confirmation Requests

There are several very common problems with most of publicly available mailing lists:

- subscription messages are sent from incorrect addresses, those incorrect addresses are inserted into the subscribers list, and mailing list messages are repeatedly sent to those incorrect or unused addresses.
- list abusers (such as spammers) subscribe nonexistent E-mail addresses just to allow themselves to post on the lists that accept posts from subscribers only.
- using easily forged message headers, some persons can subscribe and unsubscribe another person E-mail addresses.

These and some other problems can be solved using confirmation requests.

`Request Confirmations`
  When this option is selected, the List manager does not fulfill subscription requests immediately. Instead, a confirmation request message is composed and sent to the address that is about to be included or excluded from the subscribers list. The confirmation request contains a unique identifier (Confirmation ID) in its Subject field. When the user receives such a confirmation request, they can simply use the mailer Reply command to confirm the requested operation.
`Confirmation Message`
  These text settings allow you to specify the subject and the body of confirmation request messages the module sends to the subscribers. In addition to generic "symbol combinations", these service texts can also contain the following combinations:

  Combination | Substituted with
  --- | ---
  `^O` | the requested operation
  `^P` | `unsubscribe` for the `unsubscribe` operation, `subscribe` for the `subscribe` operation, and `subscribe(operation)` for other operations
  `^A` | the subscriber address
  `^I` | the confirmation identifier

### Welcome and Good Bye Messages

Welcome/Policy Message
Subject: |
Text: | This is an automated message from the <^N@^D> mailing list manager You are subscribed to "^E" <^N@^D> as <^A> To unsubscribe, send any message to: <^N-off@^D> To switch to the FEED mode, send any message to <^N-feed@^D> To switch to the DIGEST mode, send any message to <^N-digest@^D> To switch to the INDEX mode, send any message to <^N-index@^D> Send administrative queries to <^N-request@^D>

Good Bye Message
Subject: |
Text: | Your address <^A> has been removed from the <^N@^D> mailing list Thank you for being with us, and please come back soon

When a new user is subscribed, the Policy Text message is sent to that new user. When a user unsubscribes, the Good Bye message is sent.

Besides the generic "symbol combinations", these service texts can also contain the following combinations:

Combination | Substituted with
--- | ---
`^A` | the subscriber address
`^I` | the confirmation identifier

## Posting Messages

To post a message on the mailing list, the author should send it to the listname@domain address.

Posting Policy
Accept Postings: |  | New Subscribers: |
Allowed Format: |  | Maximum Size: |
Prohibit: | Non-matching Character Set
Unmodified Digest Subjects
Service Fields: | *auto*
| Hide 'From' Addresses

`Accept Postings`
  This setting specifies who can post messages on this mailing list:

  `from owner only` |  | Only messages submitted by the list owner (using any authenticated method) will be posted
  `moderated` |  | Messages from everybody but the list owner are redirected to the list owner for approval; if the list owner redirects a message back to the list, the message is posted. Note: this mode can be used to change the list posting policy when the list owner wants to postpone all postings. If you use the `from subscribers` mode, the New Subscribers setting (see below) provides more advanced moderation options.
  `from subscribers` |  | Messages from the list subscribers are accepted for posting; some messages can be moderated (see below).
  `moderate guests` |  | Messages from the list subscribers are accepted for posting; some messages can be moderated (see below). Messages from addresses that are not subscribed are moderated.
  `from anybody` |  | Messages from any address are accepted for posting.

`New Subscribers`
  This setting is effective only if the Accept Postings setting is set to `from subscribers`. When a user subscribes and starts to post messages, the messages are stored in the list owner Mailbox waiting for approval. After the specified number of messages is approved and posted, all messages sent by this user are posted on the list directly, without the list owner approval.
  Note: this is a very effective way to enforce the list policies and to protect the mailing list from "spamming".
  If you set this option to `Moderate All`, then all messages from new subscribers will be stored for approval (the LIST module will not update the posted messages counter).
  If you set this option to `Prohibited` new subscribers won't be able to post on the list (their postings will be rejected).
  If you set this option to `Special`, new subscribers will be able to post auto-generated messages. This is useful if you want to subscribe this mailing list to other mailing lists.
  Note: when an auto-generated message should be posted on the list, and the message is not a message generated by the list owner, the message `Sender` address (if exists) is used instead of the `From` address. If that address is subscribed to the list, and the subscriber posting mode is set to `Special`, the message is posted.
  You can open the subscribers list and change this setting for individual subscribers. You may want to change this setting to `Unmoderated` for some users, letting only those users post messages on the list, while posting from all other users (and new users) will be either stored for approval or rejected.
`Allowed Format`
  This setting specifies the allowed MIME format for postings.

  `plain text only` |  | only messages in the text/plain format can be posted
  `text only` |  | only messages in the text (text/plain, text/html, etc.) formats can be posted
  `text alternative` |  | only messages in the text format or multipart/alternative messages that contain a part in the text format can be posted (for example, a message can contain a `text/html` variant part and the same text as a `image/gif` variant part)
  `anything` |  | messages in any MIME format can be posted

  The list owner can always post messages in any format.
`Maximum Size`
  This setting restricts the size of messages that can be posted on this mailing list. The list owner can always post messages of any size.
`Prohibit Unmodified Digest Subject`
  When this option is selected, the Subject fields of all postings are checked. If the Subject is a "reply prefix" (such as Re:, Re>, etc.) followed by this list Digest String (see below), the message is rejected.
`Prohibit Non-matched Character Set`
  When this option is selected, the character set used to compose the posting is checked. If the character set is explicitly specified, and it does not match the Preferred Character Set for this list, the message is rejected.
`Service Fields`
  Use this option to specify the message header fields to be added to all distributed messages (feed, digest and index). If this option value starts with the asterisk (`*`) symbol, the module automatically generates the `List-ID`, `List-Unsubscribe`, `Precedence` and (if list browsing is enabled) `List-Archive` fields.
  Otherwise, the specified fields are added. The following symbol combinations can be used in this field:

  Combination | Substituted with
  --- | ---
  `^N` | the listname string
  `^D` | the domain string
  `^P` | the first HTTP User module port
  `^R` | the `http` or the `https` string, depending on the type of the first HTTP User module port

`Hide 'From' Addresses`
  When this option is selected, the 'From' address of the posted messages is modified, so it contains the list address instead of the message author address. If the original 'From' address contained a comment (a real name of the message author), it is preserved.
  The 'From' addresses in the message archives, digests, and indexes are converted, too.
  You can use this option to 'hide' the real E-mail addresses of those people who post messages on this mailing list.

## Processing Messages

When a posted message is being sent to subscribers, the original message header is modified. Usually, only the From, Date, Message-ID, and Subject fields are copied from the original message.

You can specify additional header fields to be copied from original postings to the messages sent to subscribers - directly or as parts of digests.

RFC822 Fields to Keep
To/Cc: |

`RFC822 Fields to Keep`
  Use these fields to specify the names of additional RFC822 header fields to be copied from the original postings to the distributed messages. If you want to remove a name, enter an empty string into the name field.

  If you want to copy all header fields, enter the asterisk (*) symbol into the first field.

  If you want to copy the Message-ID for the messages distributed using the "feed" mode, include the Message-ID field name.

  If the To And Cc option is set to:
  - remove - the original `To` and `Cc` fields are not copied; the Mailing List address is added as the `To` field;
  - keep - the original `To` and `Cc` are copied;
  - copy as Cc - the original `To` and `Cc` fields are copied as `Cc` fields; the Mailing List address is added as the `To` field.

## Bounce Processing

Incorrect and expired E-mail addresses create the most annoying problems for mailing list administrators. The CommuniGate Pro LIST module automates processing of incorrect, expired, and temporarily unavailable addresses.

All messages sent to subscribers (in all modes) have message envelope information that routes all error reports back to the LIST module. When a report is received, the LIST module:

- stores the report in the `listname``/reports` Mailbox in the owner Account (optional);
- parses the report text;
- if the report has a correct delivery-report (RFC1892/RFC894) structure, processes all records in the report.

Most of the problems can be detected immediately when sending a list message from the CommuniGate Pro Server, so most of the error reports are generated locally, on the same CommuniGate Pro server. The CommuniGate Pro server generates reports in the proper format, so most of the delivery problems are handled automatically.

If a list message has been sent to a remote site without a problem, but then that remote site fails to deliver the message to the recipient, the delivery report is generated on that remote site. Most of the modern mail servers generate delivery reports in the correct format, so in this case many problems are handled automatically, too.

And, finally, it is still possible to receive unformatted delivery reports from other sites. The LIST module can store those unformatted reports in the listname/reports Mailbox, so the list owner can process them manually.

Each record in the delivery report contains information about one E-mail address, and indicates if the original message was or was not delivered to that address. It can also specify if the delivery problem is fatal (as when account is removed from the system), or if it is a non-fatal, temporary problem (as when a remote site is down or when the account disk space quota is exceeded).

If a non-fatal report is received, the E-mail address in question is suspended, and no list messages are sent to that address, and all additional error reports about that address are ignored. When the LIST module performs periodic list clean-ups, it sends a warning message to all suspended addresses. The warning message notifies that user that some list messages have not been delivered to the user address, and it also asks the user to confirm subscription (by replying to the warning message).

There are two ways to specify the suspension period:

- An address can be suspended for a fixed period of time. When that period ends, the LIST module resumes sending list messages to this address. This can result in new bounces which will increment the bounce counter, and the address is unsubscribed after the bounce counter exceeds the specified limit.
  The warning messages are sent to the failed address after the suspension is over, too - till the user confirms the subscription by replying to the warning message.
- An address can be suspended till the user confirms subscription by replying to the warning message. If no confirmation is received during the specified period of time, the address is unsubscribed.

When a user confirms the subscription by replying to the warning message, the suspension period ends, and the bounce counter associated with the user E-mail address is cleared.

Bounce Processor
On a Non-Fatal Bounce: |
| suspend subscription for: |
unsubscribe after: | bounces
| suspend till confirmation
unsubscribe after: |
Process a Fatal Bounce as: |
| Notify Owner when Unsubscribing
Cleanup List every: |
Bounce Reports to Save: |
Warning Message
Subject: |
Text: | This is an automated message from the <^N@^D> mailing list manager List messages sent to your address <^A> have bounced. If you read this message, your mail system has been probably fixed. To clear the bounce counter and to prevent automatic cancellation of your subscription, use the Reply command in your mailer. Check that the Subject of the reply message contains the confirmation ID: ^I, and the reply is directed to <^N-^O@^D>, and the 'From' address of your reply is <^A>. All requests about this mailing list should be sent to <^N-request@^D>

`suspend subscription for`
  If this option is selected, it specifies for how long a subscriber should be suspended if the system receives a non-fatal problem report about the subscriber's E-mail address.
  The `unsubscribe after` option specifies the number of unconfirmed suspension periods after which the user is unsubscribed.
`suspend till confirmation`
  If this option is selected, a non-fatal error report suspends the address till the subscriber sends a confirmation message.
  The `unsubscribe after` option specifies the time period to wait for a confirmation message.
`Process a Fatal Bounce as`
  This setting specifies how the system should process fatal problem reports: as non-fatal, as several non-fatal, or as a fatal problem. If you specify that the system should unsubscribe a user after receiving 10 non-fatal problem reports about the user address, and you specify that a fatal problem report should be processed as 5 non-fatal reports, this will tell the system to unsubscribe the user after 2 fatal reports. If you specify that a fatal problem report should be processed as fatal, the system will unsubscribe a user immediately upon receiving a fatal problem report.
`Notify Owner When Unsubscribing`
  If this option is selected, an E-mail message is sent to the List Owner every time an address is unsubscribed because of mail bouncing.
`Cleanup List every`
  This setting specifies how often the system should scan the subscription list. When scanning the list, the system:
  - sends warning messages to the subscribers with non-zero bounce counter;
  - removes subscribers who sent subscription requests more than 2 days ago and who have not confirmed the subscription requests;
  - removes unsubscribed addresses from the list.
`Bounce Reports to Save`
  This setting specifies which delivery reports should be saved in the `listname``/reports` Mailbox in the list owner Account. If you specify `unprocessed`, only the messages that the LIST module fails to parse and process are stored in that Mailbox.
`Warning Message`
  These text settings specify the subject and the text of a warning message that is sent to subscribers when their subscription is suspended. In addition to generic "symbol combinations", this service text can contain the following combinations:

  Combination | Substituted with
  --- | ---
  `^A` | the subscriber address
  `^I` | the confirmation identifier

## FEED Mode Distribution

After a message is posted, it is distributed to all users subscribed in the FEED mode.

The `To` header field of a distributed message contains the mailing list address. The `From`, `Date`, and `Message-ID` fields (and specified additional fields) are copied from the original posting.

The body of the distributed message is a copy of the original message body. If the original message was not in the MIME format, or if it was in the MIME text/plain or multipart/mixed format (the most common formats), the FEED Mode Header text is inserted before and the FEED Mode Trailer text is inserted after the body of the original posting.

Feed Mode Format
Subject Prefix: |  | Direct Replies: |
| insert after Reply Prefix |  |
Header
Trailer ############################################################# This message is sent to you because you are subscribed to the mailing list <^N@^D>. To unsubscribe, E-mail to: <^N-off@^D> To switch to the DIGEST mode, E-mail to <^N-digest@^D> To switch to the INDEX mode, E-mail to <^N-index@^D> Send administrative queries to <^N-request@^D>

`Subject Prefix`
  This setting specifies the string that is inserted into the beginning of the Subject field of all messages distributed in the FEED mode.
  When a message is distributed, the system checks the Subject field. If the subject prefix found after the reply prefix (`Re:`, `Re>`, etc.), then the subject prefix is deleted.
  The Subject Prefix string can contain special symbol combinations.
`insert after Reply Prefix`
  Select this option to insert the Subject Prefix after the Reply prefix (this helps client mailers to group related messages into discussion threads).

  Sample:

    the Subject Prefix setting | `[R&D]`
    a posted message | `Subject: test`
    the distributed message | `Subject: [R&D] test`
    the posted reply | `Subject: Re: [R&D] test`
    the distributed reply (`insert after Reply Prefix` is not selected) | `Subject: [R&D] Re: test`
    the distributed reply (`insert after Reply Prefix` is selected) | `Subject: Re: [R&D] test`
    the composed digest | `1) test 2) Re: test`

`Direct Replies`
  If the `to List` option is selected, the Reply-To header field with the E-mail address of the list is added to all distributed messages. As a result, when subscribers answer to distributed messages, their replies are directed to the mailing list by default.

  If the `to Sender` option is selected, the Reply-To header is not inserted, and user replies are directed to the From address of a distributed messages, i.e. to the From address of the message author (sender).

`Header`
  This setting specifies the text to be included in the beginning of messages distributed in the FEED mode.
  The Header string can contain special symbol combinations.
`Trailer`
  This setting specifies the text to be included at the end of messages distributed in the FEED mode.
  The Trailer string can contain special symbol combinations.

## Digesting and Archiving

Posted messages can be stored in a Mailbox created in the list owner Account. Such a Mailbox is used to collect messages for message digests. If messages are not removed from that Mailbox after a digest is created, this Mailbox can be used as a mailing list archive.

Select the `Enabled` value for the Digesting and Archiving option and follow the link next to that setting to modify the Digesting and Archiving settings.

## DIGEST/INDEX Mode Distribution

When the Digesting and Archiving option is enabled, all posted messages are stored in a Mailbox created in the list owner Account. The LIST module periodically checks that Mailbox and creates list digests and indexes.

A digest message contains a set of the messages posted on the mailing list since the time when the previous digest was composed.

A digest message body contains the digest header, the table of contents (TOC) listing all the messages in the digest, the TOC trailer, the posted messages, and the digest trailer.

A list index message contains the same digest header, TOC, and TOC trailer, but it does not contain the posted messages themselves and it does not contain the digest trailer.

List index messages are created at the same time the list digest messages are created. Digest messages are sent to the digest-mode subscribers, and index messages are sent to the index-mode subscribers.

Digest Generator
Generate every: |  |
or if Larger than: |  | or when messages collected: |
First Digest at: |  |

`Generate Every`
  This setting specifies how often the LIST module should generate digest (and index) messages for this list.
`First Digest at`
  This setting specifies the time of the day when the first digest should be generated.

  Note:if the Generate Every setting value is not more than 1 day, every day the first digest is generated at the specified time. If this setting is set to 4:00, the Generate Every setting is set to 1 Day, and the last digest was generated at 23:00 on Monday, the next digest will be generated at 4:00 on Tuesday.
  If the the Generate Every setting value is set to N days (N>1), the first digest is generated at the specified time N days later: if this setting is set to 4:00, the Generate Every setting is set to 5 Days, and the last digest was generated at 23:00 on Monday, the next digest will be generated at 4:00 on Friday.
`if Larger than`
  This setting specifies the maximum size of the messages to be included into one digest. If the total size of all messages posted since the last digest was generated exceeds this limit, a new digest (and index) is generated immediately, overriding the `Generate Every` and `First Digest at` settings.
`if has` X`messages`
  This setting specifies the maximum number of messages to be included into one digest. As soon as the specified number of messages is posted, a new digest is generated immediately.

Digest Format
Subject: |  | Body Format: |
Header ^E Digest #^X
Index Line ^X02) ^S80 by ^F
Index Trailer This digest is sent to you because you are subscribed to the mailing list <^N@^D>. To unsubscribe, E-mail to: <^N-off@^D> To switch to the FEED mode, E-mail to <^N-feed@^D> Send administrative queries to <^N-request@^D>
Trailer

`Digest Subject`
  This text setting specifies the Subject header field for digest and index messages created for this mailing list.
  If the Prohibit Unmodified Digest Subjects option is selected, the mailing list manager rejects all postings with a reply prefix (`Re:`, `Re>`, etc.) followed by an unmodified Digest Subject text.
`Body Format`
  This setting specifies how the digest body should be formatted.
  `plain text`
    Digests are composed as plain text messages; individual messages are separated with a line containing minus symbols.
  `standard MIME`
    Digests are composed in the MIME multipart/digest format, where the first part has the text/plain Content-type and contains the digest TOC, and other parts contain the messages (postings).
  `embedded MIME`
    Digests are composed in the MIME multipart/mixed format, where the first part has the text/plain Content-type and contains the digest TOC, and the second part uses the standard multipart/digest format and contains all messages (postings).
`Header`
  This text setting specifies the text to be included into all digest and index messages before the Index Lines (Table of Contents).
`Index Line`
  This setting specifies the format for an index entry. Like the service text settings, the Index Line can (and should) have special symbol combination, but these combinations are different.
  For each posted message, values from the message are substituted into the Index Line text and the resulting line is stored in the digest or index message being composed.

  Combination | Substituted with
  --- | ---
  `^X` | the message sequence number in the digest being composed
  `^F` | the `From` header field of the message
  `^T` | the `Date` header field of the message
  `^S` | the `Subject` header field of the message
  `^I` | the `Message-Id` header of the message

`Index Trailer`
  This text setting specifies the text to be included into all digest and index messages after the Index Lines.
`Trailer`
  This text setting specifies the text to be included after the last message in the digest.

## Archiving

All messages posted on a listname mailing list are stored in the `listname` Mailbox in the list owner Account. When a digest is being composed, the posted messages are retrieved from that Mailbox. This Mailbox also serves as an archive for all posted messages, and this archive can be searched via the user Web interface.

Each time after a digest is composed, the Mailbox is checked and the oldest posted messages are removed to keep the archive Mailbox size within the specified limits.

Archiving
Maximum Archive Size: |  | Messages to Keep: |
Start new Archive every: |  | Browse Access: |

`Maximum Archive Size`
  This setting specifies the maximum size of the archive Mailbox. After a digest is generated, the new archive file can be generated or the oldest messages can be removed from the Mailbox to keep the Mailbox size below the specified limit.
`Messages to Keep`
  This setting specifies the maximum number of messages that can be left in the archive Mailbox after a digest is generated.
`Start New Archive`
  This setting specifies when the new archive Mailbox should be created. The old archive Mailbox becomes a submailbox with the name YYYY-MM-DD, where YYYY specifies the year, MM specifies the month, and DD specifies the day when the first archive message was stored.
  Unless the Start New Archive option is set to `never`, a new archive is created when the archive Mailbox size limit or the archived message number limit is exceeded.
  If the Start New Archive option is set to `never` and the Maximum Archive Size option is set to zero, all messages are removed from the archive Mailbox as soon as a digest is generated.
`Who can Browse`
  This setting specifies if this mailing list should appear in the Mailing Lists section of the WebUser Interface.
  `nobody`
    The mailing list will not be available via the Web Interface.
  `anybody`
    The mailing list will be displayed as a browsable mailing list, and its archive can be used by anybody.
  `subscribers`
    The mailing list will be displayed as a browsable mailing list, but in order to browse its archive, users should enter their E-mail address and the Confirmation ID (as the password). To retrieve a forgotten Confirmation ID, a user can always send a message to `<listname-confirm@domain>` and get the confirmation ID even if the list subscription mode does not require confirmations.
    If the subscriber (E-mail address) is a local CommuniGate Pro Account, then not only the confirmation ID, but also the Account password can be used as the list access password.
  `clients`
    The mailing list will be displayed as a browsable mailing list, and can be browsed from the Internet addresses included into the server Client IP Addresses list.
    For users trying to view the list from outside the specified addresses/networks this mode works as the `subscribers` mode: these users have to enter the name/password pair (E-mail and Confirmaton ID) to browse the list.

## Subscribers List

If you are a system administrator or the list owner, you can access the subscribers list page following the Subscribers link on the Mailing List Settings page.

The Subscribers page contains the list of all E-mail addresses subscribed to the mailing list. For each address additional information (such as the subscriber's real name, number of bounces from this address, etc.) is listed. Each address can be marked, and you can use the Mark All button to mark all list subscribers. You can use the Filter field to display the subscribers with matching addresses only.

|  | Filter: | 2 of 2 selected
| E-mail | Mode | Subscribed | Posts | Bounces | Real Name
--- | --- | --- | --- | --- | --- | ---
| andy@vax.communigate.com | null | 15:54:51 | 3 |  |  | Andy
| test@mail.communigate.com | feed | 18:18:11 | 2 mod |  |  | Test Account

`Unsubscribe`
  Mark some subscribers and click this button to unsubscribe them from the list. Depending on the current FeedBack setting value, the LIST module will either unsubscribe them immediately or just send them confirmation requests. If the FeedBack setting (see below) value is `Send Welcome`, the `Good Bye` messages are sent to unsubscribed addresses.
`Mark Failed`
  Mark some subscribers and click this button to tell the LIST module that mail to those addresses bounced. This can be useful in situations when the LIST module fails to process bounce reports automatically, because they come in a non-standard format. Clicking the Mark Failed button will result in the same actions (increased bounce counter, suspension, and warning generation) as caused by receiving a non-fatal bounce from the marked address.
`Set Postings`
  These controls allow you to change the moderation mode for the selected users. You can select some subscribers and set their posting mode to moderated, prohibited, unmoderated, or special. See the Posting Messages section for more details.
`Set Mode`
  These controls allow you to change the subscription mode for the selected users. See the Subscription Processing section for more details. If the FeedBack setting (see below) value is set to `ask Confirmation`, the subscription mode is not changed, but a confirmation request for the mode change operation is sent to the marked subscribers.

### Adding Subscribers

You can manually add subscribers to the list. Enter the new subscriber E-mail address press the Subscribe button.

| Single Address: |
Import: |
Feedback

`Feedback`
  If this option is set to `ask Confirmation`, all operations performed result in confirmation requests being sent to the specified subscriber address.
  If this option is set to `Send Welcome`, confirmation requests are not generated, and the subscription modes are changed immediately, but the Welcome and Good Bye messages are sent to subscribers when you unsubscribe a user or subscribe a new user.
  If this option is set to `silently`, no messages are sent to subscribers.
`Single User`
  Use this field to enter an E-mail address of the user you want to subscribe to this list. A new subscriber address can be specified as an E-mail address with a comment, as `John Smith <johns@company.com>` or `johns@company.com (John Smith)`, in this case the comment is stored the subscriber's real name.
  Click the Subscribe button to subscribe the specified address.

### Importing Subscriber Lists

You can use text files with E-mail addresses to add subscribers to mailing lists. Open the Subscribers page, and use the Import control to select a file with E-mail addresses. Click the Subscribe button to add the addresses to the mailing list.

The text file should have one E-mail address per line, with several optional fields on each line. If a line contains several fields, they should be separated with the tabulation (TAB) symbol.

- The first and the only required field is the E-mail address.
- The second field specifies the subscription mode. The first field symbol is checked. The symbols `d` and `D` require the DIGEST mode, the symbols `I` and `i` - the INDEX mode, and the letters `f` and `F` - the FEED mode. All other field symbols are ignored. If the first symbol is not recognized or the field is absent, the new user is subscribed in the Mailing List default mode.
- The last field (if a line contains more than 2 fields) specifies the real name of the new user.

The Mailing List manager checks the file format first. If the file format is incorrect, no new user is subscribed. This allows you to fix the file format and to try the same file: either all addresses are added, or none is added.

Note: The import file must be prepared on the client computer (on the computer you use to run your browser). The browser allows you to upload files from disks connected to that computer, not to the CommuniGate Pro Server computer.

Note: When using Netscape and some other Unix browsers, make sure that the file name ends with the `.txt` suffix - otherwise the browser won't upload the file as a text one, and the file will be ignored.

Note: Some versions of the Netscape® browser for "classic" MacOS® do not convert the MacOS text files (that use the CR symbol as the line separator) into CR-LF delimited text files. You may see the "format error" messages if you try to import a subscriber list from a MacOS computer using that browser. You should either use a different browser, or you should convert the subscriber list into a CR-LF delimited text file before importing it with that browser.

Note: If you are moving users from a different mailing list system, make sure you have set the Feedback option to Silently - otherwise all inserted subscribers will receive confirmation requests and/or Welcome messages.

### Subscribing Lists to Lists

You may want to subscribe List1 to List2, so all messages posted on the List2 list are sent to the List1 subscribers, too.

After you have added the qualified address of the List1 (list1@domain1.dom) to the List2 subscribers list, add the qualified address of the List2 (list2@domain2.dom) to the List1 susbcribers list. Set the subscription mode to `null`, so messages will not go back to the List2 list, and set the posting mode to `special`, so messages from List2 (which are auto-generated list messages) will be allowed for posting on List1.

## Processing Service Requests

The LIST module processes messages sent to `listserver@localdomainname`. The module takes the List Server commands from the message body, processes those commands, and composes a response message with the command execution results.

All commands sent to the above address apply to the mailing lists in the specified Domain only (to the virtual list server in that Domain).

The messages with the List Server commands should be in the plain text format, or in the mulitpart/alternative format containing a part in the plain text format.

Each List Server command is stored on one text line. Line starting with the `%`, `*`, `#`, and `;` symbols are not processed (comment lines).

The following commands are supported:

`SUBSCRIBE listname [mode [confirmation ID]]`
`SUB listname [mode [confirmation ID]]`
  These commands subscribe the message author to the listname mailing list. If the mode is not specified, the default subscription mode is used.
  This is equivalent to sending a message to the `listname-on@localdomainname` address.
`UNSUBSCRIBE listname [confirmation ID]`
`UNSUB listname [confirmation ID]`
  These commands unsubscribe the message author from the listname mailing list.
  This is equivalent to sending a message to the `listname-off@localdomainname` address.
`CONFIRM listname`
`GETID listname`
  These commands send the message author his/her listname subscription ConfirmationID (password).
  This is equivalent to sending a message to the `listname-confirm@localdomainname` address.
`WHICH`
`CHECK`
  These commands list the mailing lists (in this localdomainname Domain) the message author is subscribed to.
`HELP`
  This command displays the list of supported commands.
`QUIT`
`FINISH`
  These commands tell the LIST module to stop processing. The rest of the message text is ignored.

## Routing

The LIST module routes to itself all following addresses:
`listname``@domain`
if the list `listname` exists in the `domain` Domain, or
`listname`
addresses, if the mailing list `listname` exists in the Main Domain.

Messages to these addresses are processed as submissions to the specified mailing lists.

The LIST module detects addresses in the form
`listname``-request@domain` and `listname``-admin@domain`
or
`listname``-request` and `listname``-admin`.
Messages sent to these addresses are rerouted to the mailing list owner.

The LIST module also routes to itself the following addresses:
`listname``-xxx@domain`
and
`listname``-xxx`.

The xxx suffix can be one of the following:

suffix | Action
--- | ---
`on`, `off`, `subscribe`, `unsubscribe`, `feed`, `digest`, `index` | messages sent to these addresses are processed as subscription requests.
`report` | messages sent to these addresses are processed as delivery reports about the distributed messages
anything else | messages are rejected

CommuniGate® Pro Guide. Copyright © 1998-2012, Stalker Software, Inc.