การเลือกรูปแบบความพร้อมให้บริการ
ข้อมูลความพร้อมจำหน่ายมี 2 วิธี ได้แก่ (1) Spots Open หรือ (2) Recurrence เลือกเพียงวิธีเดียวที่จะใช้กับผู้ขายและบริการทั้งหมด เมื่อเลือกวิธีการแล้ว คุณต้องยึดตามวิธีการนั้นตลอดการผสานรวม (ฟีด เซิร์ฟเวอร์การจอง และการอัปเดตแบบเรียลไทม์)
ใช้คำแนะนำต่อไปนี้เพื่อช่วยคุณพิจารณาว่ารูปแบบความพร้อมใช้งานใดเหมาะกว่า
- ในระบบของคุณ คุณจัดเก็บความพร้อมจำหน่ายเป็นช่วงเวลาที่ชัดเจน เช่น 8:00 น. - 8:30 น. หรือไม่
- ใช้ Spots Open
- ในระบบของคุณ คุณจัดเก็บความพร้อมให้บริการในรูปแบบที่เกิดซ้ำหรือไม่ ซึ่งหมายความว่าผู้ขายมีบริการที่ให้บริการด้วยความถี่ที่สอดคล้องกันโดยมีการเปลี่ยนแปลงเพียงเล็กน้อย ตัวอย่างเช่น ช่วงเวลาจะซ้ำทุกๆ 15 นาทีตั้งแต่เวลา 09:00 - 17:00 น. และมีที่นั่งว่างเพียง 1 ที่ในแต่ละช่วงเวลา 15 นาที
- ใช้ ความถี่
- บริการของผู้ขายมีเวลาว่างมากกว่า 1 ช่วงเวลาพร้อมกันได้ไหม เช่น มีที่ว่าง 30 ที่สำหรับชั้นเรียน
- ใช้ Spots Open
- ไม่ตรงกับข้อใดเลยใช่ไหม
- ใช้ Spots Open
- หมายเหตุ: แม้ว่าการใช้ความถี่จะมีประสิทธิภาพมากกว่าและอาจทำให้ฟีดมีขนาดเล็กลง แต่เราไม่แนะนำให้ใช้ความถี่หากโมเดลข้อมูลของคุณไม่รองรับความถี่โดยกำเนิด เนื่องจากคุณจะต้องคํานวณช่องที่เกิดซ้ำตลอดทั้งวันใหม่ทุกครั้งที่มีการอัปเดตแบบเรียลไทม์
จุดที่เปิด
คำจำกัดความพารามิเตอร์:
- spots_open: จำนวนตำแหน่งที่พร้อมใช้งานสำหรับรายการความพร้อมนี้ในปัจจุบัน
- spots_total: จํานวนพื้นที่โฆษณาทั้งหมดที่ผู้ขายมีสําหรับการกําหนดค่านี้ รวมถึงพื้นที่โฆษณาที่ไม่พร้อมใช้งาน
วิธีการเปิดพื้นที่โฆษณาจะระบุความพร้อมของทุกช่องอย่างชัดเจน และรองรับรูปแบบที่มีพื้นที่โฆษณาหลายรายการสําหรับบริการเดียวกัน พารามิเตอร์ 2 รายการนี้ทำงานร่วมกันเพื่อสร้างการนำเสนอแบบดิจิทัลของความสามารถในการให้บริการ
เมื่อมีการจอง จำนวน spots_open ควรลดลง 1 รายการผ่านการอัปเดตแบบเรียลไทม์ (จำนวน spots_total ควรคงที่) เมื่อ spots_open = 0 ช่องโฆษณาจะไม่ปรากฏขึ้นอีก
ตัวอย่างบริการ
ชั้นเรียนโยคะหรือร้านเสริมสวยมีผังชั้นต่อไปนี้และไม่มีการจองที่ใช้งานอยู่
รูปที่ 1: แผนผังชั้นที่ไม่มีการจองที่ใช้งานอยู่ ฟีดความพร้อมจำหน่ายสินค้าสำหรับช่วงเวลา 2 ช่วงของผู้ขายเหล่านี้จะมีลักษณะดังนี้
{ "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 จะไม่มีการเปลี่ยนแปลง
ข้อมูลโค้ดที่ติดทั่วเว็บไซต์ของฟีดที่มีการจอง
{ "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 ช่วงเวลาของผู้ขายเหล่านี้จะมีลักษณะดังนี้
ข้อมูลโค้ดฟีด:
{ "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 นาที
ข้อมูลโค้ดฟีดที่มีการจอง:
{ "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 } } ], } ] }