プレイヤーの状態を追跡
プレーヤーの状態イベント セッション全体を通じて、視聴者がプレーヤーのコントロールとどのようにインタラクションするかを追跡します。 これらはオプションであり、コアメディアトラッキングの実装には必要ありません。 追跡可能な5つの状態:fullscreen、mute、closedCaptioning、pictureInPicture、およびinFocus。
プレーヤーの状態イベントは、ビューアがクローズドキャプションやミュートを有効にする頻度など、アクセシビリティ機能の使用状況を把握するのに役立ちます。 また、フルスクリーンやインライン表示、ピクチャーインピクチャーのマルチタスク処理など、視聴行動パターンも明らかになります。
プレーヤーイベント
標準ステートとカスタムステート
5 つの標準プレーヤーステートがあり、独自のカスタムステートを追加できます。
ADB.Media.PlayerState.FullscreenfullScreenADB.Media.PlayerState.ClosedCaptioningclosedCaptioningADB.Media.PlayerState.MutemuteADB.Media.PlayerState.PictureInPicturepictureInPictureADB.Media.PlayerState.InFocusinFocusXDM パスと指標の定義を含む完全な変数参照については、Player状態変数を参照してください。
カスタム状態: カスタム状態を作成して、アプリケーションに固有の追加のプレーヤー行動をキャプチャできます。 カスタム状態オブジェクトの作成について詳しくは、Media API リファレンス:createStateObjectを参照してください。
実装手順
ガイドライン
- 1 つのビデオセッションでは、最大 10 のプレーヤーステートを使用できます。
- ステートの組み合わせは自由です。
- 複数のプレーヤー状態が渡された場合、最初の10のみが保持され、メディアバックエンドにダウンストリームで転送されます。
- 最大10個のステートは、開いているか閉じているかに関係なく、すべてのステートに適用されます。
- 状態は複数回開始および終了でき、単一の状態としてカウントされます。 例えば、
closedCaptioningは5回開始および停止できますが、1つの状態としてカウントされます。 - プレーヤーステートは、すべての再生ステートで(分割せずに)計算されます。
- プレーヤーの状態は、個々の再生セッションごとにキャプチャされます。 プレイバック全体でプレイヤーの状態が計算されない。
- 状態が停止した後も、アプリケーションのステータスに関する情報は保持されません。 ステートの終了後にトラッキングを続行するには、ステートを再び開始する必要があります。
複数のステートを同時に更新する
XDM ベースのプラットフォームでは、statesStartとstatesEndの配列を使用して、複数の状態の変更を1回のstatesUpdate呼び出しにバッチ処理できます。 モバイル SDKでは、状態の変更ごとに個別の呼び出しが必要です。
次の例では、ミュートとピクチャインピクチャを同時に開始し、フルスクリーンに切り替えます。
推奨される実装タイプ
| code language-javascript |
|---|
|
Mobile SDKはバッチ処理をサポートしていません。状態の変更ごとに個別の呼び出しを送信します。
| code language-swift |
|---|
|
Mobile SDKはバッチ処理をサポートしていません。状態の変更ごとに個別の呼び出しを送信します。
| code language-kotlin |
|---|
|
| code language-brightscript |
|---|
|
| code language-sh |
|---|
|
従来の実装タイプ (Analyticsのみ)
複数の状態の変更には、個別の呼び出しが必要です。
| code language-javascript |
|---|
|
複数の状態の変更には、個別の呼び出しが必要です。
| code language-javascript |
|---|
|
| code language-json |
|---|
|
長い一時停止
ビデオセッションの中断時間が30分を超える場合、APIには新しいセッションが必要です。 新しいセッション IDを生成し、すべてのアクティブな状態を保持して、新しいsessionStart呼び出しの直後にstateStart イベントで復元できるようにします。
sessionStart → stateStart (fullscreen) → stateStart (mute) → pauseStart → (pings for 30 minutes) → sessionEnd
sessionEndが送信されたら、新しいセッションを開始し、アクティブな状態をすぐに再送信します。
sessionStart → stateStart (fullscreen) → stateStart (mute) → ... other API events
状態指標
追跡済みステートごとに3つの指標が計算され、Media Close呼び出しでAdobe Analyticsに送信されます。
a.media.states.[state.name].set = truetruea.media.states.[state.name].count = 4a.media.states.[state.name].time = 240