---
title: "ウォークスルー:インタラクションパージ条件のカスタマイズ"
slug: "walkthrough--customizing-interaction-purge-conditions"
abstract: "パージツールを拡張するためのウォークスルーで、インタラクションデータのカスタムフィルターを追加してください。"
---
# ウォークスルー:インタラクションパージ条件のカスタマイズ

パージツールを拡張すれば、パージ前にインタラクションデータの抽出をさらにフィルタリングできます。このオプションは、パージするインタラクションデータの選択をより細かくするのに便利です。

このウォークスルーでは、以下の方法を説明します:

-   IInteractionConditionインターフェースを実装してください
-   カスタム条件を登録してください

## IInteractionConditionインターフェースを実装する

カスタム条件を作成するには:

-   Sitecore.XConnect.DataTools.Abstractions.Conditions.IInteractionConditionインターフェースをユニークなConditionIdで実装します。
    
    > !注ConditionIdはシステム内で一意に識別する文字列です。[タスク登録](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-platform/register-a-purge-contacts-api-task.html "Register a purge contacts API task")時にConditions POSTパラメータのConditionIdを渡さなければなりません。
    
    例えば:
    
    public interface IInteractionCondition
    {
     bool IsAccepted(Interaction interaction);
     string ConditionId { get; }
    }
    
    public class ChannelInteractionCondition : IInteractionCondition
    {
        public static readonly Guid ChannelId = new Guid("DF9900DE-61DD-47BF-9628-058E78EF05C6");
    
        public string ConditionId { get; } = nameof(ChannelInteractionCondition);
    
        public bool IsAccepted(Interaction interaction)
        {
            return interaction?.ChannelId == ChannelId;
        }
    }
    

> !注条件はインタラクションデータによるフィルタリングに限定されています。Sitecore 10.2のインタラクションファセットデータに基づいて条件を作成することはできません。

## カスタム条件を登録してください

Cortex Processing EngineとProcessing Workerインスタンスで条件を登録する必要があります。

条件を登録するには:

1.  設定ファイルを /App\_Data/Config/Sitecore/Processing/sc.XConnect.DataTools.Conditions.xml開いてください。
    
2.  <Settings>/<Sitecore>/<Processing>/<Services>タグの下に新しい条件を登録してください。
    
    例えば:
    
    <Settings>
      <Sitecore>
        <Processing>
          <Services>
            <Condition.ChannelInteractionCondition>
              <Type>Sitecore.XConnect.DataTools.SampleConditions.ChannelInteractionCondition,Sitecore.XConnect.DataTools.SampleConditions</Type>
              <As>Sitecore.XConnect.DataTools.Abstractions.Conditions.IInteractionCondition,Sitecore.XConnect.DataTools.Abstractions</As>
              <LifeTime>Singleton</LifeTime>
            </Condition.ChannelInteractionCondition>
          </Services>
        </Processing>
      </Sitecore>
    </Settings>
    
3.  この手順を設定ファイル /App\_Data/jobs/continuous/ProcessingEngine/App\_Data/Config/Sitecore/Processing/sc.XConnect.DataTools.Conditions.xml.で繰り返します。
    
4.  カスタム条件をデータパージタスクに渡すためには、AllowedInteractionConditionIdsノードをProcessing Engineファイル内で変更する必要があります: /App\_Data/Config/Sitecore/Processing/sc.XConnect.DataPurge.Validation.xml。
    
    例えば:
    
    <AllowedInteractionConditionIds>
     <YourCondition>ChannelInteractionCondition</YourCondition>
    </AllowedInteractionConditionIds>
    
5.  プロセッシングエンジンとプロセッシングワーカーを再起動して、設定変更を拾ってください。
    

> !注登録済みのすべての条件のリストを得ることはできません。カスタム条件で処理を延長した後は、そのConditionIdを記録しなければなりません。