通知メッセージは、return_prefix.txt、return_ActionStatus.txt、return_suffix.txt の 3 ファイルのセットで構成されています。
通知をカスタマイズまたはローカライズするには、ロケールまたはカスタマイズ、あるいはその両方のそれぞれに return_*.txt ファイルの全セットを作成し、それを別々のディレクトリに保存します。たとえば、あるディレクトリにはフランス語の通知ファイル、もう 1 つのディレクトリにはスペイン語の通知ファイルを保存し、3 つ目のディレクトリには特殊な不特定多数宛メールに対する通知を保存することができます。
このリリースには、フランス語、ドイツ語、およびスペイン語のサンプルファイルが含まれています。これらのファイルは、ユーザーのそれぞれのニーズに合わせて変更することができます。
日本語などの 2 バイト文字の場合は、日本語でテキストを作成してから、そのテキストを ASCII 形式に変換してから、% 文字がないかどうかをチェックしてください。不測の % 文字が存在する場合は、%% で置き換えてください。
ステータス通知メッセージの形式と構造は次のとおりです。
return_prefix.txt には、該当するヘッダーテキストと本文の導入部分が含まれます。米国英語のロケールのデフォルトは以下のとおりです。
Content-type: text/plain; charset=us-asci Content-language: EN-US This report relates to a message you sent with the following header fields: %H |
US-ASCII 以外のステータス通知メッセージの場合は、charset パラメータと Content-Language ヘッダーを適切な値に変更する必要があります (たとえばフランス語用のファイルでは ISO-8859-1 と fr)。%H は、表 10–9 で定義されているヘッダー置換シーケンスです。
return_<ActionStatus>.txt にはステータス専用のテキストが含まれています。ActionStatus は、メッセージの MTA ステータスタイプです。たとえば、デフォルトでは return_failed.txt のテキストは次のようになります。
Your message cannot be delivered to the following recipients:%R
return_bounced.txt のデフォルトのテキストは次のようになります。
Your message is being returned. It was forced to return bythe postmaster.
The recipient list for this message was:%R
return_suffix.txt には結びのテキストが含まれます。デフォルトでは、このファイルは空白です。
置換 |
定義 |
---|---|
%H |
メッセージのヘッダーに展開します。 |
%C |
メッセージがキューに入っていた時間の単位1 に展開します。 |
%L |
返送されるまでメッセージがキューに置かれていた時間の単位1 に展開します。 |
%F |
メッセージがキュー内に留まることができる時間の単位 1 に展開します。 |
%S [%s] |
以前展開した数値が 1 以外の場合は、S または s に展開します。次に例を示します。「%C day%s」は、メッセージがキューに入っていた日数によって「1 day」または「2 days」などに展開できます。 |
%U [%u] |
使用する時間の単位 (時間または日) に展開します。次に例を示します。「%C %U%s」は、メッセージがキューに入っていた日数または時間数と MTA オプション RETURN_UNITS の値によって「2 日」や「1 時間」などに展開できます。RETURN_UNITS=1 (時間) を設定していて、ローカライズされた通知メッセージをサイトで使用している場合は、英語以外のすべての言語に関して、return_delayed.txt と return_timedout.txt を編集し、「日」に相当する単語を「時間」に相当する単語で置き換える必要があります。たとえば、フランス語では、jour(s) を heure(s) と置き換えます。ドイツ語では、Tag(e) を Stunde(n) と置き換えます。スペイン語では、día(s) を hora(s) と置き換えます。 |
%R |
メッセージの受取人のリストに展開します。 |
%% |
% (テキストの置換シーケンスは、文字セットに関係なくバイト単位でスキャンされる。2 バイトの文字セットを使用する場合は、意図しない % 記号を確認する必要がある。) |
1 単位は、時間または日 (デフォルト) で、MTA オプションファイルの RETURN_UNITS オプションで定義されます。 |