Engage SDK Travel: คำแนะนำการผสานรวมทางเทคนิคของบุคคลที่สาม

เพิ่มการมีส่วนร่วมในแอปโดยการเข้าถึงผู้ใช้ในทุกที่ที่ผู้ใช้อยู่ ผสานรวม Engage SDK เพื่อแสดงคำแนะนำที่ปรับเปลี่ยนในแบบของคุณและเนื้อหาที่ต่อเนื่องไปยังผู้ใช้โดยตรงในแพลตฟอร์มต่างๆ ในอุปกรณ์ เช่น คอลเล็กชัน, Entertainment Space และ Play Store การผสานรวมนี้จะเพิ่มขนาด APK โดยเฉลี่ยไม่เกิน 50 KB (บีบอัดแล้ว) และใช้เวลาของนักพัฒนาแอปประมาณ 1 สัปดาห์สำหรับแอปส่วนใหญ่ ดูข้อมูลเพิ่มเติมได้ที่เว็บไซต์ธุรกิจ

คู่มือนี้มีวิธีการสำหรับพาร์ทเนอร์นักพัฒนาแอปในการนำส่งเนื้อหาเกี่ยวกับการเดินทางและกิจกรรมไปยังแพลตฟอร์มเนื้อหา Engage

การรองรับหมวดหมู่และแพลตฟอร์ม

การมีสิทธิ์ใช้แพลตฟอร์ม Engage SDK ขึ้นอยู่กับหมวดหมู่เนื้อหาของแอป ใช้ตารางต่อไปนี้เพื่อพิจารณาสิทธิ์ของคุณสำหรับแพลตฟอร์มที่เฉพาะเจาะจง

สถานะ หมวดหมู่เนื้อหาหรือกรณีการใช้งาน แพลตฟอร์มที่รองรับ
รองรับ
(มีสิทธิ์แสดงในทุกแพลตฟอร์ม)
  • การเดินทางและสถานที่ท้องถิ่นทั้งหมด (ยกเว้นหมวดหมู่ย่อยที่ไม่รองรับซึ่งแสดงอยู่ในตารางนี้)
  • กิจกรรม (หมวดหมู่ย่อยทั้งหมด)
  • กิจกรรมของสัตว์เลี้ยง การตรวจสอบ การดูแล การพาสัตว์เลี้ยงเดินเล่น
  • คอลเล็กชัน
  • แท็บแอปใน Play Store
  • แท็บ "คุณ" ใน Play Store
  • หน้าข้อมูลสินค้าใน Store ของ Play Store
สิ่งที่ทำไม่ได้
  • เครื่องมือติดตามเที่ยวบิน

รายละเอียดการผสานรวม

ส่วนนี้จะอธิบายขั้นตอน โมเดลข้อมูล และคำศัพท์ที่จำเป็นในการผสานรวมกับ Engage SDK สำหรับเนื้อหาการเดินทางและกิจกรรม

คำศัพท์

การผสานรวมนี้ประกอบด้วยคลัสเตอร์ประเภทต่างๆ ได้แก่ วิดีโอแนะนำ แนะนำ การจอง และค้นหาต่อ

  • คลัสเตอร์คำแนะนำจะแสดงคำแนะนำด้านการเดินทางและกิจกรรมที่ปรับเปลี่ยนในแบบของคุณจากพาร์ทเนอร์นักพัฒนาแอปแต่ละราย โดยคำแนะนำเหล่านี้อาจปรับเปลี่ยนในแบบของคุณหรือเป็นคำแนะนำทั่วไป (เช่น สินค้าที่มาแรง) ใช้เพื่อแสดงบทความ กิจกรรม ที่พัก หรือสถานที่น่าสนใจที่แนะนำ

    • คลัสเตอร์วิดีโอแนะนำอาจประกอบด้วยข้อมูล ArticleEntity, EventEntity, LodgingEntity, PointOfInterestEntity หรือ StoreEntity แต่จะรวมเอนทิตีประเภทต่างๆ เข้าด้วยกันไม่ได้

    คำแนะนำจะมีโครงสร้างดังต่อไปนี้

    • คลัสเตอร์วิดีโอแนะนำ: มุมมอง UI ที่มีกลุ่มวิดีโอแนะนำจากพาร์ทเนอร์นักพัฒนาแอปรายเดียวกัน

    • เอนทิตี: ออบเจ็กต์ที่แสดงรายการเดียวในคลัสเตอร์ การผสานรวมนี้จะแสดงเอนทิตีบางรายการโดยใช้คลัสเตอร์วิดีโอแนะนำ ดังนี้

      • ArticleEntity: ArticleEntity แสดงถึงคำแนะนำสำหรับเนื้อหาแบบข้อความที่เกี่ยวข้องกับการเดินทางและกิจกรรม ซึ่งใช้ได้กับบทความ บล็อกโพสต์ เนื้อหาทางการตลาด ตัวอย่างข่าวสาร และอื่นๆ

        รูปที่ 1: UI แสดง ArticleEntity รายการเดียวภายในคลัสเตอร์ Recommendations
      • EventEntity: EventEntity แสดงถึงกิจกรรมที่จะเกิดขึ้นในอนาคต เวลาเริ่มต้นของกิจกรรมเป็นข้อมูลสำคัญที่ต้องแจ้งให้ผู้ใช้ทราบ

        รูปที่ 2: UI แสดง EventEntity รายการเดียวภายในคลัสเตอร์คำแนะนำ
      • LodgingEntity: LodgingEntity แสดงถึงที่พัก เช่น โรงแรม อพาร์ตเมนต์ บ้านพักตากอากาศสำหรับการเช่าระยะสั้นและระยะยาว

        รูปที่ 3: UI แสดง LodgingEntity รายการเดียวภายในคลัสเตอร์วิดีโอแนะนำ
      • StoreEntity: StoreEntity แสดงถึงร้านค้า ร้านอาหาร คาเฟ่ ฯลฯ โดยจะไฮไลต์เนื้อหาที่สถานที่รับประทานอาหารหรือร้านค้าเป็นข้อมูลสำคัญที่ต้องสื่อสารกับผู้ใช้

        รูปที่ 4: UI แสดง StoreEntity รายการเดียวภายในคลัสเตอร์วิดีโอแนะนำ
      • PointOfInterestEntity: PointOfInterestEntity แสดงสถานที่ที่น่าสนใจ เช่น ปั๊มน้ำมัน สถานที่จัดกิจกรรม สวนสนุก พิพิธภัณฑ์ สถานที่ท่องเที่ยว เส้นทางเดินป่า ฯลฯ โดยจะไฮไลต์เนื้อหาที่ตำแหน่งเป็นข้อมูลสำคัญที่ต้องสื่อสารกับผู้ใช้ ไม่ควรใช้สำหรับที่พัก ร้านค้า หรือสถานที่รับประทานอาหาร

        รูปที่ 5: UI แสดง PointOfInterestEntity รายการเดียวภายในคลัสเตอร์วิดีโอแนะนำ
  • คลัสเตอร์การจองจะแสดงเนื้อหาที่ผู้ใช้มีส่วนร่วมเมื่อเร็วๆ นี้จากพาร์ทเนอร์นักพัฒนาแอปหลายรายในการจัดกลุ่ม UI เดียว พาร์ทเนอร์นักพัฒนาซอฟต์แวร์แต่ละรายจะได้รับอนุญาตให้ออกอากาศเอนทิตีได้สูงสุด 10 รายการในคลัสเตอร์การจอง

    เนื้อหาการจองอาจมีโครงสร้างต่อไปนี้

    • RestaurantReservationEntity: RestaurantReservationEntity แสดงถึงการจองร้านอาหารหรือคาเฟ่ และช่วยให้ผู้ใช้ติดตามการจองร้านอาหารที่กำลังจะมาถึงหรือที่กำลังดำเนินอยู่

      รูปที่ 6 UI แสดง RestaurantReservationEntity รายการเดียวภายในคลัสเตอร์ Reservation
    • EventReservationEntity: EventReservationEntity แสดงถึงการจองกิจกรรมและช่วยให้ผู้ใช้ติดตามการจองกิจกรรมที่กำลังจะเกิดขึ้นหรือกำลังดำเนินอยู่ เหตุการณ์อาจรวมถึงแต่ไม่จำกัดเพียงสิ่งต่อไปนี้

      • กิจกรรมกีฬา เช่น การจองตั๋วเข้าชมการแข่งขันฟุตบอล
      • กิจกรรมเกี่ยวกับเกม เช่น การจองเพื่อเข้าร่วมอีสปอร์ต
      • กิจกรรมเพื่อความบันเทิง เช่น การจองตั๋วภาพยนตร์ในโรงภาพยนตร์ คอนเสิร์ต ละครเวที งานแจกลายเซ็นหนังสือ
      • การจองการเดินทางหรือจุดที่น่าสนใจ เช่น ทัวร์ชมพร้อมคำแนะนำ ตั๋วเข้าชมพิพิธภัณฑ์
      • การจองเพื่อจัดกิจกรรมทางสังคม / สัมมนา / การประชุม
      • การจองเซสชันการศึกษา / การฝึกอบรม
      รูปที่ 7 UI แสดง EventReservationEntity รายการเดียวภายในคลัสเตอร์ Reservation
    • LodgingReservationEntity: LodgingEntityReservation แสดงถึงการจองที่พักสำหรับการเดินทาง และช่วยให้ผู้ใช้ติดตามการจองโรงแรมหรือที่พักให้เช่าที่กำลังจะมาถึงหรือที่กำลังดำเนินอยู่

      รูปที่ 8 UI แสดง LodgingReservationEntity รายการเดียวภายในคลัสเตอร์ Reservation
    • TransportationReservationEntity: TransportationReservationEntity แสดงถึงการจองการเดินทางด้วยรูปแบบใดก็ได้ และช่วยให้ผู้ใช้ติดตามการจองเที่ยวบิน เรือข้ามฟาก รถไฟ รถประจำทาง บริการเรียกรถโดยสาร หรือเรือสำราญที่กำลังจะมาถึงหรือกำลังดำเนินอยู่

      รูปที่ 9 UI แสดง TransportationReservationEntity รายการเดียวภายในคลัสเตอร์ Reservation
    • VehicleRentalReservationEntity: VehicleRentalReservationEntity แสดงถึงการจองรถเช่าและช่วยให้ผู้ใช้ติดตามการจองรถเช่าที่กำลังจะมาถึงหรือที่กำลังดำเนินอยู่

      รูปที่ 10 UI แสดง VehicleRentalReservationEntity รายการเดียวภายในคลัสเตอร์ Reservation
  • คลัสเตอร์แนะนำจะแสดงเอนทิตีที่เลือกจากพาร์ทเนอร์นักพัฒนาแอปหลายรายในการจัดกลุ่ม UI เดียว จะมีคลัสเตอร์แนะนำเพียงคลัสเตอร์เดียว ซึ่งจะแสดงใกล้กับด้านบนของ UI โดยมีตำแหน่งที่มีลำดับความสำคัญสูงกว่าคลัสเตอร์วิดีโอแนะนำทั้งหมด พาร์ทเนอร์นักพัฒนาแอปแต่ละรายจะได้รับอนุญาตให้ออกอากาศเอนทิตีได้สูงสุด 10 รายการในคลัสเตอร์แนะนำ

    • GenericFeaturedEntity: GenericFeaturedEntity แตกต่างจากรายการแนะนำตรงที่ควรใช้รายการแนะนำสำหรับเนื้อหายอดนิยมรายการเดียวจากนักพัฒนาแอป และควรแสดงเนื้อหาที่สำคัญที่สุดรายการเดียวซึ่งจะน่าสนใจและเกี่ยวข้องกับผู้ใช้

      รูปที่ 11: UI แสดง FeaturedCluster พร้อมรายการ GenericFeaturedEntity
  • คลัสเตอร์ค้นหาต่อช่วยให้ผู้ใช้กลับมาค้นหาการเดินทางต่อจากครั้งก่อนได้โดยแสดงรายการคำค้นหาที่ผู้ใช้เพิ่งค้นหาในแอปการเดินทางทั้งหมด ระบบจะปักหมุดคลัสเตอร์ไว้ในตำแหน่งที่ 2 ต่อจากการจอง และก่อนคลัสเตอร์แนะนำและรายการแนะนำ พาร์ทเนอร์นักพัฒนาแอปแต่ละรายจะได้รับอนุญาตให้ออกอากาศเอนทิตีได้สูงสุด 3 รายการในคลัสเตอร์ "ค้นหาต่อ"

    • PointOfInterestEntity: PointOfInterestEntity แสดงสถานที่ที่น่าสนใจ เช่น ปั๊มน้ำมัน สถานที่จัดกิจกรรม สวนสนุก พิพิธภัณฑ์ สถานที่ท่องเที่ยว เส้นทางเดินป่า เป็นต้น โดยจะไฮไลต์เนื้อหาที่ผู้ใช้เคยค้นหาไว้ก่อนหน้านี้

