추천 캐러셀에 콘텐츠 게시

이 가이드에서는 Engage SDK를 사용하여 동영상 및 라이브 TV 콘텐츠를 게시하기 위한 데이터 모델과 통합 단계를 설명합니다.

MovieEntity 데이터 모델

MovieEntity는 장편 영화를 나타냅니다. 다음 표에는 주요 필드가 요약되어 있습니다.

공개 메소드 유형 요구사항 설명
getName() 문자열 필수 영화 제목 (예: '어벤져스: 엔드게임')
getDescription() 문자열 필수 마우스를 가져가면 표시되는 컨텍스트를 제공하는 요약
getPosterImages() List<Image> 필수 영화 포스터 표시에 사용되는 이미지 목록
getPlatformSpecificPlaybackUris() List<PlatformSpecificUri> 필수 특정 플랫폼에서의 재생을 위한 딥 링크
getDurationMillis() Long 필수 영화의 총 길이(밀리초)입니다.
getCallToActionText() 문자열 필수 (GTV) 사용자 상호작용을 유도하기 위해 표시되는 텍스트 (예: '지금 보기')
getTags() List<String> 선택사항 분류에 사용되는 키워드 (예: '액션/스릴러')

LiveTvProgramEntity 데이터 모델

LiveTvProgramEntity는 특정 채널에서 방송되거나 방송될 예정인 프로그램을 나타냅니다.

공개 메소드 유형 요구사항 설명
getName() 문자열 필수 프로그램 제목 (예: 'NBC CT Late News')
getDescription() 문자열 필수 프로그램에 관한 컨텍스트를 제공하는 요약
getPosterImages() List<Image> 필수 프로그램의 디스플레이에 사용되는 이미지
getAvailabilityTimeWindows() List<DisplayTimeWindow> 필수 프로그램의 예약된 기간
getChannelId() 문자열 필수 TV 채널의 고유 식별자
getChannelName() 문자열 필수 TV 채널 이름
getChannelLogoImage() 이미지 필수 TV 채널 로고 이미지
getCallToActionText() 문자열 필수 (GTV) 상호작용 프롬프트 텍스트
getTags() List<String> 선택사항 분류에 사용되는 키워드

빌더 사용 예시

MovieEntity 예시

MovieEntity.Builder를 참고하세요.

MovieEntity movie = new MovieEntity.Builder()
    .setName("La hora 25")
    .setDescription("Brogan tiene 24 horas para revalorar su vida antes de ser encarcelado")
    .addPosterImage(new Image.Builder()
        .setImageUri(Uri.parse("https://www.example.com/movie_poster.png"))
        .build())
    .addPlatformSpecificPlaybackUri(new PlatformSpecificUri.Builder()
        .setUri("https://www.example.com")
        .setPlatformType(PlatformType.TYPE_TV)
        .build())
    .setDurationMillis(7200000L)
    .setCallToActionText("Watch Now")
    .addTag("Action/Thriller")
    .build();

LiveTvProgramEntity 예시

LiveTvProgramEntity.Builder를 참고하세요.

LiveTvProgramEntity liveProgram = new LiveTvProgramEntity.Builder()
    .setName("3:30AM: NBC CT Late News")
    .setDescription("The latest local news, weather and investigative stories.")
    .setChannelId("https://www.example.com")
    .setChannelName("Tastemade")
    .setChannelLogoImage(new Image.Builder()
        .setImageUri(Uri.parse("https://example.com/v1/channels/logo.png"))
        .build())
    .addAvailabilityTimeWindow(new DisplayTimeWindow.Builder()
        .setStartTimestampMillis(1756713600000L)
        .setEndTimestampMillis(1756715400000L)
        .build())
    .addPosterImage(new Image.Builder()
        .setImageUri(Uri.parse("https://example.com/v1/assets/image.jpg"))
        .build())
    .setCallToActionText("Watch Now")
    .addTag("News")
    .build();

API

publishRecommendationClusters()는 후보 콘텐츠를 기능 캐러셀에 전송하는 데 사용됩니다. 클러스터 유형은 RecommendationClusterType.TYPE_PROVIDER_ROW로 설정해야 합니다.

항목 한도 및 타겟팅

  • 항목 제한: 추천 캐러셀에는 최대 3개의 항목이 표시됩니다.
  • 타겟팅: 각 개별 기기에 대해 추천 캐러셀 콘텐츠를 맞춤설정할 수 있습니다. 콘텐츠는 기기에 설치된 클라이언트 앱에서 게시되므로 사용자 또는 기기별로 고유한 맞춤 후보 목록으로 채울 수 있습니다. 하지만 Engage SDK는 내장된 타겟팅 지원을 제공하지 않으므로 이 타겟팅 로직을 구현해야 합니다.

Engage SDK 버전

이 통합에 필요한 최소 Engage SDK 버전을 참고하세요.

engage-tv: 1.0.6