نشر المحتوى في "لوحة العرض الدوّارة للمحتوى المميّز"

يوضّح هذا الدليل نموذج البيانات وخطوات الدمج لنشر محتوى الفيديو ومحتوى البث التلفزيوني المباشر باستخدام Engage SDK.

نموذج بيانات MovieEntity

يمثّل MovieEntity فيلمًا كاملاً. يلخّص الجدول التالي الحقول الرئيسية.

الدوال العامة النوع المتطلبات الوصف
getName() سلسلة مطلوب تمثّل هذه السمة عنوان الفيلم (مثلاً، "Avengers: Endgame").
getDescription() سلسلة مطلوب ملخّص يقدّم سياقًا يظهر عند تمرير مؤشر الماوس
getPosterImages() List<Image> مطلوب قائمة بالصور المستخدَمة لعرض ملصق الفيلم
getPlatformSpecificPlaybackUris() List<PlatformSpecificUri> مطلوب روابط لصفحات معيّنة لتشغيل المحتوى على منصات محدّدة
getDurationMillis() الصيغة الطويلة مطلوب إجمالي مدة الفيلم بالمللي ثانية
getCallToAction سلسلة مطلوب (GTV) النص المعروض لتشجيع تفاعل المستخدم (مثل "المشاهدة الآن")
getTags List<String> اختياري الكلمات الرئيسية المستخدَمة للتصنيف (مثل "أكشن/إثارة")

نموذج بيانات LiveTvProgramEntity

يمثّل LiveTvProgramEntity برنامجًا يُعرض أو من المقرر عرضه على قناة معيّنة.

الدوال العامة النوع المتطلبات الوصف
getName() سلسلة مطلوب تمثّل هذه السمة عنوان البرنامج (مثلاً، "NBC CT Late News").
getDescription() سلسلة مطلوب ملخّص يقدّم سياقًا حول البرنامج
getPosterImages() List<Image> مطلوب الصور المستخدَمة لعرض البرنامج
getAvailabilityTimeWindows() List<DisplayTimeWindow> مطلوب الفترات الزمنية المجدوَلة للبرنامج
getChannelId() سلسلة مطلوب المعرّف الفريد لقناة التلفزيون
getChannelName() سلسلة مطلوب اسم القناة التلفزيونية
getChannelLogoImage() صورة مطلوب صورة شعار القناة التلفزيونية
getCallToAction() سلسلة مطلوب (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)
    .setCallToAction("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())
    .setCallToAction("Watch Now")
    .addTag("News")
    .build();

واجهة برمجة التطبيقات

سيتم استخدام publishRecommendationClusters() لإرسال المحتوى المرشّح إلى "لوحة عرض الميزات". يجب ضبط نوع المجموعة على RecommendationClusterType.TYPE_PROVIDER_ROW.

إصدار حزمة Engage SDK

يُرجى العِلم بالحد الأدنى لإصدار Engage SDK المطلوب لعملية الدمج هذه:

engage-tv: 1.0.6