สิ่งที่ต้องเตรียมก่อนดำเนินการ

ระดับ API ขั้นต่ำ: 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 รายการ อย่างน้อย 1 รายการ ไม่เกิน 50 (ArticleEntity, EventEntity, LodgingEntity, StoreEntity หรือ PointOfInterestEntity)
คลัสเตอร์การจอง ไม่เกิน 1 รายการ อย่างน้อย 1 รายการ ไม่เกิน 20 รายการ (RestaurantReservationEntity, EventReservationEntity, LodgingReservationEntity, TransportationReservationEntity หรือ VehicleRentalReservationEntity)
คลัสเตอร์แนะนำ ไม่เกิน 1 รายการ อย่างน้อย 1 รายการ ไม่เกิน 20 (GenericFeaturedEntity)
คลัสเตอร์การค้นหาต่อ ไม่เกิน 1 รายการ อย่างน้อย 1 รายการ ไม่เกิน 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

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
รูปภาพโปสเตอร์ ต้องระบุ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

หมายเหตุ: หากมีป้าย ให้เว้นพื้นที่ปลอดภัย 24 dp ทั้งด้านบนและด้านล่างของรูปภาพ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
ชื่อ ไม่บังคับ ชื่อของเอนทิตี

ข้อความอิสระ

Recommended text size: 50 chars

คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

ป้าย ไม่บังคับ

ป้ายแต่ละรายการจะเป็นข้อความอิสระ (ไม่เกิน 15 อักขระ) หรือรูปภาพขนาดเล็ก

การดูแล UX พิเศษที่ด้านบนของรูปภาพ/วิดีโอ เช่น การวางซ้อนป้ายบนรูปภาพ

  • "ข้อมูลอัปเดตแบบเรียลไทม์"
  • ระยะเวลาการอ่านบทความ
ป้าย - ข้อความ ไม่บังคับ

ชื่อของป้าย

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุด 15 อักขระ

ป้าย - รูปภาพ ไม่บังคับ

รูปภาพขนาดเล็ก

การดูแล UX พิเศษ เช่น การวางซ้อนป้ายบนภาพปก/วิดีโอ

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
หมวดหมู่เนื้อหา ไม่บังคับ อธิบายหมวดหมู่ของเนื้อหาในเอนทิตี

รายการ Enum

ดูคำแนะนำได้ที่ส่วนหมวดหมู่เนื้อหา

DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

ArticleEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

รูปภาพโปสเตอร์ ไม่บังคับ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

หมายเหตุ: ขอแนะนำให้ใช้รูปภาพ หากมีป้าย ให้เว้นพื้นที่ปลอดภัย 24 dp ทั้งด้านบนและด้านล่างของรูปภาพ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
แหล่งที่มา - ชื่อ ไม่บังคับ ชื่อผู้เขียน องค์กร หรือผู้รายงาน

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 25 อักขระ

แหล่งที่มา - รูปภาพ ไม่บังคับ รูปภาพของแหล่งที่มา เช่น ผู้เขียน องค์กร ผู้รายงาน ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

ป้าย ไม่บังคับ

ป้ายแต่ละรายการจะเป็นข้อความอิสระ (ไม่เกิน 15 อักขระ) หรือรูปภาพขนาดเล็ก

การดูแล UX พิเศษที่ด้านบนของรูปภาพ/วิดีโอ เช่น การวางซ้อนป้ายบนรูปภาพ

  • "ข้อมูลอัปเดตแบบเรียลไทม์"
  • ระยะเวลาการอ่านบทความ
ป้าย - ข้อความ ไม่บังคับ

ชื่อของป้าย

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุด 15 อักขระ

ป้าย - รูปภาพ ไม่บังคับ

รูปภาพขนาดเล็ก

การดูแล UX พิเศษ เช่น การวางซ้อนป้ายบนภาพปก/วิดีโอ

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
เวลาเผยแพร่เนื้อหา ไม่บังคับ นี่คือการประทับเวลา Epoch เป็นมิลลิวินาทีเมื่อมีการเผยแพร่ / อัปเดตเนื้อหาในแอป การประทับเวลา Epoch ในหน่วยมิลลิวินาที
เวลาที่มีส่วนร่วมครั้งล่าสุด ไม่บังคับ

การประทับเวลา Epoch เป็นมิลลิวินาทีเมื่อผู้ใช้โต้ตอบกับเอนทิตีนี้ครั้งล่าสุด

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
เปอร์เซ็นต์ความคืบหน้า ไม่บังคับ

เปอร์เซ็นต์ของเนื้อหาทั้งหมดที่ผู้ใช้บริโภคจนถึงปัจจุบัน

ค่า int ระหว่าง 0-100 (รวมค่าแรกและค่าสุดท้าย)
หมวดหมู่เนื้อหา ไม่บังคับ อธิบายหมวดหมู่ของเนื้อหาในเอนทิตี

รายการ Enum

ดูคำแนะนำได้ที่ส่วนหมวดหมู่เนื้อหา

DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

EventEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

สตริง

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

เวลาเริ่มต้นที่แปลแล้ว - การประทับเวลา ต้องระบุ

การประทับเวลา Epoch ที่คาดว่ากิจกรรมจะเริ่มต้น

Joda-Time Instant
เวลาเริ่มต้นที่แปลแล้ว - เขตเวลา ต้องระบุ

เขตเวลาที่คาดว่ากิจกรรมจะเริ่มต้น

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

