Engage SDK Travel: تعليمات الدمج الفني التابعة لجهات خارجية

زيادة التفاعل مع التطبيق من خلال الوصول إلى المستخدمين في الأماكن التي يتواجدون فيها يمكنك ربط تطبيقك بحزمة Engage SDK لعرض اقتراحات مخصّصة ومحتوى يمكن للمستخدمين مواصلته مباشرةً على مساحات عرض متعددة على الجهاز فقط، مثل المجموعات ومساحة الترفيه و"متجر Google Play". تضيف عملية الدمج أقل من 50 كيلوبايت (مضغوطة) إلى متوسط حجم حزمة APK، وتستغرق معظم التطبيقات حوالي أسبوع من وقت المطوّر. يمكنك الاطّلاع على مزيد من المعلومات على الموقع الإلكتروني الخاص بالأنشطة التجارية.

يحتوي هذا الدليل على تعليمات لشركاء المطوّرين حول كيفية عرض محتوى السفر والفعاليات على مساحات عرض المحتوى في Engage.

الفئات ومساحات العرض المتوافقة

تستند أهلية مساحة العرض في حزمة Engage SDK إلى فئة محتوى تطبيقك. استخدِم الجدول التالي لتحديد أهليتك للاستفادة من مساحات عرض معيّنة:

الحالة فئة المحتوى أو حالة الاستخدام مساحات العرض المتوافقة
متاحة
(مؤهَّلة للظهور على جميع مساحات العرض)
  • كل فئات "السفر والمعلومات المحلية" (باستثناء الفئات الفرعية غير المتاحة والمدرَجة في هذا الجدول)
  • الأحداث (جميع الفئات الفرعية)
  • نشاط الحيوانات الأليفة ومراقبتها ومجالستها وتمشيتها
  • المجموعات
  • علامة التبويب "التطبيقات" في "متجر Google Play"
  • علامة التبويب "أنت" في "متجر Google Play"
  • صفحة بطاقة بيانات المتجر على "متجر Google Play"
غير متاح
  • أدوات تتبُّع الرحلات الجوية

تفاصيل عملية الدمج

المصطلحات

يتضمّن هذا الدمج أنواع المجموعات التالية: اقتراح ومميّز وحجز ومتابعة البحث.

  • تعرض مجموعات الاقتراحات اقتراحات مخصّصة حول السفر والفعاليات من أحد شركاء المطوّرين. ويمكن تخصيص هذه الاقتراحات للمستخدم أو تعميمها (مثل المنتجات الرائجة). يمكنك استخدام هذه البيانات لعرض اقتراحات بشأن المقالات أو الأحداث أو أماكن الإقامة أو الأماكن التي تهمّ المستخدم.

    • يمكن أن تتألف مجموعة "اقتراحات" من بيانات ArticleEntity أو EventEntity أو LodgingEntity أو PointOfInterestEntity أو StoreEntity، ولكن ليس من مزيج من أنواع مختلفة من الكيانات.

    تتّبع اقتراحاتك البنية التالية:

    • مجموعة الاقتراحات: هي طريقة عرض في واجهة المستخدم تتضمّن مجموعة من الاقتراحات من شريك المطوّر نفسه.

    • الكيان: هو عنصر يمثّل عنصرًا واحدًا في مجموعة. يوفّر هذا التكامل بعض الكيانات التي سيتم عرضها باستخدام مجموعة الاقتراحات:

      • ArticleEntity: يمثّل ArticleEntity اقتراحًا لمحتوى مستند إلى نص ومرتبط بالسفر والفعاليات. ويمكن استخدامه للمقالات ومشاركات المدونات والمحتوى التسويقي ومقتطفات الأخبار وما إلى ذلك.

        الشكل 1: واجهة مستخدم تعرض ArticleEntity واحدة ضمن مجموعة "الاقتراحات".
      • EventEntity: يمثّل EventEntity حدثًا سيقع في المستقبل. يُعدّ وقت بدء الحدث معلومة مهمة يجب إبلاغ المستخدمين بها.

        الشكل 2: واجهة مستخدم تعرض EventEntity واحدًا ضمن مجموعة الاقتراحات.
      • LodgingEntity: يمثّل هذا النوع من البيانات مكان إقامة، مثل فندق أو شقة أو منزل عطلات مخصّص للاستئجار لفترات قصيرة أو طويلة.

        الشكل 3: واجهة مستخدم تعرض LodgingEntity واحدًا ضمن مجموعة "الاقتراحات".
      • StoreEntity: يمثّل StoreEntity متجرًا أو مطعمًا أو مقهى أو غير ذلك، ويسلّط الضوء على المحتوى الذي يمثّل فيه مكان تناول الطعام أو المتجر المعلومات الأساسية التي يجب نقلها إلى المستخدمين.

        الشكل 4: واجهة مستخدم تعرض StoreEntity واحدًا ضمن مجموعة "الاقتراحات".
      • PointOfInterestEntity: يمثّل PointOfInterestEntity مكانًا يهمّ المستخدمين، مثل محطة وقود أو مكان إقامة فعالية أو مدينة ملاهٍ أو متحف أو موقع سياحي أو مسار للمشي لمسافات طويلة وما إلى ذلك. ويسلّط الضوء على المحتوى الذي يشكّل فيه الموقع الجغرافي جزءًا مهمًا من المعلومات التي يجب نقلها إلى المستخدمين. ويجب عدم استخدامه في أماكن الإقامة أو المتاجر أو أماكن تناول الطعام.

        الشكل 5: واجهة مستخدم تعرض كيانًا واحدًا PointOfInterestEntity ضمن مجموعة الاقتراحات.
  • تعرض المجموعة الحجز المحتوى الذي تفاعل معه المستخدمون مؤخرًا من عدة شركاء مطوّرين في مجموعة واحدة ضمن واجهة المستخدم. سيُسمح لكل شريك مطوّر ببث 10 عناصر كحد أقصى في مجموعة الحجز.

    يمكن أن يتّخذ محتوى الحجز البنية التالية:

    • RestaurantReservationEntity: يمثّل RestaurantReservationEntity حجزًا في مطعم أو مقهى ويساعد المستخدمين في تتبُّع حجوزات المطاعم القادمة أو الحالية.

      الشكل 6. واجهة مستخدم تعرض عنصرًا واحدًا من RestaurantReservationEntity ضمن مجموعة Reservation
    • ‫EventReservationEntity: يمثّل EventReservationEntity حجزًا لحدث ويساعد المستخدمين في تتبُّع حجوزات الأحداث القادمة أو الجارية. يمكن أن تشمل الأحداث ما يلي على سبيل المثال لا الحصر:

      • الفعاليات الرياضية، مثل حجز تذاكر لمباراة كرة قدم
      • فعاليات ألعاب الفيديو، مثل الحجز للمشاركة في الرياضات الإلكترونية
      • فعاليات ترفيهية، مثل حجز تذاكر لمشاهدة فيلم في السينما أو لحضور حفل موسيقي أو مسرحية أو توقيع كتاب
      • حجوزات السفر أو نقاط الاهتمام، مثل الجولات الإرشادية وتذاكر المتاحف
      • حجوزات اجتماعية / ندوات / مؤتمرات
      • حجوزات الجلسات التعليمية أو التدريبية
      الشكل 7. واجهة مستخدم تعرض عنصر EventReservationEntity واحدًا ضمن مجموعة Reservation.
    • LodgingReservationEntity: يمثّل LodgingEntityReservation حجزًا لمكان إقامة سياحي ويساعد المستخدمين في تتبُّع حجوزات الفنادق أو أماكن الاستئجار القادمة أو الحالية.

      الشكل 8. واجهة مستخدم تعرض LodgingReservationEntity واحدًا ضمن مجموعة Reservation
    • TransportationReservationEntity: يمثّل هذا النوع من الكيانات حجزًا لوسيلة نقل من أي نوع، ويساعد المستخدمين في تتبُّع حجوزاتهم القادمة أو الحالية لرحلات الطيران أو العبّارات أو القطارات أو الحافلات أو خدمات النقل عند الطلب أو الرحلات البحرية.

      الشكل 9. واجهة مستخدم تعرض عنصر TransportationReservationEntity واحدًا ضمن مجموعة Reservation
    • يمثّل VehicleRentalReservationEntity حجز تأجير المركبات ويساعد المستخدمين في تتبُّع حجوزات تأجير المركبات القادمة أو الجارية.

      الشكل 10. واجهة مستخدم تعرض عنصرًا واحدًا من نوع VehicleRentalReservationEntity ضمن مجموعة Reservation.
  • تعرض المجموعة المميّزة مجموعة من الكيانات من عدة شركاء مطوّرين في مجموعة واحدة ضمن واجهة المستخدم. سيكون هناك مجموعة واحدة من "المحتوى المقترَح"، وسيتم عرضها بالقرب من أعلى واجهة المستخدم مع موضع ذي أولوية أعلى من جميع مجموعات "المحتوى المقترَح". سيُسمح لكل شريك مطوِّر ببث ما يصل إلى 10 عناصر في المجموعة المميزة.

    • GenericFeaturedEntity: يختلف GenericFeaturedEntity عن عنصر الاقتراح في أنّه يجب استخدام العنصر المميّز لعرض محتوى واحد من أهم المحتويات التي يقدّمها المطوّرون، ويجب أن يمثّل المحتوى الأكثر أهمية الذي سيكون مثيرًا لاهتمام المستخدمين ومناسبًا لهم.

      الشكل 11: واجهة مستخدم تعرض FeaturedCluster مع قائمة GenericFeaturedEntity
  • تساعد حزمة متابعة البحث المستخدمين في استئناف رحلة البحث السابقة عن السفر من خلال عرض قائمة بطلبات البحث التي أجراها المستخدم مؤخرًا في جميع تطبيقات السفر. سيتم تثبيت المجموعة في الموضع الثاني، بعد الحجوزات وقبل المجموعات المميزة ومجموعات الاقتراحات. سيُسمح لكل شريك مطوِّر ببث ما يصل إلى 3 عناصر في مجموعة "متابعة البحث".

    • PointOfInterestEntity: يمثّل PointOfInterestEntity مكانًا يهم المستخدم، مثل محطة وقود أو مكان إقامة فعالية أو مدينة ملاهٍ أو متحف أو موقع سياحي أو مسار للمشي لمسافات طويلة وما إلى ذلك. ويسلّط الضوء على المحتوى الذي بحث عنه المستخدم سابقًا.

العمل التحضيري

الحد الأدنى لمستوى واجهة برمجة التطبيقات: 19

أضِف مكتبة com.google.android.engage:engage-core إلى تطبيقك:

dependencies {
    // Make sure you also include that repository in your project's build.gradle file.
    implementation 'com.google.android.engage:engage-core:1.6.0'
}

ملخّص

يعتمد التصميم على تنفيذ خدمة مرتبطة.

تخضع البيانات التي يمكن للعميل نشرها للحدود التالية لأنواع المجموعات المختلفة:

