การจัดโครงสร้างความพร้อมให้บริการในฟีด

การเลือกรูปแบบความพร้อมให้บริการ

ข้อมูลความพร้อมจำหน่ายมี 2 วิธี ได้แก่ (1) Spots Open หรือ (2) Recurrence เลือกเพียงวิธีเดียวที่จะใช้กับผู้ขายและบริการทั้งหมด เมื่อเลือกวิธีการแล้ว คุณต้องยึดตามวิธีการนั้นตลอดการผสานรวม (ฟีด เซิร์ฟเวอร์การจอง และการอัปเดตแบบเรียลไทม์)

ใช้คำแนะนำต่อไปนี้เพื่อช่วยคุณพิจารณาว่ารูปแบบความพร้อมใช้งานใดเหมาะกว่า

  • ในระบบของคุณ คุณจัดเก็บความพร้อมจำหน่ายเป็นช่วงเวลาที่ชัดเจน เช่น 8:00 น. - 8:30 น. หรือไม่
  • ในระบบของคุณ คุณจัดเก็บความพร้อมให้บริการในรูปแบบที่เกิดซ้ำหรือไม่ ซึ่งหมายความว่าผู้ขายมีบริการที่ให้บริการด้วยความถี่ที่สอดคล้องกันโดยมีการเปลี่ยนแปลงเพียงเล็กน้อย ตัวอย่างเช่น ช่วงเวลาจะซ้ำทุกๆ 15 นาทีตั้งแต่เวลา 09:00 - 17:00 น. และมีที่นั่งว่างเพียง 1 ที่ในแต่ละช่วงเวลา 15 นาที
  • บริการของผู้ขายมีเวลาว่างมากกว่า 1 ช่วงเวลาพร้อมกันได้ไหม เช่น มีที่ว่าง 30 ที่สำหรับชั้นเรียน
  • ไม่ตรงกับข้อใดเลยใช่ไหม
    • ใช้ Spots Open
    • หมายเหตุ: แม้ว่าการใช้ความถี่จะมีประสิทธิภาพมากกว่าและอาจทำให้ฟีดมีขนาดเล็กลง แต่เราไม่แนะนำให้ใช้ความถี่หากโมเดลข้อมูลของคุณไม่รองรับความถี่โดยกำเนิด เนื่องจากคุณจะต้องคํานวณช่องที่เกิดซ้ำตลอดทั้งวันใหม่ทุกครั้งที่มีการอัปเดตแบบเรียลไทม์

    จุดที่เปิด

    คำจำกัดความพารามิเตอร์:

    • spots_open: จำนวนตำแหน่งที่พร้อมใช้งานสำหรับรายการความพร้อมนี้ในปัจจุบัน
    • spots_total: จํานวนพื้นที่โฆษณาทั้งหมดที่ผู้ขายมีสําหรับการกําหนดค่านี้ รวมถึงพื้นที่โฆษณาที่ไม่พร้อมใช้งาน

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

    เมื่อมีการจอง จำนวน spots_open ควรลดลง 1 รายการผ่านการอัปเดตแบบเรียลไทม์ (จำนวน spots_total ควรคงที่) เมื่อ spots_open = 0 ช่องโฆษณาจะไม่ปรากฏขึ้นอีก

    ตัวอย่างบริการ

    ชั้นเรียนโยคะหรือร้านเสริมสวยมีผังชั้นต่อไปนี้และไม่มีการจองที่ใช้งานอยู่

    รูปที่ 1: แผนผังชั้นที่ไม่มีการจองที่ใช้งานอยู่

    ฟีดความพร้อมจำหน่ายสินค้าสำหรับช่วงเวลา 2 ช่วงของผู้ขายเหล่านี้จะมีลักษณะดังนี้

    JSON
        {
          "availability": [
                {
                  "spots_total": 6,
                  "spots_open": 6,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535817600, # Sept 1, 2018 4:00:00 PM GMT
                  "merchant_id": "1001"
                },
                {
                  "spots_total": 6,
                  "spots_open": 6,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535832000, # Sept 1, 2018 8:00:00 PM GMT
                  "merchant_id": "1001",
                }
              ]
        }
        

    ตัวอย่างบริการที่มีการจอง

    รูปที่ 2: แผนผังชั้นที่มีการจองที่ใช้งานอยู่ 1 รายการ

    ตอนนี้ผู้ใช้จองจุดใดจุดหนึ่ง เมื่อมีการจอง ระบบจะอัปเดตข้อมูลความพร้อมให้บริการแบบเรียลไทม์ การจองนี้ควรแสดงในฟีดห้องว่างรายวันครั้งถัดไป ฟีดความพร้อมให้บริการของผู้ขายเหล่านี้จะมี spots_open ลดลง 1 รายการสำหรับช่วงเวลาวันที่ 1 กันยายน 2018 เวลา 16:00:00 น. GMT ส่วนช่วงเวลา 20:00:00 น. GMT ของวันที่ 1 ก.ย. 2018 จะไม่มีการเปลี่ยนแปลง

    ข้อมูลโค้ดที่ติดทั่วเว็บไซต์ของฟีดที่มีการจอง

    JSON
        {
          "availability": [
                {
                  "spots_total": 6,
                  "spots_open": 5,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535817600, # Sept 1, 2018 4:00:00 PM GMT
                  "merchant_id": "1001"
                },
                {
                  "spots_total": 6,
                  "spots_open": 6,
                  "duration_sec": 3600,
                  "service_id": "1001",
                  "start_sec": 1535832000, # Sept 1, 2018 8:00:00 PM GMT
                  "merchant_id": "1001",
                }
              ]
    }
        

    การเกิดซ้ำ

    คำจำกัดความของพารามิเตอร์

    • ความถี่: การนำเสนอช่วงเวลาที่พร้อมให้บริการซ้ำๆ อย่างต่อเนื่อง
    • repeat_until_sec: การประทับเวลา UTC ของเวลาสิ้นสุดของช่วงเวลาสุดท้ายที่ห้องว่างจะซ้ำ
    • repeat_every_sec: จํานวนวินาทีระหว่างช่วงเวลาที่พร้อมให้บริการติดต่อกัน เช่น หาก repeat_every_sec = 1800 (30 นาที) และ start_sec เริ่มต้นที่ 9:00 น. ช่วงเวลาจะแสดงซ้ำทุก 30 นาทีที่ 9:00 น. 9:30 น. 10:00 น. เป็นต้น
      • หมายเหตุ: คุณไม่จำเป็นต้องระบุ spots_open และ spots_total ระบบจะถือว่าทั้ง 2 รายการเป็น 1 เว้นแต่จะมี schedule_exception

    วิธีการเกิดซ้ำจะระบุความพร้อมให้บริการในแต่ละวันสำหรับบริการที่เกิดขึ้นเป็นระยะๆ เช่น บริการที่เกิดขึ้นทุก 30 นาทีตั้งแต่เวลา 09:00 น. - 17:00 น. ของทุกวัน เมื่อใช้การเกิดซ้ำ คุณต้องระบุระยะเวลาของช่วงเวลา เวลาที่ช่วงเวลานั้นเกิดขึ้นเป็นครั้งแรกในแต่ละวัน ความถี่ที่ช่วงเวลานั้นควรเกิดซ้ำ และเวลาที่ช่วงเวลานั้นควรหยุดเกิดซ้ำในวันเดียวกัน หมายเหตุ: คุณต้องระบุชุดช่องที่เกิดซ้ำใหม่สําหรับแต่ละวันแยกกัน หากมีช่วงที่ได้รับการจองภายในช่วงเวลาดังกล่าวแล้ว คุณจะต้องระบุข้อยกเว้นกำหนดเวลา เช่น แสดงซ้ำทุกครึ่งชั่วโมงตั้งแต่ 09:00 น. ถึง 21:00 น. ยกเว้นเวลา 11:00 น. ถึง 11:30 น. บริการแต่ละรายการจะมีการทําซ้ำและข้อยกเว้นการกําหนดเวลาเป็นของตัวเอง

    ตัวอย่างบริการ

    ร้านเสริมสวยมีผังชั้นต่อไปนี้และไม่มีการจองที่ใช้งานอยู่

    รูปที่ 3: แผนผังชั้นที่ไม่มีการจองที่ใช้งานอยู่ สมมติว่ามีที่ว่างเพียง 1 ที่ต่อบริการ (เช่น Sally ให้บริการตัดผมทุก 30 นาที แต่ให้บริการลูกค้าได้เพียง 1 คนต่อครั้ง)

    ฟีดความพร้อมจำหน่ายสินค้าสำหรับ 1 ช่วงเวลาของผู้ขายเหล่านี้จะมีลักษณะดังนี้

    ข้อมูลโค้ดฟีด:

    JSON
        {
        "availability": [
              {
                "merchant_id": "1001",
                "service_id": "1001",  # haircut
                "start_sec": 1493888400, # May 4, 2017 9:00:00 AM GMT
                "duration_sec": 1800,
                "recurrence": {
                  "repeat_every_sec": 1800,
                  "repeat_until_sec": 1493915400 # May 4, 2017 4:30:00 PM GMT
                }
              }
            ]
        }
        

    ตัวอย่างบริการที่มีการจอง

    รูปที่ 4: แผนผังชั้นที่มีการจองที่ใช้งานอยู่ 1 รายการ สมมติว่ามีที่ว่างเพียง 1 ที่ต่อบริการ (เช่น Sally ให้บริการตัดผมทุก 30 นาที แต่ให้บริการลูกค้าได้เพียง 1 คนต่อครั้ง)

    ทีนี้ลองสมมติว่าผู้ใช้จองการตัดผมกับ Sally เวลา 12:30 น. เมื่อมีการจอง ระบบจะอัปเดตความพร้อมให้บริการแบบเรียลไทม์ การจองนี้ควรแสดงในฟีดห้องว่างรายวันครั้งถัดไป ฟีดความพร้อมให้บริการสำหรับผู้ขายเหล่านี้จะมีข้อยกเว้นการนัดหมายในช่วง 12:30 - 13:00 น. สำหรับบริการที่มีระยะเวลา 30 นาที

    ข้อมูลโค้ดฟีดที่มีการจอง:

    JSON
        {
          "availability": [
                {
                  "merchant_id": "1001",
                  "service_id": "1001",
                  "start_sec": 1493888400, # May 4, 2017 9:00:00 AM GMT
                  "duration_sec": 1800,
                  "recurrence": {
                    "repeat_every_sec": 1800,
                    "repeat_until_sec": 1493915400 # May 4, 2017 4:30:00 PM GMT
                  },
                  "schedule_exception": [
                    {
                      "time_range": {
                        "begin_sec": 1493901000, # May 4, 2017 12:30:00 PM GMT
                        "end_sec": 1493902800 # May 4, 2017 1:00:00 PM GMT
                      }
                    }
                  ],
                }
              ]
        }