Roku용 IMA DAI SDK

    1. ima
    2. ima.AdBreakInfo
    3. ima.AdEvent
    4. ima.AdInfo
    5. ima.Companion
    6. ima.CuePoint
    7. ima.Error
    8. ima.ErrorEvent
    9. ima.Player
    10. ima.StreamFormat
    11. ima.StreamInfo
    12. ima.StreamManager
    13. ima.StreamRequest
    14. ima.StreamType
    15. ima.WrapperInfo

Class ima

메서드

IMA SDK를 제어하는 전역 함수입니다.

disableLogging()

SDK 로깅을 사용 중지합니다. 로깅은 기본적으로 사용 설정됩니다.

getStreamManager()

사용 가능한 경우 스트림 관리자를 반환합니다. 스트림 관리자를 아직 사용할 수 없는 경우 Invalid가 반환됩니다. 스트림 관리자를 만드는 중에 오류가 발생한 경우 오류 객체가 반환됩니다.

반환: 스트림 관리자 또는 오류 객체object

initSdk(settings)

SDK를 초기화합니다.

매개변수 유형 설명
settings object

선택적 IMA 설정 객체입니다.

requestStream(streamRequest)

비동기 스트림 요청을 시작합니다. 이 메서드를 호출한 후 컨트롤이 플레이어에게 즉시 반환됩니다.

object 반환: 오류가 없으면 오류 또는 잘못됨

매개변수 유형 설명
streamRequest object

맨 위로

Class ima.AdBreakInfo

필드

메서드

광고 시점에 관한 정보를 포함합니다. SDK에 의해 이벤트 콜백에 전달됩니다.

속성

이름 유형 설명
adPosition

광고 시점의 광고 색인입니다. 인덱스는 독립형 광고의 경우 1입니다.

duration

광고 시간의 최대 길이(초)입니다. 알 수 없는 경우 -1입니다.

podIndex

라이브 스트림의 경우 광고 시점 ID를 광고 모음 색인으로 반환하거나, 프리롤의 경우 0를 반환합니다. 라이브 스트림에는 포스트롤이 없습니다. 기본값은 -2입니다. VOD의 경우 광고 모음의 색인을 반환합니다. 프리롤 광고 포드의 경우 0를 반환합니다. 미드롤의 경우 1, 2, ..., n을 반환합니다. 포스트롤 광고 모음의 경우 n+1...n+x를 반환합니다. 이 광고가 광고 모음에 속하지 않거나 이 광고 모음이 재생목록에 속하지 않는 경우 기본값은 0입니다.

timeOffset

콘텐츠에서 광고 모음의 위치(초)입니다. 프리롤은 0를 반환하고, 포스트롤은 -1를 반환하며, 미드롤은 포드의 예약된 시간을 반환합니다.

totalAds

이 광고 시점에 포함된 총 광고 수입니다. 독립형 광고의 값은 1입니다.

createAdBreakInfo()


ima.AdBreakInfo 반환:

맨 위로

Class ima.AdEvent

필드

광고 관리자가 발생시킨 이벤트입니다.

속성

이름 유형 설명
AD_PERIOD_ENDED

스트림이 광고 또는 슬레이트에서 콘텐츠로 전환될 때마다 발생합니다. 광고가 두 번째로 재생되거나 광고로 탐색하는 경우에도 이벤트가 발생합니다.

AD_PERIOD_STARTED

스트림이 콘텐츠에서 광고 또는 슬레이트로 전환될 때마다 발생합니다. 광고가 두 번째로 재생되거나 광고로 탐색하는 경우에도 이벤트가 발생합니다.

COMPLETE

광고 재생이 완료되면 발생됩니다.

ERROR

오류가 발생하면 발생합니다.

FIRST_QUARTILE

광고 재생 헤드가 첫 번째 사분위수를 지나면 발생합니다.

ICON_FALLBACK_IMAGE_CLOSED

사용자가 아이콘 대체 이미지 대화상자를 닫으면 실행됩니다.

ICON_FALLBACK_IMAGE_SHOWN

아이콘 대체 이미지가 표시될 때 발생합니다.

MIDPOINT

광고 플레이헤드가 중간점을 지나면 발생됩니다.

PROGRESS

광고 진행률이 업데이트되면 발생합니다.

SKIPPABLE_STATE_CHANGED

광고 건너뛰기 가능 상태가 변경될 때 발생합니다.

SKIPPED

광고를 건너뛸 때 발생합니다.

START

광고 재생이 시작되면 발생됩니다.

THIRD_QUARTILE

광고 재생 헤드가 세 번째 사분위수를 지나면 발생합니다.

맨 위로

Class ima.AdInfo

필드

메서드

광고에 관한 정보를 포함합니다. SDK에 의해 이벤트 콜백에 전달됩니다.

속성

이름 유형 설명
adBreakInfo

이 광고가 포함된 전체 광고 시점과 관련된 정보입니다.

adDescription

광고 설명입니다.

adId

광고의 ID입니다. 알 수 없는 경우 빈 문자열입니다.

adSystem

광고 소재를 제공하는 광고 시스템입니다.

adTitle

광고 제목입니다.

advertiserName

게재 당사자가 정의한 광고주 이름입니다.

companions

VAST 응답에 지정된 컴패니언 광고입니다.

creativeAdId

광고의 ISCI (Industry Standard Commercial Identifier) 코드입니다. VAST 응답에서 선택한 광고 소재의 광고 ID입니다.

creativeId

광고에 선택된 광고 소재의 ID입니다.

currentTime

광고 내 현재 시간(초)입니다. 알 수 없는 경우 -1입니다.

dealId

상단부터 시작하여 현재 광고의 래퍼 체인에 있는 첫 번째 거래 ID를 반환합니다.

duration

이 단일 광고의 길이(초)입니다. 알 수 없는 경우 -1입니다.

skipOffset

광고를 건너뛸 수 있게 되는 시간입니다. 알 수 없는 경우 -1입니다.

universalAdIDRegistry

선택한 광고 소재의 범용 광고 ID가 등록된 등록처 웹사이트의 URL을 식별하는 데 사용되는 문자열입니다.

universalAdIDValue

광고에 선택된 광고 소재의 범용 광고 ID입니다.

wrappers

이 광고의 래퍼 정보가 포함된 ima.WrapperInfo 배열입니다. 순서는 외부 래퍼에서 내부로 지정됩니다.

createAdInfo()


ima.AdInfo 반환:

맨 위로

Class ima.Companion

필드

메서드

광고의 컴패니언에 관한 정보를 포함합니다.

속성

이름 유형 설명
adSlotId

컴패니언의 광고 슬롯 ID입니다. 사용할 수 없는 경우 비어 있습니다.

apiFramework

이 광고를 실행하는 데 필요한 API입니다. 사용할 수 없는 경우 Invalid입니다.

companionClickThrough

컴패니언의 클릭연결 URL입니다.

creativeType

일반적으로 mimetype인 creativetype을 나타냅니다.

height

컴패니언의 높이(픽셀)입니다. 사용할 수 없는 경우 0

trackingEvents

키가 이벤트이고 값이 해당 이벤트에서 핑할 URL 목록인 추적 이벤트의 맵입니다.

url

이 컴패니언의 정적 리소스 URL입니다.

width

컴패니언의 너비(픽셀)입니다. 사용할 수 없는 경우 0

createCompanion()


ima.Companion 반환:

맨 위로

Class ima.CuePoint

필드

메서드

큐 포인트에 관한 정보를 포함합니다.

속성

이름 유형 설명
end

큐 포인트의 종료 시간(초)입니다. 이는 광고 시간에 해당합니다.

hasPlayed

큐 포인트가 이미 재생되었음을 나타내는 불리언입니다.

start

큐 포인트의 시작 시간(초)입니다. 이는 광고 시간에 해당합니다.

createCuePoint()


ima.CuePoint 반환:

맨 위로

Class ima.Error

필드

메서드

오류가 있는 경우 오류 핸들러에 전달되는 객체입니다.

속성

이름 유형 설명
id

오류의 ID입니다. 오류 코드 목록은 ErrorEvent 상수를 참고하세요.

info

오류에 대한 추가 정보입니다.

type

이 객체의 유형을 나타내기 위해 항상 error로 설정됩니다.

createError()


ima.Error 반환:

맨 위로

ima.ErrorEvent 클래스

필드

SDK에서 다시 보낼 수 있는 모든 오류입니다.

속성

이름 유형 설명
BAD_STREAM_REQUEST

스트림 요청이 올바르게 채워지지 않았습니다.

COULD_NOT_LOAD_STREAM

스트림을 로드할 수 없습니다.

ERROR

알 수 없는 오류입니다.

INVALID_RESPONSE

서버 응답이 유효하지 않습니다.

STREAM_API_KEY_NOT_VALID

제공된 API 키가 서버에서 허용되지 않았습니다.

맨 위로

Class ima.Player

메서드

adBreakEnded(adBreakInfo)

선택사항입니다. 광고 시점이 종료되면 호출됩니다.

매개변수 유형 설명
adBreakInfo ima.AdBreakInfo

광고 시점에 관한 정보가 포함되어 있습니다.

adBreakStarted(adBreakInfo)

선택사항입니다. 광고 시점이 시작되면 호출됩니다.

매개변수 유형 설명
adBreakInfo ima.AdBreakInfo

광고 시점에 관한 정보가 포함되어 있습니다.

allVideoComplete()

선택사항입니다. 모든 동영상이 완료되면 호출됩니다.

createPlayer()

빈 IMA Player 객체를 만듭니다. 광고를 재생하려면 loadUrl 함수를 구현해야 합니다. 다른 함수는 선택사항입니다.

ima.Player 반환:

loadUrl(streamInfo)

플레이어가 URL 재생을 시작해야 할 때 호출됩니다. 스트림을 로드하려면 이 메서드를 구현해야 합니다.

매개변수 유형 설명
streamInfo ima.StreamInfo

콘텐츠를 재생하는 데 필요한 정보가 포함되어 있습니다.

streamInitialized(streamInfo)

스트림이 초기화될 때 호출됩니다.

매개변수 유형 설명
streamInfo ima.StreamInfo

콘텐츠를 재생하는 데 필요한 정보가 포함되어 있습니다.

맨 위로

Class ima.StreamFormat

필드

스트림의 형식을 정의합니다.

속성

이름 유형 설명
DASH

HLS

맨 위로

Class ima.StreamInfo

필드

메서드

스트림에 관해 SDK에서 플레이어로 전달되는 정보입니다.

속성

이름 유형 설명
format

동영상 형식(hls 또는 dash)입니다. ima.StreamFormat에 정의되어 있습니다.

manifest

스트림의 URL입니다.

streamId

스트림의 고유 ID입니다.

streamType

동영상 유형(라이브 또는 주문형)입니다. ima.StreamType에 정의되어 있습니다.

subtitles

자막(있는 경우) 그렇지 않으면 유효하지 않습니다.

createStreamInfo()


ima.StreamInfo 반환:

맨 위로

ima.StreamManager 클래스

메서드

스트림 재생을 관리하는 객체입니다.

addEventListener(event, callback)

지정된 이벤트의 리스너를 추가합니다. 지원되는 이벤트는 AdEvents 상수를 참고하세요.

매개변수 유형 설명
event string

callback function

createStreamManager(streamRequest, streamInitResponse)


ima.StreamManager 반환:

매개변수 유형 설명
streamRequest ima.StreamRequest

streamInitResponse ima.StreamInitResponse

enableInteractiveAds()

지원되지 않습니다. 대신 컴패니언 광고에서 RAF로 직접 데이터를 전달하세요. 이제는 작동하지 않습니다.

getContentTime(streamTime)

광고가 없는 콘텐츠의 시간을 나타내는 VOD 스트림의 시간(밀리초)을 가져옵니다. 자세한 내용은 FAQ를 참고하세요. 현재 스트림 시간의 콘텐츠 시간을 가져오려면 -1를 전달하세요.

반환:Integer 지정된 스트림 시간에 해당하는 콘텐츠 시간입니다.

매개변수 유형 설명
streamTime Integer

스트림의 시간입니다.

getCuePoints()

모든 광고 시점에 해당하는 모든 큐 포인트를 반환합니다. 이는 모든 광고 시점을 미리 알 수 있는 VOD 콘텐츠에만 유효합니다. 모든 시간은 스트림 시간을 초 단위로 나타냅니다. Cloud Stitching API 스트림의 경우 각 ima.CuePointhasPlayed 속성은 항상 false입니다.

반환: 모든 큐 포인트가 포함된 배열Object

getPreviousCuePoint(time)

이 시간 이전의 큐 포인트를 반환합니다. 큐 포인트는 광고 시점을 나타냅니다. 모든 시간은 스트림 시간을 초 단위로 나타냅니다.

반환 ima.CuePoint: start, end, hasPlayed가 있는 객체입니다. 사용 가능한 큐 포인트가 없으면 Invalid를 반환합니다.

매개변수 유형 설명
time Float

조회 시간은 -1로, 현재 시간을 나타내며 다른 모든 스트림에 대해 Invalid을 반환합니다.

getStreamTime(contentTime)

VOD의 콘텐츠 시간에서 스트림 시간을 가져옵니다(밀리초). 자세한 내용은 FAQ를 참고하세요.

반환: 지정된 콘텐츠 시간에 해당하는 스트림 시간입니다.Integer

매개변수 유형 설명
contentTime Integer

콘텐츠의 시간입니다.

loadThirdPartyStream(streamManifest, streamSubtitle)

광고 메타데이터를 로드하고 제공된 streamManifestUrlstreamSubtitle 데이터로 loadUrl 함수를 호출합니다. 이 함수는 스트림 요청 유형이 ima.StreamType.POD_VOD인 경우에만 작동합니다.

매개변수 유형 설명
streamManifest string

광고가 스티칭된 스트림 매니페스트 URL입니다.

streamSubtitle ifArray>|Invalid

스트림과 연결된 자막입니다. 없는 경우 Invalid입니다.

onMessage(msg)

Video 객체에서 전송되는 모든 메시지를 처리합니다. roMessagePort에서 수신된 각 메시지에 대해 호출해야 합니다.

매개변수 유형 설명
msg object

roVideo 포트의 메시지입니다.

replaceAdTagParameters(adTagParameters)

실시간 스트림의 경우 게재 예정 광고 요청에 사용할 모든 광고 태그 매개변수를 대체합니다. 이 호출은 VOD 스트림의 경우 no-op입니다.

매개변수 유형 설명
adTagParameters string

새 광고 태그 매개변수입니다.

start()

스트림 재생을 시작합니다.

맨 위로

Class ima.StreamRequest

필드

메서드

스트림 요청의 속성을 지정하는 데 사용됩니다.

속성

이름 유형 설명
adTagParameters

선택사항입니다. 스트림 요청에서 제한된 광고 태그 매개변수 집합을 재정의할 수 있습니다. 자세한 내용은 타겟팅 매개변수를 스트림에 공급하기를 참고하세요. 스트림 변형 환경설정에 dai-ot 및 dai-ov 매개변수를 사용할 수도 있습니다. 자세한 내용은 스트림 변형 매개변수 재정의를 참고하세요.

adUiNode

광고 UI가 표시되는 장면 그래프 노드입니다. IMA는 광고 중에 이 요소에 이 광고가 표시된 이유건너뛰기 버튼과 같은 요소를 배치합니다. 요소는 전체 동영상 요소를 오버레이해야 합니다.

apiKey

선택사항입니다. 이러한 키는 스트림 요청을 인증하는 데 사용할 수 있습니다. DAI 인증 키는 DFP UI에서 설정해야 합니다.

assetKey

라이브 스트림에 필요합니다. 이는 재생할 스트림을 결정하는 데 사용됩니다. 라이브 스트림 요청 애셋 키는 DFP UI에서 찾을 수 있는 식별자입니다.

authToken

스트림 요청 승인 토큰입니다. 더 엄격한 콘텐츠 승인을 위해 API 키 대신 사용됩니다. 게시자는 이 토큰을 기반으로 개별 콘텐츠 스트림 승인을 제어할 수 있습니다.

contentSourceId

주문형 스트림에 필요합니다. cmsid는 DFP UI의 DFP 동영상 콘텐츠 소스에서 가져옵니다.

customAssetKey

맞춤 애셋 키는 재생할 스트림을 결정하는 데 사용됩니다. 팟 서빙 스트림 요청에는 맞춤 애셋 키가 필요합니다.

format

스트림의 형식입니다. 기본값은 ima.StreamFormat.HLS입니다.

networkCode

스트림 요청을 하는 게시자의 네트워크 코드입니다. 네트워크 코드는 createPodLiveStreamRequest 또는 createPodVodStreamRequest로 만든 광고 모음 게재 스트림 요청에 필요합니다. 이러한 코드는 createVideoStitcherLiveStreamRequest, createVideoStitcherVodStreamRequest 또는 createVideoStitcherVodStreamRequestWithVodConfig로 만든 클라우드 스티칭 스트림 요청에도 필요합니다. 이러한 코드는 선택사항이며 createLiveStreamRequest 또는 createVodStreamRequest로 만든 전체 서비스 스트림 요청에 권장됩니다. 네트워크 코드를 추가하면 프로그래매틱 제한 광고 사용 설정과 같은 Ad Manager UI에서 선택한 설정이 적용됩니다. Pod 제공 및 클라우드 스티칭의 경우 네트워크 코드를 추가하면 스트림을 찾아 재생합니다. 네트워크 코드를 찾으려면 이 도움말을 참고하세요.

player

플레이어 인터페이스의 구현입니다.

ppid

지원 중단되었습니다. adTagParameters를 사용합니다. 선택사항입니다. DFP 잠재고객의 게시자 제공 식별자입니다.

streamActivityMonitorId

스트림 활동 모니터링 도구로 스트림을 디버깅하는 데 사용할 ID입니다. 이는 게시자가 스트림 활동 모니터링 도구에서 스트림 로그를 찾을 수 있는 편리한 방법을 제공하는 데 사용됩니다.

videoId

주문형 스트림에 필요합니다. 동영상 콘텐츠 소스의 식별자입니다.

videoObject

클라이언트 앱에서 동영상 재생을 담당하는 동영상 객체 (예: Video roSGNode)입니다. 이 객체는 Live HLS ID3 이벤트의 적절한 타이밍에 사용되는 다양한 데이터를 위해 폴링됩니다.

videoStitcherSessionOptions

세션 옵션은 VideoStitcher streamRequests의 동영상 스티처 관련 매개변수를 설정하는 데 사용됩니다.

createLiveStreamRequest(assetKey, apiKey, networkCode)

라이브 StreamRequest의 필수 속성을 초기화합니다. 이 API를 사용하면 다른 StreamType 관련 속성이 무시됩니다. 필수 매개변수가 빈 문자열이면 오류 로깅이 발생하고 API는 속성이 무시되지 않은 일반 StreamRequest를 반환합니다.

필수 라이브 속성이 있는 ima.StreamRequest: ima.StreamRequest 객체를 반환합니다.

매개변수 유형 설명
assetKey string

apiKey string

반환된 ima.StreamRequestima.StreamRequest.apiKey 속성에 할당된 매개변수입니다. API 키가 없으면 빈 문자열을 전달합니다.

networkCode string

스트림 요청을 실행하는 게시자의 네트워크 코드입니다. 네트워크 코드를 포함하는 것은 선택사항이지만 권장됩니다.

createPodLiveStreamRequest(customAssetKey, networkCode, apiKey)

Pod Live ima.StreamRequest의 필수 속성을 초기화합니다. 이 API를 사용하면 다른 ima.StreamType 관련 속성이 무시됩니다. 필수 매개변수가 빈 문자열이면 오류 로깅이 발생하고 API는 속성이 무시되지 않은 일반 StreamRequest를 반환합니다.

StreamRequest 반환: 필수 PodLive 속성이 있는 ima.StreamRequest 객체

매개변수 유형 설명
customAssetKey string

networkCode string

apiKey string

반환된 ima.StreamRequestima.StreamRequest.apiKey 속성에 할당된 선택적 매개변수입니다. 기본값은 빈 문자열입니다.

createPodVodStreamRequest(networkCode)

서드 파티 동영상 스티처와 함께 DAI Pod 게재를 사용할 때 VOD 스트림을 등록하기 위해 ima.StreamRequest의 필수 속성을 초기화합니다. 이 함수는 요청 유형을 ima.StreamType.POD_VOD로 설정하고 누락된 데이터에 필요한 모든 속성을 검증합니다. 검사 실패 시 디버그 콘솔에 오류가 로깅됩니다.

StreamRequest 반환: ima.StreamRequest 객체 필수 속성이 모두 지정되면 요청 유형이 ima.StreamType.POD_VOD로 설정됩니다.

매개변수 유형 설명
networkCode string

Google Ad Manager 네트워크 코드

createStreamRequest()


반환되는 값:ima.StreamRequest 객체ima.StreamRequest

createVideoStitcherLiveStreamRequest(customAssetKey, networkCode, liveConfigId, region, projectNumber, oAuthToken)

Video Stitcher Live StreamRequest의 필수 속성을 초기화합니다. 이 API를 사용하면 다른 StreamType 관련 속성이 무시됩니다. 필수 매개변수가 빈 문자열이면 오류 로깅이 발생하고 API는 속성이 무시되지 않은 일반 StreamRequest를 반환합니다.

반환: 필수 VideoStitcherLive 속성이 있는 ima.StreamRequest 객체ima.StreamRequest

매개변수 유형 설명
customAssetKey string

networkCode string

liveConfigId string

region string

projectNumber string

oAuthToken string

createVideoStitcherVodStreamRequest(adTagUrl, networkCode, contentSourceUrl, region, projectNumber, oAuthToken)

Video Stitcher VOD StreamRequest의 필수 속성을 초기화합니다. 이 API를 사용하면 다른 StreamType 관련 속성이 무시됩니다. 필수 매개변수가 빈 문자열이면 오류 로깅이 발생하고 API는 속성이 무시되지 않은 일반 StreamRequest를 반환합니다.

반환: 필수 VideoStitcherVod 속성이 있는 ima.StreamRequest 객체ima.StreamRequest

매개변수 유형 설명
adTagUrl string

networkCode string

contentSourceUrl string

region string

projectNumber string

oAuthToken string

createVideoStitcherVodStreamRequestWithVodConfig(vodConfigId, networkCode, region, projectNumber, oAuthToken)

클라우드 동영상 합치기 도구에서 생성된 vodConfigId를 사용하여 동영상 합치기 VOD StreamRequest의 필수 속성을 초기화합니다. 이 API를 사용하면 다른 StreamType 관련 속성이 무시됩니다. 필수 매개변수가 빈 문자열이면 오류 로깅이 발생하고 API는 속성이 무시되지 않은 일반 StreamRequest를 반환합니다.

반환: 필수 VideoStitcherVod 속성이 있는 ima.StreamRequest 객체ima.StreamRequest

매개변수 유형 설명
vodConfigId string

networkCode string

region string

projectNumber string

oAuthToken string

createVodStreamRequest(contentSourceId, videoId, apiKey, networkCode)

VOD ima.StreamRequest의 필수 속성을 초기화합니다. 이 API를 사용하면 다른 ima.StreamType 관련 속성이 무시됩니다. 필수 매개변수가 빈 문자열이면 오류 로깅이 발생하고 API는 속성이 무시되지 않은 일반 StreamRequest를 반환합니다.

반환: 필수 VOD 속성이 있는 ima.StreamRequest 객체ima.StreamRequest

매개변수 유형 설명
contentSourceId string

videoId string

apiKey string

반환된 ima.StreamRequestima.StreamRequest.apiKey 속성에 할당된 매개변수입니다. API 키가 없으면 빈 문자열을 전달합니다.

networkCode string

스트림 요청을 실행하는 게시자의 네트워크 코드입니다. 네트워크 코드를 포함하는 것은 선택사항이지만 권장됩니다.

맨 위로

Class ima.StreamType

필드

플레이어가 재생하도록 요청된 스트림의 유형을 정의합니다. 프리롤과 VOD는 스트림의 시작 부분부터 재생되어야 합니다.

속성

이름 유형 설명
LIVE

동영상이 게시되었습니다.

VOD

동영상은 주문형입니다.

맨 위로

Class ima.WrapperInfo

필드

메서드

래퍼에 관한 정보를 포함합니다.

속성

이름 유형 설명
adId

광고의 ID입니다. 알 수 없는 경우 빈 문자열입니다.

adSystem

광고 시스템의 선언된 이름입니다. 알 수 없는 경우 빈 문자열입니다.

creativeAdId

광고 소재의 광고 ID입니다. 알 수 없는 경우 빈 문자열입니다.

creativeId

광고 소재의 ID입니다. 알 수 없는 경우 빈 문자열입니다.

dealId

할인 ID이거나 알 수 없는 경우 빈 문자열입니다.

createWrapperInfo()


ima.WrapperInfo 반환:

맨 위로