نوع المجموعة حدود المجموعات الحدّ الأدنى لعدد العناصر في المجموعة الحدّ الأقصى لعدد الكيانات في مجموعة
مجموعات الاقتراحات 7 على الأكثر واحد على الأقل ‫50 على الأكثر (ArticleEntity أو EventEntity أو LodgingEntity أو StoreEntity أو PointOfInterestEntity)
مجموعة الحجوزات شعار واحد كحدّ أقصى واحد على الأقل ‫20 على الأكثر (RestaurantReservationEntity أو EventReservationEntity أو LodgingReservationEntity أو TransportationReservationEntity أو VehicleRentalReservationEntity)
المجموعة المميزة شعار واحد كحدّ أقصى واحد على الأقل 20 على الأكثر (GenericFeaturedEntity)
مجموعة "مواصلة البحث" شعار واحد كحدّ أقصى واحد على الأقل 3 على الأكثر (PointOfInterestEntity)

الخطوة 1: تقديم بيانات المؤسسة

حدّدت حزمة تطوير البرامج (SDK) عناصر مختلفة لتمثيل كل نوع من أنواع العناصر. نوفّر الدعم للكيانات التالية ضمن فئة "السفر والفعاليات":

  1. GenericFeaturedEntity
  2. ArticleEntity
  3. EventEntity
  4. LodgingEntity
  5. StoreEntity
  6. PointOfInterestEntity
  7. RestaurantReservationEntity
  8. EventReservationEntity
  9. LodgingReservationEntity
  10. TransportationReservationEntity
  11. VehicleRentalReservationEntity

توضّح الرسومات البيانية أدناه السمات والمتطلبات المتاحة لكل نوع.

GenericFeaturedEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
صور الملصقات مطلوب

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

ملاحظة: في حال توفير شارة، احرص على توفير مساحة آمنة تبلغ 24 وحدة بكسل مستقلة الكثافة في أعلى الصورة وأسفلها.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
العنوان اختياري تمثّل هذه السمة عنوان الجهة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 50 حرفًا

الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

الشارات اختياري

تتألف كل شارة إما من نص حر (15 حرفًا كحد أقصى) أو صورة صغيرة.

معالجة خاصة لتجربة المستخدم في أعلى الصورة أو الفيديو، مثلاً، كتراكب شارة على الصورة

  • "تحديث مباشر"
  • مدة قراءة المقالة
شارة - نص اختياري

عنوان الشارة

ملاحظة: يجب إدخال نص أو صورة للشارة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 15 حرفًا كحدّ أقصى

شارة - صورة اختياري

صورة صغيرة

معاملة خاصة لتجربة المستخدم، مثلاً كطبقة شارة على الصورة المصغّرة للصورة أو الفيديو

ملاحظة: يجب إدخال نص أو صورة للشارة

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
فئات المحتوى اختياري تصف هذه السمة فئة المحتوى في العنصر.

قائمة عمليات التعداد

راجِع قسم فئة المحتوى للحصول على إرشادات.

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

ArticleEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 50 حرفًا كحد أقصى

صور الملصقات اختياري

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

ملاحظة: ننصح بشدة بإضافة صورة. في حال توفير شارة، احرص على توفير مساحة آمنة تبلغ 24 وحدة بكسل مستقل الكثافة (dp) في أعلى الصورة وأسفلها.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
المصدر - العنوان اختياري تمثّل هذه السمة اسم المؤلف أو المؤسسة أو المراسل.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 25 حرفًا

المصدر - الصورة اختياري صورة المصدر، مثل المؤلف أو المؤسسة أو المراسل للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

الشارات اختياري

تتألف كل شارة إما من نص حر (15 حرفًا كحد أقصى) أو صورة صغيرة.

معالجة خاصة لتجربة المستخدم في أعلى الصورة أو الفيديو، مثلاً، كتراكب شارة على الصورة

  • "تحديث مباشر"
  • مدة قراءة المقالة
شارة - نص اختياري

عنوان الشارة

ملاحظة: يجب إدخال نص أو صورة للشارة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 15 حرفًا كحدّ أقصى

شارة - صورة اختياري

صورة صغيرة

معاملة خاصة لتجربة المستخدم، مثلاً كطبقة شارة على الصورة المصغّرة للصورة أو الفيديو

ملاحظة: يجب إدخال نص أو صورة للشارة

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
وقت نشر المحتوى اختياري هذا هو الطابع الزمني للحقبة بالملّي ثانية عند نشر المحتوى أو تعديله في التطبيق. الطابع الزمني لحقبة Unix بالملّي ثانية
آخر وقت للتفاعل اختياري

الطابع الزمني للحقبة بالمللي ثانية عندما تفاعل المستخدِم مع هذا العنصر آخر مرّة.

الطابع الزمني لحقبة Unix بالملّي ثانية
النسبة المئوية لمستوى التقدّم اختياري

تمثّل هذه السمة النسبة المئوية للمحتوى الكامل الذي استهلكه المستخدم حتى الآن.

قيمة عدد صحيح تتراوح بين 0 و100 ضِمنًا.
فئات المحتوى اختياري تصف هذه السمة فئة المحتوى في العنصر.

قائمة عمليات التعداد

راجِع قسم فئة المحتوى للحصول على إرشادات.

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

EventEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

سلسلة

حجم النص المقترَح: 50 حرفًا كحد أقصى

وقت البدء المعدَّل بما يناسب السوق المحلية - الطابع الزمني مطلوب

الطابع الزمني لوقت بدء الحدث المتوقّع.

Joda-Time Instant
وقت البدء المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب

المنطقة الزمنية التي من المتوقّع أن يبدأ فيها الحدث.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

وضع الحدث مطلوب

حقل لتحديد ما إذا كانت الفعالية ستكون افتراضية أو بالحضور الشخصي أو كليهما

قيم التعداد: VIRTUAL أو IN_PERSON أو HYBRID
صور الملصقات مطلوب

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

ملاحظة: ننصح بشدة بإضافة صورة. في حال توفير شارة، احرص على توفير مساحة آمنة تبلغ 24 وحدة بكسل مستقل الكثافة (dp) في أعلى الصورة وأسفلها.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الموقع الجغرافي - البلد مطلوب بشكل مشروط

البلد الذي سيُقام فيه الحدث

ملاحظة: هذا الحقل مطلوب للأحداث التي تكون IN_PERSON أو HYBRID

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - المدينة مطلوب بشكل مشروط

تمثّل هذه السمة المدينة التي ستقام فيها الفعالية.

ملاحظة: هذا الحقل مطلوب للأحداث التي تكون IN_PERSON أو HYBRID

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عرض العنوان مطلوب بشكل مشروط

تمثّل هذه السمة عنوان المكان أو اسم الموقع الجغرافي الذي ستقام فيه الفعالية، ويجب أن يظهر للمستخدم.

ملاحظة: هذا الحقل مطلوب للأحداث التي تكون IN_PERSON أو HYBRID

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) للموقع الجغرافي الذي سيستضيف الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) التي ستُقام فيها الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) للموقع الجغرافي الذي تقام فيه الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الحي اختياري تمثّل هذه السمة الحي (إذا كان ذلك منطبقًا) الذي ستقام فيه الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

وقت الانتهاء اختياري

الطابع الزمني لوقت بدء الحقبة الذي من المتوقّع أن ينتهي فيه الحدث

ملاحظة: سيتم تمثيل هذا الوقت بالملّي ثانية.

الطابع الزمني لحقبة Unix بالملّي ثانية
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

الشارات اختياري

تتألف كل شارة إما من نص حر (15 حرفًا كحد أقصى) أو صورة صغيرة.

شارة - نص اختياري

عنوان الشارة

ملاحظة: يجب إدخال نص أو صورة للشارة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 15 حرفًا كحدّ أقصى

شارة - صورة اختياري

صورة صغيرة

معاملة خاصة لتجربة المستخدم، مثلاً كطبقة شارة على الصورة المصغّرة للصورة أو الفيديو

ملاحظة: يجب إدخال نص أو صورة للشارة

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
السعر - CurrentPrice مطلوب بشكل مشروط

تمثّل هذه السمة السعر الحالي للتذكرة أو البطاقة الخاصة بالفعالية.

يجب توفيرها إذا تم توفير السعر الأصلي المشطوب.

حقل التعبئة النصّية الحرّة
السعر - StrikethroughPrice اختياري تمثّل هذه السمة السعر الأصلي للتذكرة أو البطاقة الخاصة بالفعالية. حقل التعبئة النصّية الحرّة
وسيلة شرح السعر اختياري وسيلة شرح السعر لعرض عرض ترويجي أو حدث أو خصم للمشتركين، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا)

فئات المحتوى اختياري تصف هذه السمة فئة المحتوى في العنصر.

قائمة التعدادات المؤهَّلة

  • TYPE_MOVIES_AND_TV_SHOWS (مثال: سينما)
  • TYPE_DIGITAL_GAMES (مثال: الرياضات الإلكترونية)
  • TYPE_MUSIC (مثال: حفل موسيقي)
  • ‫TYPE_TRAVEL_AND_LOCAL (مثال: جولة، مهرجان)
  • ‫TYPE_HEALTH_AND_FITENESS (مثال: صف يوغا)
  • TYPE_EDUCATION (مثال - صف)
  • ‫TYPE_SPORTS (مثال: مباراة كرة قدم)
  • TYPE_DATING (مثال: لقاء)

راجِع قسم فئة المحتوى للحصول على إرشادات.

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

LodgingEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

سلسلة

حجم النص المقترَح: 50 حرفًا كحد أقصى

صور الملصقات مطلوب

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

ملاحظة: في حال توفير شارة، احرص على توفير مساحة آمنة تبلغ 24 وحدة بكسل مستقلة الكثافة في أعلى الصورة وأسفلها.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الموقع الجغرافي - البلد مطلوب تمثّل هذه السمة البلد الذي يتم فيه توفير مكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - المدينة مطلوب تمثّل هذه السمة المدينة التي يقع فيها مكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عرض العنوان مطلوب تمثّل هذه السمة العنوان الذي سيتم عرضه للمستخدم. ننصحك بتضمين اسم المدينة وربما الولاية أو البلد في معظم حالات الاستخدام. لا تدرِج عنوان الشارع أو الحي إلا إذا كان المستخدم بالقرب من الموقع الجغرافي أو كان على دراية بالموقع الجغرافي أو كانت المدينة مضمّنة في عنوان المجموعة. إذا أدرجت عنوان الشارع، قدِّم عنوانًا موجزًا، واستخدِم الاختصارات حيثما أمكن ذلك (على سبيل المثال، "ش" بدلاً من "شارع"، و"ج" بدلاً من "جادة").

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) لمكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) التي يقع فيها مكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) لمكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الحي اختياري تمثّل هذه السمة الحي الذي يقع فيه مكان الإقامة (إذا كان ذلك منطبقًا).

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الشارات اختياري

تتألف كل شارة إما من نص حر (15 حرفًا كحد أقصى) أو صورة صغيرة.

شارة - نص اختياري

عنوان الشارة

ملاحظة: يجب إدخال نص أو صورة للشارة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 15 حرفًا كحدّ أقصى

شارة - صورة اختياري

صورة صغيرة

معاملة خاصة لتجربة المستخدم، مثلاً كطبقة شارة على الصورة المصغّرة للصورة أو الفيديو

