This chapter describes what a mailing list is made of within a Sympa environment.
See list aliases section, Mail aliases.
The configuration file for the
mylist list is named
/home/sympa/list_data/mylist/config if no virtual host is defined). Sympa reloads it into memory whenever this file has changed on disk. The file can either be edited via the web interface or directly via your favourite text editor.
If you have set the
sympa.conf parameter (see cache_list_config), a binary version of the config (
/home/sympa/list_data/my.domain.org/mylist/config.bin is maintained to allow a faster restart of daemons (this is especialy useful for sites managing lots of lists).
Be careful to provide read access for Sympa user to this file!
You will find a few configuration files in the
List configuration parameters are described in the list creation section, List configuration parameters.
This first example is for a list open to everyone:
subject First example (an open list) visibility noconceal owner email Pierre.David@prism.uvsq.fr send public review public
The second example is for a moderated list with authenticated subscription:
subject Second example (a moderated list) visibility noconceal owner email email@example.com editor email firstname.lastname@example.org send editor subscribe auth review owner reply_to_header value list cookie 142cleliste
The third example is for a moderated list, with subscription controlled by the owner, and running in digest mode. Subscribers who are in digest mode receive messages on Mondays and Thursdays.
owner email email@example.com editor email firstname.lastname@example.org send editor subscribe owner review owner reply_to_header value list digest 1,4 12:00
Be careful: since version 3.3.6 of Sympa, a RDBMS is required for internal data storage. Flat files should not be use anymore except for testing purpose. Sympa will not use these files if the list is configured with
/home/sympa/list_data/mylist/subscribers file is automatically created and populated. It contains information about list subscribers. It is not advisable to edit this file. Main parameters are:
reception | nomail | digest | summary | notice | txt | html | urlize | not_me
not_me. In normal delivery mode, the delivery attribute for a subscriber is not displayed. In this mode, subscription to message topics is available. See the SET LISTNAME SUMMARY command, the SET LISTNAME NOMAIL command and the digest parameter.
REVIEWcommand is issued for the list. If this parameter is not declared, the subscriber will be visible for
REVIEW. Note: this option does not affect the results of a
REVIEWcommand issued by an owner. See the SET LISTNAME CONCEAL command for details.
/home/sympa/list_data/mylist/info should contain a detailed text description of the list, to be displayed by the
INFO command. It can also be referenced from template files for service messages.
/home/sympa/list_data/mylist/homepage is the HTML text on the WWSympa info page for the list.
Every file has the .incl extension. Moreover, these files must be declared in paragraphs
editor_include in the list configuration file (without the .incl extension) (see List configuration parameters). This files can be template files.
Sympa looks for them in the following order:
These files are used by Sympa to load administrative data in a relational database: owners or editors are defined intensively (definition of criteria owners or editors must satisfy). Includes can be performed by extracting email addresses using an SQL or LDAP query, or by including other mailing lists.
A data inclusion file is made of paragraphs separated by blank lines and introduced by a keyword. Valid paragraphs are
include_ldap_query. They are described in the List configuration parameters chapter.
When this file is a template, the variables used are array elements (
param array). This array is instantiated by values contained in the subparameter
owner_include source myfile source_parameters mysql,rennes1,stduser,mysecret,studentbody,student
include_sql_query db_type [% param.0 %] host sqlserv.admin.univ-[% param.1 %].fr user [% param.2 %] passwd [% param.3 %] db_name [% param.4 %] sql_query SELECT DISTINCT email FROM [% param.5 %]
include_sql_query db_type mysql host sqlserv.admin.univ-rennes1.fr user stduser passwd mysecret db_name studentbody sql_query SELECT DISTINCT email FROM student
These files are used by Sympa as service messages for commands such as
REJECT. These files are interpreted (parsed) by Sympa and respect the template format; every file has the .tt2 extension. See Template file format.
Sympa looks for these files in the following order:
If the file starts with a
From: line, it is considered to be a full message and will be sent (after parsing) without the addition of SMTP headers. Otherwise the file is treated as a text/plain message body.
The following variables may be used in list template files:
[% conf.email %]: Sympa email address local part;
[% conf.domain %]: Sympa's robot domain name;
[% conf.sympa %]: Sympa's complete email address;
[% conf.wwsympa_url %]: WWSympa's root URL;
[% conf.listmaster %]: listmasters' email addresses;
[% list.name %]: list name;
[% list.host %]: list hostname (default is Sympa robot domain name);
[% list.lang %]: list language;
[% list.subject %]: list subject;
[% list.owner %]: list owners table hash;
[% user.email %]: user email address;
[% user.gecos %]: user gecos field (usually his/her name);
[% user.password %]: user password;
[% user.lang %]: user language;
[% execution_date %]: the date when the scenario is executed.
You may also dynamically include a file from a template using the
[% INSERT %] directive.
Dear [% user.email %], Welcome to list [% list.name %]@[% list.host %]. Presentation of the list: [% INSERT 'info' %] The owners of [% list.name %] are: [% FOREACH ow = list.owner %] [% ow.value.gecos %] <[% ow.value.email %]> [% END %]
Sympa will send a welcome message for every subscription. The welcome message can be customized for each list.
Sympa will send a farewell message for each
SIGNOFF mail command received.
This message is sent to users who have been deleted (using the
DELETE command) from the list by the list owners.
Sympa will send a reject message to the senders of messages rejected by the list editors. If they prefixe their
REJECT with the keyword
QUIET, the reject message will not be sent.
This message is sent to users who have been invited (using the
INVITE command) to subscribe to a list.
You may use additional variables
[% requested_by %]: email of the person who sent the
[% url %]: the mailto: URL to subscribe to the list.
This file contains a message sent to each subscriber when one of the list owners sends the REMIND command.
Template for summaries (reception mode close to digest), see the SET LISTNAME SUMMARY command.
Template that defines list mail alises. It is used by the
Note that this template is not a service messages, therefore it is not located in a mail_tt2/ subdirectory.
/home/sympa/list_data/mylist/stats is a text file containing statistics about the list. Data are numerics separated by white space within a single line:
These files are used by Sympa to create task files. They are interpreted (parsed) by the task manager and respect the task format. See Tasks.
Every year Sympa will send a message (the template
remind.tt2) to all subscribers of the list to remind them of their subscription.
Every month Sympa will delete subscribers older than one year who haven't answered two warning messages.
You may create the
/home/sympa/list_data/mylist/message.footer files. Their content is added, respectively at the beginning and at the end of each message before the distribution process. You may also include the content-type of the appended part (when
footer_type list parameter is set to
mime) by renaming the files to
footer_type list parameter defines whether to attach the header/footer content as a MIME part (except for multipart/alternative messages), or to append them to the message body (for text/plain messages).
Under certain circumstances, Sympa will NOT add headers/footers, here is its algorythm:
if message is not multipart/signed if footer_type==append if message is text/plain append header/footer to it else if message is multipart AND first part is text/plain append header/footer to first part if footer_type==mime if message is not multipart/alternative add header/footer as a new MIME part
/home/sympa/list_data/mylist/archives/ directory contains the messages archived for lists which are archived; see archive. The files are named in accordance with the archiving frequency defined by the