Skip to main content

はじめに

Adobe Experience Manager (AEM) は、組織が複数のチャネルにわたってパーソナライズされたデジタル体験を作成、管理、配信できるエンタープライズコンテンツ管理プラットフォームです。 Experience Fragments とそのバリエーションを、MoEngage の Email Templates として直接同期します。マーケティングチームは AEM でロケール別のメールバリエーションを作成し、それらを MoEngage でグループ化された多言語対応のメールテンプレートとして自動的に表示させることができます。

ユースケース

  • ロケールベースのメールキャンペーン: 複数のロケールバリエーション(例: 英語、ドイツ語、イタリア語)を持つ 1 つの Experience Fragment を作成します。各バリエーションは、MoEngage で単一の親の下にグループ化された子テンプレートとして同期されるため、MoEngage は各ユーザーに適切なロケールを自動的に配信できます。
  • メール作成の一元化: すべてのメール HTML を信頼できる唯一の情報源として AEM で管理します。公開操作を行うたびに、手動でのエクスポートやコピー&ペーストなしで、最新のコンテンツが MoEngage のメールテンプレートに自動的にプッシュされます。
  • 複数バリエーションのテスト: メールの A/B バリアントや地域別バリアントを単一の AEM Experience Fragment 内で管理し、それぞれを MoEngage のテンプレートグループ内の番号付きバリエーションとして同期します。

仕組み

同期は、MoEngage の Email Template のグループ化構造に直接対応する Parent + Child テンプレートモデルに従います。

ロケール検出ロジック

ワークフローは、バリエーションのページタイトルまたはノード名の末尾にある [-_][language][-_][country] サフィックスを照合して、各 XF バリエーションのロケールを自動的に検出します(例: promo-email-de_de → DE_DE)。次のロケールが標準でサポートされています。
ロケールのフォールバックバリエーションのタイトルまたはノード名から有効なロケールが検出されない場合、または検出されたロケールが上記のサポート対象リストにない場合、ワークフローはロケールをデフォルトの EN に設定し、警告をログに記録します。必要に応じて、実装内の VALID_LOCALES セットを拡張して、追加のロケールをサポートできます。

ステップ 1: Email Sync ワークフローステップを追加する

AEM プロジェクトの次のパスに新しいファイルを作成します。
実装サンプル以下のコードは、出発点として使用することを目的とした参考用の実装サンプルです。コアとなる同期フローをカバーしていますが、AEM プロジェクトの構造、ロケールリスト、送信者の詳細、テンプレートの命名規則に合わせて調整が必要になる場合があります。インラインコメントをよく確認し、デプロイする前に非本番環境で十分にテストしてください。実装のサポートやカスタム要件については、MoEngage Support またはカスタマーサクセスマネージャーにお問い合わせください。
MoEngageEmailSyncStep.java

ステップ 2: Email Sync ワークフローモデルを作成する

  1. AEM Author で Tools > Workflow > Models に移動します。
  2. Create > Create Model をクリックし、次の詳細を入力します。
    1. Title: MoEngage Email Sync
    2. Name: moengage-email-sync
  3. ワークフローを編集用に開き、デフォルトのステップを削除します。
  4. サイドバーから Process Step をキャンバスにドラッグします。
  5. Process Step をダブルクリックして設定します。
  6. Process ドロップダウンで、MoEngage Email Sync (Parent + Child - Stable) を選択します。
  7. Arguments フィールドに次のように入力します。
  8. OK をクリックして保存し、Sync をクリックしてワークフローモデルを有効にします。

設定パラメーター

ステップ 3: ワークフローランチャーを設定する

Tools → Workflow → Launchers に移動し、Experience Fragments 用のランチャーを作成します。
重要
  • Run Modes: author に設定します
  • Enabled: true に設定します
  • [your-site] を実際のサイトパスに置き換えます
  • 同じ XF パスで MoEngage Content Sync ランチャーをすでに使用している場合は、二重処理を避けるために両方のランチャーのスコープが正しく設定されていることを確認してください。パス条件を使用するか、XF のサブフォルダーを分けることで、Content Block 用の XF とメールテンプレート用の XF を区別できます。

ステップ 4: メールテンプレートの同期をテストする

デバッグモードを有効にする(初回実行時に推奨)
初回のテストでは、ワークフローの引数にデバッグパラメーターを追加します。
webhook.site から無料の Webhook URL を取得します。
  1. AEM Author で、メールテンプレートとして同期する Experience Fragment に移動します。少なくとも 1 つのバリエーション(子ページ)があることを確認してください。ロケールベースでグループ化する場合は、各バリエーションのタイトルまたはノード名がロケールサフィックスで終わっていることを確認してください(例: promo-email-de_de)。
  2. ページ情報アイコンを選択し、Start Workflow をクリックします。
  3. ドロップダウンから MoEngage Email Sync を選択し、Start をクリックします。
  4. crx-quickstart/logs/error.log で MoEngageEmailSyncStep というプレフィックスが付いたログエントリを監視し、親テンプレートと子テンプレートの同期を確認します。
  5. MoEngage で Content > Email Templates に移動し、正しいロケールでテンプレートグループが作成されたことを確認します。

Content Sync と Email Template Sync の主な違い

サポートとカスタマイズサンプルコードはコアとなる同期フローをカバーしています。一般的なカスタマイズには、VALID_LOCALES へのロケールの追加、ブランドごとの sender_name フィールドのカスタマイズ、AEM の命名規則に合わせたロケール検出用正規表現の調整などがあります。実装のサポートについては、MoEngage Support またはカスタマーサクセスマネージャーにお問い合わせください。