ملاحظة: يجب إدخال نص أو صورة للشارة

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

‫AvailabilityTimeWindow - وقت البدء مترجَم - طابع زمني اختياري الطابع الزمني لنظام يونكس الذي يُتوقّع أن يكون المكان المخصّص للاستئجار مفتوحًا/متاحًا فيه. Joda-Time Instant
‫AvailabilityTimeWindow - وقت البدء المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية اختياري تمثّل هذه السمة المنطقة الزمنية التي من المتوقّع أن يكون فيها المكان المخصّص للاستئجار مفتوحًا أو متاحًا.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

AvailabilityTimeWindow - Localized End Time - Timestamp اختياري الطابع الزمني لنظام يونكس الذي يُتوقّع أن يبقى مكان الإقامة مفتوحًا/متاحًا حتى حلوله. Joda-Time Instant
AvailabilityTimeWindow - Localized End Time - Timezone اختياري تمثّل هذه السمة المنطقة الزمنية التي من المتوقّع أن يكون فيها المكان المخصّص للاستئجار مفتوحًا أو متاحًا.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

التقييم - الحد الأقصى للقيمة اختياري

تمثّل هذه السمة الحد الأقصى لمقياس التقييم.

يجب توفيرها إذا تم توفير القيمة الحالية للتقييم أيضًا.

الرقم >= 0.0
التقييم - القيمة الحالية اختياري

القيمة الحالية لمقياس التقييم

يجب توفيرها إذا تم توفير القيمة القصوى للتقييم أيضًا.

الرقم >= 0.0
التقييم - العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالمكان المخصّص للاستئجار.

ملاحظة: يجب توفير هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرض هذه المعلومات للمستخدمين. قدِّم السلسلة الموجزة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد 1,000,000، ننصحك باستخدام اختصارات مثل 1 مليون، كي لا يتم اقتطاعه عند عرضها بأحجام أصغر.

سلسلة
التقييم - قيمة العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالمكان المخصّص للاستئجار.

ملاحظة: يجب توفير هذه السمة إذا كنت لا تريد التعامل مع منطق الاختصار المعروض بنفسك. في حال توفّر كلّ من "العدد" و"قيمة العدد"، سنستخدم "العدد" لعرضه للمستخدمين.

الصيغة الطويلة
السعر - CurrentPrice مطلوب بشكل مشروط

تمثّل هذه السمة السعر الحالي للمكان المخصّص للاستئجار.

يجب توفيرها إذا تم توفير السعر الأصلي المشطوب.

حقل التعبئة النصّية الحرّة
السعر - StrikethroughPrice اختياري تمثّل هذه السمة السعر الأصلي لمكان الإقامة، وسيظهر مشطوبًا في واجهة المستخدم. حقل التعبئة النصّية الحرّة
وسيلة شرح السعر اختياري وسيلة شرح السعر لعرض عرض ترويجي أو حدث أو خصم للمشتركين، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا)

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

StoreEntity

يمثّل العنصر StoreEntity متجرًا فرديًا يريد شركاء المطوّرين نشره، مثل مكان شهير لتناول الطعام أو مطعم ذي صلة بتجربة السفر.

السمة المتطلبات الوصف التنسيق
صور الملصقات مطلوب يجب تقديم صورة واحدة على الأقل. للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان اختياري تمثّل هذه السمة اسم المتجر.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف في النص الطويل جدًا)

الموقع الجغرافي اختياري تمثّل هذه السمة الموقع الجغرافي للمتجر.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف في النص الطويل جدًا)

وسيلة الشرح اختياري عبارة توضيحية لعرض عرض ترويجي أو حدث أو آخر الأخبار عن المتجر، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف في النص الطويل جدًا)

Callout fine print اختياري نص الأحكام والشروط الدقيقة لوسيلة الشرح.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف في النص الطويل جدًا)

الوصف اختياري تمثّل هذه السمة وصفًا للمتجر.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 90 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا)

الفئة اختياري

فئة المتجر، وفي سياق أماكن تناول الطعام، يمكن أن تكون مطبخًا مثل "فرنسي" أو "أمريكي جديد" أو "رامن" أو "مطعم فاخر".

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد يتم عرض علامات حذف إذا كان النص طويلاً جدًا)

التقييم - الحد الأقصى للقيمة اختياري

تمثّل هذه السمة الحد الأقصى لمقياس التقييم.

يجب توفيرها إذا تم توفير القيمة الحالية للتقييم أيضًا.

الرقم >= 0.0
التقييم - القيمة الحالية اختياري

القيمة الحالية لمقياس التقييم

يجب توفيرها إذا تم توفير القيمة القصوى للتقييم أيضًا.

الرقم >= 0.0
التقييم - العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالمكان المخصّص للاستئجار.

ملاحظة: يجب توفير هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرض هذه المعلومات للمستخدمين. قدِّم السلسلة الموجزة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد 1,000,000، ننصحك باستخدام اختصارات مثل 1 مليون، كي لا يتم اقتطاعه عند عرضها بأحجام أصغر.

سلسلة
التقييم - قيمة العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالمكان المخصّص للاستئجار.

ملاحظة: يجب توفير هذه السمة إذا كنت لا تريد التعامل مع منطق الاختصار المعروض بنفسك. في حال توفّر كلّ من "العدد" و"قيمة العدد"، سنستخدم "العدد" لعرضه للمستخدمين.

الصيغة الطويلة
DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

PointOfInterestEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

سلسلة

حجم النص المقترَح: 50 حرفًا كحد أقصى

صور الملصقات مطلوب بشكل مشروط

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

ملاحظة: الصورة مطلوبة إذا كان العنصر جزءًا من مجموعة اقتراحات. في حال توفير شارة، تأكَّد من توفير مساحة آمنة تبلغ 24 وحدة بكسل مستقلة الكثافة في أعلى الصورة وأسفلها.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
آخر وقت للتفاعل مطلوب بشكل مشروط

الطابع الزمني للحقبة عند آخر تفاعل للمستخدم مع هذا العنصر.

ملاحظة: هذا الحقل مطلوب إذا كان العنصر جزءًا من مجموعة نتائج البحث المتواصل.

Joda-Time Instant
الموقع الجغرافي - البلد مطلوب بشكل مشروط

البلد الذي تحدث فيه نقطة الاهتمام

ملاحظة: هذا الحقل مطلوب إذا كان العنصر جزءًا من مجموعة اقتراحات.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - المدينة مطلوب بشكل مشروط

المدينة التي تقع فيها نقطة الاهتمام.

ملاحظة: هذا الحقل مطلوب إذا كان العنصر جزءًا من مجموعة اقتراحات.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عرض العنوان مطلوب بشكل مشروط

تمثّل هذه السمة العنوان الذي سيتم عرضه للمستخدم. قدِّم عنوانًا موجزًا، واستخدِم الاختصارات حيثما أمكن ذلك (على سبيل المثال، "ش" بدلاً من "شارع"، و"ج" بدلاً من "جادة"). قد يتم اقتطاع هذه السلسلة استنادًا إلى جهاز المستخدم وإعداداته. يجب تضمين اسم المدينة لتحديد الموقع الجغرافي بوضوح.

ملاحظة: هذا الحقل مطلوب إذا كان العنصر جزءًا من مجموعة اقتراحات.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 35 حرفًا كحد أقصى

الموقع الجغرافي - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) لنقطة الاهتمام.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) التي يقع فيها نقطة الاهتمام.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) لنقطة الاهتمام.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الحي اختياري تمثّل هذه السمة الحي (إذا كان ذلك منطبقًا) الذي تقع فيه نقطة الاهتمام.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

‫AvailabilityTimeWindow - وقت البدء المعدَّل بما يناسب السوق المحلية - الطابع الزمني اختياري الطابع الزمني لنظام يونكس عند توقُّع فتح/إتاحة نقطة الاهتمام. Joda-Time Instant
‫AvailabilityTimeWindow - وقت البدء المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية اختياري تمثّل هذه السمة المنطقة الزمنية التي من المتوقّع أن تكون فيها نقطة الاهتمام مفتوحة أو متاحة.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

AvailabilityTimeWindow - Localized End Time - Timestamp اختياري الطابع الزمني للحقبة الذي من المتوقّع أن تبقى عنده نقطة الاهتمام مفتوحة أو متاحة. Joda-Time Instant
AvailabilityTimeWindow - Localized End Time - Timezone اختياري تمثّل هذه السمة المنطقة الزمنية التي من المتوقّع أن تكون فيها نقطة الاهتمام مفتوحة أو متاحة.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

الشارات اختياري

تتألف كل شارة إما من نص حر (15 حرفًا كحد أقصى) أو صورة صغيرة.

شارة - نص اختياري

عنوان الشارة

ملاحظة: يجب إدخال نص أو صورة للشارة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 15 حرفًا كحدّ أقصى

شارة - صورة اختياري

صورة صغيرة

معاملة خاصة لتجربة المستخدم، مثلاً كطبقة شارة على الصورة المصغّرة للصورة أو الفيديو

ملاحظة: يجب إدخال نص أو صورة للشارة

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

التقييم - الحد الأقصى للقيمة اختياري

تمثّل هذه السمة الحد الأقصى لمقياس التقييم.

يجب توفيرها إذا تم توفير القيمة الحالية للتقييم أيضًا.

الرقم >= 0.0
التقييم - القيمة الحالية اختياري

القيمة الحالية لمقياس التقييم

يجب توفيرها إذا تم توفير القيمة القصوى للتقييم أيضًا.

الرقم >= 0.0
التقييم - العدد اختياري

تمثّل هذه السمة عدد التقييمات لنقطة الاهتمام.

ملاحظة: يجب توفير هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرض هذه المعلومات للمستخدمين. قدِّم السلسلة الموجزة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد 1,000,000، ننصحك باستخدام اختصارات مثل 1 مليون، كي لا يتم اقتطاعه عند عرضها بأحجام أصغر.

سلسلة
التقييم - قيمة العدد اختياري

تمثّل هذه السمة عدد التقييمات لنقطة الاهتمام.

ملاحظة: يجب توفير هذه السمة إذا كنت لا تريد التعامل مع منطق الاختصار المعروض بنفسك. في حال توفّر كلّ من "العدد" و"قيمة العدد"، سنستخدم "العدد" لعرضه للمستخدمين.

الصيغة الطويلة
السعر - CurrentPrice مطلوب بشكل مشروط

تمثّل هذه السمة السعر الحالي للتذاكر أو بطاقة الدخول إلى نقطة الاهتمام.

يجب توفيرها إذا تم توفير السعر الأصلي المشطوب.

حقل التعبئة النصّية الحرّة
السعر - StrikethroughPrice اختياري تمثّل هذه السمة السعر الأصلي للتذاكر أو بطاقة الدخول إلى نقطة الاهتمام. حقل التعبئة النصّية الحرّة
وسيلة شرح السعر اختياري وسيلة شرح السعر لعرض عرض ترويجي أو حدث أو خصم للمشتركين، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد يؤدي النص الطويل جدًا إلى عرض علامات حذف)