โหมดกิจกรรม ต้องระบุ

ช่องสำหรับระบุว่ากิจกรรมจะเป็นแบบออนไลน์ แบบเข้าร่วมด้วยตนเอง หรือทั้ง 2 แบบ

Enum: VIRTUAL, IN_PERSON หรือ HYBRID
รูปภาพโปสเตอร์ ต้องระบุ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

หมายเหตุ: ขอแนะนำให้ใช้รูปภาพ หากมีป้าย ให้เว้นพื้นที่ปลอดภัย 24 dp ทั้งด้านบนและด้านล่างของรูปภาพ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
สถานที่ตั้ง - ประเทศ ต้องมีแบบมีเงื่อนไข

ประเทศที่จัดกิจกรรม

หมายเหตุ: ต้องระบุสำหรับกิจกรรมที่เป็น IN_PERSON หรือ HYBRID

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - เมือง ต้องมีแบบมีเงื่อนไข

เมืองที่จัดกิจกรรม

หมายเหตุ: ต้องระบุสำหรับกิจกรรมที่เป็น IN_PERSON หรือ HYBRID

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่สำหรับแสดงผล ต้องมีแบบมีเงื่อนไข

ที่อยู่หรือชื่อสถานที่จัดกิจกรรมที่ควรแสดงต่อผู้ใช้

หมายเหตุ: ต้องระบุสำหรับกิจกรรมที่เป็น IN_PERSON หรือ HYBRID

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของสถานที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของสถานที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

เวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch เมื่อคาดว่ากิจกรรมจะสิ้นสุด

หมายเหตุ: ค่านี้จะแสดงเป็นมิลลิวินาที

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

ป้าย ไม่บังคับ

ป้ายแต่ละรายการจะเป็นข้อความอิสระ (ไม่เกิน 15 อักขระ) หรือรูปภาพขนาดเล็ก

ป้าย - ข้อความ ไม่บังคับ

ชื่อของป้าย

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุด 15 อักขระ

ป้าย - รูปภาพ ไม่บังคับ

รูปภาพขนาดเล็ก

การดูแล UX พิเศษ เช่น การวางซ้อนป้ายบนภาพปก/วิดีโอ

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
Price - CurrentPrice ต้องมีแบบมีเงื่อนไข

ราคาปัจจุบันของตั๋ว/บัตรผ่านสำหรับกิจกรรม

ต้องระบุหากมีการระบุราคาที่ขีดฆ่า

