配信ステータス通知メッセージをローカライズして、言語別に異なるユーザーにメッセージを返すことができます。たとえば、フランス語を使用しているユーザーにフランス語の通知を返すことができます。
ステータス通知メッセージのローカライズまたはカスタマイズは、次の 2 つの手順で行います。
ローカライズまたはカスタマイズされた return_*.txt メッセージファイルのセットを作成し、別々のディレクトリに保存します。詳細は、「ステータス通知を作成および変更するには」を参照してください。
NOTIFICATION_LANGUAGE マッピングテーブルを設定します。
NOTIFICATION_LANGUAGE マッピングテーブル (msg_svr_base/config/mappings) では、送信元メッセージ (通知が送信される原因であるメッセージ) の属性 (言語、国、ドメイン、アドレスなど) に応じて使用される、ローカライズまたはカスタマイズされた通知メッセージファイルのセットを指定します。
元の差出人のメッセージがパースされ、ステータス通知の種類、ソースチャネル、優先言語、返信アドレス、および 1 人目の受取人が決定されます。テーブルの構築方法によって異なりますが、通知ファイルのセットは 1 つ以上の属性によって選択されます。
NOTIFICATION_LANGUAGE マッピングテーブルの形式は次のとおりです。サンプルのエントリ行は、紙面の都合で折り返されています。実際のエントリは、1 行で記述する必要があります。
NOTIFICATION_LANGUAGE dsn-type-list|source-channel|preferred-language|return-address \ |first-recipient $Idirectory-spec |
dsn-type-list は、配信ステータス通知の種類のコンマ区切りリストです。複数の種類を指定する場合はコンマで区切ります。スペースでは区切りません。スペースを使用すると、マッピングテーブルエントリのパターンが終了します。次のような種類があります。
failed - 一般的な、永続的配信不能を示すメッセージ (「そのようなユーザーはありません」など)。return_failed.txt ファイルが使用されます。
bounced - 手動で「バウンス」した場合に使用される通知メッセージ。ポストマスターを実行します。return_bounced.txt ファイルが使用されます。
timedout - MTA が、指定された配信期間内にメッセージを配信できなかったことを示します。メッセージは送り返されます。return_timedout.txt ファイルが使用されます。
delayed - MTA が、メッセージを配信できなかったが、引き続き配信を試みていることを示します。return_delayed.txt ファイルが使用されます。
deferred - 「delayed」に類似した配信不能通知。ただし、MTA が配信試行を続行する期間は表示されません。return_deferred.txt ファイルが使用されます。
forwarded - このメッセージに対して配信確認が要求されていたが、このメッセージは配信確認がサポートされていないシステムに転送されたことを示します。return_forwarded.txt ファイルが使用されます。
source-channel は通知メッセージを生成するチャネル、つまり現在メッセージがキューに入っているチャネルです。たとえば、メッセージストアの配信キューの ims-ms、送信用 SMTP キューの tcp_local などがあります。
preferred-language は、処理中のメッセージ (通知を生成中のメッセージ) で使用される言語です。この情報のソースは、第 1 に accept_language フィールドです。このフィールドにない場合は、Preferred-language: ヘッダーフィールドと X-Accept-Language: ヘッダーフィールドが使用されます。標準の言語コードの値のリストは、msg_svr_base/config/languages.txt ファイルを参照してください。
このフィールドには、空の場合を除き、メッセージの発信者が Preferred-language: ヘッダー行または X-Accept-language: ヘッダー行に指定した内容が入ります。このため、意味のない文字が使用されることもあります。
return-address は、送信元メッセージのエンベロープ From: アドレスです。これは、通知メッセージの送信先となるエンベロープアドレスであり、使用言語の手掛かりになることがあります。
first-recipient は、元のメッセージの宛先のエンベロープ To: アドレス (メッセージが複数の受取人に届かない場合は 1 人目の受取人アドレス) です。たとえば、「dan@siroe.com へのメッセージは配信されませんでした」という通知では、報告を受けるエンベロープ To: アドレスは dan@siroe.com です。
directory-spec は、マッピングテーブルのプローブに一致する場合に使用する return_*.txt ファイルを含むディレクトリです。$I の後ろにディレクトリの指定が続きます。
たとえば、フランス語の通知ファイル (return_*.txt) が /lc_messages/table/notify_french/ ディレクトリにあり、スペイン語の通知ファイル (return_*.txt) が /lc_messages/table/notify_spanish/ ディレクトリにあるサイトでは、次のようなテーブルを使用できます。各エントリは 1 つまたは複数のスペースで始まり、エントリ間には空白行はありません。
NOTIFICATION_LANGUAGE ! 優先言語: 指定されたヘッダー値 ! *|*|fr|*|* $I/lc_messages/table/notify_french/ *|*|es|*|* $IIMTA_TABLE/notify_spanish/ *|*|en|*|* $I/imta/lang/ ! ! 優先言語の値が指定されていない場合は、ドメイン名の国別コードに ! 基づいて通知を選択します。例: PF= フランス領ポリネシア、BO= ボリビア ! *|*|*|*.fr|* $I/imta/table/notify_french/ *|*|*|*.fx|* $I/imta/table/notify_french/ *|*|*|*.pf|* $I/imta/table/notify_french/ *|*|*|*.tf|* $I/imta/table/notify_french/ *|*|*|*.ar|* $I/imta/table/notify_spanish/ *|*|*|*.bo|* $I/imta/table/notify_spanish/ *|*|*|*.cl|* $I/imta/table/notify_spanish/ *|*|*|*.co|* $I/imta/table/notify_spanish/ *|*|*|*.cr|* $I/imta/table/notify_spanish/ *|*|*|*.cu|* $I/imta/table/notify_spanish/ *|*|*|*.ec|* $I/imta/table/notify_spanish/ *|*|*|*.es|* $I/imta/table/notify_spanish/ *|*|*|*.gp|* $I/imta/table/notify_spanish/ *|*|*|*.gt|* $I/imta/table/notify_spanish/ *|*|*|*.gy|* $I/imta/table/notify_spanish/ *|*|*|*.mx|* $I/imta/table/notify_spanish/ *|*|*|*.ni|* $I/imta/table/notify_spanish/ *|*|*|*.pa|* $I/imta/table/notify_spanish/ *|*|*|*.ve|* $I/imta/table/notify_spanish/ |
デフォルトの mappings.locale ファイルはインストールによって組み込まれます。これは、通知言語マッピングを有効にするために mappings ファイルに組み込まれます。通知言語マッピングを無効にするには、インクルード行を以下のようにコメントアウトします。
! <IMTA_TABLE:mappings.locale
ファイル内のコメントを読み、必要に応じて変更してください。