فئات المحتوى اختياري تصف هذه السمة فئة المحتوى في العنصر.

قائمة التعدادات المؤهَّلة

  • TYPE_TRAVEL_AND_LOCAL
  • ‫TYPE_MOVIES_AND_TV_SHOWS (مثال: مسرح)
  • TYPE_MEDICAL (مثال: مستشفى)
  • TYPE_EDUCATION (مثال: مدرسة)
  • ‫TYPE_SPORTS (مثال: ملعب)

راجِع قسم فئة المحتوى للحصول على إرشادات.

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

RestaurantReservationEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

سلسلة

حجم النص المقترَح: 50 حرفًا كحد أقصى

الطابع الزمني لوقت بدء الحجز المعدَّل بما يناسب السوق المحلية مطلوب الطابع الزمني لوقت بدء الحجز المتوقّع. Joda-Time Instant
وقت بدء الحجز المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب المنطقة الزمنية التي من المتوقّع أن يبدأ فيها الحجز

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

الموقع الجغرافي - البلد مطلوب البلد الذي يقع فيه المطعم

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - المدينة مطلوب المدينة التي يقع فيها المطعم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عرض العنوان مطلوب تمثّل هذه السمة عنوان المطعم الذي سيتم عرضه للمستخدم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) للمطعم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) التي يقع فيها المطعم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي للمطعم (إذا كان ذلك منطبقًا).

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الحي اختياري تمثّل هذه السمة الحي الذي يقع فيه المطعم (إذا كان ذلك منطبقًا).

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

صور الملصقات اختياري سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9 للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

حجم الجدول اختياري عدد الأشخاص في مجموعة الحجز عدد صحيح > 0
DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

EventReservationEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

سلسلة

حجم النص المقترَح: 50 حرفًا كحد أقصى

وقت البدء المعدَّل بما يناسب السوق المحلية - الطابع الزمني مطلوب

الطابع الزمني لوقت بدء الحدث المتوقّع.

Joda-Time Instant
وقت البدء المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب

المنطقة الزمنية التي من المتوقّع أن يبدأ فيها الحدث.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

وضع الحدث مطلوب

حقل لتحديد ما إذا كانت الفعالية ستكون افتراضية أو بالحضور الشخصي أو كليهما

قيم التعداد: VIRTUAL أو IN_PERSON أو HYBRID
الموقع الجغرافي - البلد مطلوب بشكل مشروط

البلد الذي سيُقام فيه الحدث

ملاحظة: هذا الحقل مطلوب للأحداث التي تكون IN_PERSON أو HYBRID

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - المدينة مطلوب بشكل مشروط

تمثّل هذه السمة المدينة التي ستقام فيها الفعالية.

ملاحظة: هذا الحقل مطلوب للأحداث التي تكون IN_PERSON أو HYBRID

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عرض العنوان مطلوب بشكل مشروط

تمثّل هذه السمة عنوان المكان أو اسم الموقع الجغرافي الذي ستقام فيه الفعالية، ويجب أن يظهر للمستخدم.

ملاحظة: هذا الحقل مطلوب للأحداث التي تكون IN_PERSON أو HYBRID

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) للموقع الجغرافي الذي سيستضيف الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) التي ستُقام فيها الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) للموقع الجغرافي الذي تقام فيه الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الحي اختياري تمثّل هذه السمة الحي (إذا كان ذلك منطبقًا) الذي ستقام فيه الفعالية.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

صور الملصقات اختياري

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

ملاحظة: ننصح بشدة بإضافة صورة. في حال توفير شارة، احرص على توفير مساحة آمنة تبلغ 24 وحدة بكسل مستقل الكثافة (dp) في أعلى الصورة وأسفلها.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
وقت الانتهاء المعدَّل بما يناسب السوق المحلية - الطابع الزمني اختياري

الطابع الزمني لوقت بدء الحقبة الذي من المتوقّع أن ينتهي فيه الحدث

Joda-Time Instant
وقت الانتهاء المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية اختياري

المنطقة الزمنية التي من المتوقّع أن ينتهي فيها الحدث

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

مقدّم الخدمة - الاسم اختياري

تمثّل هذه السمة اسم مقدّم الخدمة.

ملاحظة:يجب توفير نص أو صورة لمزوّد الخدمة.

نص حر على سبيل المثال، اسم منظّم الفعالية أو الجولة
مقدّم الخدمة - صورة اختياري

تمثّل هذه السمة شعار مقدّم الخدمة أو صورته.

ملاحظة:يجب توفير نص أو صورة لمزوّد الخدمة.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

الشارات اختياري

تتألف كل شارة إما من نص حر (15 حرفًا كحد أقصى) أو صورة صغيرة.

شارة - نص اختياري

عنوان الشارة

ملاحظة: يجب إدخال نص أو صورة للشارة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 15 حرفًا كحدّ أقصى

شارة - صورة اختياري

صورة صغيرة

معاملة خاصة لتجربة المستخدم، مثلاً كطبقة شارة على الصورة المصغّرة للصورة أو الفيديو

ملاحظة: يجب إدخال نص أو صورة للشارة

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
معرّف الحجز اختياري تمثّل هذه السمة رقم تعريف الحجز الخاص بحجز الحدث. حقل التعبئة النصّية الحرّة
السعر - CurrentPrice مطلوب بشكل مشروط

تمثّل هذه السمة السعر الحالي للتذكرة أو البطاقة الخاصة بالفعالية.

يجب توفيرها إذا تم توفير السعر الأصلي المشطوب.

حقل التعبئة النصّية الحرّة
السعر - StrikethroughPrice اختياري تمثّل هذه السمة السعر الأصلي للتذكرة أو البطاقة الخاصة بالفعالية. حقل التعبئة النصّية الحرّة
وسيلة شرح السعر اختياري وسيلة شرح السعر لعرض عرض ترويجي أو حدث أو خصم للمشتركين، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا)

التقييم - الحد الأقصى للقيمة اختياري

تمثّل هذه السمة الحد الأقصى لمقياس التقييم.

يجب توفيرها إذا تم توفير القيمة الحالية للتقييم أيضًا.

الرقم >= 0.0
التقييم - القيمة الحالية اختياري

القيمة الحالية لمقياس التقييم

يجب توفيرها إذا تم توفير القيمة القصوى للتقييم أيضًا.

الرقم >= 0.0
التقييم - العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالحدث.

ملاحظة: يجب توفير هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرض هذه المعلومات للمستخدمين. قدِّم السلسلة الموجزة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد 1,000,000، ننصحك باستخدام اختصارات مثل 1 مليون، كي لا يتم اقتطاعه عند عرضها بأحجام أصغر.

سلسلة
التقييم - قيمة العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالحدث.

ملاحظة: يجب توفير هذه السمة إذا كنت لا تريد التعامل مع منطق الاختصار المعروض بنفسك. في حال توفّر كلّ من "العدد" و"قيمة العدد"، سنستخدم "العدد" لعرضه للمستخدمين.

الصيغة الطويلة
فئات المحتوى اختياري تصف هذه السمة فئة المحتوى في العنصر.

قائمة التعدادات المؤهَّلة

  • TYPE_MOVIES_AND_TV_SHOWS (مثال: سينما)
  • TYPE_DIGITAL_GAMES (مثال: الرياضات الإلكترونية)
  • TYPE_MUSIC (مثال: حفل موسيقي)
  • ‫TYPE_TRAVEL_AND_LOCAL (مثال: جولة، مهرجان)
  • ‫TYPE_HEALTH_AND_FITENESS (مثال: صف يوغا)
  • TYPE_EDUCATION (مثال - صف)
  • ‫TYPE_SPORTS (مثال: مباراة كرة قدم)
  • TYPE_DATING (مثال: لقاء)

راجِع قسم فئة المحتوى للحصول على إرشادات.

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

LodgingReservationEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

نص حر على سبيل المثال، "إقامتك من 12 كانون الأول (ديسمبر)"

حجم النص المقترَح: 50 حرفًا كحد أقصى

وقت تسجيل الوصول المعدَّل بما يناسب السوق المحلية - الطابع الزمني مطلوب تمثّل هذه السمة الطابع الزمني لنظام يونكس الذي يحدّد وقت تسجيل الوصول للحجز. Joda-Time Instant
وقت تسجيل الوصول المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب المنطقة الزمنية التي يتوفّر فيها وقت تسجيل الوصول للحجز

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

وقت تسجيل المغادرة المعدَّل بما يناسب السوق المحلية - الطابع الزمني مطلوب الطابع الزمني لنظام التشغيل Unix الذي يمثّل وقت تسجيل المغادرة للحجز. Joda-Time Instant
وقت تسجيل المغادرة المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب تمثّل هذه السمة المنطقة الزمنية التي يقع فيها وقت تسجيل المغادرة للحجز.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

الموقع الجغرافي - البلد مطلوب تمثّل هذه السمة البلد الذي يقع فيه مكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - المدينة مطلوب تمثّل هذه السمة المدينة التي يقع فيها مكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - عرض العنوان مطلوب تمثّل هذه السمة العنوان الذي سيتم عرضه للمستخدم. قدِّم عنوانًا موجزًا، واستخدِم الاختصارات حيثما أمكن ذلك (على سبيل المثال، "شارع" بدلاً من "شارع"، و"جادة" بدلاً من "جادة"). قد يتم اقتطاع هذه السلسلة استنادًا إلى جهاز المستخدم وإعداداته. أدرِج اسم المدينة لتحديد الموقع الجغرافي بوضوح.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 35 حرفًا كحد أقصى

الموقع الجغرافي - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) لمكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) التي يقع فيها مكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) لمكان الإقامة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

الموقع الجغرافي - الحي اختياري تمثّل هذه السمة الحي الذي يقع فيه مكان الإقامة (إذا كان ذلك منطبقًا).

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

صور الملصقات اختياري

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

ملاحظة: في حال توفير شارة، احرص على توفير مساحة آمنة تبلغ 24 وحدة بكسل مستقلة الكثافة في أعلى الصورة وأسفلها.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

معرّف الحجز اختياري رقم تعريف الحجز في مكان الإقامة حقل التعبئة النصّية الحرّة
التقييم - الحد الأقصى للقيمة اختياري

تمثّل هذه السمة الحد الأقصى لمقياس التقييم.

يجب توفيرها إذا تم توفير القيمة الحالية للتقييم أيضًا.

الرقم >= 0.0
التقييم - القيمة الحالية اختياري

القيمة الحالية لمقياس التقييم

يجب توفيرها إذا تم توفير القيمة القصوى للتقييم أيضًا.

الرقم >= 0.0
التقييم - العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالمكان المخصّص للاستئجار.

ملاحظة: يجب توفير هذا الحقل إذا كان تطبيقك يريد التحكّم في طريقة عرض هذه المعلومات للمستخدمين. قدِّم السلسلة الموجزة التي يمكن عرضها للمستخدم. على سبيل المثال، إذا كان العدد 1,000,000، ننصحك باستخدام اختصارات مثل 1 مليون، كي لا يتم اقتطاعه عند عرضها بأحجام أصغر.

سلسلة
التقييم - قيمة العدد اختياري

