セッション中のファセッツへのアクセス
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
訪問者がサイトに戻ると、xConnectから設定可能なファセットリストが セッションに読み込まれ ます。
!重要セッションに読み込まれたファセットは編集できますが、セッション終了時に自動的にxConnectに保存されるわけではありません。 ファセットを更新するにはxConnect Client APIを使う必要があります。
セッション中にIXConnectFacetsクラスにアクセスしてください
IXConnectFacetsトラッカーファセットはSitecore.Analytics.Model.Framework.IFacetを継承し、xConnectファセットの辞書を含み、を継承するSitecore.XConnect.Facetを含みます。構成はどのファセットがファセット辞書に読み込まれるかを決定します。以下の例は、デフォルトで利用可能なPersonalInformationファセットへのアクセス方法を示しています:
var xConnectFacet = Sitecore.Analytics.Tracker.Current.Contact.GetFacet<Sitecore.Analytics.XConnect.Facets.IXConnectFacets>("XConnectFacets");
PersonalInformation personal = xConnectFacet.FacetsPersonalInformation.DefaultFacetKey as PersonalInformation;
!注Sitecore 9.3以降では、IContactPersonalInfoのようなレガシーなファセットクラスはもはや利用できません。代わりにIXConnectFacetsクラスを使いましょう。
App_Config\Sitecore\Marketing.xDB\Sitecore.Analytics.Model.config設定ファイルの
要素のコメントを解除することでレガシーの側面を再有効化できます。ただし、IXConnectFacetsへのアップグレードを推奨します。
セッション内のキービヘイビアキャッシュの側面にアクセスする
以下の例は 、キービヘイビアキャッシュへのアクセス方法を示しています:
var xConnectFacets = Sitecore.Analytics.Tracker.Current.Contact.GetFacet
KeyBehaviorCache kbc = xConnectFacets.FacetsKeyBehaviorCache.DefaultFacetKey as KeyBehaviorCache; var recentCampaigns = kbc.Campaigns;
!ヒント各キービヘイビアキャッシュエントリにはDefinitionIdプロパティがあります。 マーケティングオペレーションAPIを使ってIDごとに定義項目を取得します。
セッション内のコンタクト行動プロファイルの側面にアクセスする
以下の例は、コンタクト行動プロファイルへのアクセス方法を示しています:
var xConnectFacets = Sitecore.Analytics.Tracker.Current.Contact.GetFacet
ContactBehaviorProfile cbp = xConnectFacets.FacetsContactBehaviorProfile.DefaultFacetKey as ContactBehaviorProfile; var matchedProfileIDs = cbp.Scores.Select(x => x.Value.ProfileDefinitionId);
セッション内で自動化プランの登録にアクセスする
以下の例は、連絡先の自動化活動にアクセスする方法を示しています。
var xConnectFacets = Sitecore.Analytics.Tracker.Current.Contact.GetFacet
AutomationPlanEnrollmentCache enrolments = xConnectFacets.FacetsAutomationPlanEnrollmentCache.DefaultFacetKey as AutomationPlanEnrollmentCache;
var specificActivityEnrolments = enrolments.ActivityEnrollments.Where(x => x.ActivityId == Guid.Parse("9098fa76-eaf3-4adc-ada5-e46014ba9f30")); var specificPlanEnrolments = enrolments.ActivityEnrollments.Where(x => x.AutomationPlanDefinitionId == Guid.Parse("6ce0925e-961e-469e-b085-454a6ba0a931"));
!ヒント各オートメーションプラン登録キャッシュエントリにはプラン定義IDとアクティビティIDがあります。Automation Plan Definitionマネージャーを使ってプラン定義アイテムを取得してください。 アクティビティDescriptor Locator APIを使ってIDでアクティビティディスクリプタを取得してください。