Synchronet v3.19b-Win32 (install) has been released (Jan-2022).

You can donate to the Synchronet project using PayPal.

ListServer

Overview

The Synchronet ListServer (exec/listserver.js) allows Internet e-mail clients to subscribe and (optionally) contribute messages to your local message bases using nothing but a standard Internet mail client (e.g. Outlook/OE, Eudora, Pine, etc.).

Requirements

The Synchronet ListServer requires Synchronet v3.12 or later.

How it works

The Synchronet ListServer works much like traditional Internet mailing list severs, such as “Majordomo” and “Listserv”.

The user of an Internet e-mail client “subscribes” to one of your mailing lists by sending an e-mail message to the address of your ListServer (typically “listserver@yourbbs.com”). In the body of the message (or optionally, the subject), the line “subscribe listname” must exist, where “listname” is the name of one of your mailing lists (as configured in your ctrl/listserver.ini file, described later).

Once subscribed, the user will automatically receive, in their mailbox, any messages posted in the message area (sub-board) corresponding to the mailing list. A user may unsubscribe from the mailing list by the same means but using the command “unsubscribe listname”.

The ListServer will respond to other “control messages” like these. A control message of “help” will return a list of valid commands to the requesting client's mailbox.

MIME

The ListServer does not at this time support the decoding of MIME-encoded control message body text. The simplest solution to this issue is to only accept control commands in the Subject of control messages by configuring the following in the root section of your ctrl/listserver.ini file:

SubjectCommand = true
BodyCommand = false

MIME-encoded mailing list submissions (posted messages) are supported, however.

Submissions

Writable mailing lists allow the user to submit messages to the list by sending e-mail messages addressed to listname@yourbbs.com. Submissions are automatically posted to the message area (sub-board) associated with the mailing list and forwarded to all mailing list subscribers.

Configuration

1. If you haven't already, create the message areas (sub-boards) in SCFG that you want to make available as mailing lists. Be sure to make a note of the configured “internal code” associated with each sub-board you are going to associate with a list.

2. Edit your ctrl/listserver.ini file:

  • creating a separate section for each mailing list and specifying the “internal code” of the associated sub-board using the sub key. See the stock listserver.ini for an example.
  • If you wish to allow control commands in the subject of messages addressed to the ListServer, set SubjectCommand = true in the root section of the file.
  • Set disabled = false in the root section portion of the file to enable the ListServer.

3. Edit your ctrl/mailproc.ini file, adding (if you don't have it already) the following section:

[listserver.js]
   to = listserver, listserv
   passthru = false

Include in the “to” value the names of any writable (not readonly) lists from your listserver.ini file. Be sure to separate the names with commas.

Example:

to = listserver, listserv, listname1, listname2, etc.

4. Add the command-line of ?listserver as a timed-event in SCFG->External Programs->Timed Events. This is necessary for the distribution of messages posted to sub-boards associated with mailing lists.

5. Recycle your mail server, if it didn't automatically recycle after saving your changes in SCFG in step 4. This is required to re-load your modified ctrl/mailproc.ini file into the mail server.

Maintenance

The list of subscribers is kept in the file data/subs/code.list.sub, where code is the sub-board's internal code. There is currently no mechanism for removing subscribers with bad e-mail addresses, but there will be in the future.

See Also