تمثّل هذه السمة عدد التقييمات الخاصة بالمكان المخصّص للاستئجار.

ملاحظة: يجب توفير هذه السمة إذا كنت لا تريد التعامل مع منطق الاختصار المعروض بنفسك. في حال توفّر كلّ من "العدد" و"قيمة العدد"، سنستخدم "العدد" لعرضه للمستخدمين.

الصيغة الطويلة
السعر - CurrentPrice مطلوب بشكل مشروط

تمثّل هذه السمة السعر الحالي للمكان المخصّص للاستئجار.

يجب توفيرها إذا تم توفير السعر الأصلي المشطوب.

حقل التعبئة النصّية الحرّة
السعر - StrikethroughPrice اختياري تمثّل هذه السمة السعر الأصلي لمكان الإقامة، وسيظهر مشطوبًا في واجهة المستخدم. حقل التعبئة النصّية الحرّة
وسيلة شرح السعر اختياري وسيلة شرح السعر لعرض عرض ترويجي أو حدث أو خصم للمشتركين، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا)

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

TransportationReservationEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

نص حر على سبيل المثال، "من سان فرانسيسكو إلى سان دييغو"

حجم النص المقترَح: 50 حرفًا كحد أقصى

نوع وسيلة النقل مطلوب تمثّل هذه السمة وسيلة النقل أو نوعها للحجز. قيم التعداد: FLIGHT أو TRAIN أو BUS أو FERRY
الطابع الزمني لوقت المغادرة المعدَّل بما يناسب السوق المحلية مطلوب الطابع الزمني للحقبة الذي يمثّل وقت المغادرة. Joda-Time Instant
وقت المغادرة المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب تمثّل هذه السمة المنطقة الزمنية لوقت المغادرة.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

الطابع الزمني لوقت الوصول المعدَّل بما يناسب السوق المحلية مطلوب الطابع الزمني للحقبة الذي يمثّل وقت الوصول. Joda-Time Instant
وقت الوصول المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب تمثّل هذه السمة المنطقة الزمنية لوقت الوصول.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

رقم النقل مطلوب رقم الرحلة الجوية أو الحافلة أو القطار أو العبّارة/السفينة حقل التعبئة النصّية الحرّة
وقت الصعود إلى الطائرة المعدَّل بما يناسب السوق المحلية - الطابع الزمني مطلوب تمثّل هذه السمة الطابع الزمني لنظام التشغيل Unix الذي يمثّل وقت الصعود إلى الطائرة للحجز (إذا كان ذلك منطبقًا). Joda-Time Instant
وقت الصعود إلى الطائرة المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب تمثّل هذه السمة المنطقة الزمنية لوقت الصعود إلى الطائرة للحجز (إذا كان ذلك منطبقًا).

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

موقع المغادرة - البلد اختياري بلد المغادرة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع المغادرة - المدينة اختياري مدينة المغادرة

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع المغادرة - عرض العنوان اختياري تمثّل هذه السمة الموقع الجغرافي للمغادرة الذي سيتم عرضه للمستخدم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع المغادرة - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) لموقع المغادرة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع المغادرة - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) لموقع المغادرة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع المغادرة - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) لموقع المغادرة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع المغادرة - الحي اختياري تمثّل هذه السمة الحي (إذا كان ذلك منطبقًا) لموقع المغادرة.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع الوصول الجغرافي - البلد اختياري بلد الوصول

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع الوصول - المدينة اختياري مدينة الوصول

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع الوصول - عنوان العرض اختياري تمثّل هذه السمة الموقع الجغرافي للوصول الذي سيتم عرضه للمستخدم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع الوصول - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) لموقع الوصول.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع الوصول - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) لموقع الوصول.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع الوصول - الرمز البريدي اختياري الرمز البريدي (إذا كان ذلك منطبقًا) لموقع الوصول

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

موقع الوصول - الحي اختياري تمثّل هذه السمة الحي (إذا كان ذلك منطبقًا) الذي يقع فيه موقع الوصول.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

مقدّم الخدمة - الاسم اختياري

تمثّل هذه السمة اسم مقدّم الخدمة.

ملاحظة:يجب توفير نص أو صورة لمزوّد الخدمة.

نص حر على سبيل المثال، اسم شركة الطيران
مقدّم الخدمة - صورة اختياري

تمثّل هذه السمة شعار مقدّم الخدمة أو صورته.

ملاحظة:يجب توفير نص أو صورة لمزوّد الخدمة.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
صور الملصقات اختياري

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

معرّف الحجز اختياري تمثّل هذه السمة معرّف الحجز الخاص بحجز وسيلة النقل. حقل التعبئة النصّية الحرّة
السعر - CurrentPrice مطلوب بشكل مشروط

تمثّل هذه السمة السعر الحالي للحجز.

يجب توفيرها إذا تم توفير السعر الأصلي المشطوب.

حقل التعبئة النصّية الحرّة
السعر - StrikethroughPrice اختياري تمثّل هذه السمة السعر الأصلي للحجز، وسيظهر مشطوبًا في واجهة المستخدم. حقل التعبئة النصّية الحرّة
وسيلة شرح السعر اختياري وسيلة شرح السعر لعرض عرض ترويجي أو حدث أو خصم للمشتركين، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا)

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

VehicleRentalReservationEntity

السمة المتطلبات الوصف التنسيق
Action Uri مطلوب

رابط لصفحة معيّنة في تطبيق مقدّم الخدمة

ملاحظة: يمكنك استخدام الروابط لصفحات في التطبيق لتحديد مصدر الإحالة. يُرجى الرجوع إلى الأسئلة الشائعة

معرّف موارد منتظم (URI)
العنوان مطلوب تمثّل هذه السمة عنوان الجهة.

نص حر على سبيل المثال، "Avis Union Square SF"

حجم النص المقترَح: 50 حرفًا كحد أقصى

وقت الاستلام المعدَّل بما يناسب السوق المحلية - الطابع الزمني مطلوب الطابع الزمني لنظام التشغيل Unix الذي يمثّل وقت استلام الحجز. Joda-Time Instant
وقت الاستلام المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية مطلوب تمثّل هذه السمة المنطقة الزمنية لوقت استلام الحجز.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

الطابع الزمني لوقت العودة المعدَّل بما يناسب السوق المحلية اختياري الطابع الزمني للحقبة الذي يمثّل وقت تسجيل المغادرة للحجز. Joda-Time Instant
وقت الإرجاع المعدَّل بما يناسب السوق المحلية - المنطقة الزمنية اختياري تمثّل هذه السمة المنطقة الزمنية لوقت تسجيل المغادرة في الحجز.

Joda-Time DateTimeZone

راجِع مواصفات المنطقة الزمنية للحصول على إرشادات.

عنوان الاستلام - البلد اختياري تمثّل هذه السمة بلد الموقع الجغرافي لاستلام الطلب.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

مدينة عنوان الاستلام اختياري تمثّل هذه السمة المدينة التي يقع فيها الموقع الجغرافي لاستلام الطلب.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الاستلام - عرض العنوان اختياري تمثّل هذه السمة موقع الاستلام الذي سيتم عرضه للمستخدم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الاستلام - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) للموقع الجغرافي لاستلام الطلب.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

ولاية عنوان الاستلام اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) التي يقع فيها الموقع الجغرافي لاستلام الطلب.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الاستلام - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) للموقع الجغرافي لاستلام الطلب.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الاستلام - الحي اختياري تمثّل هذه السمة الحي (إذا كان ذلك منطبقًا) الذي يقع فيه الموقع الجغرافي لاستلام الطلب.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الإرجاع - البلد اختياري تمثّل هذه السمة بلد الموقع الجغرافي لإرجاع السلع.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الإرجاع - المدينة اختياري تمثّل هذه السمة المدينة التي يقع فيها الموقع الجغرافي لإرجاع السلع.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الإرجاع - عنوان العرض اختياري تمثّل هذه السمة الموقع الجغرافي لإرجاع السلع الذي سيتم عرضه للمستخدم.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الإرجاع - عنوان الشارع اختياري تمثّل هذه السمة عنوان الشارع (إذا كان ذلك منطبقًا) للموقع الجغرافي لإرجاع السلع.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الإرجاع - الولاية اختياري تمثّل هذه السمة الولاية أو المقاطعة (إذا كان ذلك منطبقًا) للموقع الجغرافي لإرجاع السلع.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الإرجاع - الرمز البريدي اختياري تمثّل هذه السمة الرمز البريدي (إذا كان ذلك منطبقًا) للموقع الجغرافي لإرجاع السلع.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

عنوان الإرجاع - الحي اختياري تمثّل هذه السمة الحي (إذا كان ذلك منطبقًا) الذي يقع فيه الموقع الجغرافي لإرجاع السلع.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 20 حرفًا كحد أقصى

مقدّم الخدمة - الاسم اختياري

تمثّل هذه السمة اسم مقدّم الخدمة.

ملاحظة:يجب توفير نص أو صورة لمزوّد الخدمة.

نص حر على سبيل المثال، "تأجير السيارات من Avis"
مقدّم الخدمة - صورة اختياري

تمثّل هذه السمة شعار مقدّم الخدمة أو صورته.

ملاحظة:يجب توفير نص أو صورة لمزوّد الخدمة.

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
صور الملصقات اختياري

سنعرض صورة واحدة فقط عند تقديم صور متعددة. نسبة العرض إلى الارتفاع المقترَحة هي 16:9

للحصول على إرشادات، يُرجى الاطّلاع على مواصفات الصور.
الوصف اختياري

فقرة نصية واحدة لوصف العنصر

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: 180 حرفًا

قائمة العناوين الفرعية اختياري

ما يصل إلى 3 عناوين فرعية، كل عنوان فرعي عبارة عن سطر واحد من النص

ملاحظة: سيتم عرض قائمة الأوصاف أو قائمة العناوين الفرعية للمستخدم، وليس كليهما.

حقل التعبئة النصّية الحرّة

حجم النص المقترَح لكل ترجمة وشرح: 50 حرفًا كحد أقصى

معرّف التأكيد اختياري تمثّل هذه السمة رقم تعريف تأكيد حجز المركبة المستأجرة. حقل التعبئة النصّية الحرّة
السعر - CurrentPrice مطلوب بشكل مشروط

تمثّل هذه السمة السعر الحالي للحجز.

يجب توفيرها إذا تم توفير السعر الأصلي المشطوب.

حقل التعبئة النصّية الحرّة
السعر - StrikethroughPrice اختياري تمثّل هذه السمة السعر الأصلي للحجز، وسيظهر مشطوبًا في واجهة المستخدم. حقل التعبئة النصّية الحرّة
وسيلة شرح السعر اختياري وسيلة شرح السعر لعرض عرض ترويجي أو حدث أو خصم للمشتركين، إذا كان ذلك متاحًا

حقل التعبئة النصّية الحرّة

حجم النص المقترَح: أقل من 45 حرفًا (قد تظهر علامات حذف إذا كان النص طويلاً جدًا)

DisplayTimeWindow (اختياري): ضبط فترة زمنية لعرض المحتوى على مساحة العرض
الطابع الزمني للبدء اختياري

