서문
분석 데이터는 네이티브 플레이어 SDK에서 제공하는 데이터를 포함하여 브라이트코브 플레이어가 자동으로 전송합니다. 당신이있는 경우 ~ 아니다 Video Cloud 비디오를 제공하기 위해 Brightcove Player를 사용하려면 데이터 수집기로 데이터를 전송하는 데 사용 중인 플레이어를 구성해야 합니다.
Data Collection API v2는 현재 표준입니다. v1 버전은 더 이상 사용되지 않습니다. v1을 구현한 경우 아래의 v1에서의변경 사항섹션을 참조하십시오.
이 개요 및 API 레퍼런스외에도 이샘플 구현도 참조하십시오 .
Analytics Data Collection API는 실시간 분석 이벤트의 끝점입니다. 이벤트 데이터는 다음과 같은 HTTP 요청을 통해 제출 된 일련의 매개 변수를 통해 Brightcove로 전송됩니다.
  https://metrics.brightcove.com/v2/tracker?event=video_view&domain=videocloud&account=123&video=789
  
  
    이 매개변수는사실이벤트가 발생했을 때 시스템 상태에 대한 정보. 위의 예는video_view비디오에 대한 이벤트 발생789계정을 위해123 (또는: 사용자가 계정을 보기 시작했습니다. 123님의 동영상789 . 현재 추적 중인 분석 이벤트에 대한 설명은아래를 참조하십시오.
해상도 및 비트레이트
차원은 이벤트 발생시 시스템 상태에 대한 정 성적 사실입니다. 예를 들어, 요청이 다음과 같은 경우
  https://metrics.brightcove.com/tracker/v2/?event=video_view
  &session=581136_2018-07-03T18:34:46.214Z
  &domain=videocloud&account=123
  &video=789
  
  
    비디오 ID ( 789 ) 및 계정 ID ( 123 ), 요청 자체에서 수집된 모든 장치 및 위치 정보는 모두video_view이벤트와 관련된 측정기준입니다. Analytics 시스템은 이 요청이 생성되었을 때 발생한video_view이벤트를 다음과 같은 측정기준으로 기록합니다.
이벤트 및 도메인 매개 변수
event파라미터는 발생한 이벤트를 설명합니다. domain파라미터는 이벤트의 네임스페이스를 제공합니다. eventdomain , 및session는 필수 매개변수입니다 ( domain값은 항상videocloud ).
추가 매개 변수
Analytics 시스템이 이벤트를 성공적으로 분석 할 수 있도록 특정 매개 변수가 이벤트에 포함되어야합니다.
응답 유형
분석 데이터 수집 API 요청에 대한 응답에는 HTTP 응답 코드와 사람이 읽을 수있는 메시지가 포함됩니다.
| HTTP 상태 코드 | 설명 | 예 | 
|---|---|---|
| 200 | 콜렉터가 요청을 수신했으며 지속되었습니다. | (1x1 픽셀 투명 GIF 이미지 반환) | 
| 400 | 클라이언트가 보낸 요청에 필수 매개 변수인 domain,account또는 이 (가) 누락되었습니다event. (도메인 별 매개 변수가 누락 된 경우이 상태는 반환되지 않습니다.) | "Invalid 'event' parameter" | 
| 50x | 이것은 서버 측의 문제를 나타내는 오류 코드입니다. 귀하의 이벤트는 분석 시스템에 의해 성공적으로 기록되거나 기록되지 않을 수 있습니다. | "Server-side failure, please retry." | 
VOD 및 라이브 이벤트
이벤트 생중계
데이터 수집 API에서 이벤트를라이브로 분류하려면 다음 조건을 충족해야 합니다 .
- 요청에 video_duration 매개변수가 없어야 합니다.
- 요청에는 계정 매개변수가 있어야 합니다.
- 요청에는 동영상 매개변수가 있어야 합니다.
- 
        이벤트 유형은 다음 중 하나여야 합니다.
        - play_request
- video_impression
- video_view
- video_engagement
- alive_ss_ad_start
 
- 라이브 비디오 스트리밍을 위해 Brightcove 지원에서 계정을 활성화해야 합니다.
주문형 비디오
- 너 ~ 해야 하다포함video_duration요청으로 VOD 전용. 실시간 스트리밍을 위해 video_duration을 절대 보내지 마세요 .
- video_duration파라미터가 포함된 모든 요청은 VOD로 분류됩니다 .
최소한의 데이터
최소한 세션 중에 재생되는 모든 비디오에 대해session ID와video_view이벤트를 보내야 합니다. 그만큼video_view보내야 한다 ~ 후에모든 프리롤 광고가 완료됩니다.
session
    이것은 세션 식별자입니다. session이는 기본적으로 플레이어가 있는 페이지 또는 앱 뷰의 한 뷰로, 해당 뷰가 지속되는 한 뷰입니다. 값은 세션 기간 동안 일정해야 하며 모든 이벤트에 대해전송되어야합니다. GUID (Globally Unique Identifier)에 최대한 가까워 야합니다. 충돌이있는 경우 두 세션이 얽 히지 않으면 유효하지 않은 것으로 폐기 될 수 있습니다.
JavaScript에서 GUID를 만드는 데는 다양한 체계가 있습니다. 한 가지 예가이 GitHub 리포지토리에있습니다. Brightcove는 타사 스크립트를 지원하지 않습니다.
성능을위한 최소 데이터 (재생률 및 참여도 점수)
이벤트
- video_impression
- play_request
- video_view
- video_engagement
속성 (모든 이벤트)
- account
- video
추가 속성 ( video_engagement이벤트 전용)
    주문형 비디오
- range
- video_duration
라이브
- video_seconds_viewed
HTTP 헤더
- User-Agent-기기보고에 필요
모범 사례
Collector에 올바른 데이터를 전송하고 있는지 확인하려면 일반적으로 배포하기 전에 데이터 수집 스크립트를 테스트해야합니다. 다음을 권장합니다.
- 플레이어에 대한 데이터 수집 스크립트를 작성하십시오.
- 통제 된 환경에서 최소 하루 동안 테스트하십시오.
- Analytics Module을 통해 또는Analytics API를 통해 분석 데이터를 확인하여 수집된 내용이 예상과 일치하는지 확인하십시오.
요청 보내기-CORS 문제 방지
정크 데이터
일반적으로 Collector로 전송 된 데이터는 Analytics 시스템에 의해 진실로 기록됩니다. 이벤트에 부적절하거나 잘못된 정보가 포함 된 경우 Analytics 시스템은 데이터를 잘못 해석합니다.
예를 들어 실수로 타임 스탬프를 비디오 ID로 보낸 경우 분석 데이터가 전체 요약에 영향을 미치는 방식으로 왜곡됩니다.
URI 인코딩
Data Collection API로 보내는 문자열 중 공백이나 특수 문자를 포함할 수 있는 문자열은 요청이 성공하려면 URI로인코딩되어야 합니다. JavaScript를 통해 요청을 제출하는 경우 요청 문자열을 인코딩하는encodeURI()메서드를 사용할 수 있습니다. 예:
  urlStr += "&video=" + currentVideo.id + "&video_name=" + encodeURI(currentVideo.video_name);
  
  
  이벤트
아래 나열된 이벤트는 Analytics 시스템에서 처리됩니다.
- player_load
- 
        의도 / 의미최종 사용자가 플레이어 세션을 시작했습니다. 이는 분석 세션의 시작을 표시하며 다른 이벤트보다 먼저 전송되어야합니다. 예https://metrics.brightcove.com/tracker ?event=player_load &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A-%2F%2Fsup-port.brightcove.com%2F &source=http%3A-%2F%2Fwww.google.com %2Furl%3Fsa%3D-t%26rct%3Dj%26q%3D%26esrc%3Ds%26source %253A-%252F%252Fsupport.brightcove.com%252F%26ei%3D OdxWZSGdJ-pL7WJaEeUJVlnw%26bvm%3Dbv.51156542%2Cd.dmg &domain=videocloud &account=1749339200 &time=1377191644796
- error
- 
        의도 / 의미재생 환경을 방해하는 치명적인 오류가 발생하면 전송됩니다. 예https://metrics.brightcove.com/tracker ?event=error &error_code=MEDIA_ERR_SRC_NOT_SUPPORTED &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A-%2F%2Fsup-port.brightcove.com%2F &source=http%3A-%2F%2Fwww.google.com %3Dhttp%253A-%252F%252Fsupport.brightcove.com %26usgWZSGdJ-pL7WJaEeUJVlnw%26bvm%3Dbv.51156542%2Cd.dmg &domain=videocloud &account=1749339200 &time=1377191644796
- catalog_request
- 
        의도 / 의미Video Cloud Playback API에 대한 요청이있을 때 전송됩니다. 예https://metrics.brightcove.com/tracker ?event=catalog_request &session=581136_2018-07-03T18:34:46.214Z &catalog_url=https%3A%2F%2Fedge.api.brightcove.com%2Fplayback &destination=http%3A-%2F%2Fsup-port.brightcove.com%2F &source=http%3A-%2F%2Fwww.google.com %3Dhttp%253A-%252F%252Fsupport.brightcove.com WZSGdJ-pL7WJaEeUJVlnw%26bvm%3Dbv.51156542%2Cd.dmg &domain=videocloud&account=1749339200 &time=1377191644796
- catalog_response
- 
        의도 / 의미이전에 catalog_request대한 응답을 받았을 때 전송됩니다.예https://metrics.brightcove.com/tracker ?event=catalog_response &session=581136_2018-07-03T18:34:46. &catalog_url=https%3A%2F%2Fedge.api.brightcove.com%2Fp2F23823423800 &response_time_ms=243 &destination=http%3A-%2F%2Fsup-port.brightcove.com%2F &source=http%3A-%2F%2Fwww.google.com 53A-%252F%252Fsupport.brightcove.com%252F%2Tzn-oCgCQ AFQjCNJaEeUJVlnw%26bvm%3Dbv.51156542%2Cd.dmg &domain=videocloud &account=1749339200 &time=1377191644796
- play_request
- 
        의도 / 의미사용자가 명시 적으로 재생 버튼을 클릭하여 재생을 시작하거나 플랫폼이 자동 재생 시나리오에서 재생을 트리거 할 때 자동으로 전송됩니다. 시청자가 동영상을 일시 중지했다가 다시 시작하면 단일 시청 세션 중에 여러 play_request이벤트가 전송될 수 있습니다.예https://metrics.brightcove.com/tracker ?event=play_request &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A-%2F%2Fsup-port.brightcove.com%2F &source=http%3A-%2F%2Fwww.google.com %3Dhttp%253A-%252F%252Fsupport.brightcove.com%252F%2 dJ-pL7WJaEeUJVlnw%26bvm%3Dbv.51156542%2Cd.dmg &domain=videocloud &account=1749339200 &video_duration=189 &time=1377191644796
- ad_mode_begin
- 
        의도 / 의미재생 플랫폼이 광고 대행사에게 제어권을 넘길 때 전송됩니다. 예https://metrics.brightcove.com/tracker ?event=ad_mode_begin &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A-%2F%2Fsup-port.brightcove.com%2F &source=http%3A-%2F%2Fwww.google.com %3Dhttp%253A-%252F%252Fsupport.brightcove.com%252 %26usg%3DAFQjCNEtLod%3Dbv.51156542%2Cd.dmg &domain=videocloud &account=1749339200 &time=1377191644796
- ad_mode_complete
- 
        의도 / 의미재생 플랫폼이 광고 대행사에게 제어권을 넘길 때 전송됩니다. 예https://metrics.brightcove.com/tracker ?event=ad_mode_complete &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A-%2F%2Fsup-port.brightcove.com%2F &source=http%3A-%2F%2Fwww.google.com %3Dhttp%253A-%252F%252Fsupport.brightcove.com%252F%2 WZSGdJ-pL7WJaEeUJVlnw%26bvm%3Dbv.51156542%2Cd.dmg &domain=videocloud &account=1749339200 &time=1377191644796
- video_impression
- 
        의도 / 의미플레이어에 추가 된 동영상의 메타 데이터가로드를 완료했으며 플레이어는 자동 재생 또는 사용자 상호 작용을 통해보기 이벤트를 트리거 할 준비가되었습니다. 예https://metrics.brightcove.com/tracker ?event=video_impression &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A%2F%2Fwww.current-times.com%2F &time=1377191644801 &source=http%3A%2F%2Fwww.google.com %252-F%26ei%3DoEYWUtCgEIXq9ATznoCgCQ %26usg%3DAFQjCNEtLod-Odx6bvm%3Dbv.5115-6542%2Cd.dmg &video=2621468623001 &video_name=Democratic-Rivals%20Target%20Bill &video_duration=189 &domain=videocloud &account=1749339200
- video_view
- 
        의도 / 의미동영상 재생이 시작되었습니다 (로드 후 자동 재생 또는 사용자 상호 작용으로 인해). 시청자가 비디오를 중지하고 다시 시작하거나 재생하더라도 시청 세션 중에는 하나의 video_view이벤트만 녹화된다는 점에 유의하십시오.예https://metrics.brightcove.com/tracker ?event=video_view &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A%2F%2Fwww.current-times.com%2F &video=2621468623001 &video_name=Debate-2 &video_duration=189 &time=1377191666432 &source=http%3A%2F%2Fwww.google.com%2Furl% %252F%26ei%3DoEYWUtCgEIXq9ATznoCgCQ%26us-g %3DAFQjCNEtv.51156542%2Cd.dmg &domain=videocloud &account=1749339200
- video_engagement
- 
        의도 / 의미사용자가 비디오 타임라인의 시간 범위를 초 단위로 시청했습니다. 이 이벤트는 비디오 참여도를 추적하기 위한 하트비트이며 사용자 상호 작용 및 비디오 길이에 따라 재생 중에 여러 번 전송될 수 있습니다. Brightcove 플레이어 계측은 재생이 중단되지 않은 경우 10 초마다이 이벤트를 보냅니다. 20 초 이상의 범위를 설명하는 이벤트는 Analytics 시스템에서 삭제됩니다. 예https://metrics.brightcove.com/tracker ?event=video_engagement &session=581136_2018-07-03T18:34:46.214Z &destination=http%3A%2F%2Fwww.current-times.com%2F &video=2621468623001 &video_name=Debate-2 &video_duration=189 &time=1377191676589 &range=0..9 &source=http%3A%2F%2Fwww.google.com %2Furl%3Fsa%3Dt-%26rct%3Dj%26q%3D%26esrc%3Ds %26source%3Dweb%26cd%3D1%26ved%3D0CDYQFjAA %26url%3Dhttp%253A%252F%252Fwww.current-times.com %252F%26ei%3DoEYWUtC-gEIXq9ATznoCgCQ %26usg%3DAFQjCNEtLodOdxWZSGdJpL7WJ.51156542%2Cd.dmg &domain=videocloud &account=1749339200
모든 이벤트에 대한 매개 변수
이러한 이벤트에 대한 매개 변수에는 이벤트가 발생했을 때 시스템의 현재 상태와 관련된 모든 정보가 포함되어야하며 가능한 한 구체적이어야합니다. 이 섹션에서는 모든 이벤트와 함께 전송할 수있는 매개 변수에 대해 자세히 설명하고 다음 섹션에서는 특정 이벤트에 대한 매개 변수를 보여줍니다.
| 필드 | 유형 | 설명 | 
|---|---|---|
| account | 문자열 | 계정 ID | 
| domain | 문자열 | 항상 같음 허용되는 값:  | 
| session | 문자열 | 가능한 한 보편적으로 고유한 세션 ID - 자세한 내용은 위의최소 데이터섹션을 참조하십시오. | 
| device_os선택 과목 | 문자열 | 사용자 에이전트를 신뢰할 수없는 경우 이벤트를 발생시킨 기기의 OS를 지정하도록 재정의합니다 (기기 OS 및 기기 유형이 모두 포함되지 않거나 제출 된 값이 여기에 표시된 값 목록에없는 경우 무시 됨). 일반적으로 포함되지 않음 ) 허용되는 값:  | 
| device_os_version선택 과목 | 문자열 | 기기에서 사용중인 OS의 버전입니다. 지정하지 않으면 추적 요청에 대한 사용자 에이전트 문자열을 구문 분석하여 계산됩니다. | 
| device_type선택 과목 | 문자열 | 사용자 에이전트를 신뢰할 수없는 경우 이벤트를 발생시킨 장치 유형을 지정하려면 재정의합니다 (장치 OS 및 장치 유형이 모두 포함되지 않거나 제출 된 값이 여기에 표시된 값 목록에없는 경우 무시 됨). 일반적으로 포함되지 않음 ) 허용되는 값:  | 
| event | 문자열 | 이벤트 유형 허용되는 값:  | 
| destination선택 과목 | 문자열 | 이벤트를 시작한 URI | 
| source선택 과목 | 문자열 | 최종 사용자를 다음으로 보낸 URI  | 
| time선택 과목 | 번호 | epoch 시간 (밀리 초)의 이벤트에 대한 타임 스탬프 | 
| country선택 과목 | 문자열 | ISO-3166 (알파 2) 지역 cISO-3166 (알파 2) 지역 코드 (시스템이 IP 주소에서 지리 정보를 감지 할 수없는 경우 재정의) 일반적으로 포함되지 않음 | 
| country_name선택 과목 | 문자열 | 사람이 읽을 수있는 국가 이름 (시스템이 IP 주소에서 지리 정보를 감지 할 수없는 경우 재정의) 일반적으로 포함되지 않음 | 
| region선택 과목 | 문자열 | ISO-3166 (알파 2) 지역 코드 (시스템이 IP 주소에서 지리 정보를 감지 할 수없는 경우 재정의) 일반적으로 포함되지 않음 | 
| region_name선택 과목 | 문자열 | 사람이 읽을 수있는 지역 이름 (시스템이 IP 주소에서 지리 정보를 감지 할 수없는 경우 재정의) 일반적으로 포함되지 않음 | 
| city선택 과목 | 문자열 | 도시 이름 일반적으로포함되지 않음 | 
| user선택 과목 | 문자열 | 고유한 사용자 식별자 - 제공되지 않거나 비어 있는 경우 Video Cloud는 | 
사용자 매개 변수
- 플레이어 / 클라이언트 애플리케이션이 고유 한 뷰어를 추적하려면 사용자 매개 변수로 수집기에 고유 한 ID를 보내야합니다.
- user가 제공되지 않았거나 비어 있는 경우 를 고유- Source IP address + the User-Agent String식별자로 사용하는 대체 방법을 사용합니다.
- 사용자 매개 변수의 값은 로그 / 데이터베이스에 저장되지 않으며 해시 (SHA-256 사용) 만 저장됩니다.
- 수집기는 쿠키를 설정하지 않습니다.
고유 사용자
Brightcove Player의 플러그인 기능을 사용하여보고 된 분석에 고유 한 비디오 뷰어 데이터를 추가 할 수 있습니다. 이렇게 하려면 분석 기능의settings개체에 고유 식별자를 추가해야 합니다.
물론 고유한 사용자 ID를 캡처하는 방법은 애플리케이션마다 다르지만 예를 들어 이 코드에서는 https://exampledomain.com/users/912389123 과 같이 고유한 사용자 데이터가 포함된 로그인 URL이 캡처된다고 가정합니다. 이 고유 URL이 플러그인에 전달됩니다.
아래 플러그인 코드는 다음 작업을 수행합니다.
- 표준 구문을 사용하여 플러그인 이름이 로 정의된 Brightcove Player 플러그인을 생성합니다uniqueUserForAnalyticsPlugin. 플러그인은 플러그인에 전달된 데이터를 포함하는options객체도 받아들입니다.
- myPlayer변수에는 플레이어에 대한 참조가 할당됩니다. 또한 두 개의 다른 변수가 생성됩니다.
- userPath변수에는- options객체를 통해 플러그인에 전달된 경로가 할당됩니다.
- uniqueViewer변수에는 의 파싱된- userPath버전이 할당되므로 사용자 ID 숫자만 변수에 할당됩니다.
- Analytics 플러그인의settings객체에 사용자 속성이 추가됩니다.
  videojs.registerPlugin('uniqueUserForAnalyticsPlugin', function(options) {
  var myPlayer = this,
  userPath = '',
  uniqueViewer = '';
  //Assign uniqueViewer a value according to your app and business rules
  //In this example, parsing the path passed to the plugin in the options object
  userPath = options.path;
  uniqueViewer = userPath.substring( userPath.lastIndexOf('/') + 1 );
  //Assign a user variable to Analytic's settings object
  myPlayer.bcAnalytics.client.user(USER) = uniqueViewer;
  });
  
  
    이 코드는 애플리케이션 로직에 맞게 변경 한 다음 인터넷 액세스 가능 URL에 저장해야합니다.
