ContextHub でのセグメント化の設定

メモ

この節では、ContextHub を使用したセグメント化の設定について説明します。ClientContext 機能を使用する場合は、ClientContext のセグメント化の設定に関するドキュメントを参照してください。

キャンペーンを作成する場合、セグメント化を考えることが重要になります。セグメント化の仕組みと主な用語について詳しくは、オーディエンスの管理を参照してください。

サイト訪問者についてこれまでに収集した情報と、達成する目標に応じて、ターゲットコンテンツに必要なセグメントと戦略を定義する必要があります。

このようなセグメントを使用して、訪問者に特定のターゲットコンテンツを提供します。このコンテンツは、web サイトの「パーソナライズ機能」セクションで管理されます。ここで定義したアクティビティは、任意のページに追加でき、専用のコンテンツを適用できる訪問者セグメントを指定できます。

AEM では、ユーザーエクスペリエンスを簡単にパーソナライズできます。また、セグメント定義の結果を検証することもできます。

セグメントへのアクセス

オーディエンスコンソールは、ContextHub または ClientContext のセグメントを管理したり、Adobe Target アカウントのオーディエンスを管理したりする目的で使用します。このドキュメントでは、ContextHub のセグメントの管理について取り上げます。ClientContext セグメントおよび Adobe Target セグメントについては、それぞれ関連するドキュメントを参照してください。

セグメントにアクセスするには、グローバルナビゲーションで「ナビゲーション/パーソナライズ機能/オーディエンス」を選択します。

chlimage_1-310

セグメントエディター

セグメントエディター​を使用すると、セグメントを簡単に変更できます。セグメントを編集するには、セグメントリストからセグメントを選択し、「編集」ボタンをクリックします。

segmenteditor

コンポーネントブラウザーを使用すると、AND および OR コンテナを追加してセグメントロジックを定義してから、別のコンポーネントを追加してプロパティや値を比較できます。また、スクリプトやその他のセグメントを参照して選択条件を定義する(新しいセグメントの作成を参照)ことによって、セグメントの選択シナリオを正確に定義できます。

ステートメント全体が true と評価されると、セグメントは解決されます。複数のセグメントを適用可能な場合、ブースト​係数も使用されます。ブースト係数について詳しくは、「新しいセグメントの作成」を参照してください。

注意

セグメントエディターは、循環参照をチェックしません。例えば、セグメント A が別のセグメント B を参照していて、そのセグメント B がセグメント A を参照している場合などです。このため、セグメントに循環参照が存在しないことを必ず確認してください。

コンテナ

次のコンテナは標準で用意されており、比較や参照をグループ化してブール評価をおこなうために使用できます。これらはコンポーネントブラウザーからエディターにドラッグできます。詳しくは、「AND コンテナと OR コンテナの使用」の節を参照してください。

コンテナ AND
AND ブール演算子
コンテナ OR
OR ブール演算子

比較

次のセグメント比較は標準で用意されており、セグメントプロパティを評価するために使用できます。これらはコンポーネントブラウザーからエディターにドラッグできます。

プロパティ - 値
ストアのプロパティと定義済みの値を比較
プロパティ - プロパティ ストアの 1 つのプロパティと別のプロパティを比較
プロパティ - セグメントの参照 ストアのプロパティを参照先の別のセグメントと比較
プロパティ - スクリプトの参照 ストアのプロパティとスクリプトの結果を比較
セグメントリファレンス - スクリプトリファレンス 参照先セグメントとスクリプトの結果を比較
メモ

値の比較時に比較のデータタイプが設定されていない場合(つまり、自動検出に設定されている場合)、ContextHub のセグメント化エンジンでは、javascript と同じように値が比較されます。値が想定されたタイプにキャストされないので、誤解を招く結果となることがあります。次に例を示します。

null < 30 // will return true

したがって、セグメントの作成時に比較対象の値のタイプがわかる場合は、常に​データタイプ​を選択してください。次に例を示します。

profile/age プロパティを比較する場合は、比較対象のタイプが​数値​であることが既にわかっているので、profile/age が設定されていなくても、profile/age が 30 より小さいという比較では、想定どおりに false が返されます。

参照

次の参照は標準で用意されており、スクリプトや別のセグメントに直接リンクするために使用できます。これらはコンポーネントブラウザーからエディターにドラッグできます。

セグメントの参照
参照先セグメントを評価
スクリプト参照 参照先セグメントをします。詳しくは、次の「スクリプト参照の使用」の節を参照してください。

新しいセグメントの作成

新しいセグメントを定義するには、次の手順に従います。

  1. セグメントへのアクセス後、「作成」ボタンをクリックまたはタップし、「ContextHub セグメントを作成」を選択します。

    chlimage_1-311

  2. 新しい ContextHub セグメント」で、セグメントのタイトルと必要に応じてブースト値を入力し、「作成」をタップまたはクリックします。

    chlimage_1-312

    各セグメントには、重み付け係数として使用されるブーストパラメーターがあります。複数のセグメントが有効である場合、数値が小さいセグメントよりも、数値が大きいセグメントのほうが優先して選択されます。

    • 最小値:0
    • 最大値:1000000
  3. 比較または参照をセグメントエディターにドラッグすると、デフォルトの AND コンテナに表示されます。

  4. 新しい参照またはセグメントの設定オプションをダブルクリックまたはタップして、特定のパラメーターを編集します。この例では、サンノゼの人物をテストしています。

    screen_shot_2012-02-02at103135am

    比較が適切に評価されるように、可能であれば常に「データタイプ」を設定します。詳しくは、比較を参照してください。

  5. OK」をクリックして定義を保存します。

  6. 必要に応じてその他のコンポーネントを追加します。AND 比較および OR 比較のコンテナコンポーネントを使用して、ブール式を作成できます(後述の AND コンテナと OR コンテナの使用を参照)。セグメントエディターでは、不要になったコンポーネントを削除したり、コンポーネントをステートメント内の別の場所へドラッグしたりすることができます。

