トラッキングの実行 #
ユーザーの行動履歴や閲覧学習、残留カート情報の収集、購買学習を行う画面では、トラッキングを実行する必要があります。
トラッキングは track
メソッドにより行います。
レコメンド取得を行う場合は、必ず事前にトラッキングが行われている必要があります。
また、1回のトラッキングでは、レコメンド取得の呼び出しは1回だけ行うことができます。
(1回のレコメンド取得呼び出しで複数のレコメンド場所に対するレコメンドを取得することができます。詳細はレコメンド取得の実行の章をご覧ください。)
トラッキングパラメータ #
track
メソッドへは TrackingParameter
クラスを用いてパラメータを設定します。
指定できるパラメータの内容は、以下のとおりです。
パラメータ名 | 型 | 説明 | 必須 |
---|---|---|---|
location | Locationクラス | ロケーション | ○ |
referrer | Referrerクラス | リファラ | |
values | TrackingValuesクラス | 実行するトラッキングの詳細パラメータ *1 |
*1: 閲覧学習、残留カート情報の収集、購買学習など、実行するトラッキングの種別によって様々な値を指定します。
トラッキング処理のコールバック #
track
メソッドが呼び出されるとイベントによって下記のコールバックが呼び出されます。
処理が必要なイベントには、コールバックを実装してください。
コールバック | 呼び出されるタイミング |
---|---|
onStart | トラッキングリクエストが送信開始されたとき |
onSuccess | トラッキングリクエストが成功したとき |
onFailure | トラッキングリクエストが失敗したとき |
onCancel | トラッキングリクエストがcancel メソッドによりキャンセルされたとき |
レコメンドコンテンツの効果測定 #
レコメンドコンテンツの効果測定(どのレコメンドコンテンツに反応があったかの収集)を行う場合、
該当レコメンドへの反応を記録するトラッキングの実行時にレコメンド結果内で返却された効果測定ID(sessionId)を TrackingValues.sessionId
にセットします。
このIDは以後説明する、閲覧学習などでレコメンドコンテンツの効果測定をあわせて行いたい場合に追加で指定します。
サンプルコード #
アイテム item_1234
の閲覧学習を行うとともに効果測定IDを送信するサンプルです。
do {
let trackingValues = try BrowsingValues.Builder()
.itemCode("item_12345") // アイテムコード
.sessionId(SessionId("SESSION_ID")) // 効果測定ID
.build()
try Rtoaster.track(.Builder()
.location(Location("testLocation"))
.values(trackingValues)
.build()
).onFailure { [weak self] error in
print("Communication error: \(error.toMap())")
}
} catch {
print("Parameter error: \(error.toMap())")
}
val trackingValues = BrowsingValues {
itemCode("item_12345") // アイテムコード
sessionId(SessionId("SESSION_ID")) // 効果測定ID
}
try {
Rtoaster.track(TrackingParameter {
location(Location("testLocation"))
values(trackingValues)
}).onFailure {
Log.d("Rtoaster", "Communication error", it)
}
} catch (e: Exception) {
Log.d("Rtoaster", "Parameter error", e)
}