EXMパイプライン
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Email Experience Managerは、メッセージの生成と送信に主に2つのパイプラインを使用します。
パイプラインはEXMの設定ファイルで定義されています。カスタムプロセッサを追加したり、デフォルトのプロセッサを置き換えたりしてパイプラインを拡張・カスタマイズできます。
EXMパイプラインおよびそれに含まれるプロセッサの仕組みを理解することで、メッセージ生成と送信プロセス全体を把握できます。異なるメッセージタイプでは、異なるプロセッサの利用が必要になる場合があります。
ディスパッチニュースレターのパイプライン
DispatchNewsletterパイプラインはSitecore.EmailExperience.ContentManagementPrimary.configファイル内で定義されています。このパイプラインには以下のプロセッサが含まれます:
プロセッサ名
概要
CheckPreconditions
メールキャンペーンの送信開始に必要な条件がすべて満たされているかを確認します。
MoveToQueuing
メールキャンペーンをキューイング状態に移します。
DeployAnalytics
メールキャンペーン(キャンペーン、主題MVテスト)に関連する分析定義のワークフロー状態を「デプロイ済み」に変更します。
PublishDispatchItems
メッセージ項目とキャンペーン項目を公開します。
QueueMessage
マスターサーバーは、EXMマスターデータベースのDispatchQueueテーブルに受信者をキューイングし、セグメント化されたList Managerの連絡先ソースを使って以下のような連絡先をフィルタリングします:
- 通信同意は取り消されました
- 市場に行かないでください
- バウンス数は許容される最大数を超えています
MoveToProcessing
メールキャンペーンの状態が送信中に変更されます。
LaunchDedicatedServers
マスターサーバーは専用サーバー上で DispatchNewsletter パイプラインを起動します。これはパイプラインの簡略版であり、マスターサーバー専用のプロセッサは含まれていません。マスターサーバーと専用サーバーは同じデータベースを共有しています。
SendTestMessage
マスターサーバーはクイックテストを送信するために使われます
SendMessage
マスターサーバーと専用サーバーはメールキャンペーンを生成し送信します。
プロセッサはEXMディスパッチデータベースから複数の連絡先を取得します。Sitecoreの EXM.DispatchBatchSize 設定で連絡先数を指定できます。EmailExperience.ContentManagement.configファイル。
各サーバーは受信者リストにアクセスし、残りの受信者の中からメールキャンペーンを生成します。受信者がリストに残っている限り、このプロセスは続きます。
各受信者に対して、プロセッサは以下の通りです:
- subscriber。
- メッセージに対応するページを要求します。
- リクエストされたページのコンテキストユーザーとしてユーザーを設定します。セキュリティ制限が適用されます。
- 「メッセージが開かれました」という画像が追加されます。
- SendEmailパイプラインの始まりです。
WaitForDispatchToFinish
少なくとも1台の専用ディスパッチサーバーを設定していて、マスターサーバーのディスパッチを無効にしたい場合は、このパイプラインプロセッサを有効にし、SendMessageパイプラインプロセッサを無効にする必要があります。
パイプラインプロセッサの有効化・無効化は、入力/出力でコメントを付けることで行います。このプロセッサはデフォルトで無効化されています。
MoveToSent
メールキャンペーンの状態が送信済みに変更されます。
NotifyDispatchFinished
ディスパッチ処理が完了すると通知を送信します。
FinalizeDispatch
ラウンドロビン方式のMVテストプロセスの内部変数をクリーンアップし、SMTPサーバーへの残りの接続をクローズします。
専用サーバー向けのDispatchNewsletterパイプライン
専用ディスパッチサーバー向けにカスタマイズされた簡略版のDispatchNewsletterパイプラインがSitecore.EmailExperience.EmailProcessing.configファイル内に定義されています。このパイプラインのバージョンには以下のプロセッサのみが含まれています:
- CheckPreconditions
- SendMessage
- FinalizeDispatch
SendEmailパイプライン
SendMessageプロセッサは送信されるすべてのメールのパイプラインSendEmailを開始します。
SendEmailパイプラインはSitecore.EmailExperience.ContentManagement.configファイル内で定義されています。このパイプラインには以下のプロセッサが含まれます:
プロセッサ名
概要
FillEmail
パーソナライズされた受信者データを使ってメッセージを生成します。
SendEmail
メールキャンペーンをMTAに送る。
CreateTask
メール送信ページイベントとのやり取りを追加するタスクを作成します。
Sleep
各メール送信後に現在のサーバーでEXMがどれくらいの時間停止するかの制御。ミリ秒(ms)で指定されます。
マルチサーバー環境では、このプロセッサを使ってサーバー間の負荷を分散させることができます。例えば、専用サーバーにプライマリCMサーバーの4倍のメールを送信させたい場合は、スリープ設定で以下の値を指定します。
-
プライマリCMサーバーでは200msです。サーバーはメール送信後200msの間一時停止します。
-
専用サーバーでは50秒です。サーバーはメール送信後50msの一時停止を行います。
さらに、1000通のメールを送信すると、プライマリCMサーバーは約200通(20%)、専用サーバーは約800通(80%)のメールを送信します。