Adobe Medium Analytics for Audio 및 Video 확장 개요
Adobe Media Analytics for Audio 및 Video 확장(Media Analytics 확장) 설치, 구성 및 구현 관련 정보에 대해서는 이 설명서를 참조합니다. 예제 및 샘플 링크와 함께 이 확장을 사용하여 규칙을 만들 때 사용할 수 있는 옵션이 포함되어 있습니다.
MA(Media Analytics) 확장은 Core JavaScript Media SDK(Media 2.x SDK)를 추가합니다. 이 확장은 태그 사이트 또는 프로젝트에 MediaHeartbeat
추적기 인스턴스를 추가하는 기능을 제공합니다. MA 확장을 사용하려면 다음 두 개의 확장이 추가로 필요합니다.
태그 프로젝트에서 위에 언급된 확장 세 개를 모두 포함했으면 다음 두 가지 방법 중 하나를 사용하여 진행할 수 있습니다.
- 웹 앱의
MediaHeartbeat
API 사용 - 특정 미디어 플레이어 이벤트를
MediaHeartbeat
추적기 인스턴스의 API에 매핑하는 플레이어 전용 확장을 포함하거나 빌드합니다. 이 인스턴스는 MA 확장을 통해 노출됩니다.
MA 확장 설치 및 구성
-
설치 - MA 확장을 설치하려면 확장 속성을 열고 확장 > 카탈로그 를 선택하고 오디오 및 비디오용 Adobe Medium 분석 확장을 마우스로 가리킨 다음 설치 를 선택합니다.
-
구성 - MA 확장을 구성하려면 확장 탭을 열고 확장을 마우스로 가리킨 다음 구성 을 선택합니다.
구성 옵션:
window
개체 아래로 Media Analytics API를 내보내는 데 사용하는 변수미리 알림: MA 확장 프로그램을 사용하려면 Analytics 및 Experience Cloud ID 확장 프로그램이 필요합니다. 확장 속성에 이러한 확장을 추가하고 구성해야 합니다.
MA 확장 사용
웹 페이지/JS 앱에서 사용
MA 확장은 구성 페이지에서 "Export APIs to Window Object" 설정을 활성화하여 글로벌 창 개체에서 MediaHeartbeat API를 내보냅니다. 구성된 변수 이름 아래에 API를 내보냅니다. 예를 들어 변수 이름이 ADB
가 되도록 구성된 경우 MediaHeartbeat는 window.ADB.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 추적의 경우 이 값은 미디어 항목이 시작된 후 현재까지의 시간(초)으로 지정됩니다. LIVE/LIVE 추적의 경우 이 값은 프로그램이 시작된 후 현재까지의 시간(초)으로 지정됩니다. 반환 값:
MediaHeartbeat
인스턴스로 해결되거나 오류 메시지가 표시되고 거부되는 약속입니다. -
MediaHeartbeat 상수에 액세스:
window["CONFIGURED_VARIABLE_NAME"].MediaHeartbeat
이렇게 하면
MediaHeartbeat
클래스의 모든 상수 및 정적 메서드가 노출됩니다.여기서 샘플 플레이어는 가져올 수 있습니다. MA 샘플 플레이어. 샘플 플레이어는 MA 확장을 사용하여 웹 앱에서 바로 Media Analytics를 지원하는 방법을 소개하는 참조 역할을 합니다.
-
다음과 같이 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
공유 모듈매개 변수:
-
다음 함수를 노출하는 유효한 위임 개체
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 추적의 경우 이 값은 미디어 항목이 시작된 후 현재까지의 시간(초)으로 지정됩니다. LIVE/LIVE 추적의 경우 이 값은 프로그램이 시작된 후 현재까지의 시간(초)으로 지정됩니다. -
다음 속성을 노출하는 옵션 구성 개체
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 Custom VideoPlayer") 아니요. 있는 경우 확장 구성 중에 정의된 값을 재정의합니다. Channel 채널 이름 속성입니다. 아니요. 있는 경우 확장 구성 중에 정의된 값을 재정의합니다.
반환 값:
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. }); ...
-
미디어 하트비트 인스턴스를 사용하여 미디어 SDK JS 설명서 및 JS API 설명서에 따라 미디어 추적을 구현합니다.