على الشركاء المشاركين في برنامج قائمة الانتظار إكمال عملية إعداد الحساب قبل بدئه. ومع ذلك، بعض الخطوات الواردة في الدليل العام ليست ضرورية لاستخدام ميزة قائمة الانتظار. توضّح الإرشادات الواردة في هذه الصفحة الخطوات التي تنطبق على الشركاء المهتمين باستخدام ميزة "قائمة الانتظار" في ميزة "الحجز عبر Google". وننصحك بقراءة هذه النظرة العامة قبل تنفيذ خطوات الدمج.
عملية الإطلاق
يوضّح الرسم 1 عملية إطلاق حسابات التجّار الذين فعّلوا قوائم الانتظار في ميزة "الحجز عبر Google".
بشكل عام، يتم التقاط التدفقات الرئيسية للبيانات بينك وبين (الشريك) وGoogle في الشكل 2:
إرشادات لجميع شركاء قائمة الانتظار
يجب مراعاة ما يلي عند تطبيق ميزة "قائمة الانتظار":
- يجب أن تتمّ خدمة تعبئة
waitlist_rules
في الخدمة الخاصة بكل تاجر مُدرَج في قائمة الانتظار.- يجب استخدام الخدمة نفسها لكلٍّ من قائمة الانتظار والحجز. بعبارة أخرى، إذا كان مطعمك يسمح بالحجوزات، ما عليك سوى إضافة البيانات الوصفية المتعلقة بقائمة الانتظار إلى الخدمة للحجز.
- يجب إرسال تعديلات الرسائل القصيرة SMS لتطبيق قائمة الانتظار في
الحالات التالية:
- لتأكيد انضمام المستخدم إلى قائمة الانتظار بنجاح،
- لإبلاغ المستخدم بأن جدوله جاهز.
- لإعلام المستخدم بأنه تم إلغاء الإدخال في قائمة الانتظار.
- يجب أن تحتوي الرسائل القصيرة SMS على رابط إلى صفحة يمكن للمستخدمين من خلالها عرض حالة قائمة الانتظار.
- لا يحتاج التجّار إلى قوائم الانتظار فقط إلى توفير خلاصات مدى التوفّر لميزة "الحجز عبر Google".
- يجب أن ينفِّذ خادم الحجز جميع الخطوات الخاصة بقائمة الانتظار والمُدرجة في تطبيق خادم الحجز. يمكن للشركاء الذين يتيحون كلّاً من الحجوزات وقوائم الانتظار إضافة طرق جديدة إلى خادم الحجز الحالي.
- تُجري ميزة "الحجز عبر Google" مجموعة من حالات الاختبار لطرق قائمة الانتظار في خادم الحجز.
رسم بياني انسيابي للحالة
يوضِّح هذا الرسم البياني الحالات التي يجب الإبلاغ عنها في
WaitlistEntry.waitlist_entry_state
عند الرد على مكالمات
GetWaitlistEntry
. ويشير الرسم البياني أيضًا إلى وقت تسجيل حقول
WaitlistEntry.waitlist_entry_state_times.*_time_seconds
وملئها ووقت إرسال رسالة قصيرة SMS إلى المستخدم لإعلامه بأنه أدخل حالة جديدة.
الحالات القصوى الشائعة
في ما يلي بعض الحالات الشائعة عند دمج قائمة الانتظار والحلول المفضّلة لها.
-
إذا كانت بعض أحجام الحفلات (وليس كلها) لا تقبل إضافات قوائم انتظار جديدة لأنه ليس هناك انتظار لأحجام الحفلات هذه، سيتم عرض
WaitEstimates
لجميع أحجام الحفلات في استجابةBatchGetWaitEstimates
والسماح للمستخدمين بالانضمام إلى قائمة الانتظار لأحجام الحفلات هذه بدون انتظار. عرضWaitLength
مع 0parties_ahead_count
و/أوestimated_seat_time_range
مع 0start_seconds
و0end_seconds
لـparty_size
بدون انتظار -
إذا كان عدد واحد أو أكثر من أحجام الحفلات لا يقبل إضافات قوائم الانتظار الجديدة
لأن الانتظار أصبح طويلاً جدًا، سيتم حذف
WaitEstimates
لأحجام هذه المجموعات في الردّBatchGetWaitEstimates
.
ويُفضّل استخدام هذه الطرق، لأنّها تمنح المستخدمين خيارات مع أنّ قائمة الانتظار الخاصة بالتاجر قد لا تكون مفتوحة بالكامل.
إرشادات للشركاء في قائمة الانتظار فقط
يُرجى مراعاة ما يلي في حال استخدام خادم الحجز لقوائم الانتظار فقط:
- لا يقدّم الشركاء في قائمة الانتظار فقط خلاصات مدى التوفّر لميزة "الحجز عبر Google".
- لا ينفِّذ الشركاء المدرجون في قائمة الانتظار فقط طرق الحجز في خادم الحجز. وبدلاً من ذلك، يمكنك تنفيذ خادم الحجز مع تعليمات تنفيذ قائمة الانتظار.
- لا يُجري الشركاء في قائمة الانتظار فقط طلبات بيانات من واجهة برمجة التطبيقات في Google. هذا يعني أنّ الشركاء الذين يستخدمون قائمة الانتظار فقط لا يحتاجون إلى إعداد مشروع على السحابة الإلكترونية أو توفير عنوان بريد إلكتروني لمطوّر البرامج. ولست بحاجة إلى إكمال تحديثات في الوقت الفعلي لواجهة برمجة التطبيقات. ومع ذلك، يجب توفير خلاصات التاجر والخدمة في ميزة "الحجز عبر Google".
إرشادات للشركاء الذين يجب على التجّار قبول إضافات قوائم الانتظار أو رفضها يدويًا
إذا كان التجّار يطلبون إمكانية إضافة إضافات جديدة إلى قوائم الانتظار من Google يدويًا أو رفضها، يجب اتّباع خطوات إضافية:
- اضبط السمة
waitlist_confirmation_mode
علىWAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
فيwait_estimate
لأحجام الحفلات التي تتطلب تأكيدًا يدويًا. ويجب ضبط ذلك فيBatchGetWaitEstimateResponse
وGetWaitlistEntryResponse
. - يجب أن تكون إدخالات قائمة الانتظار التي طلبها التاجر والتي لم يقبلها التاجر بعد
PENDING_MERCHANT_CONFIRMATION
.
حالات اختبار في قائمة الانتظار
تختبر Google حالات الاستخدام التالية لضمان وظيفة طُرق قائمة الانتظار في تنفيذ خادم الحجز. تختبر Google أيضًا وقت الاستجابة وتراقبه. يجب اجتياز جميع هذه الاختبارات قبل الإطلاق.
استرجاع WaitEstimate
- يتم عرض تقديرات الانتظار لكل حجم مجموعة مطلوب في
BatchGetWaitEstimatesRequest
. - بالنسبة إلى أحجام الحفلات التي لدى التاجر خيار قبول
إضافات قوائم الانتظار الجديدة أو رفضها، اضبط إعدادات "قائمة الانتظار" على
WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
.
إنشاء إدخال في قائمة الانتظار
- يمكن إنشاء إدخال في قائمة الانتظار من طلب
CreateWaitlistEntry
. - في حال تعذّر إنشاء إدخال قائمة الانتظار، سيظهر خطأ في منطق النشاط التجاري في الاستجابة.
- في حال نجاح محاولة
CreateWaitlistEntry
، يتم عرض الاستجابة نفسها عند تلقّيCreateWaitlistEntry
نفسه مرة أخرى. - في حال تعذّر محاولة
CreateWaitlistEntry
، سيعيد الخادم محاولة استلامCreateWaitlistEntry
نفسه مرة أخرى. - تظهر إدخالات قائمة الانتظار في واجهة التاجر.
- تؤدي المكالمات الواردة إلى
GetWaitlistEntry
إلى عرض إدخال قائمة الانتظار التي تم إنشاؤها بنجاح.
حالات إدخال قائمة الانتظار والطوابع الزمنية
- تأكّد من عرض كل حالة إدخال في قائمة الانتظار بشكل صحيح في إدخال قائمة الانتظار المكوّن من
GetWaitlistEntry
رد. - تأكّد من ضبط كل طابع زمني للولاية في حقل الطابع الزمني المناسب لإدخال قائمة الانتظار
في
GetWaitlistEntry
رد.
حذف إدخال قائمة الانتظار
- يمكن حذف إدخالات قائمة الانتظار الحالية. يجب أن تكون الاستجابة لعملية الحذف الناجحة
هي النموذج الأولي
{}
.
إيقاف
- تحقَّق من أنّه سيتم التعامل مع التجّار الذين أوقفوا خدمة تلقّي الأموال على النحو الموضّح في القسم إيقاف التاجر.
نموذج خلاصة قائمة الانتظار (JSON)
خلاصة خدمة قائمة الانتظارإيقاف التاجر
ويتوقّع محرّك بحث Google ردودًا معيّنة للتجّار الذين فعّلوا قوائم الانتظار في السابق ولكن قرّروا إيقافها.
الإيقاف الفوري
- يمكنك إرجاع
CLOSED_OTHER
لطلباتBatchGetWaitEstimates
. - يمكنك إرجاع
WAITLIST_CLOSED
لطلباتCreateWaitlistEntry
. - عرض طلبات
GetWaitlistEntry
بشكل صحيح للمستخدمين الموجودين في قائمة الانتظار.
تمديد الإيقاف
- إذا لم يوقف التاجر عمليات الحجز، عليك إزالة
waitlist_rules
من خلاصة الخدمة الخاصة بالتاجر. - أزِل التاجر من خلاصة التاجر في حال إيقاف كل عمليات الدمج مع Google.