Ce guide décrit le modèle de données et les étapes d'intégration pour publier du contenu vidéo et de la télévision en direct à l'aide du SDK Engage.
Modèle de données MovieEntity
MovieEntity représente un long métrage. Le tableau suivant récapitule les champs clés.
| Méthodes publiques | Type | Exigence | Description |
|---|---|---|---|
getName() |
Chaîne | Obligatoire | Titre du film (par exemple, "Avengers: Endgame") |
getDescription() |
Chaîne | Obligatoire | Récapitulatif fournissant un contexte qui s'affiche au survol |
getPosterImages() |
List<Image> | Obligatoire | Liste d'images utilisées pour l'affiche du film |
getPlatformSpecificPlaybackUris() |
List<PlatformSpecificUri> | Obligatoire | Liens profonds pour la lecture sur des plates-formes spécifiques |
getDurationMillis() |
Long | Obligatoire | Durée totale du film en millisecondes |
getCallToAction |
Chaîne | Obligatoire (GTV) | Texte affiché pour inciter l'utilisateur à interagir (par exemple, "Regarder maintenant") |
getTags |
List<String> | Facultatif | Mots clés utilisés pour la catégorisation (par exemple, "Action/Thriller") |
Modèle de données LiveTvProgramEntity
LiveTvProgramEntity représente un programme diffusé ou programmé sur une chaîne spécifique.
| Méthodes publiques | Type | Exigence | Description |
|---|---|---|---|
getName() |
Chaîne | Obligatoire | Titre du programme (par exemple, "NBC CT Late News") |
getDescription() |
Chaîne | Obligatoire | Récapitulatif fournissant un contexte sur le programme |
getPosterImages() |
List<Image> | Obligatoire | Images utilisées pour l'affichage du programme |
getAvailabilityTimeWindows() |
List<DisplayTimeWindow> | Obligatoire | Périodes de diffusion programmées pour le programme |
getChannelId() |
Chaîne | Obligatoire | Identifiant unique de la chaîne TV |
getChannelName() |
Chaîne | Obligatoire | Nom de la chaîne TV |
getChannelLogoImage() |
Image | Obligatoire | Image du logo de la chaîne TV |
getCallToAction() |
Chaîne | Obligatoire (GTV) | Texte d'incitation à l'interaction |
getTags() |
List<String> | Facultatif | Mots clés utilisés pour la catégorisation |
Exemples d'utilisation du générateur
Exemple MovieEntity
Consultez 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();
Exemple LiveTvProgramEntity
Consultez 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();
API
publishRecommendationClusters() sera utilisé pour envoyer du contenu candidat au carrousel de fonctionnalités. Le type de cluster doit être défini sur RecommendationClusterType.TYPE_PROVIDER_ROW.
Version du SDK Engage
Notez la version minimale du SDK Engage requise pour cette intégration :
engage-tv: 1.0.6