Panduan ini menjelaskan model data dan langkah-langkah integrasi untuk memublikasikan konten video dan TV live menggunakan Engage SDK.
Model data MovieEntity
MovieEntity mewakili film berdurasi penuh. Tabel berikut merangkum kolom utama.
| Metode Publik | Jenis | Persyaratan | Deskripsi |
|---|---|---|---|
getName() |
String | Wajib | Judul film (misalnya, "Avengers: Endgame") |
getDescription() |
String | Wajib | Ringkasan yang memberikan konteks yang muncul saat kursor diarahkan |
getPosterImages() |
List<Image> | Wajib | Daftar gambar yang digunakan untuk tampilan poster film |
getPlatformSpecificPlaybackUris() |
List<PlatformSpecificUri> | Wajib | Deep link untuk pemutaran di platform tertentu |
getDurationMillis() |
Panjang | Wajib | Total durasi film dalam milidetik |
getCallToAction |
String | Wajib (GTV) | Teks yang ditampilkan untuk memicu interaksi pengguna (misalnya, "Tonton Sekarang") |
getTags |
List<String> | Opsional | Kata kunci yang digunakan untuk kategorisasi (misalnya, "Action/Thriller") |
Model data LiveTvProgramEntity
LiveTvProgramEntity mewakili program yang ditayangkan atau dijadwalkan untuk ditayangkan di saluran tertentu.
| Metode Publik | Jenis | Persyaratan | Deskripsi |
|---|---|---|---|
getName() |
String | Wajib | Judul program (misalnya, "NBC CT Late News") |
getDescription() |
String | Wajib | Ringkasan yang memberikan konteks tentang program |
getPosterImages() |
List<Image> | Wajib | Gambar yang digunakan untuk tampilan program |
getAvailabilityTimeWindows() |
List<DisplayTimeWindow> | Wajib | Periode waktu terjadwal untuk program |
getChannelId() |
String | Wajib | ID unik untuk channel TV |
getChannelName() |
String | Wajib | Nama saluran TV |
getChannelLogoImage() |
Gambar | Wajib | Gambar logo untuk channel TV |
getCallToAction() |
String | Wajib (GTV) | Teks perintah interaksi |
getTags() |
List<String> | Opsional | Kata kunci yang digunakan untuk kategorisasi |
Contoh penggunaan Builder
Contoh MovieEntity
Lihat 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();
Contoh LiveTvProgramEntity
Lihat 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() akan digunakan untuk mengirim konten kandidat ke Carousel Fitur. Jenis
cluster harus ditetapkan sebagai RecommendationClusterType.TYPE_PROVIDER_ROW.
Versi Engage SDK
Perhatikan versi minimum Engage SDK yang diperlukan untuk integrasi ini:
engage-tv: 1.0.6