---
title: "Sitecoreデバイス検出用のカスタムルールを作成する"
slug: "create-custom-rules-for-sitecore-device-detection"
abstract: "Sitecoreデバイス検出サービスをさらにカスタマイズするために、独自のカスタムルールを作成してください。"
---
# Sitecoreデバイス検出用のカスタムルールを作成する

Sitecoreには [デバイス検出サービス用の標準的なパーソナライズルール](https://doc.sitecore.com/xp/ja/developers/103/sitecore-experience-manager/rules-and-parameters-for-device-detection.html "Rules and parameters for Device Detection")セットが含まれています。しかし、組織のニーズに合った新しいルールを作成してさらにカスタマイズするために、独自のカスタムルールを作成することも可能です。複数のデバイスパラメータに基づく単一のルールを作成し、複数のデバイスパラメータに基づくパーソナライズコンテンツを表示するパーソナライズや追跡に利用できます。例えば:

-   デバイスベースのパラメータを使って、HTML5ブラウザのサポートの最低要件を自分で定義でき、訪問者の体験を損なうことなく高度なレンダリングを表示できます。例えば:デバイス=(ハードウェア+ソフトウェア)、例えばiPhone + Safari。
-   CPUコアが4つ未満、RAMが2GB未満のノートパソコンをすべて特定でき、アップグレードオファーを表示できます。

[Rule Set Editor](https://doc.sitecore.com/xp/en/users/104/sitecore-experience-platform/the-rule-set-editor.html)と[Rules Engine Cookbook](https://doc.sitecore.com/legacy-docs/SC75/rules-engine-cookbook-sc71-a4.pdf)を使って、デバイス検出用のカスタムルールを作成できます。1つ以上のアクションを1つ以上の条件に関連付ける基本的なクラスがいくつかあります。これには以下が含まれます:

**クラス**

**クラスの説明**

DeviceBoolConditionBase

この抽象クラスを使ってブールルールを作成します。

DeviceStringConditionBase

この抽象クラスを使って文字列ベースのルールを作成します。

DeviceIntegerConditionBase

この抽象クラスを使って整数ベースのルールを作成します。

例えば、デバイスがGoogleメガネかどうかを識別する以下のカスタムルールを作成できます。

public class GoogleGlassCondition<T> : DeviceBoolConditionBase<T> where T : RuleContext
{
 protected override bool GetDeviceProperty(DeviceInformation deviceInformation)
 {
 return deviceInformation.DeviceType == DeviceType.WearableComputer &&
 deviceInformation.DeviceModelName == "Glass" &&
 deviceInformation.DeviceOperatingSystemVendor == "Google";
 }
}