Publikowanie treści w karuzeli polecanych treści

Ten przewodnik opisuje model danych i kroki integracji związane z publikowaniem treści wideo i telewizji na żywo za pomocą pakietu Engage SDK.

Model danych MovieEntity

Element MovieEntity reprezentuje film pełnometrażowy. W tabeli poniżej znajdziesz podsumowanie najważniejszych pól.

Metody publiczne Typ Wymaganie Opis
getName() Ciąg znaków Wymagane Tytuł filmu (np. „Avengers: Koniec gry”)
getDescription() Ciąg znaków Wymagane Podsumowanie zawierające kontekst, które pojawia się po najechaniu kursorem
getPosterImages() List<Image> Wymagane Lista obrazów używanych do wyświetlania plakatu filmu
getPlatformSpecificPlaybackUris() List<PlatformSpecificUri> Wymagane Precyzyjne linki do odtwarzania na określonych platformach
getDurationMillis() Długi Wymagane Łączny czas trwania filmu w milisekundach
getCallToAction Ciąg znaków Wymagane (GTV) Tekst wyświetlany, aby zachęcić użytkownika do interakcji (np. „Obejrzyj teraz”)
getTags List<String> Opcjonalnie Słowa kluczowe używane do kategoryzacji (np. „Akcja/Thriller”)

Model danych LiveTvProgramEntity

Element LiveTvProgramEntity reprezentuje program emitowany lub zaplanowany do emisji w określonym kanale.

Metody publiczne Typ Wymaganie Opis
getName() Ciąg znaków Wymagane Tytuł programu (np. „NBC CT Late News”)
getDescription() Ciąg znaków Wymagane Podsumowanie zawierające kontekst programu
getPosterImages() List<Image> Wymagane Obrazy używane do wyświetlania programu
getAvailabilityTimeWindows() List<DisplayTimeWindow> Wymagane Zaplanowane okna czasowe programu
getChannelId() Ciąg znaków Wymagane Unikalny identyfikator kanału telewizyjnego
getChannelName() Ciąg znaków Wymagane Nazwa kanału telewizyjnego
getChannelLogoImage() Obraz Wymagane Obraz logo kanału telewizyjnego
getCallToAction() Ciąg znaków Wymagane (GTV) Tekst zachęcający do interakcji
getTags() List<String> Opcjonalnie Słowa kluczowe używane do kategoryzacji

Przykłady użycia narzędzia do tworzenia

Przykład MovieEntity

Zobacz 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)
    .setCallToAction("Watch Now")
    .addTag("Action/Thriller")
    .build();

Przykład LiveTvProgramEntity

Zobacz 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())
    .setCallToAction("Watch Now")
    .addTag("News")
    .build();

Interfejs API

Do wysyłania proponowanych treści do karuzeli funkcji będzie używana metoda publishRecommendationClusters(). Typ klastra należy ustawić jako RecommendationClusterType.TYPE_PROVIDER_ROW.

Wersja pakietu Engage SDK

Pamiętaj, że do tej integracji wymagana jest minimalna wersja pakietu Engage SDK:

engage-tv: 1.0.6