الطابع الزمني للحقبة الذي يجب أن يظهر بعده المحتوى على مساحة العرض.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية
الطابع الزمني للنهاية اختياري

يشير هذا الحقل إلى الطابع الزمني لوقت يونكس الذي يتوقف بعده عرض المحتوى على السطح.

في حال عدم ضبط هذه السمة، يكون المحتوى مؤهَّلاً للعرض على مساحة العرض.

الطابع الزمني لحقبة Unix بالملّي ثانية

مواصفات الصور

يتم إدراج المواصفات المطلوبة لمواد عرض الصور في هذا الجدول:

نسبة العرض إلى الارتفاع الحدّ الأدنى لعدد وحدات البكسل وحدات البكسل المقترَحة

مربّعة (1x1)

الخيارات المفضّلة

‫300×300 1200x1200
أفقية (1.91x1) 600x314 ‫1200x628
صورة عمودية (4x5) ‫480x600 ‫960x1200

يجب استضافة الصور على شبكات توصيل محتوى (CDN) عامة كي يتمكّن Google من الوصول إليها.

تنسيقات الملفات

‫PNG أو JPG أو GIF ثابت أو WebP

الحد الأقصى لحجم الملف

‫5,120 كيلوبايت

اقتراحات إضافية

  • مساحة القسم المهم في الصور: ضَع المحتوى المهم في الوسط ليشغل ‎80% من الصورة.
  • استخدِم خلفية شفافة حتى يمكن عرض الصورة بشكل صحيح في إعدادات المظهرَين الداكن والفاتح.

مواصفات المنطقة الزمنية

يُفضّل استخدام المعرّف (مثل "America/Los_Angeles") على الإزاحة (مثل "-07:00").

مثال على الاستخدام: DateTimeZone.forID("America/Los_Angeles")

فئة المحتوى

تسمح فئة المحتوى للتطبيقات بنشر محتوى ينتمي إلى فئات متعددة. يتم ربط المحتوى ببعض الفئات المحدّدة مسبقًا، وهي:

  • TYPE_EDUCATION
  • TYPE_SPORTS
  • TYPE_MOVIES_AND_TV_SHOWS
  • TYPE_BOOKS
  • TYPE_AUDIOBOOKS
  • TYPE_MUSIC
  • TYPE_DIGITAL_GAMES
  • TYPE_TRAVEL_AND_LOCAL
  • TYPE_HOME_AND_AUTO
  • TYPE_BUSINESS
  • TYPE_NEWS
  • TYPE_FOOD_AND_DRINK
  • TYPE_SHOPPING
  • TYPE_HEALTH_AND_FITENESS
  • TYPE_MEDICAL
  • TYPE_PARENTING
  • TYPE_DATING

يجب استضافة الصور على شبكات توصيل محتوى (CDN) عامة كي يتمكّن Google من الوصول إليها.

إرشادات استخدام فئات المحتوى

  1. بعض الكيانات، مثل ArticleEntity وGenericFeaturedEntity، مؤهَّلة لاستخدام أي من فئات المحتوى. بالنسبة إلى الكيانات الأخرى، مثل EventEntity وEventReservationEntity وPointOfInterestEntity، لا تكون سوى مجموعة فرعية من هذه الفئات مؤهَّلة. راجِع قائمة الفئات المؤهَّلة لنوع كيان قبل ملء القائمة.
  2. استخدِم نوع الكيان المحدّد لبعض فئات المحتوى بدلاً من استخدام مجموعة من الكيانات العامة وContentCategory:

    • ‫TYPE_MOVIES_AND_TV_SHOWS - اطّلِع على الكيانات من دليل تكامل "المشاهدة" قبل استخدام الكيانات العامة.
    • ‫TYPE_BOOKS - اطّلِع على EbookEntity قبل استخدام الكيانات العامة.
    • ‫TYPE_AUDIOBOOKS - اطّلِع على AudiobookEntity قبل استخدام الكيانات العامة.
    • TYPE_SHOPPING - Check out ShoppingEntity before using the generic entities.
    • ‫TYPE_FOOD_AND_DRINK: راجِع الكيانات من دليل دمج الطعام قبل استخدام الكيانات العامة.
  3. حقل ContentCategory اختياري ويجب تركه فارغًا إذا كان المحتوى لا ينتمي إلى أي من الفئات المذكورة سابقًا.

  4. في حال توفير فئات محتوى متعددة، يجب ترتيبها حسب مدى صلتها بالمحتوى، مع وضع فئة المحتوى الأكثر صلة في بداية القائمة.

الخطوة 2: تقديم بيانات المجموعة

ننصح بتنفيذ مهمة نشر المحتوى في الخلفية (على سبيل المثال، باستخدام WorkManager) وجدولتها بانتظام أو استنادًا إلى حدث معيّن (على سبيل المثال، في كل مرة يفتح فيها المستخدم التطبيق أو عندما يضيف المستخدم عنصرًا إلى سلّة التسوّق).

تتحمّل AppEngageTravelClient مسؤولية نشر المجموعات.

في ما يلي واجهات برمجة التطبيقات لنشر المجموعات في العميل:

  • isServiceAvailable
  • publishRecommendationClusters
  • publishFeaturedCluster
  • publishReservationCluster
  • publishContinueSearchCluster
  • publishUserAccountManagementRequest
  • updatePublishStatus
  • deleteRecommendationsClusters
  • deleteFeaturedCluster
  • deleteReservationCluster
  • deleteContinueSearchCluster
  • deleteUserManagementCluster
  • deleteClusters

isServiceAvailable

تُستخدَم واجهة برمجة التطبيقات هذه للتأكّد من أنّ الخدمة متاحة للدمج وما إذا كان يمكن عرض المحتوى على الجهاز.

يمكنك التحقّق من مدى توفّر الخدمة لكل نوع من أنواع المجموعات التي تريد نشرها. تقبل واجهة برمجة التطبيقات isServiceAvailable عنصر طلب، ServiceAvailabilityRequest، يحتوي على أنواع المجموعات التي يجب التحقّق من توفّر الخدمة لها. يمكنك العثور على قيم التعداد ClusterType المطلوبة لـ ServiceAvailabilityRequest في الجدول التالي.

نوع المجموعة ثابت نوع المجموعة قيمة العدد الصحيح
غير معروف TYPE_UNKNOWN 0
مجموعة الاقتراحات TYPE_RECOMMENDATION 1
المجموعة المميزة TYPE_FEATURED 2
مجموعة المتابعة TYPE_CONTINUATION 3
مجموعة إدارة المستخدمين TYPE_ENGAGEMENT 8
مجموعة الاشتراكات TYPE_SUBSCRIPTION 12
مجموعة "مواصلة البحث" TYPE_CONTINUE_SEARCH 13
مجموعة الحجوزات TYPE_RESERVATION 14

Kotlin

val request = ServiceAvailabilityRequest.Builder()
    .addIntendedClusterType(ClusterType.TYPE_CONTINUATION)
    .addIntendedClusterType(ClusterType.TYPE_RECOMMENDATION)
    .build()

client.isServiceAvailable(request).addOnCompleteListener { task ->
    if (task.isSuccessful) {
        val availabilityMap = task.result
        if (availabilityMap[ClusterType.TYPE_CONTINUATION] == true) {
            // Proceed with publishing continuation content
        }
        if (availabilityMap[ClusterType.TYPE_RECOMMENDATION] == true) {
            // Proceed with publishing recommendation content
        }
    } else {
        // The IPC call itself fails, proceed with error handling logic here,
        // such as retry.
    }
}

Java

ServiceAvailabilityRequest request =
    new ServiceAvailabilityRequest.Builder()
        .addIntendedClusterType(ClusterType.TYPE_CONTINUATION)
        .addIntendedClusterType(ClusterType.TYPE_RECOMMENDATION)
        .build();

client.isServiceAvailable(request).addOnCompleteListener(task -> {
    if (task.isSuccessful()) {
        Map<Integer, Boolean> availabilityMap = task.getResult();
        if (Boolean.TRUE.equals(availabilityMap.get(ClusterType.TYPE_CONTINUATION))) {
            // Proceed with publishing continuation content
        }
        if (Boolean.TRUE.equals(availabilityMap.get(ClusterType.TYPE_RECOMMENDATION))) {
            // Proceed with publishing recommendation content
        }
    } else {
        // The IPC call itself fails, proceed with error handling logic here,
        // such as retry.
    }
});
ميزة "توفّر الخدمة بشروط"

تطلب بعض التطبيقات المدمجة إعدادًا خاصًا يتيح تفعيل خدمة Engage وإيقافها بشكل متقطع من أجل خفض تكلفة عرضها. على الرغم من إمكانية استخدام استراتيجية تحليل المحتوى المتقطّع هذه، إلا أنّها تؤثر سلبًا في المستخدم والمنتج، إذ لن يتم عرض المحتوى القديم ولن يتم عرض بعض مساحات العرض على الإطلاق.

بدءًا من الإصدار 1.6.0، تتيح حزمة تطوير البرامج (SDK) الخاصة بمنصة Engage التحقّق من توفّر أنواع معيّنة من المجموعات. ويوفّر ذلك مرونة أكبر، فإذا اعتمد تطبيق معيّن استراتيجية المحتوى المتقطّع، يمكن أن تتّبع بعض أنواع المجموعات هذه الاستراتيجية المتقطّعة، بينما تكون أنواع المجموعات الأخرى مفعّلة دائمًا (أي مجموعات المحتوى المتسلسل).

إذا كان من المفترض ألا تكون خدمة Engage مفعّلة "باستمرار" على جميع الأجهزة المتوافقة لأي سبب، وتم ضبطها على الاستيعاب المتقطّع لأي مجموعة من الأجهزة، سيظلّ نشر جميع مجموعات المتابعة (مثل "الحجز" و"متابعة البحث") مفعّلاً حسب الإعداد التلقائي، وسيتم تفعيل بقية أنواع المجموعات وإيقافها بشكل متقطّع. إذا كان الاستيعاب المتقطّع ينطبق عليك ولكن هذا الإعداد التلقائي غير مناسب لاحتياجاتك، يُرجى التواصل مع engage-developers@google.com.

بالنسبة إلى إصدارات حزمة تطوير البرامج (SDK) الأقدم من الإصدار 1.6.0 (سيتم إيقافها نهائيًا)

Kotlin

client.isServiceAvailable.addOnCompleteListener { task ->
    if (task.isSuccessful) {
        // Handle IPC call success
        if(task.result) {
          // Service is available on the device, proceed with content publish
          // calls.
        } else {
          // Service is not available, no further action is needed.
        }
    } else {
      // The IPC call itself fails, proceed with error handling logic here,
      // such as retry.
    }
}

Java

client.isServiceAvailable().addOnCompleteListener(task - > {
    if (task.isSuccessful()) {
        // Handle success
        if(task.getResult()) {
          // Service is available on the device, proceed with content publish
          // calls.
        } else {
          // Service is not available, no further action is needed.
        }
    } else {
      // The IPC call itself fails, proceed with error handling logic here,
      // such as retry.
    }
});

publishRecommendationClusters