AND コンテナと OR コンテナの使用

AND および OR コンテナコンポーネントを使用すると、AEM で複雑なセグメントを作成できます。この際、次の基本事項に留意してください。

  • 定義の最上位レベルは必ず、最初に作成された AND コンテナになります。これは変更できませんが、他のセグメント定義には影響しません。
  • コンテナのネストが意味のあるものになっていることを確認してください。コンテナは、ブール式の括弧として見ることができます。

次の例では、プライムエイジグループに属すると見なされる訪問者を選択しています。

30 才~ 59 才の男性

OR

30 才~ 59 才の女性

最初に、OR コンテナコンポーネントをデフォルトの AND コンテナ内に配置します。OR コンテナ内に 2 つの AND コンテナを追加し、それらの両方にプロパティまたは参照コンポーネントを追加できます。

screen_shot_2012-02-02at105145am

スクリプト参照の使用

スクリプト参照コンポーネントを使用すると、セグメントプロパティの評価を外部スクリプトに委任できます。適切に設定したスクリプトは、セグメント条件の他のコンポーネントと同じように使用できます。

参照するスクリプトの定義

  1. contexthub.segment-engine.scripts クライアントライブラリにファイルを追加します。

  2. 値を返す関数を実装します。次に例を示します。

    ContextHub.console.log(ContextHub.Shared.timestamp(), '[loading] contexthub.segment-engine.scripts - script.profile-info.js');
    
    (function() {
        'use strict';
    
        /**
         * Sample script returning profile information. Returns user info if data is available, false otherwise.
         *
         * @returns {Boolean}
         */
        var getProfileInfo = function() {
            /* let the SegmentEngine know when script should be re-run */
            this.dependOn(ContextHub.SegmentEngine.Property('profile/age'));
            this.dependOn(ContextHub.SegmentEngine.Property('profile/givenName'));
    
            /* variables */
            var name = ContextHub.get('profile/givenName');
            var age = ContextHub.get('profile/age');
    
            return name === 'Joe' && age === 123;
        };
    
        /* register function */
        ContextHub.SegmentEngine.ScriptManager.register('getProfileInfo', getProfileInfo);
    
    })();
    
  3. スクリプトを ContextHub.SegmentEngine.ScriptManager.register に登録します。

その他のプロパティに依存するスクリプトでは、this.dependOn() を呼び出す必要があります。例えば、スクリプトが profile/age に依存する場合は次のようになります。

this.dependOn(ContextHub.SegmentEngine.Property('profile/age'));

スクリプトの参照

  1. ContextHub セグメントを作成します。
  2. スクリプト参照​コンポーネントをセグメントの目的の場所に追加します。
  3. スクリプト参照​コンポーネントの編集ダイアログを開きます。スクリプトが適切に設定されていれば、「スクリプト名」ドロップダウンに表示されます。

セグメントの適用のテスト

セグメントを定義したら、ContextHub を使用して、考えられる結果についてテストすることができます。

  1. ページのプレビュー
  2. ContextHub アイコンをクリックして ContextHub ツールバーを表示します。
  3. 作成したセグメントと一致するペルソナを選択します。
  4. ContextHub によって、選択したペルソナに適用できるセグメントが解決されます。

例えば、この例のプライムエイジグループに属するユーザーを識別するための単純なセグメント定義は、ユーザーの年齢と性別に基づいています。これらの条件に一致する特定のペルソナを読み込むと、次のようにセグメントが正常に解決されたかどうかがわかります。

screen_shot_2012-02-02at105926am

解決されていない場合は次のようになります。

screen_shot_2012-02-02at110019am

メモ

すべての特性がただちに解決されます。ただし、ほとんどの特性はページを再読み込みしたときにのみ変更されます。

このようなテストは、ターゲットコンテンツや関連する​アクティビティ​および​エクスペリエンス​と組み合わせて、コンテンツページでも実行できます。

前述のプライムエイジグループセグメントの例を使用してアクティビティおよびエクスペリエンスを設定した場合は、そのアクティビティを使用してセグメントを簡単にテストできます。アクティビティの設定について詳しくは、ターゲットコンテンツのオーサリングに関するドキュメントを参照してください。

  1. ターゲットコンテンツを設定したページの編集モードでは、ターゲットとなるコンテンツが矢印アイコンによって示されます。

    chlimage_1-313

  2. プレビューモードに切り替えてから、ContextHub を使用して、エクスペリエンスに設定されているセグメント化と一致しないペルソナに切り替えます。

    chlimage_1-314

  3. エクスペリエンスに設定されているセグメント化と一致するペルソナに切り替え、それに応じてエクスペリエンスが変化することを確認します。

    chlimage_1-315

セグメントの使用

これらのセグメントを使用して、特定のターゲットオーディエンスに向けられた実際のコンテンツを制御することができます。オーディエンスおよびセグメントについて詳しくは、オーディエンスの管理を参照してください。オーディエンスおよびセグメントを使用したコンテンツのターゲティングについては、ターゲットコンテンツのオーサリングを参照してください。

このページ