ข้อความอิสระ
Price - StrikethroughPrice ไม่บังคับ ราคาเดิมของตั๋ว/บัตรผ่านสำหรับกิจกรรม ข้อความอิสระ
ข้อความไฮไลต์ราคา ไม่บังคับ ข้อความไฮไลต์ราคาเพื่อแสดงโปรโมชัน กิจกรรม ส่วนลดสำหรับสมาชิก (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

หมวดหมู่เนื้อหา ไม่บังคับ อธิบายหมวดหมู่ของเนื้อหาในเอนทิตี

รายการ Enum ที่มีสิทธิ์

  • 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 (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

LodgingEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

สตริง

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

รูปภาพโปสเตอร์ ต้องระบุ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

หมายเหตุ: หากมีป้าย ให้เว้นพื้นที่ปลอดภัย 24 dp ทั้งด้านบนและด้านล่างของรูปภาพ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
สถานที่ตั้ง - ประเทศ ต้องระบุ ประเทศที่มีการเข้าพัก

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - เมือง ต้องระบุ เมืองที่เข้าพัก

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่สำหรับแสดงผล ต้องระบุ ที่อยู่ที่จะแสดงต่อผู้ใช้ เราขอแนะนำให้ระบุชื่อเมืองและอาจรวมถึงรัฐหรือประเทศสำหรับกรณีการใช้งานส่วนใหญ่ ระบุเฉพาะที่อยู่หรือย่านใกล้เคียงหากผู้ใช้อยู่ใกล้กับสถานที่นั้น ผู้ใช้คุ้นเคยกับสถานที่นั้น หรือเมืองนั้นรวมอยู่ในชื่อคลัสเตอร์ หากระบุที่อยู่ ให้ระบุที่อยู่แบบสั้นๆ โดยใช้ตัวย่อหากเป็นไปได้ (เช่น "St" แทน "Street", "Ave" แทน "Avenue")

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของที่พัก

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ที่ที่พักตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของที่พัก

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ของที่พัก

ข้อความอิสระ

Recommended text size: max ~20 chars

ป้าย ไม่บังคับ

ป้ายแต่ละรายการจะเป็นข้อความอิสระ (ไม่เกิน 15 อักขระ) หรือรูปภาพขนาดเล็ก

ป้าย - ข้อความ ไม่บังคับ

ชื่อของป้าย

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุด 15 อักขระ

ป้าย - รูปภาพ ไม่บังคับ

รูปภาพขนาดเล็ก

การดูแล UX พิเศษ เช่น การวางซ้อนป้ายบนภาพปก/วิดีโอ

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

AvailabilityTimeWindow - Localized Start Time - Timestamp ไม่บังคับ การประทับเวลา Epoch เมื่อคาดว่าที่พักจะเปิด/พร้อมให้บริการ Joda-Time Instant
AvailabilityTimeWindow - Localized Start Time - Timezone ไม่บังคับ เขตเวลาที่คาดว่าที่พักจะเปิด/พร้อมให้บริการ

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

AvailabilityTimeWindow - Localized End Time - Timestamp ไม่บังคับ การประทับเวลา Epoch ที่คาดว่าที่พักจะเปิด/พร้อมให้บริการ Joda-Time Instant
AvailabilityTimeWindow - Localized End Time - Timezone ไม่บังคับ เขตเวลาที่คาดว่าที่พักจะเปิด/พร้อมให้บริการ

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

คะแนน - ค่าสูงสุด ไม่บังคับ

ค่าสูงสุดของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าปัจจุบันของคะแนนด้วย

ตัวเลข >= 0.0
คะแนน - ค่าปัจจุบัน ไม่บังคับ

ค่าปัจจุบันของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าสูงสุดของคะแนนด้วย

ตัวเลข >= 0.0
การให้คะแนน - จำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับที่พัก

หมายเหตุ: ระบุช่องนี้หากแอปต้องการควบคุมวิธีแสดงข้อมูลนี้ต่อผู้ใช้ ระบุสตริงที่กระชับซึ่งแสดงต่อผู้ใช้ได้ เช่น หากจำนวนคือ 1,000,000 ให้พิจารณาใช้ตัวย่อ เช่น 1M เพื่อไม่ให้ข้อความถูกตัดในจอแสดงผลขนาดเล็ก

สตริง
การให้คะแนน - ค่าจำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับที่พัก

หมายเหตุ: ระบุช่องนี้หากคุณไม่ต้องการจัดการตรรกะตัวย่อที่แสดงด้วยตนเอง หากมีทั้งจำนวนและค่าจำนวน เราจะใช้จำนวนเพื่อแสดงต่อผู้ใช้

ยาว
Price - CurrentPrice ต้องมีแบบมีเงื่อนไข

ราคาปัจจุบันของที่พัก

ต้องระบุหากระบุราคาที่ขีดฆ่า

ข้อความอิสระ
Price - StrikethroughPrice ไม่บังคับ ราคาเดิมของที่พัก ซึ่งจะถูกขีดทับใน UI ข้อความอิสระ
ข้อความไฮไลต์ราคา ไม่บังคับ ข้อความไฮไลต์ราคาเพื่อแสดงโปรโมชัน กิจกรรม ส่วนลดสำหรับสมาชิก (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

StoreEntity

ออบเจ็กต์ StoreEntity แสดงถึงร้านค้าแต่ละแห่งที่พาร์ทเนอร์นักพัฒนาแอปต้องการเผยแพร่ เช่น ร้านอาหารยอดนิยมหรือร้านอาหารที่เกี่ยวข้องกับประสบการณ์การเดินทางของบุคคลหนึ่งๆ

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
รูปภาพโปสเตอร์ ต้องระบุ ต้องระบุรูปภาพอย่างน้อย 1 รูป ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ไม่บังคับ ชื่อร้านค้า

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

ตำแหน่ง ไม่บังคับ สถานที่ตั้งของร้านค้า

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

ข้อความไฮไลต์ ไม่บังคับ ข้อความไฮไลต์เพื่อแสดงโปรโมชัน กิจกรรม หรือข้อมูลอัปเดตสำหรับร้านค้า (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงเป็นจุดไข่ปลา)

ข้อความที่พิมพ์ด้วยตัวอักษรขนาดเล็กในข้อความไฮไลต์ ไม่บังคับ ข้อความตัวพิมพ์เล็กสำหรับข้อความไฮไลต์

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงเป็นจุดไข่ปลา)

คำอธิบาย ไม่บังคับ คำอธิบายร้านค้า

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 90 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

หมวดหมู่ ไม่บังคับ

หมวดหมู่ของร้านค้า ในบริบทของสถานที่รับประทานอาหาร อาจเป็นอาหาร เช่น "ฝรั่งเศส" "อเมริกันสมัยใหม่" "ราเมน" "อาหารหรู"

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงเป็นจุดไข่ปลา)

คะแนน - ค่าสูงสุด ไม่บังคับ

ค่าสูงสุดของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าปัจจุบันของคะแนนด้วย

ตัวเลข >= 0.0
คะแนน - ค่าปัจจุบัน ไม่บังคับ

ค่าปัจจุบันของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าสูงสุดของคะแนนด้วย

ตัวเลข >= 0.0
การให้คะแนน - จำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับที่พัก

หมายเหตุ: ระบุช่องนี้หากแอปต้องการควบคุมวิธีแสดงข้อมูลนี้ต่อผู้ใช้ ระบุสตริงที่กระชับซึ่งแสดงต่อผู้ใช้ได้ เช่น หากจำนวนคือ 1,000,000 ให้พิจารณาใช้ตัวย่อ เช่น 1M เพื่อไม่ให้ข้อความถูกตัดในจอแสดงผลขนาดเล็ก

สตริง
การให้คะแนน - ค่าจำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับที่พัก

หมายเหตุ: ระบุช่องนี้หากคุณไม่ต้องการจัดการตรรกะตัวย่อที่แสดงด้วยตนเอง หากมีทั้งจำนวนและค่าจำนวน เราจะใช้จำนวนเพื่อแสดงต่อผู้ใช้

ยาว
DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

PointOfInterestEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

สตริง

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

รูปภาพโปสเตอร์ ต้องมีแบบมีเงื่อนไข

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

หมายเหตุ: ต้องมีรูปภาพหากเอนทิตีเป็นส่วนหนึ่งของคลัสเตอร์วิดีโอแนะนำ หากมีป้าย ให้เว้นพื้นที่ปลอดภัย 24 dp ทั้งด้านบนและด้านล่างของรูปภาพ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
เวลาที่มีส่วนร่วมครั้งล่าสุด ต้องมีแบบมีเงื่อนไข

การประทับเวลา Epoch เมื่อผู้ใช้โต้ตอบกับเอนทิตีนี้ครั้งล่าสุด

หมายเหตุ: ต้องระบุฟิลด์นี้หากเอนทิตีเป็นส่วนหนึ่งของคลัสเตอร์การค้นหาต่อ

Joda-Time Instant
สถานที่ตั้ง - ประเทศ ต้องมีแบบมีเงื่อนไข

ประเทศที่เกิดจุดสนใจ

หมายเหตุ: ต้องระบุฟิลด์นี้หากเอนทิตีเป็นส่วนหนึ่งของคลัสเตอร์วิดีโอแนะนำ

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - เมือง ต้องมีแบบมีเงื่อนไข

เมืองที่เกิดจุดสนใจ

หมายเหตุ: ต้องระบุฟิลด์นี้หากเอนทิตีเป็นส่วนหนึ่งของคลัสเตอร์วิดีโอแนะนำ

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่สำหรับแสดงผล ต้องมีแบบมีเงื่อนไข

ที่อยู่ที่จะแสดงต่อผู้ใช้ ระบุที่อยู่ที่กระชับ โดยใช้ตัวย่อหากเป็นไปได้ (เช่น "ถ." แทน "ถนน" หรือ "ซ." แทน "ซอย") สตริงนี้อาจถูกตัดให้สั้นลง ทั้งนี้ขึ้นอยู่กับอุปกรณ์และการตั้งค่าของผู้ใช้ ระบุชื่อเมืองเพื่อการระบุที่ชัดเจน

หมายเหตุ: ต้องระบุฟิลด์นี้หากเอนทิตีเป็นส่วนหนึ่งของคลัสเตอร์วิดีโอแนะนำ

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุดประมาณ 35 อักขระ

สถานที่ตั้ง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของจุดสนใจ

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ที่จุดที่น่าสนใจตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของจุดสนใจ

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ของจุดสนใจ

ข้อความอิสระ

Recommended text size: max ~20 chars

AvailabilityTimeWindow - Localized Start Time - Timestamp ไม่บังคับ การประทับเวลา Epoch เมื่อคาดว่าจุดสนใจจะเปิด/พร้อมให้บริการ Joda-Time Instant
AvailabilityTimeWindow - Localized Start Time - Timezone ไม่บังคับ เขตเวลาที่คาดว่าจุดที่น่าสนใจจะเปิด/พร้อมให้บริการ

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

AvailabilityTimeWindow - Localized End Time - Timestamp ไม่บังคับ การประทับเวลา Epoch ที่คาดว่าจุดที่น่าสนใจจะเปิด/พร้อมให้บริการ Joda-Time Instant
AvailabilityTimeWindow - Localized End Time - Timezone ไม่บังคับ เขตเวลาที่คาดว่าจุดที่น่าสนใจจะเปิด/พร้อมให้บริการ

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

ป้าย ไม่บังคับ

ป้ายแต่ละรายการจะเป็นข้อความอิสระ (ไม่เกิน 15 อักขระ) หรือรูปภาพขนาดเล็ก

ป้าย - ข้อความ ไม่บังคับ

ชื่อของป้าย

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุด 15 อักขระ

ป้าย - รูปภาพ ไม่บังคับ

รูปภาพขนาดเล็ก

การดูแล UX พิเศษ เช่น การวางซ้อนป้ายบนภาพปก/วิดีโอ

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

คะแนน - ค่าสูงสุด ไม่บังคับ

ค่าสูงสุดของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าปัจจุบันของคะแนนด้วย

ตัวเลข >= 0.0
คะแนน - ค่าปัจจุบัน ไม่บังคับ

ค่าปัจจุบันของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าสูงสุดของคะแนนด้วย

ตัวเลข >= 0.0
การให้คะแนน - จำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับจุดสนใจ

หมายเหตุ: ระบุช่องนี้หากแอปต้องการควบคุมวิธีแสดงข้อมูลนี้ต่อผู้ใช้ ระบุสตริงที่กระชับซึ่งแสดงต่อผู้ใช้ได้ เช่น หากจำนวนคือ 1,000,000 ให้พิจารณาใช้ตัวย่อ เช่น 1M เพื่อไม่ให้ข้อความถูกตัดในจอแสดงผลขนาดเล็ก

สตริง
การให้คะแนน - ค่าจำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับจุดสนใจ

หมายเหตุ: ระบุช่องนี้หากคุณไม่ต้องการจัดการตรรกะตัวย่อที่แสดงด้วยตนเอง หากมีทั้งจำนวนและค่าจำนวน เราจะใช้จำนวนเพื่อแสดงต่อผู้ใช้

ยาว
Price - CurrentPrice ต้องมีแบบมีเงื่อนไข

ราคาปัจจุบันของตั๋ว/บัตรเข้าชมจุดที่น่าสนใจ

ต้องระบุหากมีการระบุราคาที่ขีดฆ่า

ข้อความอิสระ
Price - StrikethroughPrice ไม่บังคับ ราคาเดิมของตั๋ว/บัตรเข้าชมสำหรับจุดที่น่าสนใจ ข้อความอิสระ
ข้อความไฮไลต์ราคา ไม่บังคับ ข้อความไฮไลต์ราคาเพื่อแสดงโปรโมชัน กิจกรรม ส่วนลดสำหรับสมาชิก (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

หมวดหมู่เนื้อหา ไม่บังคับ อธิบายหมวดหมู่ของเนื้อหาในเอนทิตี

รายการ Enum ที่มีสิทธิ์

  • TYPE_TRAVEL_AND_LOCAL
  • TYPE_MOVIES_AND_TV_SHOWS (ตัวอย่าง - โรงภาพยนตร์)
  • TYPE_MEDICAL (ตัวอย่าง - โรงพยาบาล)
  • TYPE_EDUCATION (เช่น โรงเรียน)
  • TYPE_SPORTS (ตัวอย่าง - สนามกีฬา)

ดูคำแนะนำได้ที่ส่วนหมวดหมู่เนื้อหา

DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

RestaurantReservationEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

สตริง

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

เวลาเริ่มต้นของการจองที่แปลแล้ว - การประทับเวลา ต้องระบุ การประทับเวลา Epoch ที่คาดว่าการจองจะเริ่มต้น Joda-Time Instant
เวลาเริ่มต้นการจองที่แปลแล้ว - เขตเวลา ต้องระบุ เขตเวลาที่คาดว่าการจองจะเริ่มต้น

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

สถานที่ตั้ง - ประเทศ ต้องระบุ ประเทศที่ร้านอาหารตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - เมือง ต้องระบุ เมืองที่ร้านอาหารตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่สำหรับแสดงผล ต้องระบุ ที่อยู่ของร้านอาหารที่จะแสดงต่อผู้ใช้

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของร้านอาหาร

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ที่ร้านอาหารตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของร้านอาหาร

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ของร้านอาหาร

ข้อความอิสระ

Recommended text size: max ~20 chars

รูปภาพโปสเตอร์ ไม่บังคับ เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9 ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

ขนาดโต๊ะ ไม่บังคับ จำนวนคนในกลุ่มการจอง จำนวนเต็ม > 0
DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

EventReservationEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

สตริง

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

เวลาเริ่มต้นที่แปลแล้ว - การประทับเวลา ต้องระบุ

การประทับเวลา Epoch ที่คาดว่ากิจกรรมจะเริ่มต้น

Joda-Time Instant
เวลาเริ่มต้นที่แปลแล้ว - เขตเวลา ต้องระบุ

เขตเวลาที่คาดว่ากิจกรรมจะเริ่มต้น

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

โหมดกิจกรรม ต้องระบุ

ช่องสำหรับระบุว่ากิจกรรมจะเป็นแบบออนไลน์ แบบเข้าร่วมด้วยตนเอง หรือทั้ง 2 แบบ

Enum: VIRTUAL, IN_PERSON หรือ HYBRID
สถานที่ตั้ง - ประเทศ ต้องมีแบบมีเงื่อนไข

ประเทศที่จัดกิจกรรม

หมายเหตุ: ต้องระบุสำหรับกิจกรรมที่เป็น IN_PERSON หรือ HYBRID

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - เมือง ต้องมีแบบมีเงื่อนไข

เมืองที่จัดกิจกรรม

หมายเหตุ: ต้องระบุสำหรับกิจกรรมที่เป็น IN_PERSON หรือ HYBRID

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่สำหรับแสดงผล ต้องมีแบบมีเงื่อนไข

ที่อยู่หรือชื่อสถานที่จัดกิจกรรมที่ควรแสดงต่อผู้ใช้

หมายเหตุ: ต้องระบุสำหรับกิจกรรมที่เป็น IN_PERSON หรือ HYBRID

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของสถานที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของสถานที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ที่จัดกิจกรรม

ข้อความอิสระ

Recommended text size: max ~20 chars

รูปภาพโปสเตอร์ ไม่บังคับ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

หมายเหตุ: ขอแนะนำให้ใช้รูปภาพ หากมีป้าย ให้เว้นพื้นที่ปลอดภัย 24 dp ทั้งด้านบนและด้านล่างของรูปภาพ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
เวลาสิ้นสุดที่แปลแล้ว - การประทับเวลา ไม่บังคับ

การประทับเวลา Epoch เมื่อคาดว่ากิจกรรมจะสิ้นสุด

Joda-Time Instant
เวลาสิ้นสุดที่แปลแล้ว - เขตเวลา ไม่บังคับ

เขตเวลาที่คาดว่ากิจกรรมจะสิ้นสุด

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

ผู้ให้บริการ - ชื่อ ไม่บังคับ

ชื่อผู้ให้บริการ

หมายเหตุ: ต้องระบุข้อความหรือรูปภาพสำหรับผู้ให้บริการ

ข้อความอิสระ เช่น ชื่อผู้จัดกิจกรรม/ทัวร์
ผู้ให้บริการ - รูปภาพ ไม่บังคับ

โลโก้/รูปภาพของผู้ให้บริการ

หมายเหตุ: ต้องระบุข้อความหรือรูปภาพสำหรับผู้ให้บริการ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

ป้าย ไม่บังคับ

ป้ายแต่ละรายการจะเป็นข้อความอิสระ (ไม่เกิน 15 อักขระ) หรือรูปภาพขนาดเล็ก

ป้าย - ข้อความ ไม่บังคับ

ชื่อของป้าย

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุด 15 อักขระ

ป้าย - รูปภาพ ไม่บังคับ

รูปภาพขนาดเล็ก

การดูแล UX พิเศษ เช่น การวางซ้อนป้ายบนภาพปก/วิดีโอ

หมายเหตุ: ต้องมีข้อความหรือรูปภาพสำหรับป้าย

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
รหัสการจอง ไม่บังคับ รหัสการจองสำหรับการจองกิจกรรม ข้อความอิสระ
Price - CurrentPrice ต้องมีแบบมีเงื่อนไข

ราคาปัจจุบันของตั๋ว/บัตรผ่านสำหรับกิจกรรม

ต้องระบุหากมีการระบุราคาที่ขีดฆ่า

ข้อความอิสระ
Price - StrikethroughPrice ไม่บังคับ ราคาเดิมของตั๋ว/บัตรผ่านสำหรับกิจกรรม ข้อความอิสระ
ข้อความไฮไลต์ราคา ไม่บังคับ ข้อความไฮไลต์ราคาเพื่อแสดงโปรโมชัน กิจกรรม ส่วนลดสำหรับสมาชิก (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

คะแนน - ค่าสูงสุด ไม่บังคับ

ค่าสูงสุดของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าปัจจุบันของคะแนนด้วย

ตัวเลข >= 0.0
คะแนน - ค่าปัจจุบัน ไม่บังคับ

ค่าปัจจุบันของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าสูงสุดของคะแนนด้วย

ตัวเลข >= 0.0
การให้คะแนน - จำนวน ไม่บังคับ

จำนวนคะแนนสำหรับกิจกรรม

หมายเหตุ: ระบุช่องนี้หากแอปต้องการควบคุมวิธีแสดงข้อมูลนี้ต่อผู้ใช้ ระบุสตริงที่กระชับซึ่งแสดงต่อผู้ใช้ได้ เช่น หากจำนวนคือ 1,000,000 ให้พิจารณาใช้ตัวย่อ เช่น 1M เพื่อไม่ให้ข้อความถูกตัดในจอแสดงผลขนาดเล็ก

สตริง
การให้คะแนน - ค่าจำนวน ไม่บังคับ

จำนวนคะแนนสำหรับกิจกรรม

หมายเหตุ: ระบุช่องนี้หากคุณไม่ต้องการจัดการตรรกะตัวย่อที่แสดงด้วยตนเอง หากมีทั้งจำนวนและค่าจำนวน เราจะใช้จำนวนเพื่อแสดงต่อผู้ใช้

ยาว
หมวดหมู่เนื้อหา ไม่บังคับ อธิบายหมวดหมู่ของเนื้อหาในเอนทิตี

รายการ Enum ที่มีสิทธิ์

  • 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 (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

LodgingReservationEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

ข้อความอิสระ เช่น "การเข้าพักตั้งแต่วันที่ 12 ธ.ค."

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

เวลาเช็คอินที่แปลแล้ว - การประทับเวลา ต้องระบุ การประทับเวลา Epoch ที่แสดงเวลาเช็คอินสำหรับการจอง Joda-Time Instant
เวลาเช็คอินที่แปลแล้ว - เขตเวลา ต้องระบุ เขตเวลาของเวลาเช็คอินสำหรับการจอง

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

เวลาเช็คเอาต์ที่แปลแล้ว - การประทับเวลา ต้องระบุ การประทับเวลา Epoch ที่แสดงเวลาเช็คเอาต์สำหรับการจอง Joda-Time Instant
เวลาเช็คเอาต์ที่แปลแล้ว - เขตเวลา ต้องระบุ เขตเวลาของเวลาเช็คเอาต์สำหรับการจอง

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

สถานที่ตั้ง - ประเทศ ต้องระบุ ประเทศที่ที่พักตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - เมือง ต้องระบุ เมืองที่พักตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ที่อยู่สำหรับแสดงผล ต้องระบุ ที่อยู่ที่จะแสดงต่อผู้ใช้ ระบุที่อยู่ที่กระชับ โดยใช้ตัวย่อหากเป็นไปได้ (เช่น "ถ." แทน "ถนน") สตริงนี้อาจถูกตัดให้สั้นลงตามอุปกรณ์และการตั้งค่าของผู้ใช้ ระบุชื่อเมืองเพื่อการระบุที่ชัดเจน

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: สูงสุดประมาณ 35 อักขระ

สถานที่ตั้ง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของที่พัก

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ที่ที่พักตั้งอยู่

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของที่พัก

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ตั้ง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ของที่พัก

ข้อความอิสระ

Recommended text size: max ~20 chars

รูปภาพโปสเตอร์ ไม่บังคับ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

หมายเหตุ: หากมีป้าย ให้เว้นพื้นที่ปลอดภัย 24 dps ทั้งด้านบนและด้านล่างของรูปภาพ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

รหัสการจอง ไม่บังคับ รหัสการจองสำหรับการจองที่พัก ข้อความอิสระ
คะแนน - ค่าสูงสุด ไม่บังคับ

ค่าสูงสุดของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าปัจจุบันของคะแนนด้วย

ตัวเลข >= 0.0
คะแนน - ค่าปัจจุบัน ไม่บังคับ

ค่าปัจจุบันของสเกลการให้คะแนน

ต้องระบุหากมีการระบุค่าสูงสุดของคะแนนด้วย

ตัวเลข >= 0.0
การให้คะแนน - จำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับที่พัก

หมายเหตุ: ระบุช่องนี้หากแอปต้องการควบคุมวิธีแสดงข้อมูลนี้ต่อผู้ใช้ ระบุสตริงที่กระชับซึ่งแสดงต่อผู้ใช้ได้ เช่น หากจำนวนคือ 1,000,000 ให้พิจารณาใช้ตัวย่อ เช่น 1M เพื่อไม่ให้ข้อความถูกตัดในจอแสดงผลขนาดเล็ก

สตริง
การให้คะแนน - ค่าจำนวน ไม่บังคับ

จำนวนการให้คะแนนสำหรับที่พัก

หมายเหตุ: ระบุช่องนี้หากคุณไม่ต้องการจัดการตรรกะตัวย่อที่แสดงด้วยตนเอง หากมีทั้งจำนวนและค่าจำนวน เราจะใช้จำนวนเพื่อแสดงต่อผู้ใช้

ยาว
Price - CurrentPrice ต้องมีแบบมีเงื่อนไข

ราคาปัจจุบันของที่พัก

ต้องระบุหากระบุราคาที่ขีดฆ่า

ข้อความอิสระ
Price - StrikethroughPrice ไม่บังคับ ราคาเดิมของที่พัก ซึ่งจะถูกขีดทับใน UI ข้อความอิสระ
ข้อความไฮไลต์ราคา ไม่บังคับ ข้อความไฮไลต์ราคาเพื่อแสดงโปรโมชัน กิจกรรม ส่วนลดสำหรับสมาชิก (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

TransportationReservationEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

ข้อความอิสระ เช่น "SFO to SAN"

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

ประเภทการขนส่ง ต้องระบุ รูปแบบ/ประเภทการเดินทางสำหรับการจอง Enum: FLIGHT, TRAIN, BUS หรือ FERRY
เวลาออกเดินทางที่แปลแล้ว - การประทับเวลา ต้องระบุ การประทับเวลา Epoch ที่แสดงเวลาออกเดินทาง Joda-Time Instant
เวลาออกเดินทางที่แปลแล้ว - เขตเวลา ต้องระบุ เขตเวลาของเวลาออกเดินทาง

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

เวลาถึงที่แปลแล้ว - การประทับเวลา ต้องระบุ การประทับเวลา Epoch ที่แสดงเวลาถึง Joda-Time Instant
เวลาถึงที่แปลแล้ว - เขตเวลา ต้องระบุ เขตเวลาของเวลาถึง

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

หมายเลขการขนส่ง ต้องระบุ หมายเลขเที่ยวบิน หมายเลขรถประจำทาง หมายเลขรถไฟ หรือหมายเลขเรือข้ามฟาก/เรือสำราญ ข้อความอิสระ
เวลาขึ้นเครื่องที่แปลแล้ว - การประทับเวลา ต้องระบุ การประทับเวลา Epoch ที่แสดงเวลาขึ้นเครื่องสำหรับการจอง (หากมี) Joda-Time Instant
เวลาขึ้นเครื่องที่แปลแล้ว - เขตเวลา ต้องระบุ เขตเวลาของเวลาขึ้นเครื่องสำหรับการจอง (หากมี)

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

สถานที่ออกเดินทาง - ประเทศ ไม่บังคับ ประเทศต้นทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ออกเดินทาง - เมือง ไม่บังคับ เมืองที่ออกเดินทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ออกเดินทาง - ที่อยู่สำหรับแสดงผล ไม่บังคับ สถานที่ออกเดินทางที่จะแสดงต่อผู้ใช้

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ออกเดินทาง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของสถานที่ออกเดินทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ออกเดินทาง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ของสถานที่ออกเดินทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ออกเดินทาง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของสถานที่ออกเดินทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ออกเดินทาง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ของสถานที่ออกเดินทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ปลายทาง - ประเทศ ไม่บังคับ ประเทศปลายทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ปลายทาง - เมือง ไม่บังคับ เมืองปลายทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ปลายทาง - ที่อยู่ที่แสดง ไม่บังคับ สถานที่ปลายทางที่จะแสดงต่อผู้ใช้

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่มาถึง - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของสถานที่ปลายทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ปลายทาง - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ของสถานที่ปลายทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ปลายทาง - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของสถานที่ปลายทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

สถานที่ปลายทาง - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ของสถานที่ปลายทาง

ข้อความอิสระ

Recommended text size: max ~20 chars

ผู้ให้บริการ - ชื่อ ไม่บังคับ

ชื่อผู้ให้บริการ

หมายเหตุ: ต้องระบุข้อความหรือรูปภาพสำหรับผู้ให้บริการ

ข้อความอิสระ เช่น ชื่อสายการบิน
ผู้ให้บริการ - รูปภาพ ไม่บังคับ

โลโก้/รูปภาพของผู้ให้บริการ

หมายเหตุ: ต้องระบุข้อความหรือรูปภาพสำหรับผู้ให้บริการ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
รูปภาพโปสเตอร์ ไม่บังคับ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

รหัสการจอง ไม่บังคับ รหัสการจองสำหรับการจองการเดินทาง ข้อความอิสระ
Price - CurrentPrice ต้องมีแบบมีเงื่อนไข

ราคาปัจจุบันของการจอง

ต้องระบุหากระบุราคาที่ขีดฆ่า

ข้อความอิสระ
Price - StrikethroughPrice ไม่บังคับ ราคาเดิมของการจอง ซึ่งจะถูกขีดทับใน UI ข้อความอิสระ
ข้อความไฮไลต์ราคา ไม่บังคับ ข้อความไฮไลต์ราคาเพื่อแสดงโปรโมชัน กิจกรรม ส่วนลดสำหรับสมาชิก (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

VehicleRentalReservationEntity

แอตทริบิวต์ ข้อกำหนด คำอธิบาย รูปแบบ
URI การดำเนินการ ต้องระบุ

Deep Link ไปยังเอนทิตีในแอปของผู้ให้บริการ

หมายเหตุ: คุณใช้ Deep Link สำหรับการระบุแหล่งที่มาได้ ดูคำถามที่พบบ่อยนี้

URI
ชื่อ ต้องระบุ ชื่อของเอนทิตี

ข้อความอิสระ เช่น "Avis Union Square SF"

ขนาดข้อความที่แนะนำ: สูงสุด 50 อักขระ

เวลาที่รับสินค้าที่แปลแล้ว - การประทับเวลา ต้องระบุ การประทับเวลา Epoch ที่แสดงเวลารับสินค้าสำหรับการจอง Joda-Time Instant
เวลาที่รับสินค้าที่แปลแล้ว - เขตเวลา ต้องระบุ เขตเวลาของเวลารับสำหรับการจอง

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

เวลาเดินทางกลับที่แปลแล้ว - การประทับเวลา ไม่บังคับ การประทับเวลา Epoch ที่แสดงเวลาเช็คเอาต์สำหรับการจอง Joda-Time Instant
เวลาที่ส่งคืนที่แปลแล้ว - เขตเวลา ไม่บังคับ เขตเวลาของเวลาเช็คเอาต์สำหรับการจอง

Joda-Time DateTimeZone

ดูคำแนะนำได้ที่ข้อกำหนดเขตเวลา

Pickup Address - Country ไม่บังคับ ประเทศของสถานที่รับสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับรับสินค้า - เมือง ไม่บังคับ เมืองของสถานที่รับ

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับรับสินค้า - แสดงที่อยู่ ไม่บังคับ สถานที่รับสินค้าที่จะแสดงต่อผู้ใช้

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับรับสินค้า - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของสถานที่รับสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับรับสินค้า - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ของสถานที่รับ

ข้อความอิสระ

Recommended text size: max ~20 chars

Pickup Address - Zip code ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของสถานที่รับสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่จุดรับ - ย่านใกล้เคียง ไม่บังคับ ย่านใกล้เคียง (หากมี) ของสถานที่รับ

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับคืนสินค้า - ประเทศ ไม่บังคับ ประเทศของสถานที่ตั้งสำหรับการคืนสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับคืนสินค้า - เมือง ไม่บังคับ เมืองของสถานที่ตั้งสำหรับการคืนสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับคืนสินค้า - ที่อยู่สำหรับแสดง ไม่บังคับ สถานที่ตั้งสำหรับการคืนสินค้าที่จะแสดงต่อผู้ใช้

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับคืนสินค้า - ที่อยู่ ไม่บังคับ ที่อยู่ (หากมี) ของสถานที่ตั้งสำหรับการคืนสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับคืนสินค้า - รัฐ ไม่บังคับ รัฐหรือจังหวัด (หากมี) ของสถานที่ตั้งสำหรับการคืนสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับคืนสินค้า - รหัสไปรษณีย์ ไม่บังคับ รหัสไปรษณีย์ (หากมี) ของสถานที่ตั้งสำหรับการคืนสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ที่อยู่สำหรับคืนสินค้า - ย่านใกล้เคียง ไม่บังคับ ย่าน (หากมี) ของสถานที่ตั้งสำหรับการคืนสินค้า

ข้อความอิสระ

Recommended text size: max ~20 chars

ผู้ให้บริการ - ชื่อ ไม่บังคับ

ชื่อผู้ให้บริการ

หมายเหตุ: ต้องระบุข้อความหรือรูปภาพสำหรับผู้ให้บริการ

ข้อความอิสระ เช่น "Avis Car Rental"
ผู้ให้บริการ - รูปภาพ ไม่บังคับ

โลโก้/รูปภาพของผู้ให้บริการ

หมายเหตุ: ต้องระบุข้อความหรือรูปภาพสำหรับผู้ให้บริการ

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
รูปภาพโปสเตอร์ ไม่บังคับ

เราจะแสดงรูปภาพเพียง 1 รูปเมื่อมีการระบุรูปภาพหลายรูป สัดส่วนภาพที่แนะนำคือ 16:9

ดูคำแนะนำได้ที่ข้อกำหนดเกี่ยวกับรูปภาพ
คำอธิบาย ไม่บังคับ

ข้อความ 1 ย่อหน้าที่อธิบายเอนทิตี

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: 180 อักขระ

รายการคำบรรยาย ไม่บังคับ

คำบรรยายสูงสุด 3 รายการ โดยคำบรรยายแต่ละรายการเป็นข้อความบรรทัดเดียว

หมายเหตุ: ระบบจะแสดงคำอธิบายหรือรายการคำบรรยายอย่างใดอย่างหนึ่งให้ผู้ใช้เห็น ไม่ใช่ทั้ง 2 อย่าง

ข้อความอิสระ

ขนาดข้อความที่แนะนำสำหรับคำบรรยายแต่ละรายการ: สูงสุด 50 อักขระ

รหัสยืนยัน ไม่บังคับ รหัสยืนยันการจองรถเช่า ข้อความอิสระ
Price - CurrentPrice ต้องมีแบบมีเงื่อนไข

ราคาปัจจุบันของการจอง

ต้องระบุหากระบุราคาที่ขีดฆ่า

ข้อความอิสระ
Price - StrikethroughPrice ไม่บังคับ ราคาเดิมของการจอง ซึ่งจะถูกขีดทับใน UI ข้อความอิสระ
ข้อความไฮไลต์ราคา ไม่บังคับ ข้อความไฮไลต์ราคาเพื่อแสดงโปรโมชัน กิจกรรม ส่วนลดสำหรับสมาชิก (หากมี)

ข้อความอิสระ

ขนาดข้อความที่แนะนำ: ไม่เกิน 45 อักขระ (ข้อความที่ยาวเกินไปอาจแสดงจุดไข่ปลา)

DisplayTimeWindow (ไม่บังคับ) - กำหนดกรอบเวลาสำหรับเนื้อหาที่จะแสดงบนแพลตฟอร์ม
การประทับเวลาเริ่มต้น ไม่บังคับ

การประทับเวลา Epoch ที่ควรแสดงเนื้อหาบนแพลตฟอร์ม

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที
การประทับเวลาสิ้นสุด ไม่บังคับ

การประทับเวลา Epoch หลังจากที่เนื้อหาไม่แสดงบนแพลตฟอร์มอีกต่อไป

หากไม่ได้ตั้งค่าไว้ เนื้อหาจะมีสิทธิ์แสดงบนแพลตฟอร์ม

การประทับเวลา Epoch ในหน่วยมิลลิวินาที

ข้อกำหนดเกี่ยวกับรูปภาพ

ข้อกำหนดที่จำเป็นสำหรับชิ้นงานรูปภาพแสดงอยู่ในตารางนี้

สัดส่วนภาพ พิกเซลขั้นต่ำ พิกเซลแนะนํา

สี่เหลี่ยมจัตุรัส (1x1)

Preferred

300x300 1200x1200
แนวนอน (1.91x1) 600x314 1200x628
แนวตั้ง (4x5) 480x600 960x1200

รูปภาพต้องโฮสต์อยู่ใน CDN สาธารณะเพื่อให้ Google เข้าถึงได้

รูปแบบไฟล์

PNG, JPG, GIF แบบภาพนิ่ง, WebP

ขนาดไฟล์สูงสุด

5120 KB

คำแนะนำเพิ่มเติม

  • พื้นที่ปลอดภัยสำหรับรูปภาพ: ใส่เนื้อหาสำคัญไว้ตรงกลาง ซึ่งก็คือ 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 ดังนี้

  3. ช่อง ContentCategory เป็นช่องที่ไม่บังคับ และควรเว้นว่างไว้หากเนื้อหาไม่ได้อยู่ในหมวดหมู่ใดๆ ที่กล่าวถึงก่อนหน้านี้

  4. ในกรณีที่มีหมวดหมู่เนื้อหาหลายหมวดหมู่ ให้ระบุตามลำดับความเกี่ยวข้องกับเนื้อหา โดยให้หมวดหมู่เนื้อหาที่เกี่ยวข้องมากที่สุดอยู่ในอันดับแรกของรายการ

ขั้นตอนที่ 2: ระบุข้อมูลคลัสเตอร์

ขอแนะนำให้เรียกใช้งานการเผยแพร่เนื้อหาในเบื้องหลัง (เช่น ใช้ WorkManager) และกำหนดเวลาเป็นประจำหรือตามเหตุการณ์ (เช่น ทุกครั้งที่ผู้ใช้เปิดแอปหรือเมื่อผู้ใช้เพิ่งเพิ่มสินค้าลงในรถเข็น)

AppEngageTravelClient มีหน้าที่เผยแพร่คลัสเตอร์

API ต่อไปนี้ใช้เพื่อเผยแพร่คลัสเตอร์ในไคลเอ็นต์

  • isServiceAvailable
  • publishRecommendationClusters
  • publishFeaturedCluster
  • publishReservationCluster
  • publishContinueSearchCluster
  • publishUserAccountManagementRequest
  • updatePublishStatus
  • deleteRecommendationsClusters
  • deleteFeaturedCluster
  • deleteReservationCluster
  • deleteContinueSearchCluster
  • deleteUserManagementCluster
  • deleteClusters

isServiceAvailable

API นี้ใช้เพื่อตรวจสอบว่าบริการพร้อมสำหรับการผสานรวมหรือไม่ และเนื้อหาจะแสดงบนอุปกรณ์ได้หรือไม่

คุณสามารถตรวจสอบความพร้อมให้บริการสำหรับคลัสเตอร์ทุกประเภทที่ต้องการเผยแพร่ได้ isServiceAvailable API จะยอมรับออบเจ็กต์คำขอ ServiceAvailabilityRequest ซึ่งมีประเภทคลัสเตอร์ที่ต้องตรวจสอบความพร้อมให้บริการ คุณสามารถดูค่า enum ของ 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 เป็นต้นไป Engage SDK จะช่วยให้ตรวจสอบความพร้อมใช้งานของคลัสเตอร์บางประเภทได้ หากแอปของคุณใช้การส่งผ่านข้อมูลเป็นระยะๆ ให้ทำดังนี้

  • คลัสเตอร์ความต่อเนื่อง (เช่น การจองและการค้นหาต่อ) จะยังคงเปิดใช้อยู่โดยค่าเริ่มต้นในอุปกรณ์ที่รองรับทั้งหมด
  • คลัสเตอร์ประเภทอื่นๆ (เช่น วิดีโอแนะนำ) จะเปิดและปิดใช้เป็นระยะๆ

หากการกำหนดค่าเริ่มต้นนี้ไม่เหมาะกับความต้องการของคุณ โปรดติดต่อ engage-developers@google.com

สำหรับ SDK เวอร์ชันก่อน v1.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

API นี้ใช้เพื่อเผยแพร่รายการออบเจ็กต์ 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

API นี้ใช้เพื่อเผยแพร่รายการออบเจ็กต์ FeaturedCluster

Kotlin

client.publishFeaturedCluster(
    PublishFeaturedClusterRequest.Builder()
      .setFeaturedCluster(
        FeaturedCluster.Builder()
          .addEntity(entity1)
          .addEntity(entity2)
          .build())
      .build())

Java

client.publishFeaturedCluster(
            new PublishFeaturedClusterRequest.Builder()
                .setFeaturedCluster(
                    new FeaturedCluster.Builder()
                        .addEntity(entity1)
                        .addEntity(entity2)
                        .build())
                .build());

เมื่อบริการได้รับคำขอ ระบบจะดำเนินการต่อไปนี้ภายในธุรกรรมเดียว

  • ระบบจะนำข้อมูล FeaturedCluster ที่มีอยู่จากพาร์ทเนอร์นักพัฒนาออก
  • ระบบจะแยกวิเคราะห์และจัดเก็บข้อมูลจากคำขอในคลัสเตอร์ที่แนะนำที่อัปเดต

ในกรณีที่เกิดข้อผิดพลาด ระบบจะปฏิเสธคำขอทั้งหมดและคงสถานะที่มีอยู่ไว้

publishReservationCluster

API นี้ใช้เพื่อเผยแพร่ออบเจ็กต์ 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 ที่มีอยู่จากพาร์ทเนอร์นักพัฒนาออก
  • ระบบจะแยกวิเคราะห์และจัดเก็บข้อมูลจากคำขอในคลัสเตอร์การจองที่อัปเดต

ในกรณีที่เกิดข้อผิดพลาด ระบบจะปฏิเสธคำขอทั้งหมดและคงสถานะที่มีอยู่ไว้

publishContinueSearchCluster

API นี้ใช้เพื่อเผยแพร่รายการออบเจ็กต์ 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

API นี้ใช้เพื่อเผยแพร่การ์ดลงชื่อเข้าใช้ การดำเนินการลงชื่อเข้าใช้จะนำผู้ใช้ไปยังหน้าลงชื่อเข้าใช้ของแอปเพื่อให้แอปเผยแพร่เนื้อหา (หรือแสดงเนื้อหาที่ปรับเปลี่ยนในแบบของผู้ใช้มากขึ้น) ได้

ข้อมูลเมตาต่อไปนี้เป็นส่วนหนึ่งของการ์ดลงชื่อเข้าใช้ -

แอตทริบิวต์ ข้อกำหนด คำอธิบาย
URI การดำเนินการ ต้องระบุ Deep Link ไปยังการดำเนินการ (เช่น ไปยังหน้าลงชื่อเข้าใช้แอป)
รูปภาพ ไม่บังคับ - หากไม่ได้ระบุ ต้องระบุชื่อ

รูปภาพที่แสดงในการ์ด

รูปภาพสัดส่วนภาพ 16x9 ที่มีความละเอียด 1264x712

ชื่อ ไม่บังคับ - หากไม่ได้ระบุ ต้องระบุรูปภาพ ชื่อบนบัตร
ข้อความเกี่ยวกับการดำเนินการ ไม่บังคับ ข้อความที่แสดงบน CTA (เช่น ลงชื่อเข้าใช้)
ชื่อรอง ไม่บังคับ คำบรรยายที่ไม่บังคับในการ์ด

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

หากไม่มีการเผยแพร่คลัสเตอร์ใดเลยเนื่องจากเหตุผลทางธุรกิจภายใน เราขอแนะนำอย่างยิ่งให้อัปเดตสถานะการเผยแพร่โดยใช้ API 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 จะแนะนำให้เผยแพร่การ์ดลงชื่อเข้าใช้ หากผู้ให้บริการไม่สามารถเผยแพร่การ์ดลงชื่อเข้าใช้ได้ไม่ว่าด้วยเหตุผลใดก็ตาม เราขอแนะนำให้เรียกใช้ API 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());

deleteRecommendationsClusters

API นี้ใช้เพื่อลบเนื้อหาของคลัสเตอร์วิดีโอแนะนำ

Kotlin

client.deleteRecommendationsClusters()

Java

client.deleteRecommendationsClusters();

เมื่อบริการได้รับคำขอ ระบบจะนำข้อมูลที่มีอยู่ออกจากคลัสเตอร์วิดีโอแนะนำ ในกรณีที่เกิดข้อผิดพลาด ระบบจะปฏิเสธคำขอทั้งหมดและคงสถานะที่มีอยู่ไว้

deleteFeaturedCluster

API นี้ใช้เพื่อลบเนื้อหาของคลัสเตอร์ที่แนะนํา

Kotlin

client.deleteFeaturedCluster()

Java

client.deleteFeaturedCluster();

เมื่อบริการได้รับคำขอ ระบบจะนำข้อมูลที่มีอยู่ออกจากคลัสเตอร์ที่แนะนำ ในกรณีที่เกิดข้อผิดพลาด ระบบจะปฏิเสธคำขอทั้งหมดและคงสถานะที่มีอยู่ไว้

deleteReservationCluster

API นี้ใช้เพื่อลบเนื้อหาของคลัสเตอร์การจอง

Kotlin

client.deleteReservationCluster()

Java

client.deleteReservationCluster();

เมื่อบริการได้รับคำขอ ระบบจะนำข้อมูลที่มีอยู่ออกจากคลัสเตอร์การจอง ในกรณีที่เกิดข้อผิดพลาด ระบบจะปฏิเสธคำขอทั้งหมดและคงสถานะที่มีอยู่ไว้

deleteUserManagementCluster

API นี้ใช้เพื่อลบเนื้อหาของคลัสเตอร์ UserAccountManagement

Kotlin

client.deleteUserManagementCluster()

Java

client.deleteUserManagementCluster();

เมื่อบริการได้รับคำขอ ระบบจะนำข้อมูลที่มีอยู่ออกจากคลัสเตอร์ UserAccountManagement ในกรณีที่เกิดข้อผิดพลาด คำขอทั้งหมดจะถูกปฏิเสธและระบบจะคงสถานะที่มีอยู่ไว้

deleteContinueSearchCluster

API นี้ใช้เพื่อลบเนื้อหาของคลัสเตอร์การค้นหาต่อ

Kotlin

client.deleteContinueSearchCluster()

Java

client.deleteContinueSearchCluster();

เมื่อบริการได้รับคำขอ ระบบจะนำข้อมูลที่มีอยู่ออกจากคลัสเตอร์การค้นหาต่อ ในกรณีที่เกิดข้อผิดพลาด ระบบจะปฏิเสธคำขอทั้งหมดและคงสถานะที่มีอยู่ไว้

deleteClusters

API นี้ใช้เพื่อลบเนื้อหาของประเภทคลัสเตอร์ที่ระบุ

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());

เมื่อบริการได้รับคำขอ ระบบจะนำข้อมูลที่มีอยู่ออกจากคลัสเตอร์ทั้งหมดที่ตรงกับประเภทคลัสเตอร์ที่ระบุ ไคลเอ็นต์สามารถเลือกส่งคลัสเตอร์ประเภทเดียวหรือหลายประเภทก็ได้ ในกรณีที่เกิดข้อผิดพลาด ระบบจะปฏิเสธคำขอทั้งหมดและคงสถานะที่มีอยู่ไว้

การจัดการข้อผิดพลาด

เราขอแนะนำอย่างยิ่งให้ฟังผลลัพธ์ของงานจาก API การเผยแพร่ เพื่อให้สามารถดำเนินการติดตามผลเพื่อกู้คืนและส่งงานที่สำเร็จอีกครั้งได้

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: จัดการ Intent ของการออกอากาศ

นอกจากการเรียก API เพื่อเผยแพร่เนื้อหาผ่านงานแล้ว คุณยังต้องตั้งค่า BroadcastReceiver เพื่อรับคำขอเผยแพร่เนื้อหาด้วย

เป้าหมายของ Intent การออกอากาศคือการเปิดใช้งานแอปอีกครั้งและการบังคับให้ซิงค์ข้อมูลเป็นหลัก Intent การออกอากาศไม่ได้ออกแบบมาให้ส่งบ่อยเกินไป โดยจะทริกเกอร์ก็ต่อเมื่อบริการ Engage พิจารณาว่าเนื้อหาอาจเก่าแล้ว (เช่น มีอายุ 1 สัปดาห์) วิธีนี้จะช่วยเพิ่มความมั่นใจว่าผู้ใช้จะได้รับประสบการณ์การใช้งานเนื้อหาที่อัปเดตใหม่ แม้ว่าจะไม่ได้เรียกใช้แอปพลิเคชันเป็นเวลานานก็ตาม

คุณต้องตั้งค่า BroadcastReceiver ด้วย 2 วิธีต่อไปนี้

  • ลงทะเบียนอินสแตนซ์ของคลาส 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 ซึ่งจะช่วยให้แอปพลิเคชันได้รับ Intent การออกอากาศเมื่อไม่ได้ทำงาน และยังช่วยให้แอปพลิเคชันเผยแพร่เนื้อหาได้ด้วย

<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 เมื่อได้รับ Intent นี้
  • com.google.android.engage.action.PUBLISH_FEATURED ขอแนะนำให้เริ่มการโทร publishFeaturedCluster เมื่อได้รับ Intent นี้
  • com.google.android.engage.action.travel.PUBLISH_CONTINUE_SEARCH ขอแนะนำให้เริ่มการโทร publishContinueSearchCluster เมื่อได้รับ Intent นี้
  • com.google.android.engage.action.travel.PUBLISH_RESERVATION ขอแนะนำให้เริ่มการโทร publishReservationCluster เมื่อได้รับ Intent นี้

เวิร์กโฟลว์การผสานรวม

ดูคำแนะนำทีละขั้นตอนในการยืนยันการผสานรวมหลังจากที่ผสานรวมเสร็จแล้วได้ที่เวิร์กโฟลว์การผสานรวมของนักพัฒนาแอป Engage

คำถามที่พบบ่อย

ดูคำถามที่พบบ่อยได้ที่คำถามที่พบบ่อยเกี่ยวกับ Engage SDK

รายชื่อติดต่อ

โปรดติดต่อ engage-developers@google.com หากมีคำถามระหว่างกระบวนการผสานรวม

ขั้นตอนถัดไป

หลังจากผสานรวมเสร็จแล้ว ขั้นตอนถัดไปมีดังนี้

  • ส่งอีเมลไปที่ engage-developers@google.com และแนบ APK ที่ผสานรวมซึ่งพร้อมให้ Google ทดสอบ
  • Google จะดำเนินการตรวจสอบและตรวจสอบภายในเพื่อให้แน่ใจว่าการผสานรวมทำงานได้ตามที่คาดไว้ หากจำเป็นต้องทำการเปลี่ยนแปลง Google จะติดต่อคุณพร้อมรายละเอียดที่จำเป็น
  • เมื่อการทดสอบเสร็จสมบูรณ์และไม่จำเป็นต้องทำการเปลี่ยนแปลงใดๆ Google จะติดต่อคุณเพื่อแจ้งให้ทราบว่าคุณสามารถเริ่มเผยแพร่ APK ที่อัปเดตและผสานรวมแล้วไปยัง Play Store ได้
  • หลังจาก Google ยืนยันว่า APK ที่อัปเดตได้รับการเผยแพร่ไปยัง Play Store แล้ว ระบบอาจเผยแพร่คลัสเตอร์วิดีโอแนะนำ แนะนำ การจอง และค้นหาต่อ และแสดงให้ผู้ใช้เห็น