---
title: "相互作用"
slug: "interactions"
abstract: "例を含む相互作用の概要。"
---
# 相互作用

インタラクションとは、連絡先がブランドとオンラインまたはオフラインで接点を取るあらゆるポイントを指します。インタラクションの例には以下があります:

-   実店舗で何かを購入すること
-   アプリの利用
-   ウェブサイトの閲覧
-   電話での会話

相互作用はSitecore.XConnect.Interactionクラスで表され、少なくとも1つのイベントが必要です。以下の例では、単一の目標を持つ相互作用が新しい接触に追加されます。

using Sitecore.XConnect.Collection.Model;
using Sitecore.XConnect.Model;
using Sitecore.XConnect;
using System;

namespace Documentation
{
 public class AddInteraction
 {
 public async void GoalExample()
 {
 using (Sitecore.XConnect.Client.XConnectClient client = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient())
 {
 try
 {
 var newContact = new Sitecore.XConnect.Contact();
 client.AddContact(newContact);

 // Create new interaction for this contact
 Guid channelId = Guid.NewGuid(); // Replace with channel ID from Sitecore
 string userAgent = "Mozilla/5.0 (Nintendo Switch; ShareApplet) AppleWebKit/601.6 (KHTML, like Gecko) NF/4.0.0.5.9 NintendoBrowser/5.1.0.13341";
 var interaction = new Sitecore.XConnect.Interaction(newContact, InteractionInitiator.Brand, channelId, userAgent);

 // Get goal ID - this is the ID of the item in Sitecore
 var fakeGoalId = Guid.Parse("2a413310-b086-12e6-9598-0800200c9a66");

 // Create new instance of goal
 Sitecore.XConnect.Model.Goal goal = new Goal(fakeGoalId, DateTime.UtcNow);
 {
 };

 // Add goal to interaction
 interaction.Events.Add(goal);

 // Add interaction operation to client
 client.AddInteraction(interaction);

 // Submit interaction
 await client.SubmitAsync();
 }
 catch (Exception ex)
 {
 // Handle exception
 }
 }
 }
 }
}

以下の表は、構成子に渡すべき必須の相互作用特性を示しています。

財産

概要

ChannelId

チャネルとは、ウェビナー、メールキャンペーン、展示会での対面会話など、コンタクトがブランドとやり取りするための経路です。チャネルは、/sitecore/system/Marketing Control Panel/Taxonomies/Channelの定義項目として表現されています。  
  
システムによって作成されたインタラクションはシステムチャネルを使用します:/sitecore/system/Marketing Control Panel/Taxonomies/Channel/Online/System/System。例としては、自動化活動の副産物として作成されたインタラクションがあります。

Initiator

コンタクトがブランドのウェブサイトを訪れた場合、そのインタラクションはコンタクトが開始したものです。ブランドが配達や電話をかけた場合、そのインタラクションはブランドが開始したものです。

UserAgent

xConnectはウェブサービスであり、すべてのやり取りはインターネット対応デバイスを通じて作成されます。すべてのデバイスにはユーザーエージェントが存在します。ユーザーエージェントは [RFCで定](https://www.ietf.org/rfc/rfc2616.txt)められたフォーマットに従う必要があります。例えば、Nintendo Switchのユーザーエージェントは **Mozilla/5.0(Nintendo Switch;ShareApplet)、AppleWebKit/601.6(KHTML、Geckoのような)、NF/4.0.0.5.9、NintendoBrowser/5.1.0.13341**です。  
  
\> \[!注\]  
\> マーケティングオートメーションのような内部システムによって作成されたインタラクションには、Sitecore/9.0(マーケティングオートメーション)のようなユーザーエージェントが存在します。

以下の表は、オプションの相互作用特性を説明します。

財産

概要

VenueId

該当する場合は、やり取りが行われたオフライン会場のID。会場は/sitecore/system/Marketing Control Panel/Taxonomies/Venuesの定義項目として表現されています。

CampaignId

その相互作用を引き起こしたキャンペーンのID。CampaignId GUIDで表されるキャンペーンはイベントコレクションに重複しません。  
  
トラッキングの文脈では、キャンペーンがセッションの最初のページでトリガーされた場合、例えばFacebookのキャンペーンURLをクリックした場合にCampaignIdが設定されます。最初のページビュー後にトリガーされた追加のキャンペーンはCampaignEventオブジェクトとして追加されます。

## 相互作用には型がありません

インタラクションには明示的なタイプはありません。例えば、インタラクションを「オフライン」や「オンライン」と分類するプロパティはありません。これは意図的なものです。インタラクションのタイプはファセットやプロパティに基づいて推論すべきです。例えば:

-   WebVisit面がインタラクションに存在することは、そのインタラクションがウェブサイトの文脈で起こったことを示します
-   VenueIdの存在は、店舗などの物理的な場所で交流が行われたことを示します

## インタラクションエンゲージメント値

インタラクションのEngagementValueは、そのインタラクションのイベントのエンゲージメント価値の合計です。

## 相互作用時間

インタラクションのStartDateTime、EndDateTime、Durationは、そのインタラクションのタイムスタンプと持続時間を使って計算されます。

-   相互作用 .StartDateTime 最小の事象に対応します Timestamp
-   相互作用 .EndDateTime は、最大イベント Timestamp の値にイベント持続時間を加えたものとして計算されます(持続時間が存在する場合)
-   インタラクション .Duration は .EndDateTime - .StartDateTime

すべてのやり取りに持続時間があるわけではありません。例えば、搭乗カードのスキャンは単一のイベントに対して瞬時に行うものです。

## 相互作用モデルの拡張

ファセットを使ってインタラクションモデルを拡張します。詳細については以下のセクションを参照してください。

-   [カスタムファセットの作成](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-platform/facets.html "Facets")
-   [カスタムファセットの登録](https://doc.sitecore.com/xp/ja/developers/93/sitecore-experience-platform/create-a-custom-model.html "Create a custom model")

> !注CustomValuesInteractionオブジェクトから削除されました。代わりにファセットを使うべきです。