Studio에서플러그인섹션을 사용하여 그림과 같이 플레이어에 플러그인을 로드합니다.
 
      뒤에 나오는 JSON 대신 사용자 데이터가 포함 된 문자열을 플러그인에 전달합니다. 물론, 플러그인 코드는 고유 한 사용자 ID를 추출하기 위해 그에 따라 업데이트되어야합니다.
  {
  "path": "https://exampledomain.com/users/912389123"
  }
  
  
    플러그인 개발에 대한 자세한 내용은단계별 문서를 참조하십시오. 플러그인 개발문서.
device_type , device_osdevice_os_version , device_manufacturer , 및browser_type매개변수
    기본적으로 Analytics 시스템은 User-Agent 헤더에서 장치 유형 및 OS 정보를 감지하려고 시도합니다. 만약에둘 다device_type그리고device_os전송되면 User-Agent 헤더의 정보는 무시됩니다. device_type그리고device_os . 대부분의 경우 장치, OS 및 브라우저 정보를 보낼 필요가 없습니다. -이 재정의는 User-Agent가 신뢰할 수 없거나 사용할 수없는 경우에만 사용해야합니다.
Analytics 시스템은 요청에 장치 매개변수 재정의에 대해 인식할 수 없는 값이 포함된other경우 이를 기록합니다.
지리 데이터 매개 변수
기본적으로 Analytics 시스템은 원격 IP 주소에서 지리 정보를 감지하려고 시도합니다. 이 동작은country ,, country_nameregionregion_name , city및 를 전달하여 재정의할 수 있습니다. dma파라미터. 대부분의 경우 이러한 매개 변수는 필요하지 않습니다. -이 재정의는 원격 IP 주소를 신뢰할 수 없거나 사용할 수없는 경우에만 사용해야합니다.
Analytics 시스템이 기록합니다. ZZ또는unknown요청에 재정의에 대해 인식할 수 없는 값이 포함된 경우.
목적지 및 소스 매개 변수
destination및source매개변수는 이벤트를 발생시킨 URI ( destination ) 와 해당 이벤트를 발생시킨 URI ( source ) 를 제공합니다.
source매개변수는 트래픽 소스 정보를 결정하는 데 사용됩니다. 지정하지 않으면source Analytics 시스템은 이벤트를 직접 트래픽에 의해 시작된 것으로 간주합니다.
이destination매개 변수는 교통 목적지 정보, 즉 비디오를 시청하는 위치를 결정하는 데 사용됩니다. URI에 권한이 없는 경우 API는 a를 기록하지 않습니다destination_domain . 는 URI의 경로로destination_path기록됩니다.
웹 재생 시 동영상이 재생되고 있는 페이지의 주소창에 있는 URL은destination , 그리고source리퍼러( top.document.referrer ).
예를 들어, 브라이트코브 지원 사이트에서 “라이브 스트리밍 와이어캐스트”를 검색하고 결과에 나타나는 비디오를 시청하는 경우:
| 매개 변수 | 값 | 
|---|---|
| source | 
   | 
