

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 광고 추적 활동 타이밍
<a name="ad-reporting-client-side-ad-tracking-schema-activity-timing"></a>

클라이언트 측 보고를 사용하면 플레이어가 정밀도 수준으로 추적 이벤트(비컨)를 내보내야 합니다. MediaTailor 클라이언트 측 추적 스키마를 사용하면 모든 가용 시간에 대해 광고, 컴패니언, 오버레이 및 추적 이벤트, 타이밍 및 기간 정보가 다양한 형식으로 표시되도록 할 수 있습니다.

플레이어에 대해 다음 MediaTailor 키/값 페어를 사용하여 이벤트 추적과 같은 광고 이벤트 활동을 재생 위치와 정확하게 조정합니다.
+ [startTime](ad-reporting-client-side-ad-tracking-schema.md#property-starttime) 
+  [startTimeInSeconds](ad-reporting-client-side-ad-tracking-schema.md#property-starttimeinseconds) 
+  [adProgramDateTime](ad-reporting-client-side-ad-tracking-schema.md#property-adprogramdatetime) 
+  [adID](ad-reporting-client-side-ad-tracking-schema.md#property-adid)/[eventId](ad-reporting-client-side-ad-tracking-schema.md#property-eventid) 

HLS와 DASH는 및 값을 `startTimeInSeconds` 다르게 구현`startTime`합니다.
+ HLS - `startTime` 값은 재생 세션의 시작을 기준으로 합니다. 재생 세션의 시작은 시간 0으로 정의됩니다. 광고의 `startTime`는 가용 구간까지 이어지는 모든 `EXT-INF` 세그먼트 기간의 누적 값의 합계입니다. 광고 또는 추적 이벤트가 속하는 세그먼트의 미디어 시퀀스 번호도 클라이언트 측 추적 응답의 `adId` 또는 `eventId`에 해당합니다.
+ DASH:
  + 라이브/동적 매니페스트 - `startTime` 값은 DASH 매니페스트`MPD@availabilityStartTime`의를 기준으로 합니다. `MPD@avaibilityStartTime`는 스트림을 사용하는 모든 MediaTailor 세션의 타이밍 앵커입니다.
  + VOD/정적 매니페스트 - `startTime` 값은 재생 세션의 시작을 기준으로 합니다. 재생 세션의 시작은 시간 0으로 정의됩니다. 가능 구간 내의 각 광고는 자체 `Period` 요소에 포함되어 있습니다. `Period` 요소에는 클라이언트 측 추적 페이로드의 값과 동일한 `startTime` 값이 있는 `@start` 속성이 있습니다. 는 클라이언트 측 추적 응답`eventId`의 `adId` 또는 `PeriodId` 에도 해당합니다.

**Example HLS:**  
다음 예제에서는 MediaTailor 세션이 시작되었으며 다음 매니페스트는 클라이언트에 제공된 첫 번째 매니페스트입니다.  

```
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:4603263
#EXT-X-DISCONTINUITY-SEQUENCE:0
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:23.295678Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_34.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:27.306345Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_35.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:31.317012Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_36.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:35.327679Z
#EXTINF:4.010667,
https://123.cloudfront.net/out/v1/index_1_37.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:39.338346Z
#EXTINF:2.538667,
https://123.cloudfront.net/out/v1/index_1_38.ts
#EXT-X-DISCONTINUITY
#EXT-X-KEY:METHOD=NONE
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:41.453Z
#EXTINF:2.0,
https://123.cloudfront.net/tm/asset_1080_4_8_00001.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:43.453Z
#EXTINF:2.0,
https://123.cloudfront.net/tm/asset_1080_4_8_00002.ts
#EXT-X-PROGRAM-DATE-TIME:2023-05-03T21:24:45.453Z
#EXTINF:2.0,
https://123.cloudfront.net/tm/asset_1080_4_8_00003.ts
```
클라이언트 측 추적 JSON 페이로드에는 다음 값이 적용됩니다.  
+  `startTime`: `"PT18.581355S"` 
+  `startTimeInSeconds`: `18.581` 
+  `availProgramDateTime`: `"2023-05-03T21:24:41.453Z"` 
+  `adId`: `4603269` 

**Example DASH:**  
다음 예제에서 MediaTailor 세션은 매니페스트에서 미드롤을 가져옵니다. 광고 기간인 두 번째 기간의 `@start` 속성 값에는 값과 관련된 `MPD@availabilityStartTime` 값이 있습니다. 이 값은 MediaTailor가 모든 세션에 대해 클라이언트 측 추적 응답 `startTime` 필드에 기록하는 값입니다.  

```
<?xml version="1.0" encoding="UTF-8"?>
<MPD availabilityStartTime="2022-10-05T19:38:39.263Z" minBufferTime="PT10S" minimumUpdatePeriod="PT2S" profiles="urn:mpeg:dash:profile:isoff-live:2011" publishTime="2023-05-03T22:06:48.411Z" suggestedPresentationDelay="PT10S" timeShiftBufferDepth="PT1M30S" type="dynamic" xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:scte35="urn:scte:scte35:2013:xml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 http://standards.iso.org/ittf/PubliclyAvailableStandards/MPEG-DASH_schema_files/DASH-MPD.xsd">
    <BaseURL>https://123.channel-assembly.mediatailor.us-west-2.amazonaws.com/v1/channel/my-channel/</BaseURL>
    <Location>https://123.cloudfront.net/v1/dash/94063eadf7d8c56e9e2edd84fdf897826a70d0df/MediaTailor-Live-HLS-DASH/channel/channel1/dash.mpd?aws.sessionId=794a15e0-2a7f-4941-a537-9d71627984e5</Location>
    <Period id="1683151479166_1" start="PT5042H25M59.903S" xmlns="urn:mpeg:dash:schema:mpd:2011">
        <BaseURL>https://123.cloudfront.net/out/v1/f1a946be8efa45b0931ea35c9055fb74/ddb73bf548a44551a0059c346226445a/eaa5485198bf497284559efb8172425e/</BaseURL>
        <AdaptationSet ...>
            ...
        </AdaptationSet>
    </Period>
    <Period id="1683151599194_1_1" start="PT5042H27M59.931S">
        <BaseURL>https://123.cloudfront.net/tm/94063eadf7d8c56e9e2edd84fdf897826a70d0df/fpc5omz5wzd2rdepgieibp23ybyqyrme/</BaseURL>
        <AdaptationSet ...>
            ...
        </AdaptationSet>
    </Period>
</MPD>
```
클라이언트 측 추적 JSON 페이로드에는 다음 값이 적용됩니다.  
+  `startTime`: `"PT5042H27M59.931S"` 
+  `startTimeInSeconds`: `18152879.931` 
+  `availProgramDateTime`: *null* 
+  `adId`: `1683151599194_1_1` 