MDN language and customization

From Messaging Server Technical Reference Wiki
Jump to: navigation, search


There are a number of localizable, customizable files the MTA consults when constructing MDNs; these files will be discussed further in Customizing MDNs via the disposition files. By default, if no DISPOSITION_LANGUAGE mapping table is configured, the disposition_*.* files located in the langdir directory will be used to generate all MDNs. However, separate sets of disposition_*.* files can be created and located in separate directories---for localization or site customization purposes. Indeed, the MTA is distributed with several sets of langauge-specific disposition_*.* files, and a basic DISPOSITION_LANGUAGE mapping table (referenced in the mappings file via file inclusion of the mappings.locale file) which selects among the language-specific directories based on language preference of original message senders. That is, the DISPOSITION_LANGUAGE mapping table selects, based on any language preference of the original message sender, a directory in which to find an appropriate set of disposition_*.* files for generating an MDN back to that sender.

Probes to the DISPOSITION_LANGUAGE mapping table have the form:

mdn-type|modifier|source-channel|accept-language|return-address|recipient

where mdn-type can be any of displayed, dispatched, processed, deleted, denied, or failed, and where modifier can be a comma-separated list including any of error, warning, superseded, or expired. The accept-language field will have any values (possibly a comma-separated list) found on (preferentially) an Accept-Language: header line, or if that header line is not present then from a Preferred-language: header line if present, or failing that an X-Accept-Language: header line. Note that valid language tag values are discussed in RFC 3066 (Tags for the Identification of Languages).

The pattern (right hand side) of a DISPOSITION_LANGUAGE entry may set the $I flag to specify the directory from which the MTA should use disposition_*.* files when constructing an MDN, and optionally following a vertical bar character a destination charset. The pattern may also optionally use the $T flag to set the Subject: field value to use when constructing this MDN; the Subject: field follows yet another vertical bar character. (Note that the $T Subject: will only be used if there is neither a specific Subject: field for this type of MDN (such as a Sieve "vacation :subject" might specify), nor a SUBJECT option set in the disposition_option.opt file. That is, the $T specified Subject: field value is of low precedence compared to the other ways of setting the Subject: field value.) The pattern may also optionally set the names of the files to use when constructing this MDN instead of the normal disposition_prefix.txt, disposition_mdn-type.txt, and disposition_suffix.txt files; these are specified following the directory specification but prior to the first vertical bar character, with comma separators. All together, the syntax of the pattern is:


$I$Tlangdir,option,prefix,mdn-type-file,suffix|dest-charset|subject

See Sample NOTIFICATION_LANGUAGE and DISPOSITION_LANGUAGE mapping tables for an example DISPOSITION_LANGUAGE mapping table.

Note that as of MS 7.0.5, all MDNs generated by the MTA include an Auto-Submitted: header line, per the recommendation of RFC 3834 (Recommendations for Automatic Responses to Electronic Mail) -- in prior versions only certain forms of MDNs contained such a header line -- and the value placed on the Auto-submitted: header line has been updated to include the additional information suggested in RFC 5436 (Sieve Notification Mechanism: mailto) including additional values (such as auto-notified) and the owner-email parameter.


See also: