Ad와 AdQoeInfo
1. Ad
광고 이벤트 리스너를 통해 전달받은 Ad 객체로 동영상 광고를 제어하거나 광고에 대한 정보를 얻을 수 있습니다.
interface InstreamAd {
start(): void;
skipAdBreak(): void;
smartTvAction(action: SmartTvAction): void;
setNonLinearAdContainer(nonLinearAdContainer: HTMLElement, nonLinearExtraInfo?: NonLinearExtraInfo): void;
setNonLinearAdStyle(isShareType: boolean): void;
showNonLinearAd(): void;
hideNonLinearAd(): void;
getLinearAdType(): string | undefined;
getAdNoticeDuration(): number | undefined;
getAdQoeInfo(): AdQoeInfo;
getVideoMediaInfo(): InstreamMediaInfo | undefined;
getNonLinearAdInfo(): NonLinearAdInfo | undefined;
getAdSourceId(): string;
pause(): void;
resume(): void;
setVolume(volume: number): void;
getVolume(): number;
mute(): void;
unmute(): void;
}
smartTvAction()
은 videoAdScheduleManager의 API와 동일하게 동작합니다.
start()
- 광고를 최초로 재생 시킬 때 사용됩니다.
skipAdBreak()
- AdBreak를 스킵합니다.
setNonLinearAdContainer()
-
Parameter
nonLinearAdContainer: nonLinear 광고가 렌더링 될 HTML 요소
nonLinearExtraInfo: nonLinear 광고의 추가 설정 정보
- isShareType : 서비스 플레이어 UI가 퍼가기 형태 UI 타입인지 여부
- containerType : nonLinear 광고를 서비스 플레이어 내부 혹은 외부에 랜더링할지 결정하는 타입 정보
interface NonLinearExtraInfo {
isShareType?: boolean;
containerType?: 'INNER' | 'OUTER';
}
setNonLinearAdStyle()
-
Parameter
isShareType : 서비스 플레이어 UI가 퍼가기 형태 UI 타입인지 여부
showNonLinearAd()
- 광고가 nonLinear일 경우, nonLinear 광고를 노출시킵니다.
hideNonLinearAd()
- 광고가 nonLinear일 경우, nonLinear 광고를 숨깁니다.
getLinearAdType()
-
Return
linearAdType(string):
"pre"
또는"mid"
또는"post"
인 linearAdType을 반환합니다. 없을 경우undefined
를 반환합니다.
getAdNoticeDuration()
-
Return
adNoticeDuration(number): AdScheduleParam에서 설정된 adNoticeDuration 값을 반환합니다. 없을 경우
undefined
를 반환합니다.
getAdQoeInfo()
-
Return
AdQoeInfo 객체를 반환합니다.
getVideoMediaInfo()
-
Return
VideoMediaInfo: 광고 동영상 Media 정보 객체를 반환합니다. 없을 경우
undefined
를 반환합니다.interface InstreamMediaInfo {
contentType: string;
mediaWidth: number;
mediaHeight: number;
bitrate: number;
mediaFileUrl: string;
}
getNonLinearAdInfo()
-
Return
NonLinearAdInfo: 광고가 nonLinear일 경우, nonLinear 광고에 대한 정보 객체를 반환합니다. 없을 경우
undefined
를 반환합니다.export interface NonLinearAdInfo {
id: string;
width: number;
height: number;
apiFramework: string;
content: string;
contentType: string;
creativeViewUrl?: string;
clickThrough?: string;
clickTrackingUrls?: string[];
offset: number;
duration: number;
started: boolean;
complete: boolean;
}
getAdSourceId()
-
Return
AdSourceId(string): 광고의 AdSourceId를 반환합니다.
pause()
- 현재 재생 중인 광고를 일시 정지합니다.
resume()
- 현재 일시 정지 상태인 광고를 다시 재생합니다.
setVolume()
-
Parameter
volume : 현재 재생 중인 광고 비디오에 설정할 volume 값
getVolume()
-
Return
현재 재생 중인 광고 비디오의 볼륨값을 반환합니다.
mute()
- 현재 재생 중인 광고 비디오에 대해 음소거합니다.
unmute()
- 현재 재생 중인 광고 비디오의 음소거 상태를 해제합니다.
2. AdQoeInfo
interface InstreamAdQoeInfo {
adProvider: string; // 광고 제공자
placementType: string; // pre: 전 광고, mid: 중간 광고, post: 후 광고
timeOffset: number; // 광고 스케줄 timeOffset
adDuration: number; // 광고 재생 시간
currentTime: number; // 광고 재생 구간에서의 현재 시간
skipOffset: number; // 광고 재생 구간에서의 광고 skip 시간
mediaWidth: number; // 미디어 width, 해당 속성값이 없을 경우 0
mediaHeight: number; // 미디어 height, 해당 속성값이 없을 경우 0
}