連絡先の統合

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

xDBに同じ人物を記述する 連絡先 レコードが複数含まれている場合は、連絡先レコードをマージできます。これらの取引先担当者レコードに格納されているすべての情報は、1つのレコードにマージされます。古い連絡先レコードは削除され、更新された連絡先レコードへの参照に置き換えられるため、今後のすべての操作で更新および統合された情報にアクセスできます。

ContactEntity APIを使用してカスタム連絡先ファセットを作成する場合、または連絡先に他のカスタマイズを実装した場合は、マージロジックを上書きして、カスタムファセットのデータが正しくマージされるようにする必要があります。カスタムコンタクトファセットには、組織またはソリューションに固有のマージするデータが含まれる場合があります。

マージロジックをカスタマイズするには、新しいプロセッサをmergeContactsパイプラインに追加する必要があります。

連絡先を統合する場合

Sitecoreは、次の場合にマージ パイプラインを呼び出します。

  • 未識別の連絡先は、システム内で既に認識されている連絡先として識別されます。連絡先レコードは、連絡先識別 プロセスの一部としてマージされます。

  • システムがxDB接続なしで動作しています。たとえば、ネットワークや設定の問題などです。この状況では、Sitecoreは収集した行動と個人情報をxDBのプライマリ コンタクト レコードにマージしようとします。マージは、データベースまたはネットワークの問題から回復する方法として使用されます。

連絡先の統合方法

マージ操作は、ソースレコードとターゲットレコードの2つのコンタクトレコードで実行されます。マージ操作が完了すると、ターゲット レコードはxDBで新しい情報で更新され、ソース レコードは廃止され、それに関連するすべての情報がxDBから削除されます。

MergeContactArgsこれを実装するための次の2つのプロパティを提供します。

Property

Description

DyingContact

マージ後に削除される取引先担当者レコードへの参照。これは、マージする連絡先情報のソースです。

SurvivingContact

マージ後にxDBに保持されるコンタクト レコードへの参照。これは、マージされる連絡先情報のターゲットです。

マージパイプラインには、デフォルトの マージ連絡先ルールを実装する事前定義されたプロセッサのセットが含まれています。

カスタムプロセッサを使用したカスタムコンタクトファセットのマージ

カスタムコンタクトファセットを作成した場合は、MergeContactパイプラインを使用してカスタムプロセッサを作成し、カスタムコンタクトファセットをマージすることもできます。

カスタム結合を作成するには:

  1. Sitecore.Analytics.Pipelines.MergeContacts名前空間のMergeContactProcessorクラスから派生したクラスを作成し、void Process(MergeContactArgs args) メソッドをオーバーライドします。

    namespace CustomCode
    {
      using Sitecore.Analytics.Pipelines.MergeContacts;
      public class CustomMergeLogic : MergeContactProcessor
      {
        public override void Process(MergeContactArgs args)
        {
          // TODO: Use args.DyingContact and args.SurvivingContact
          // TODO: write into args.SurvivingContact
        }
      }
    }
  2. void Process(MergeContactArgs args)方法では、プロパティargs.DyingContactargs.SurvivingContactを使用して、マージするコンタクトレコードにアクセスします。

  3. マージされた値をargs.SurvivingContactに割り当てます。 args.DyingContact内のすべての情報は、マージ後に失われます。

  4. カスタムプロセッサをmergeContactsパイプラインに追加します。この例のプロセッサはCustomCode.CustomMergeLogicと呼ばれます。

    <configuration>
      <sitecore>
        <pipelines>
          <mergeContacts>
            <processor type="CustomCode.CustomMergeLogic" />
          </mergeContacts>
        </pipelines>
      </sitecore>
    </configuration>
メモ

マージ パイプラインは、各HTTP要求の一部として同期的に呼び出されます。したがって、パイプラインに追加するカスタマイズでは、データベースやサードパーティ システムに対する実行時間の長い操作や要求を避ける必要があります。

この記事を改善するための提案がある場合は、 お知らせください!