Adobe Media Analytics for Audio and Video 拡張機能の概要
このドキュメントには、Adobe Media Analytics for Audio and Video 拡張機能(Media Analytics 拡張機能)のインストール、設定および実装に関する情報が含まれています。この拡張機能を使用してルールを作成し、サンプルやサンプルへのリンクを作成する場合に使用できるオプションについても説明します。
Media Analytics(MA)拡張機能は、コアe JavaScript Media SDK(Media 2.x SDK)を追加します。この拡張機能では、タグのサイトまたはプロジェクトに MediaHeartbeat
トラッカーインスタンスを追加する機能を提供します。MA 拡張機能には、次の 2 つの拡張拡張機能が必要です。
タグプロジェクトに前述の 3 つの拡張機能すべてを含めたら、次の 2 つの方法のいずれかを実行できます。
- Web アプリケーションから
MediaHeartbeat
API を使用する - 特定のメディアプレイヤーイベントを
MediaHeartbeat
トラッカーインスタンス上の API にマッピングする、プレーヤー固有の拡張機能を含めたりビルドしたりします。このインスタンスは、MA 拡張機能を通じて公開されます。
MA 拡張機能のインストールと設定
-
インストール: MA 拡張機能をインストールするには、拡張機能のプロパティを開き、 エクステンション/カタログ を選択し、 Analytics for Audio and Video 拡張機能にカーソルを置いて「インストー ル」を選択します。
-
設定: MA 拡張機能を設定するには、「エクステンション」タブを開き、拡張機能にマウスポインターを置いて「設定」を選択します。
設定オプション:
window
オブジェクトの下の Media Analytics API を書き出すために使用する変数リマインダー: MA 拡張機能には、 Analytics および Experience Cloud ID 拡張機能が必要です。また、拡張機能プロパティにこれらの拡張機能を追加して設定する必要があります。
MA 拡張機能の使用
webpage/JS-app からの使用
MA 拡張機能は、設定 ページ内の「Windows オブジェクトに API を書き出す」設定を有効にして、MediaHeartbeat API をグローバルウィンドウオブジェクトに書き出します。設定された変数名の下に API をエクスポートします。例えば、変数名を ADB
に設定している場合、window.ADB.MediaHeartbeat
によって MediaHeartbeat にアクセスできます。
window["CONFIGURED_VARIABLE_NAME"]
が定義されておらず、既存の変数を上書きしない場合にのみ、API をエクスポートします。-
MediaHeartbeat インスタンスの作成:
window["CONFIGURED_VARIABLE_NAME"].MediaHeartbeat.getInstance
パラメーター: これらの関数を公開する有効なデリゲートオブジェクト。
table 0-row-2 1-row-2 2-row-2 1-align-left 2-align-left 4-align-left 5-align-left 7-align-left 8-align-left メソッド 説明 getQoSObject()
現在の QoS 情報を含む theMediaObject
インスタンスを返します。このメソッドは、再生セッション中に複数回呼び出されます。プレーヤーの実装では、常に使用可能な最新の QoS データを返す必要があります。getCurrentPlaybackTime()
再生ヘッドの現在の位置を返します。VOD 追跡の場合は、メディアアイテムの開始時からの時間(秒)を返します。ライブ追跡の場合は、プログラムの開始時からの時間(秒)を返します。 戻り値:
MediaHeartbeat
インスタンスで解決されるか、エラーメッセージが表示されて拒否されるプロミス。 -
MediaHeartbeat 定数へアクセス:
window["CONFIGURED_VARIABLE_NAME"].MediaHeartbeat
これにより、
MediaHeartbeat
クラスのすべての定数および静的メソッドが表示されます。サンプルプレイヤーは、MA サンプルプレイヤーで入手できます。サンプルプレイヤーは、Web アプリケーションから直接 Media Analytics をサポートするために、MA 拡張機能を使用する方法を紹介しています。
-
次のように、MediaHeartbeat トラッカーインスタンスを作成します。
code language-javascript var MediaHeartbeat = window["CONFIGURED_VARIABLE_NAME"].MediaHeartbeat; var delegate = { getCurrentPlaybackTime: this._getCurrentPlaybackTime.bind(this), getQoSObject: this._getQoSObject.bind(this), }; var config = { playerName: "Custom Player", ovp: "Custom OVP", channel: "Custom Channel" }; var self = this; MediaHeartbeat.getInstance(delegate, config).then(function(instance) { self._mediaHeartbeat = instance; // Do Tracking using the MediaHeartbeat instance. }).catch(function(err){ // Getting MediaHeartbeat instance failed. });
他の拡張機能からの使用
MA 拡張機能は、get-instance
および media-heartbeat
共有モジュールを他の拡張機能に公開します。(共有モジュールについて詳しくは、 共有モジュールのドキュメント /を参照してください。)
turbine
(後述のサンプルコードを参照)を使用することもできません。-
MediaHeartbeat インスタンスの作成:
get-instance
共有モジュールパラメーター:
-
次の関数を公開する有効な delegate オブジェクト:
table 0-row-2 1-row-2 2-row-2 1-align-left 2-align-left 4-align-left 5-align-left 7-align-left 8-align-left メソッド 説明 getQoSObject()
現在の QoS 情報を含む MediaObject
インスタンスを返します。このメソッドは、再生セッション中に複数回呼び出されます。プレイヤー実装は、常に、利用可能な最新の QoS データを返す必要があります。getCurrentPlaybackTime()
再生ヘッドの現在の位置を返します。VOD 追跡の場合は、メディアアイテムの開始時からの時間(秒)を返します。ライブ追跡の場合は、プログラムの開始時からの時間(秒)を返します。 -
これらのプロパティを公開するオプションの config オブジェクト:
table 0-row-3 1-row-3 2-row-3 3-row-3 1-align-left 2-align-left 3-align-left 5-align-left 6-align-left 7-align-left 9-align-left 10-align-left 11-align-left 13-align-left 14-align-left 15-align-left プロパティ 説明 必須 Online Video Provider コンテンツの配布に使用するオンラインビデオプラットフォームの名前。 いいえ。存在する場合、拡張機能の設定時に定義された値を上書きします。 Player Name 使用中のメディアプレーヤーの名前(例:「AVPlayer」、「HTML5 Player」、「My VideoPlayer」)。 いいえ。存在する場合、拡張機能の設定時に定義された値を上書きします。 チャネル チャネル名プロパティ いいえ。存在する場合、拡張機能の設定時に定義された値を上書きします。
戻り値:
MediaHeartbeat
インスタンスで解決されるか、エラーメッセージが表示されて拒否されるプロミス。 -
-
MediaHeartbeat 定数へのアクセス:
media-heartbeat
共有モジュールこのモジュールでは、次のクラスからすべての定数および静的メソッドを公開します:https://adobe-marketing-cloud.github.io/media-sdks/reference/javascript/MediaHeartbeat.html。
-
次のように、MediaHeartbeat トラッカーインスタンスを作成します。
code language-javascript var getMediaHeartbeatInstance = turbine.getSharedModule('adobe-video-analytics', 'get-instance'); var MediaHeartbeat = turbine.getSharedModule('adobe-video-analytics', 'media-heartbeat'); ... var delegate = { getCurrentPlaybackTime: this._getCurrentPlaybackTime.bind(this), getQoSObject: this._getQoSObject.bind(this), } var config = { playerName: "Custom Player", ovp: "Custom OVP", channel: "Custom Channel" } ... var self = this; getMediaHeartbeatInstance(delegate, config).then(function(instance) { self._mediaHeartbeat = instance; ... // Do Tracking using the MediaHeartbeat instance. }).catch(function(err){ // Getting MediaHeartbeat instance failed. }); ...
-
Media Heartbeatインスタンスを使用し、Media SDK JS のドキュメントおよびJS API のドキュメントに従ってメディアトラッキングを実装します。