تُستخدَم واجهة برمجة التطبيقات هذه لنشر قائمة بعناصر RecommendationCluster.

Kotlin

client.publishRecommendationClusters(
      PublishRecommendationClustersRequest.Builder()
        .addRecommendationCluster(
          RecommendationCluster.Builder()
            .addEntity(entity1)
            .addEntity(entity2)
            .setTitle("Top Picks For You")
            .build()
        )
        .build()
    )

Java

client.publishRecommendationClusters(
            new PublishRecommendationClustersRequest.Builder()
                .addRecommendationCluster(
                    new RecommendationCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .setTitle("Top Picks For You")
                        .build())
                .build());

عندما تتلقّى الخدمة الطلب، يتم اتّخاذ الإجراءات التالية في معاملة واحدة:

  • تتم إزالة بيانات RecommendationCluster الحالية من شريك المطوّر.
  • يتم تحليل البيانات الواردة من الطلب وتخزينها في مجموعة اقتراحات محدَّثة.

في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

publishFeaturedCluster

تُستخدَم واجهة برمجة التطبيقات هذه لنشر قائمة بعناصر FeaturedCluster.

Kotlin

client.publishFeaturedCluster(
    PublishFeaturedClusterRequest.Builder()
      .setFeaturedCluster(
        FeaturedCluster.Builder()
          .addEntity(entity1)
          .addEntity(entity2)
          .build())
      .build())

Java

client.publishFeaturedCluster(
            new PublishFeaturedClustersRequest.Builder()
                .addFeaturedCluster(
                    new FeaturedCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .build())
                .build());

عندما تتلقّى الخدمة الطلب، يتم اتّخاذ الإجراءات التالية في معاملة واحدة:

  • تتم إزالة بيانات FeaturedCluster الحالية من شريك المطوّر.
  • يتم تحليل البيانات من الطلب وتخزينها في "الحزمة المميزة" المعدَّلة.

في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

publishReservationCluster

يتم استخدام واجهة برمجة التطبيقات هذه لنشر عنصر ReservationCluster.

Kotlin

client.publishReservationCluster(
    PublishReservationClusterRequest.Builder()
      .setReservationCluster(
        ReservationCluster.Builder()
          .addLodgingReservationEntity(lodgingReservationEntity)
          .addVehicleRentalReservationEntity(vehicleRentalReservationEntity)
          .addTransportationReservationEntity(transportationReservationEntity)
          .addEventReservationEntity(eventReservationEntity)
          .addRestaurantReservationEntity(restaurantReservationEntity)
          .build())
      .build())

Java

client.publishReservationCluster(
            new PublishReservationClusterRequest.Builder()
                .setReservationCluster(
                    new ReservationCluster.Builder()
                        .addLodgingReservationEntity(lodgingReservationEntity)
                        .addVehicleRentalReservationEntity(vehicleRentalReservationEntity)
                        .addTransportationReservationEntity(transportationReservationEntity)
                        .addEventReservationEntity(eventReservationEntity)
                        .addRestaurantReservationEntity(restaurantReservationEntity)
                        .build())
                .build());

عندما تتلقّى الخدمة الطلب، يتم اتّخاذ الإجراءات التالية في معاملة واحدة:

  • تتم إزالة بيانات ReservationCluster الحالية من شريك المطوّر.
  • يتم تحليل البيانات من الطلب وتخزينها في ReservationCluster المعدَّل.

في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

publishContinueSearchCluster

تُستخدَم واجهة برمجة التطبيقات هذه لنشر قائمة بعناصر ContinueSearchCluster.

Kotlin

client.publishContinueSearchCluster(
    PublishContinueSearchClusterRequest.Builder()
      .setContinueSearchCluster(
        ContinueSearchCluster.Builder()
          .addPointOfInterestEntity(entity1)
          .addPointOfInterestEntity(entity2)
          .build())
      .build())

Java

client.publishContinueSearchCluster(
            new PublishContinueSearchClusterRequest.Builder()
                .setContinueSearchCluster(
                    new ContinueSearchCluster.Builder()
                        .addPointOfInterestEntity(entity1)
                        .addPointOfInterestEntity(entity2)
                        .build())
                .build());

عندما تتلقّى الخدمة الطلب، يتم اتّخاذ الإجراءات التالية في معاملة واحدة:

  • تتم إزالة بيانات ContinueSearchCluster الحالية من شريك المطوّر.
  • يتم تحليل البيانات من الطلب وتخزينها في "مجموعة مواصلة البحث" المعدَّلة.

في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

publishUserAccountManagementRequest

تُستخدَم واجهة برمجة التطبيقات هذه لنشر بطاقة "تسجيل الدخول". يوجه إجراء تسجيل الدخول المستخدمين إلى صفحة تسجيل الدخول في التطبيق حتى يتمكّن التطبيق من نشر المحتوى (أو تقديم محتوى أكثر تخصيصًا).

تشكّل البيانات الوصفية التالية جزءًا من "بطاقة تسجيل الدخول":

السمة المتطلبات الوصف
Action Uri مطلوب رابط لصفحة معيّنة تؤدي إلى إجراء (أي الانتقال إلى صفحة تسجيل الدخول إلى التطبيق)
صورة اختياري: إذا لم يتم توفيرها، يجب توفير "العنوان"

الصورة المعروضة على البطاقة

صور بنسبة عرض إلى ارتفاع 16:9 وبدرجة دقة 1264x712

العنوان اختياري - إذا لم يتم توفيرها، يجب توفير الصورة الاسم المكتوب على البطاقة
نص الإجراء اختياري النص المعروض على عبارة الحثّ على اتّخاذ إجراء (مثل تسجيل الدخول)
العنوان الفرعي اختياري الترجمة والشرح الاختياريان على البطاقة

Kotlin

var SIGN_IN_CARD_ENTITY =
      SignInCardEntity.Builder()
          .addPosterImage(
              Image.Builder()
                  .setImageUri(Uri.parse("http://www.x.com/image.png"))
                  .setImageHeightInPixel(500)
                  .setImageWidthInPixel(500)
                  .build())
          .setActionText("Sign In")
          .setActionUri(Uri.parse("http://xx.com/signin"))
          .build()

client.publishUserAccountManagementRequest(
            PublishUserAccountManagementRequest.Builder()
                .setSignInCardEntity(SIGN_IN_CARD_ENTITY)
                .build());

Java

SignInCardEntity SIGN_IN_CARD_ENTITY =
      new SignInCardEntity.Builder()
          .addPosterImage(
              new Image.Builder()
                  .setImageUri(Uri.parse("http://www.x.com/image.png"))
                  .setImageHeightInPixel(500)
                  .setImageWidthInPixel(500)
                  .build())
          .setActionText("Sign In")
          .setActionUri(Uri.parse("http://xx.com/signin"))
          .build();

client.publishUserAccountManagementRequest(
            new PublishUserAccountManagementRequest.Builder()
                .setSignInCardEntity(SIGN_IN_CARD_ENTITY)
                .build());

عندما تتلقّى الخدمة الطلب، يتم اتّخاذ الإجراءات التالية في معاملة واحدة:

  • تتم إزالة بيانات UserAccountManagementCluster الحالية من الشريك المطوِّر.
  • يتم تحليل البيانات من الطلب وتخزينها في مجموعة UserAccountManagementCluster المعدَّلة.

في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

updatePublishStatus

إذا لم يتم نشر أي من المجموعات لأي سبب تجاري داخلي، ننصحك بشدة بتعديل حالة النشر باستخدام واجهة برمجة التطبيقات updatePublishStatus. هذا مهم للأسباب التالية :

  • من المهم توفير الحالة في جميع السيناريوهات، حتى عندما يكون المحتوى منشورًا (STATUS == PUBLISHED)، وذلك لملء لوحات البيانات التي تستخدم هذه الحالة الواضحة لنقل حالة التكامل ومقاييسه الأخرى.
  • إذا لم يتم نشر أي محتوى ولكن حالة الدمج لم تتوقف (STATUS == NOT_PUBLISHED)، يمكن أن تتجنّب Google إرسال تنبيهات في لوحات بيانات سلامة التطبيق. ويؤكّد هذا الرمز أنّه لم يتم نشر المحتوى بسبب حالة متوقّعة من وجهة نظر مقدّم الخدمة.
  • ويساعد المطوّرين في تقديم إحصاءات حول وقت نشر البيانات ووقت عدم نشرها.
  • قد تستخدم Google رموز الحالة لتشجيع المستخدم على اتّخاذ إجراءات معيّنة في التطبيق حتى يتمكّن من الاطّلاع على محتوى التطبيق أو التغلّب على المشكلة.

في ما يلي قائمة برموز حالة النشر المؤهّلة :

// Content is published
AppEngagePublishStatusCode.PUBLISHED,

// Content is not published as user is not signed in
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN,

// Content is not published as user is not subscribed
AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SUBSCRIPTION,

// Content is not published as user location is ineligible
AppEngagePublishStatusCode.NOT_PUBLISHED_INELIGIBLE_LOCATION,

// Content is not published as there is no eligible content
AppEngagePublishStatusCode.NOT_PUBLISHED_NO_ELIGIBLE_CONTENT,

// Content is not published as the feature is disabled by the client
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_FEATURE_DISABLED_BY_CLIENT,

// Content is not published as the feature due to a client error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_CLIENT_ERROR,

// Content is not published as the feature due to a service error
// Available in v1.3.1
AppEngagePublishStatusCode.NOT_PUBLISHED_SERVICE_ERROR,

// Content is not published due to some other reason
// Reach out to engage-developers@ before using this enum.
AppEngagePublishStatusCode.NOT_PUBLISHED_OTHER

إذا لم يتم نشر المحتوى لأنّ المستخدم لم يسجّل الدخول، ستنصح Google بنشر &quot;بطاقة تسجيل الدخول&quot;. إذا لم يتمكّن مقدّمو الخدمات لأي سبب من نشر &quot;بطاقة تسجيل الدخول&quot;، ننصحهم باستدعاء واجهة برمجة التطبيقات updatePublishStatus باستخدام رمز الحالة NOT_PUBLISHED_REQUIRES_SIGN_IN.

Kotlin

client.updatePublishStatus(
   PublishStatusRequest.Builder()
     .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN)
     .build())

Java

client.updatePublishStatus(
    new PublishStatusRequest.Builder()
        .setStatusCode(AppEngagePublishStatusCode.NOT_PUBLISHED_REQUIRES_SIGN_IN)
        .build());

deleteRecommendationClusters

يتم استخدام واجهة برمجة التطبيقات هذه لحذف محتوى "مجموعات الاقتراحات".

Kotlin

client.deleteRecommendationClusters()

Java

client.deleteRecommendationClusters();

عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من &quot;مجموعات الاقتراحات&quot;. في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

deleteFeaturedCluster

يتم استخدام واجهة برمجة التطبيقات هذه لحذف محتوى "المجموعة المميزة".

Kotlin

client.deleteFeaturedCluster()

Java

client.deleteFeaturedCluster();

عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من &quot;المجموعة المميّزة&quot;. في حال حدوث خطأ، يتم رفض الطلب بالكامل والاحتفاظ بالحالة الحالية.

deleteReservationCluster

