xDBプログラミング:プロファイルキーをAPIを使用してスコアリングする

samatsu 7/28/2015 1751 N/A xDB Programming

コンテンツプロファイルのスコアリングをAPIを使用して行うサンプルプログラムを掲載します。Sitecoreのマーケティング機能の一つにコンテンツプロファイリングの機能があります。コンテンツに対してタグ付け(プロファイルキーと呼びます)を行い、ページ遷移に基づき、プロファイルキーをスコアリングすることで訪問者のWebサイト上の人物像であるペルソナを導出し、獲得した単一のプロファイルキーのスコア値もしくは多次元のプロファイルキーのスコア値のパターン(パターンカード)を使用した予測パーソナライゼーションを行い、最適なコンテンツを提供することができます。コンテンツプロファイリングによる予測パーソナライゼーションは個人の詳細な属性情報がわからない匿名の訪問者に対しても行えます。

Sitecoreではコンテンツ編集者やマーケターが コンテンツ(アイテム)のテンプレートや個々のコンテンツ(アイテム)に対してプロファイルの設定をサイトコアのユーザーインタフェースであるコンテンツエディターやエクスペリエンスエディターで行えます。

サブレイアウトやコントローラーレンダリング、通常のASP.NET WebフォームやASP.NET MVCのページから動的にスコアリングしたい場合は次のようなコードを記述します。btnScore_Clickはボタンを押したときに動作するイベントハンドラです。この例ではFunctionとうプロファイルのBuilding Trust, Call to Action プロファイルキーの値をそれぞれ4と1ポイント加算するようにしています。

 protected void btnScore_Click(object sender, EventArgs e)
 {
     var profile = Sitecore.Analytics.Tracker.Current.Interaction.Profiles["Function"];
     var values = new[]{ 
         new KeyValuePair<string,float>("Building Trust", 4.0f),
         new KeyValuePair<string,float>("Call to Action", 1.0f)
     };
     profile.Score(values);
 }

実際にスコアリングが成功すると、セッション終了時にInteractionsドキュメントにProfilesフィールドが追加され、スコアリングした結果が保存されます。

コンタクトが獲得したコンテンツプロファイリングのスコアの情報はエクスペリエンスエディターで確認できます。

今回はプロファイルをプログラムを使用して動的にスコアリングする方法を紹介しました。

これまでのいくつかの記事でアナリティクス名前空間で提供されているAPIを使用して Outcome, Goal, PageEvent, Profile やコンタクト、インタラクション情報をプログラムから登録、記録できることをご紹介しました。