| destination | 
   | 
URL이 없는 경우 (예: 네이티브 재생의 경우), 둘 다destination동영상이 재생되는 위치와 사용자가 해당 URL에 도달한 경로를 각각 식별하는 유효한source URI여야 합니다.
destination가유효한 URI라고 가정하면 :
  <scheme name> : <hierarchical part> [ ? <query> ] [ # <fragment> ]
  ex. https://www.example.com/foo/bar/baz
  --------------/----------/
  |             |
  authority        path
  ---/    -------------------------/
  |                |
  scheme       hierarchical part
  
  
    애널리틱스 시스템은 이를 다음과 같이 처리합니다.
URI에권한 , API 응답은 해당 권한을destination_domain및destination_path . URI에 권한이 없는 경우 API는 a를 기록하지 않습니다destination_domain . 는 URI의 경로로destination_path기록됩니다. 계층적 부분이destination없는 A (예: 체계만) 는 체계가 없는 모든 값과 마찬가지로 유효하지 않은 것으로 간주됩니다.
특정 이벤트에 대한 매개 변수
오류 이벤트 매개 변수
다음 파라미터는error이벤트와 함께 전송되어야 합니다.
| 필드 | 유형 | 설명 | 
|---|---|---|
| error_code선택 과목 | 번호 | 이벤트와 관련된 플랫폼 특정 오류 코드 | 
catalog_request 이벤트 매개 변수
다음 파라미터는catalog_request이벤트와 함께 전송되어야 합니다.
| 필드 | 유형 | 설명 | 
|---|---|---|
| catalog_url선택 과목 | 문자열 | 카탈로그_요청 이벤트와 관련된 대상 URL | 
catalog_response 이벤트 매개 변수
다음 파라미터는catalog_response이벤트와 함께 전송되어야 합니다.
| 필드 | 유형 | 설명 | 
|---|---|---|
| catalog_url선택 과목 | 문자열 | 이 응답을 시작한 catalog_request 이벤트와 연관된 대상 URL | 
| response_time_ms선택 과목 | 번호 | 카탈로그_요청 이벤트와 카탈로그_응답 이벤트 사이의 시간 (밀리초 단위) | 
video_impression 이벤트 매개 변수
다음 파라미터는video_impression이벤트와 함께 전송되어야 합니다.
| 필드 | 유형 | 설명 | 
|---|---|---|
| video선택 과목 | 문자열 | 비디오 ID | 
| video_name선택 과목 | 문자열 | 비디오 이름 | 
video_view 이벤트 매개 변수
다음 파라미터는video_view이벤트와 함께 전송되어야 합니다.
| 필드 | 유형 | 설명 | 
|---|---|---|
| video선택 과목 | 문자열 | 비디오 ID | 
| video_name선택 과목 | 문자열 | 비디오 이름 | 
| start_time_ms선택 과목 | 문자열 | 재생 시작과 렌더링되는 비디오의 첫 번째 프레임 사이의 시간 (밀리 초)입니다. 이는 경험에 따라 달라질 수 있습니다. 예를 들어 프리롤 광고가 구성되어 있지 않은 경우 이 측정값은 | 
video_engagement 이벤트 매개 변수
다음 파라미터는video_engagement이벤트와 함께 전송되어야 합니다.
| 필드 | 유형 | 설명 | 
|---|---|---|
| video선택 과목 | 문자열 | 비디오 ID | 
| video_name선택 과목 | 문자열 | 비디오 이름 | 
| range선택 과목 | 문자열 | 해당 형식의 | 
| rendition_url선택 과목 | 문자열 | 가장 최근에 선택한 변환의 URL입니다. 예를 들어 HLS 스트림의 경우 가장 최근에 선택한 변형의 URL이됩니다. | 
| rendition_indicated_bps선택 과목 | 문자열 | 가장 최근에 선택한 변환의 표시된 비트 전송률 (초당 비트 수) | 
| rendition_mime_type선택 과목 | 문자열 | 가장 최근에 선택한 변환의 MIME 유형 | 
| rendition_height선택 과목 | 문자열 | 비디오 변환의 인코딩 된 높이 (픽셀) | 
| rendition_width선택 과목 | 문자열 | 비디오 변환의 인코딩 된 너비 (픽셀) | 
| rebuffering_seconds선택 과목 | 문자열 | 참여 기간 동안 요청되지 않은 지연으로 인해 사용자가 동영상 재생을 기다리는 데 소비 한 시간 (초) | 
| rebuffering_count선택 과목 | 문자열 | 참여 기간 동안 표시된 참여 기간 지연 동안 재 버퍼링으로 인해 재생이 중지 된 횟수 | 
| forward_buffer_seconds선택 과목 | 문자열 | 현재 정방향 버퍼에있는 비디오의 시간 (초) | 
| measured_bps선택 과목 | 문자열 | 가장 최근에 다운로드 한 세그먼트에 포함 된 비트 수와 해당 세그먼트를 다운로드하는 데 소요 된 시간의 비율 (초당 비트 수) | 
| player_width선택 과목 | 문자열 | 참여 범위가 끝날 때 플레이어의 현재 픽셀 너비 | 
| player_height선택 과목 | 문자열 | 참여 범위 종료시 플레이어의 현재 픽셀 높이 | 
| dropped_frames선택 과목 | 문자열 | drop_frames | 
| video_duration선택 과목 | 번호 | 비디오 길이 (초) | 
| video_seconds_viewed선택 과목 | 번호 | 
 | 
video_engagement이벤트는 동영상이 재생되는 동안 동영상 참여도를 추적하는 수단으로, 재생 중에 여러 번 전송될 가능성이 높습니다. (Flash/HTML5 플레이어 인스트루먼트는 재생이 중단되지 않는 경우 10초마다 이 이벤트를 전송합니다.) 현재 20 초 이상의 범위를 설명하는 이벤트는 Analytics 시스템에 의해 삭제되므로 이러한 이벤트를 더 자주 전송해야합니다.
video_engagement이벤트는 다음과 같은 두 가지 형식을 취할 수 있습니다 (간결성을 위해 다른 파라미터는 생략함).
| 예 | 의미 | 
|---|---|
| 
   | 재생 시간이 75초인 동영상은 1230초부터 9초까지 재생되었습니다 (총 10초 시청). | 
| event=video_engagement&video=123&video_seconds_viewed=10 | 10초 분량의 동영상을 123조회했습니다. | 
두 버전 모두 시청 시간을 추적하지만 다음을 포함하는 버전은video_duration그리고range또한 추가 참여 데이터를 계산하는 데 필요한 정보를 포함하며선호하는 방법보내다video_engagement분석 시스템에 대한 이벤트 데이터. 실시간 스트림의 경우 또는 재생 중에 비디오의 타임라인이 계속 변경되거나 신뢰할 수 없는 경우에는 이 데이터만 사용할 수 있습니다. video_seconds_viewed VOD의 경우, 사용할 수 없는 경우가 아니면durationvideo_engagement이벤트에video_duration및 를 포함해야range합니다.
| 매개변수 | 파생 된 참여 지표 (API) | 
|---|---|
| video_duration,range | video_seconds_viewed,video_percent_viewed,engagement_score; 참여 곡선 데이터 | 
| video_seconds_viewed | video_seconds_viewed | 
세 가지 파라미터 ( video_duration , range및video_seconds_viewed ) 가 모두video_engagement이벤트와 함께 전송되면 애널리틱스 시스템은video_duration +에서 참여 지표를 계산합니다. range파라미터.
V2 변경 사항
이 섹션에서는 v1을 사용해 온 사용자를 위해 데이터 수집기의 v1에서 v2 로의 변경 사항을 요약합니다.
추적기의 기본 URL
  http(s)://metrics.brightcove.com/v2
  
  
    모든 이벤트에서 지원되는 추가 필드:
기기_운영체제_버전 : 기기에서 사용중인 OS의 버전입니다. 지정하지 않으면 추적 요청에 대한 사용자 에이전트 문자열을 구문 분석하여 계산됩니다.
플랫폼_버전 : 지정된 플랫폼의 새 릴리스가 이벤트를 보내는 데 사용됨을 나타내는 데 사용됩니다.
V2의 새로운 이벤트
카탈로그_요청 : videocloud 카탈로그 API에 대한 요청이 있을 때 전송됩니다. 이 이벤트는 내부용이며 애널리틱스 모듈이나 애널리틱스 API를 통해 노출되지 않습니다.
- 카탈로그_URL : 이벤트와 관련된 대상 URL - 이catalog_request이벤트는 내부용이며 애널리틱스 모듈이나 애널리틱스 API를 통해 노출되지 않습니다.
카탈로그_응답 : 이전에catalog_request대한 응답이 수신될 때 전송됩니다. 이 이벤트는 내부용이며 Analytics 모듈이나 Analytics API를 통해 노출되지 않습니다.
- 카탈로그_URL : 이 응답을 시작한catalog_request이벤트와 관련된 대상 URL - 이 이벤트는 내부용이며 Analytics 모듈이나 Analytics API를 통해 노출되지 않습니다.
- 응답 시간_ms : catalog_request이벤트와 이벤트 사이의 시간 (밀리초) - 이catalog_response이벤트는 내부용이며 Analytics 모듈이나 Analytics API를 통해 노출되지 않습니다.
재생_요청 : 사용자가 명시 적으로 재생 버튼을 클릭하여 재생을 시작하거나 플랫폼이 자동 재생 시나리오에서 재생을 트리거 할 때 자동으로 전송됩니다.
ad_mode_begin : [대체ad_start ] 재생 플랫폼에서 광고 에이전트에게 제어권을 넘길 때 전송됩니다.
ad_mode_complete : [대체ad_end ] 광고 에이전트에서 재생 플랫폼으로 제어권을 넘겨줄 때 전송됩니다.
오류 : 재생 환경을 방해하는 치명적인 오류가 발생하면 전송됩니다.
- 오류_코드 : 이벤트와 관련된 플랫폼 특정 오류 코드입니다.
V2에 대한 업데이트 된 이벤트
동영상_보기 : 새로운 대기 시간 측정 포함
- 로드 시간_ms : 비디오에 대한 데이터로드를 시작하고 비디오를 재생할 수있게되는 사이의 시간 (밀리 초)입니다.
- 시작 시간_ms : 재생 시작과 렌더링되는 비디오의 첫 번째 프레임 사이의 시간 (밀리 초)입니다. 이는 경험에 따라 다를 수 있습니다. 예를 들어 프리롤 광고가 구성되어 있지 않은 경우 이 측정값은 'play_request'와video_view이벤트 사이의 시간입니다. 프리롤 광고가 있는 경우 광고ad_mode_begin사이의 시간을 포함하지ad_mode_complete않아야 합니다.
동영상 참여 : 추가 변환 선택, 비트 전송률 측정 및 버퍼링 정보를 포함합니다. 참여 기간 동안 시청이 발생하지 않은 경우에도 정기적으로 전송해야한다는 점에서 동영상 참여도 미묘하게 변경되었습니다. 이 변경은 사용자가 재생을 기다리게하는 재 버퍼링 지연 및 카운트 추적을 활성화하기위한 것입니다.
- 범위 : 이제 범위 매개변수는 선택 사항입니다. 인게이지먼트 이벤트에서 범위를 제외하면 이벤트가 적용되는 기간 동안 시청 활동이 없었음을 표시할 수 있습니다.(예: 재버퍼링 활동만 있는 경우)
- 렌디션_URL : 가장 최근에 선택한 변환의 URL입니다. 예를 들어 HLS 스트림의 경우 가장 최근에 선택한 변형의 URL이됩니다.
- 렌디션_표시_bps : 가장 최근에 선택한 변환의 표시된 비트 전송률 (초당 비트 수)입니다.
- 렌디션_마임_유형 : 가장 최근에 선택한 변환의 MIME 유형입니다.
- 렌디션_높이 : 비디오 변환의 인코딩 된 높이 (픽셀)
- 렌디션_너비 : 비디오 변환의 인코딩 된 너비 (픽셀)
- 리버퍼링_초 : 참여 기간 동안 요청되지 않은 지연으로 인해 사용자가 동영상 재생을 기다리는 데 소비 한 시간 (초)입니다.
- 리버퍼링 횟수 : 표시된 참여 기간 동안 다시 버퍼링으로 인해 재생이 중지 된 횟수입니다.
- 포워드_버퍼_초 : 현재 정방향 버퍼에있는 비디오의 시간 (초)입니다.
- 측정된 bps : 가장 최근에 다운로드 한 세그먼트에 포함 된 비트 수와 해당 세그먼트를 다운로드하는 데 소요되는 시간의 비율 (초당 비트 수)입니다.
- player_width는 인게이지먼트 범위 끝에 있는 플레이어의 현재 픽셀 너비입니다.
- player_height인게이지먼트 범위 끝에 있는 플레이어의 현재 픽셀 높이입니다.
- 드롭된 프레임 : 이 참여 기간 동안 비디오 재생에서 삭제 된 프레임 수
