---
title: "トラッキング・インタラクションの側面"
slug: "tracking-interaction-facets"
abstract: ""
---
# トラッキング・インタラクションの側面

このトピックでは、トラッカーの文脈でインタラクションにファセットを追加する方法を説明します。ファセットに関する詳細は、以下のトピックをご覧ください。

-   [ファセットの概要](https://doc.sitecore.com/xp/ja/developers/91/sitecore-experience-platform/facets.html "Facets")
-   [xConnect Client APIを使ったインタラクションに側面を追加する方法](https://doc.sitecore.com/xp/ja/developers/91/sitecore-experience-platform/set-interaction-facets.html "Set interaction facets")

## ファセットデータをカスタム値に保存します

1.  [インタラクションファセット](https://doc.sitecore.com/xp/ja/developers/91/sitecore-experience-platform/create-a-custom-facet.html "Create a custom facet")を作成し、[モデルに登録](https://doc.sitecore.com/xp/ja/developers/91/sitecore-experience-platform/create-a-custom-model.html "Create a custom model")します。
2.  トラッキングコンテキスト内でインタラクションファセットのインスタンスを作成します。そのファセットはSerializableでマーク**されなければなりません**。
3.  示した通り、ファセットを Sitecore.Analytics.Tracker.Current.Interaction.CustomValues に追加します。この例では、ファセットキーは辞書キーとして使われています:

namespace Documentation
{
 public class Tracking
 {
 public void Example()
 {
 CustomerMood mood = new CustomerMood()
 {
 MoodDescription = "Super happy!"
 };

 Sitecore.Analytics.Tracker.Current.Interaction.CustomValuesCustomerMood.DefaultFacetKey = mood;
 }
 }
}

## インタラクション変換プロセッサを作成する

1.  継承するプロセッサを作成します ConvertToXConnectInteractionProcessorBase
2.  示された Process() メソッドを実装します。 CustomerMood ファセットを args.TrackerVisitData.CustomValues から args.Facetsにコピーします。

using Sitecore.Analytics.XConnect.DataAccess.Pipelines.ConvertToXConnectInteractionPipeline;

namespace Documentation
{
 public class ConvertInteractionFacet : ConvertToXConnectInteractionProcessorBase
 {
 public override void Process(ConvertToXConnectInteractionPipelineArgs args)
 {
 if (args != null)
 {
 var customValues = args.TrackerVisitData.CustomValues;

 var moodFacet = customValuesCustomerMood.DefaultFacetKey;

 if (moodFacet != null && moodFacet is CustomerMood)
 {
 args.Facets.Add(CustomerMood.DefaultFacetKey, moodFacet);
 }
 }
 }
 }
}

> !注カスタム値(args.TrackerVisitData.CustomValues)はxConnectに保存されません。カスタム値がxConnectでサポートされている形式に変換されなければ、データは失われます。

## インタラクション変換プロセッサをレジスタします

メインConvertToXConnectInteractionProcessorでプロセッサーをパッチを当ててください。

<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
 <sitecore>
 <pipelines>
 <convertToXConnectInteraction>
 <processor patch:after="processor@type='Sitecore.Analytics.XConnect.DataAccess.Pipelines.ConvertToXConnectInteractionPipeline.ConvertToXConnectInteractionProcessor, Sitecore.Analytics.XConnect'" type="Documentation.ConvertInteractionFacet, Documentation"/>
 </convertToXConnectInteraction>
 </pipelines>
 </sitecore>
</configuration>