يتم استخدام واجهة برمجة التطبيقات هذه لحذف محتوى مجموعة الحجوزات.

Kotlin

client.deleteReservationCluster()

Java

client.deleteReservationCluster();

عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من مجموعة الحجوزات. في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

deleteUserManagementCluster

تُستخدَم واجهة برمجة التطبيقات هذه لحذف محتوى مجموعة UserAccountManagement.

Kotlin

client.deleteUserManagementCluster()

Java

client.deleteUserManagementCluster();

عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من مجموعة UserAccountManagement. في حال حدوث خطأ، يتم رفض الطلب بالكامل ويتم الحفاظ على الحالة الحالية.

deleteContinueSearchCluster

تُستخدَم واجهة برمجة التطبيقات هذه لحذف محتوى "مجموعة مواصلة البحث".

Kotlin

client.deleteContinueSearchCluster()

Java

client.deleteContinueSearchCluster();

عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من مجموعة &quot;مواصلة البحث&quot;. في حال حدوث خطأ، سيتم رفض الطلب بالكامل، وسيتم الحفاظ على الحالة الحالية.

deleteClusters

تُستخدَم واجهة برمجة التطبيقات هذه لحذف محتوى نوع مجموعة معيّن.

Kotlin

client.deleteClusters(
    DeleteClustersRequest.Builder()
      .addClusterType(ClusterType.TYPE_RESERVATION)
      .addClusterType(ClusterType.TYPE_FEATURED)
      .addClusterType(ClusterType.TYPE_RECOMMENDATION)
      .addClusterType(ClusterType.TYPE_CONTINUE_SEARCH)
      .build())

Java

client.deleteClusters(
            new DeleteClustersRequest.Builder()
                .addClusterType(ClusterType.TYPE_RESERVATION)
                .addClusterType(ClusterType.TYPE_FEATURED)
                .addClusterType(ClusterType.TYPE_RECOMMENDATION)
                .addClusterType(ClusterType.TYPE_CONTINUE_SEARCH)
                .build());

عندما تتلقّى الخدمة الطلب، تزيل البيانات الحالية من جميع المجموعات المتطابقة مع أنواع المجموعات المحدّدة. يمكن للعملاء اختيار تمرير نوع واحد أو عدة أنواع من المجموعات. في حال حدوث خطأ، يتم رفض الطلب بالكامل والاحتفاظ بالحالة الحالية.

معالجة الأخطاء

ننصحك بشدة بالاستماع إلى نتيجة المهمة من واجهات برمجة التطبيقات الخاصة بالنشر، حتى يمكن اتّخاذ إجراء متابعة لاسترداد مهمة ناجحة وإعادة إرسالها.

Kotlin

client.publishRecommendationClusters(
        PublishRecommendationClustersRequest.Builder()
          .addRecommendationCluster(..)
          .build())
      .addOnCompleteListener { task ->
        if (task.isSuccessful) {
          // do something
        } else {
          val exception = task.exception
          if (exception is AppEngageException) {
            @AppEngageErrorCode val errorCode = exception.errorCode
            if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) {
              // do something
            }
          }
        }
      }

Java

client.publishRecommendationClusters(
              new PublishRecommendationClustersRequest.Builder()
                  .addRecommendationCluster(...)
                  .build())
          .addOnCompleteListener(
              task -> {
                if (task.isSuccessful()) {
                  // do something
                } else {
                  Exception exception = task.getException();
                  if (exception instanceof AppEngageException) {
                    @AppEngageErrorCode
                    int errorCode = ((AppEngageException) exception).getErrorCode();
                    if (errorCode == AppEngageErrorCode.SERVICE_NOT_FOUND) {
                      // do something
                    }
                  }
                }
              });

يتم عرض الخطأ كـ AppEngageException مع تضمين السبب كرمز خطأ.

رمز الخطأ اسم الخطأ ملاحظة
1 SERVICE_NOT_FOUND الخدمة غير متاحة على الجهاز المحدّد.
2 SERVICE_NOT_AVAILABLE الخدمة متاحة على الجهاز المحدّد، ولكنّها غير متاحة في وقت المكالمة (على سبيل المثال، تم إيقافها بشكل صريح).
3 SERVICE_CALL_EXECUTION_FAILURE تعذّر تنفيذ المهمة بسبب مشاكل في سلاسل المحادثات. في هذه الحالة، يمكن إعادة المحاولة.
4 SERVICE_CALL_PERMISSION_DENIED لا يُسمح للمتصل بإجراء مكالمة الخدمة.
5 SERVICE_CALL_INVALID_ARGUMENT يحتوي الطلب على بيانات غير صالحة (على سبيل المثال، أكثر من عدد المجموعات المسموح به).
6 SERVICE_CALL_INTERNAL حدث خطأ من جهة الخدمة.
7 SERVICE_CALL_RESOURCE_EXHAUSTED يتم إجراء مكالمة الخدمة بشكل متكرر جدًا.

الخطوة 3: معالجة أغراض البث

بالإضافة إلى إجراء طلبات البيانات من واجهة برمجة التطبيقات لنشر المحتوى من خلال مهمة، يجب أيضًا إعداد BroadcastReceiver لتلقّي طلب نشر المحتوى.

والهدف من عمليات البث هذه هو إعادة تفعيل التطبيق بشكل أساسي وفرض مزامنة البيانات. لم يتم تصميم أغراض البث لإرسالها بشكل متكرر جدًا. لا يتم تفعيلها إلا عندما تحدّد &quot;خدمة التفاعل&quot; أنّ المحتوى قد يكون قديمًا (على سبيل المثال، مضى أسبوع على نشره). بهذه الطريقة، يمكن للمستخدم أن يثق بأنّه سيحصل على تجربة محتوى جديدة، حتى إذا لم يتم تنفيذ التطبيق لفترة طويلة من الوقت.

يجب إعداد BroadcastReceiver بإحدى الطريقتَين التاليتَين:

  • تسجيل مثيل لفئة BroadcastReceiver بشكل ديناميكي باستخدام Context.registerReceiver() يتيح ذلك التواصل من التطبيقات التي لا تزال نشطة في الذاكرة.

Kotlin

class AppEngageBroadcastReceiver : BroadcastReceiver(){
  // Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
  // is received
  // Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received
  // Trigger continue search cluster publish when PUBLISH_CONTINUE_SEARCH
  // broadcast is received
  // Trigger reservation cluster publish when PUBLISH_RESERVATION broadcast is
  // received
}

fun registerBroadcastReceivers(context: Context){
  var  context = context
  context = context.applicationContext

// Register Recommendation Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)

// Register Featured Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_FEATURED),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)

// Register Continue Search Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_CONTINUE_SEARCH),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)

// Register Reservation Cluster Publish Intent
  context.registerReceiver(AppEngageBroadcastReceiver(),
                           IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_RESERVATION),
                           com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                           /*scheduler=*/null)
}

Java

class AppEngageBroadcastReceiver extends BroadcastReceiver {
// Trigger recommendation cluster publish when PUBLISH_RECOMMENDATION broadcast
// is received

// Trigger featured cluster publish when PUBLISH_FEATURED broadcast is received

// Trigger continue search cluster publish when PUBLISH_CONTINUE_SEARCH
// broadcast is received

// Trigger reservation cluster publish when PUBLISH_RESERVATION broadcast is
// received
}

public static void registerBroadcastReceivers(Context context) {

context = context.getApplicationContext();

// Register Recommendation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_RECOMMENDATION),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

// Register Featured Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.service.Intents.ACTION_PUBLISH_FEATURED),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

// Register Continue Search Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_CONTINUE_SEARCH),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

// Register Reservation Cluster Publish Intent
context.registerReceiver(new AppEngageBroadcastReceiver(),
                         new IntentFilter(com.google.android.engage.travel.service.Intents.ACTION_PUBLISH_RESERVATION),
                         com.google.android.engage.service.BroadcastReceiverPermissions.BROADCAST_REQUEST_DATA_PUBLISH_PERMISSION,
                         /*scheduler=*/null);

}
  • عليك تعريف عملية التنفيذ بشكل ثابت باستخدام العلامة <receiver> في ملف AndroidManifest.xml. يسمح هذا الإذن للتطبيق بتلقّي نوايا البث عندما لا يكون قيد التشغيل، كما يسمح له بنشر المحتوى.

<application>
   <receiver
      android:name=".AppEngageBroadcastReceiver"
      android:permission="com.google.android.engage.REQUEST_ENGAGE_DATA"
      android:exported="true"
      android:enabled="true">
      <intent-filter>
         <action android:name="com.google.android.engage.action.PUBLISH_RECOMMENDATION" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.PUBLISH_FEATURED" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.travel.PUBLISH_CONTINUE_SEARCH" />
      </intent-filter>
      <intent-filter>
         <action android:name="com.google.android.engage.action.travel.PUBLISH_RESERVATION" />
      </intent-filter>
   </receiver>
</application>

يتم إرسال intent التالي من خلال الخدمة:

  • com.google.android.engage.action.PUBLISH_RECOMMENDATION يُنصح ببدء مكالمة publishRecommendationClusters عند تلقّي هذا الغرض.
  • com.google.android.engage.action.PUBLISH_FEATURED يُنصح ببدء مكالمة publishFeaturedCluster عند تلقّي هذا الغرض.
  • com.google.android.engage.action.travel.PUBLISH_CONTINUE_SEARCH يُنصح ببدء publishContinueSearchCluster مكالمة عند تلقّي هذا الغرض.
  • com.google.android.engage.action.travel.PUBLISH_RESERVATION يُنصح ببدء مكالمة publishReservationCluster عند تلقّي هذا الغرض.

سير عمل عملية الدمج

للحصول على دليل مفصّل حول كيفية إثبات صحة عملية الدمج بعد اكتمالها، يُرجى الاطّلاع على سير عمل دمج المطوّرين في "التفاعل".

الأسئلة الشائعة

اطّلِع على الأسئلة الشائعة حول Engage SDK.

معلومات الاتصال

يُرجى التواصل مع engage-developers@google.com إذا كانت لديك أي أسئلة أثناء عملية الدمج.

الخطوات التالية

بعد إكمال عملية الربط هذه، إليك الخطوات التالية:

  • أرسِل رسالة إلكترونية إلى engage-developers@google.com وأرفِق بها حزمة APK المدمَجة الجاهزة للاختبار من قِبل Google.
  • تُجري Google عملية تحقّق وتراجع داخليًا للتأكّد من أنّ عملية الدمج تعمل على النحو المتوقّع. في حال الحاجة إلى إجراء تغييرات، ستتواصل معك Google لتقديم أي تفاصيل ضرورية.
  • عند اكتمال الاختبار وعدم الحاجة إلى إجراء أي تغييرات، ستتواصل معك Google لإعلامك بأنّه يمكنك بدء نشر حزمة APK المعدَّلة والمدمجة على &quot;متجر Google Play&quot;.
  • بعد أن تؤكّد Google أنّه تم نشر حزمة APK المعدَّلة على &quot;متجر Google Play&quot;، قد يتم نشر المجموعات اقتراح ومميّز وحجز ومتابعة البحث لتصبح مرئية للمستخدمين.