إنشاء تطبيق Dialogflow CX في Google Chat يفهم اللغة الطبيعية ويستجيب لها

توضّح هذه الصفحة كيفية إنشاء تطبيق Google Chat يمكنه فهم اللغة الطبيعية والردّ بها باستخدام Dialogflow. يستخدم هذا الدليل Dialogflow CX، الذي يتضمّن عملية دمج مباشرة مع Google Chat. يمكنك أيضًا استخدام Dialogflow ES لإنشاء تطبيق Dialogflow ES على Google Chat باتّباع دليل Dialogflow ES على Google Chat.

على سبيل المثال، لنفترض أنّ هناك تطبيق Chat يساعد الأشخاص في استئجار السيارات. قد يكتب المستخدم "أريد استئجار سيارة". قد يردّ تطبيق Chat بسؤال مثل "أين تريد استلام السيارة؟"، ما يؤدي إلى بدء محادثة شبيهة بالمحادثات بين البشر مع المستخدم، يفهم فيها تطبيق Chat ويردّ باستخدام الكلام البشري أثناء حجز السيارة المستأجرة.

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

  • حجز رحلات جوية
  • تحديد مواعيد مع الأطباء
  • طلب توصيل الطعام
  • الإجابة عن أسئلة حول كتالوج منتجات البيع بالتجزئة، مثل ما إذا كانت السلع متوفرة بألوان أخرى
  • صفحة اختيار وكيل Dialogflow المُنشأ مسبقًا
    الشكل 1. اختيار وكيل مُعدّ مسبقًا لتطبيق Dialogflow Chat
  • اختبار الوكيل في Dialogflow CX
    الشكل 2. اختبار الوكيل في Dialogflow CX للتأكّد من أنّ منطق الوكيل وإعداداته تعمل على النحو المطلوب يعرض الرسم البياني مجموعة متسلسلة من الصفحات المواضيعية التي تتناول خطوات معيّنة في المحادثة، مثل تحديد موقع استلام سيارة مستأجرة وإرجاعها، ويضبط المنطق الذي يربط بينها. يتم اختبار المحادثة في محاكي.
  • إعداد تطبيق Chat في Dialogflow
    الشكل 3. ضبط تطبيق Chat لمعالجة الردود باستخدام وكيل Dialogflow CX في صفحة إعدادات Chat API في Google Cloud Console
  • اختبار تطبيق Chat في Dialogflow CX
    الشكل 4. إجراء محادثة حول حجز سيارة مستأجرة باستخدام تطبيق Dialogflow Chat في Google Chat

الأهداف

  • إعداد البيئة
  • إنشاء وكيل Dialogflow CX ونشره
  • إنشاء تطبيق في Chat ونشره باستخدام وكيل Dialogflow CX
  • اختبِر تطبيق Chat.

المتطلبات الأساسية

الهندسة المعمارية

يوضّح الرسم البياني التالي بنية تطبيق دردشة تم إنشاؤه باستخدام Dialogflow:

بنية تطبيق Chat تم تنفيذه باستخدام Dialogflow

في الرسم البياني السابق، يتضمّن تفاعل المستخدم مع تطبيق Chat من Dialogflow تدفق المعلومات التالي:

  1. يرسل مستخدم رسالة في Chat إلى تطبيق Chat، إما في رسالة مباشرة أو في مساحة Chat.
  2. يتلقّى وكيل Dialogflow الافتراضي، الذي يستضيفه Google Cloud، الرسالة ويعالجها لإنشاء رد.
  3. يمكنك اختياريًا استخدام خطاف ويب في Dialogflow، ما يتيح لبرنامج Dialogflow التفاعل مع خدمات خارجية تابعة لجهات خارجية، مثل نظام إدارة المشاريع أو أداة إصدار التذاكر.
  4. يرسل وكيل Dialogflow ردًا إلى خدمة تطبيق Chat في Chat.
  5. يتم تسليم الردّ إلى مساحة Chat.

إعداد البيئة

قبل استخدام واجهات Google APIs، عليك تفعيلها في مشروع على Google Cloud. يمكنك تفعيل واجهة برمجة تطبيق واحدة أو أكثر في مشروع واحد على Google Cloud.
  1. في Google Cloud Console، فعِّل Google Chat API وDialogflow API.

    تفعيل واجهات برمجة التطبيقات

  2. تأكَّد من أنّك بصدد تفعيل واجهات برمجة التطبيقات في مشروع Cloud الصحيح، ثم انقر على التالي.

  3. تأكَّد من تفعيل واجهات برمجة التطبيقات الصحيحة، ثم انقر على تفعيل.

إنشاء وكيل في Dialogflow CX

وكيل Dialogflow CX هو وكيل آلي يتعامل مع المحادثات المتزامنة مع المستخدمين النهائيين. وهي وحدة لفهم اللغة الطبيعية، تدرك الفروق الدقيقة في اللغة البشرية. يحوّل Dialogflow نص المستخدم النهائي أثناء المحادثة إلى بيانات منظَّمة يمكن لتطبيقاتك وخدماتك فهمها. تصميم وكيل Dialogflow وإنشاؤه للتعامل مع أنواع المحادثات المطلوبة لنظامك

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

إليك كيفية إنشاء وكيل Dialogflow CX:

  1. في وحدة تحكّم Dialogflow CX، افتح وحدة تحكّم Dialogflow CX. انقر على القائمة > Dialogflow CX.

    الانتقال إلى وحدة تحكّم Dialogflow CX

  2. اختَر مشروعًا على Google Cloud. للعثور على مشروعك، قد تحتاج إلى النقر على الكل ثم البحث عنه.

  3. يمكنك الآن اختيار وكيل تم إنشاؤه مسبقًا أو إنشاء وكيلك الخاص. إذا كنت تفضّل استكشاف خيارات تخصيص الوكيل بالتفصيل في وقت لاحق، اختَر أحد الوكلاء المبرمَجين مسبقًا، الذين يساعدون أيضًا في التعرّف على الإجراءات التي يمكن للوكلاء تنفيذها.

    لاختيار وكيل مُعدّ مسبقًا، اتّبِع الخطوات التالية:

    1. انقر على استخدام وكلاء مسبقَي الإنشاء.
    2. اختَر وكيلًا مُعدًّا مسبقًا. بالنسبة إلى هذا الدليل، اختَر السفر: استئجار سيارة.

      يتم تصنيف الوكلاء على أنّهم مبتدئون أو متوسطو الخبرة أو متقدّمون استنادًا إلى عدد الميزات التي يستخدمها الوكيل ومدى تطوّر منطق المحادثة لديه. قد يتطلّب اختيار وكيل متوسّط أو متقدّم إجراء تخصيصات وإعدادات خاصة بالوكيل، بما في ذلك تفعيل الميزات وواجهات برمجة التطبيقات في Google Cloud Console.

    3. انقر على استيراد كوكيل.

    لإنشاء وكيلك الخاص، اتّبِع الخطوات التالية:

    1. انقر على إنشاء وكيل.
    2. اختَر إنشاء تلقائي لإنشاء وكيل تخزين بيانات أو اختَر إنشاء وكيلك الخاص لإنشاء أنواع أخرى من الوكلاء.

    للحصول على شرح تفصيلي لعملية إنشاء الوكيل، راجِع إنشاء وكيل Dialogflow CX.

  4. ضبط الإعدادات الأساسية للوكيل:

    1. في حقل الاسم المعروض، أدخِل اسمًا معروضًا.
    2. اختَر الموقع الجغرافي المفضّل لديك. إذا أردت تغيير إعدادات الموقع الجغرافي المتقدّمة، انقر على تعديل.
    3. اختَر المنطقة الزمنية المفضَّلة.
    4. اختَر اللغة التلقائية للوكيل. لا يمكنك تغيير اللغة التلقائية لأحد العملاء الافتراضيين بعد إنشائه.
  5. انقر على إنشاء. يبدأ Dialogflow CX بإنشاء الوكيل، ثم يعرض مسار البدء التلقائي للوكيل.

  6. يمكنك تخصيص الوكيل إذا أردت. للحصول على شرح تفصيلي حول عملية تخصيص الوكيل، يُرجى الاطّلاع على إنشاء وكيل Dialogflow CX.

  7. كأفضل ممارسة، اختبِر الوكيل:

    1. انقر على اختبار الوكيل.
    2. انقر على اختبار الوكيل في البيئة.
    3. في "البيئة"، اختَر مسودّة.
    4. في Flow، اختَر Default Start Flow.
    5. في Page، اختَر صفحة البدء.
    6. في شريط الإنشاء التحدّث مع وكيل، اكتب Hello واضغط على Enter. يردّ المساعد الافتراضي بتقديم نفسه.
    7. أكمِل الاختبار من خلال إجراء محادثة الاختبار التجريبي.
  8. يتم إنشاء وكيل Dialogflow CX. ارجع إلى وحدة تحكّم Dialogflow CX. انقر على القائمة > Dialogflow CX.

    الانتقال إلى وحدة تحكّم Dialogflow CX

  9. ضِمن الوكلاء، انقر على > نسخ الاسم. احفظ هذا الاسم، لأنّك ستستخدمه عند إعداد تطبيق Chat.

إنشاء تطبيق Chat وربطه بوكيل Dialogflow

بعد إنشاء وكيل Dialogflow CX، اتّبِع الخطوات التالية لتحويله إلى تطبيق Chat:

  1. في Google Cloud Console، انتقِل إلى Google Chat API. ابحث عن "Google Chat API" وانقر على Google Chat API، ثم انقر على إدارة.

    الانتقال إلى Chat API

  2. انقر على الإعداد وأعِدّ تطبيق Chat باتّباع الخطوات التالية:

    1. في حقل اسم التطبيق، أدخِل Dialogflow App.
    2. في عنوان URL للأفاتار، أدخِل https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png.
    3. في الوصف، أدخِل Responds to real human conversation.
    4. ضمن الوظائف، اختَر الانضمام إلى المساحات والمحادثات الجماعية.
    5. ضمن إعدادات الاتصال، اختَر Dialogflow.
    6. ضمن إعدادات Dialogflow، اختَر Dialogflow CX.
    7. في اسم مورد الوكيل أو البيئة، الصِق اسم وكيل Dialogflow CX الذي نسخته في نهاية إنشاء وكيل Dialogflow CX.
    8. إتاحة تطبيق Chat لمستخدمين ومجموعات محدّدة في نطاقك وأدخِل عنوان بريدك الإلكتروني.
    9. ضمن السجلات، اختَر تسجيل الأخطاء في خدمة تسجيل البيانات.
  3. انقر على حفظ.

تطبيق Chat جاهز لتلقّي الرسائل والردّ عليها.

اختبار تطبيق Chat

اختبِر تطبيق الدردشة Dialogflow CX من خلال مراسلته في Google Chat.

  1. افتح Google Chat باستخدام حساب Google Workspace الذي قدّمته عند إضافة نفسك كمختبِر موثوق به.

    الانتقال إلى Google Chat

  2. انقر على محادثة جديدة.
  3. في حقل إضافة مستخدم واحد أو أكثر، اكتب اسم تطبيق Chat.
  4. اختَر تطبيق Chat من النتائج. سيتم فتح رسالة مباشرة.

  5. في الرسالة المباشرة الجديدة مع التطبيق، اكتب Hello واضغط على enter.

    سيردّ تطبيق Dialogflow Chat بتعريف نفسه.

  6. أكمِل الاختبار من خلال إجراء محادثة الاختبار التجريبي.

نموذج محادثة اختبارية

لاختبار تطبيق Chat في Dialogflow CX، سواء في وحدة تحكّم Dialogflow CX أو في Google Chat، عليك إجراء المحادثة التالية. تساعدك هذه الإضافة في فهم الطريقة التي يفسّر بها وكيل Dialogflow CX اللغة الطبيعية للمستخدم، وكيفية إنشائه ردودًا باللغة الطبيعية في كل خطوة من المحادثة. تستند محادثة النموذج هذه إلى الوكيل المُعدّ مسبقًا الذي يُطلق عليه اسم السفر: تأجير السيارات.

مربّع حوار الشرح
المستخدم النهائي: مرحبًا
الموظف: مرحبًا أنا وكيل تأجير السيارات الافتراضي. يمكنني مساعدتك في بدء حجز جديد لاستئجار سيارة. كيف يمكنني مساعدتك اليوم؟
  1. يتم استدعاء مسار نية الترحيب التلقائية في مسار بدء المحادثة التلقائي.
  2. الردّ على معالج الحالة هذا ("مرحبًا! أنا...") إلى قائمة الردود.
  3. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: أريد استئجار سيارة.
الموظف: أين تريد استلام المركبة؟
  1. يتمّت مطابقة مسار الغرض car_rental.reservation_create في صفحة البدء.
  2. تنتقل الجلسة إلى صفحة موقع الاستلام.
  3. لم يتم إكمال نموذج صفحة موقع الاستلام، لذا يستخدم الوكيل المَعلمة pickup_location لتوجيه سؤال إلى المستخدم ("أين تريد استلام..."). الذي تتم إضافته إلى قائمة انتظار الردود.
  4. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: لاس فيغاس
الوكيل: حسنًا، سيتم استلام الطلب في لاس فيغاس.
الموظف: هل يختلف موقع التسليم عن موقع الاستلام؟
  1. تعبئ مدخلات المستخدم النهائي المَعلمة pickup_location التي طلبها الوكيل في دورة المحادثة السابقة.
  2. تتم مطابقة مسار الغرض car_rental.return_different_location في مسار البدء التلقائي.
  3. يتم تقييم مسار إكمال النموذج في صفحة موقع الاستلام واستدعاؤه. ويتضمّن هذا الردّ عملية تنفيذ ("حسنًا، سيتم توصيل طلبك...")، ويتم إضافته إلى قائمة انتظار الردود مع الإشارة إلى المَعلمات التي تم تحليلها إلى قيم فعلية قدّمها المستخدم النهائي.
  4. تنتقل الجلسة إلى صفحة تأكيد الموقع الجغرافي.
  5. تحتوي صفحة تأكيد الموقع الجغرافي على حقل إدخال ("هل يختلف موقع التسليم..."). الذي تتم إضافته إلى قائمة انتظار الردود.
  6. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: نعم. سأعيد السيارة في لوس أنجلوس.
الموظف: حسنًا، سيتم تسليم الطرد في لوس أنجلوس.
الموظف: ما هو التاريخ والوقت المناسبان لك لاستلام المركبة؟
  1. تتم مطابقة مسار الغرض car_rental.return_different_location في مسار البدء التلقائي.
  2. تنتقل الجلسة إلى صفحة موقع الاستلام.
  3. تعبئ إدخالات المستخدم النهائي المَعلمة drop_off_location التي طلبها الوكيل في دورة المحادثة السابقة.
  4. يتم تقييم مسار إكمال النموذج في صفحة موقع الاستلام واستدعاؤه. ويتضمّن هذا الردّ إجراءً تنفيذيًا ("حسنًا، مكان التسليم هو...") تتم إضافته إلى قائمة انتظار الردود.
  5. تنتقل الجلسة إلى صفحة مدة الاستئجار.
  6. تحتوي صفحة مدة الاستئجار على قيم نموذج غير مكتملة، لذا تطلب من المستخدم إدخال قيمة المَعلمة pickup_date_time ("ما هو التاريخ والوقت المناسبان لاستلام..."). الذي تتم إضافته إلى قائمة انتظار الردود.
  7. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: أريد استلام السيارة في 5 مارس عند الظهر.
الموظف: ما هو التاريخ والوقت المناسبان لك لتسليم المركبة؟
  1. تعبئة إدخال المستخدم النهائي للمعلمة pickup_date_time التي طلبها الوكيل في دورة المحادثة السابقة
  2. تحتوي صفحة مدة الاستئجار على قيمة نموذج أخرى غير متوفّرة، لذا تطلب من المستخدم إدخال قيمة المَعلمة drop_off_date_time ("ما هو التاريخ والوقت المناسبان لتسليم السيارة؟"). الذي تتم إضافته إلى قائمة انتظار الردود.
  3. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: 15 مارس في منتصف النهار
الموظف: للتأكيد:

ستستلم المركبة في لاس فيغاس ‫2024-03-05 الساعة 12:00:00 وستعيدها في لوس أنجلوس ‫2024-03-15 الساعة 12:00:00

هل هذا صحيح؟
  1. تعبئة إدخال المستخدم النهائي للمعلمة drop_off_date_time التي طلبها الوكيل في نوبة المحادثة السابقة
  2. تنتقل الجلسة إلى صفحة تأكيد مدة الاستئجار.
  3. تحتوي صفحة تأكيد مدة الاستئجار على حقل إدخال ("للتأكيد..."). الذي تتم إضافته إلى قائمة انتظار الردود.
  4. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: نعم، شكرًا.
موظف الدعم: ممتاز. لنختر الآن مركبة.
الموظف: هل تريد مركبة اقتصادية أم فاخرة؟
  1. تتم مطابقة الغرض small_talk.confirmation.yes في صفحة تأكيد مدة الاستئجار.
  2. يؤكّد الوكيل خيار المستخدم من خلال رسالة ("رائع! والآن، لنختر...")، الذي تتم إضافته إلى قائمة انتظار الردود.
  3. تنتقل الجلسة إلى صفحة تحديد المركبة.
  4. لم يكتمل نموذج صفحة توضيح المركبة، لذا يستخدم الوكيل المَعلمة vehicle_type لتوجيه سؤال إلى المستخدم ("هل تريد سيارة اقتصادية أم فاخرة..."). الذي تتم إضافته إلى قائمة انتظار الردود.
  5. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: أريد الشحن بتكلفة منخفضة.
الموظف: هل تريد سيارة Cymbal أو شاحنة Cymbal؟
  1. تتم مطابقة مسار الطلب $session.params.vehicle_type="economy_vehicle".
  2. تنتقل الجلسة إلى صفحة خيارات الاقتصاد.
  3. تحتوي صفحة خيارات الاقتصاد على قسم خاص بتنفيذ الطلبات ("هل تريد...")، الذي تتم إضافته إلى قائمة انتظار الردود.
  4. يرسل الوكيل قائمة الردود إلى المستخدم.
المستخدم النهائي: Cymbal Truck
الوكيل: تبلغ تكلفة شاحنة Cymbal‏ 50.33 دولار أمريكي في اليوم. تتسع لـ 4 أشخاص وتتضمّن راديو AM/FM. هل تريد الانتقال إلى صفحة الدفع؟
المستخدم النهائي: نعم، من فضلك.
  1. تتم مطابقة مسار الغرض $session.params.vehicle_type="Cymbal Truck"، ويتم ملء المَعلمة vehicle_model.
  2. تنتقل الجلسة إلى صفحة تأكيد شاحنة Cymbal.
  3. تحتوي صفحة تأكيد شاحنة الصنج على معلومات حول إكمال الطلب ("تكلفة استئجار شاحنة الصنج هي 50.33 دولار أمريكي في اليوم...")، الذي تتم إضافته إلى قائمة انتظار الردود.
  4. يرسل الوكيل قائمة الردود إلى المستخدم.
  5. تتطابق استجابة المستخدم مع المسار small_talk.confirmation.yes.
الموظف: ما هو نوع البطاقة التي ستستخدمها؟
المستخدم النهائي: Altostrat
الموظف: يُرجى إدخال رقم البطاقة.
المستخدم النهائي: 1234 1234 1234 1234
الموظف: ما هو الاسم المدوّن على البطاقة؟
المستخدم النهائي: "أريد معرفة عنوان الشارع الذي يتم إرسال الفواتير إليه".
موظّف الدعم: "ما هو عنوان الشارع الذي يتم إرسال الفواتير إليه؟"
المستخدم النهائي: 1800 Amphibious Blvd. Mountain View, CA
الموظف: ما هو الرمز البريدي الخاص ببطاقة الفوترة؟
المستخدم النهائي: 94045
الموظف: سيتم استلام السيارة Cymbal Car في لاس فيغاس في 2024-03-05 الساعة 12:00:00 وتسليمها في 2024-03-15 الساعة 12:00:00. سيكون المبلغ الإجمالي لهذه الرحلة 175.38 دولار أمريكي.
الموظف: شكرًا لك على استئجار السيارة من شركتنا، ونتمنّى لك يومًا رائعًا.
  1. تنتقل الجلسة إلى صفحة الدفع.
  2. لم يتم إكمال نموذج الدفع، لذا يطلب الوكيل من المستخدم إدخال المَعلمات card_type وcard_number وbilling_name وbilling_street_address وbilling_zip_code ("ما هو نوع البطاقة التي..."). التي تتم إضافتها بالتسلسل إلى قائمة انتظار الردود وإرسالها عندما يستجيب المستخدم. تحدّد ردود المستخدم قيمة كل مَعلمة.
  3. تنتقل الجلسة إلى صفحة تأكيد الاستئجار.
  4. تحتوي صفحة تأكيد الاستئجار على معلومات حول استلام السيارة (مثل "حسنًا، سيتم استلام السيارة في..."). الذي تتم إضافته إلى قائمة انتظار الردود.
  5. يرسل الوكيل قائمة الردود إلى المستخدم.
  6. تنتقل الجلسة إلى صفحة إنهاء الجلسة.

إرسال رسائل البطاقات من Dialogflow

يمكن أن يردّ Dialogflow برسائل نصية أو برسائل بطاقة. للردّ برسالة بطاقة، حدِّدها على أنّها حمولة مخصّصة في التنفيذ.

يوضّح ملف JSON التالي كيفية إرسال رسالة بطاقة كحمولة مخصّصة في عملية التنفيذ:

json

{
  'cardsV2': [{
    'cardId': 'createCardMessage',
    'card': {
      'header': {
        'title': 'A card message!',
        'subtitle': 'Sent from Dialogflow',
        'imageUrl': 'https://developers.google.com/chat/images/chat-product-icon.png',
        'imageType': 'CIRCLE'
      },
      'sections': [
        {
          'widgets': [
            {
              'buttonList': {
                'buttons': [
                  {
                    'text': 'Read the docs!',
                    'onClick': {
                      'openLink': {
                        'url': 'https://developers.google.com/workspace/chat'
                      }
                    }
                  }
                ]
              }
            }
          ]
        }
      ]
    }
  }]
}

الحدود والاعتبارات

  • أحداث التفاعل مع الدردشة تتوفّر بشكل محدود مع بعض الاعتبارات:
    • تتوفّر أنواع أحداث التفاعل التالية:
      • MESSAGE
      • ADDED_TO_SPACE
      • CARD_CLICKED
    • بالنسبة إلى أحداث MESSAGE أو ADDED_TO_SPACE، يتوافق إدخال طلب البحث الذي يتم إرساله إلى وكيل Dialogflow مع قيمة الحقل argumentText في رسالة المحادثة. إذا كانت الرسالة تتضمّن أمرًا يبدأ بشرطة مائلة، سيتم استخدام قيمة الحقل text بدلاً من ذلك.
    • بالنسبة إلى أحداث CARD_CLICKED، يتم تنسيق إدخال طلب البحث الذي يتم إرساله إلى وكيل Dialogflow على النحو CARD_CLICKED.functionName، حيث يتوافق functionName مع قيمة الحقل function في كائن الإجراء المرفق بعنصر البطاقة التفاعلية (مثل زر).
    • يتم إرسال حمولة JSON الكاملة لكل حدث تفاعل في المحادثة إلى Dialogflow كحمولة مخصّصة في مَعلمة طلب البحث، ويمكن الوصول إليها باستخدام خطاف ويب في Dialogflow من خلال طلب قيمة الحقل WebhookRequest.payload.
  • اعتبارات الرد على الأوامر التي تبدأ بشرطة مائلة و تلقّي البيانات من البطاقات أو مربّعات الحوار:
    • عندما تتلقّى تطبيقات Dialogflow Chat رسالة تتضمّن أمرًا يبدأ بشرطة مائلة، يحتوي إدخال الطلب على قيمة الحقل text فقط. يبدأ الحقل text باسم الأمر الذي يبدأ بشرطة مائلة (على سبيل المثال، /command)، ويمكنك استخدامه لإعداد هدف وكيل Dialogflow لرصد أمر يبدأ بشرطة مائلة.
    • إذا كان وكيل Dialogflow بحاجة إلى معالجة حمولة JSON لحدث التفاعل مع المحادثة، يمكنه إجراء ذلك باستخدام خطاف Dialogflow لفحص الحمولة المخصّصة في مَعلمة طلب البحث.
    • لعرض مربّع حوار من وكيل Dialogflow، يجب الردّ باستخدام حمولة JSON مخصّصة واحدة تتضمّن رسالة تحتوي على DIALOG استجابة إجراء.
    • لمعالجة البيانات التي يتم إدخالها من البطاقات، يمكن أن يرصد وكيل Dialogflow النوايا التي تبدأ بالنص CARD_CLICKED والرد بحِمل JSON مخصّص واحد يحتوي على الإجراء المناسب.
  • لا تتوفّر معاينات الروابط.
  • إذا ردّ وكيل Dialogflow برسالة واحدة فقط، يتم إرسال الرسالة إلى Google Chat بشكل متزامن. إذا ردّ وكيل Dialogflow بعدة رسائل، يتم إرسال جميع الرسائل إلى Chat بشكل غير متزامن من خلال استدعاء الطريقة create في المورد spaces.messages ضمن Chat API مرة واحدة لكل رسالة.
  • عند استخدام عملية الدمج بين Dialogflow CX وChat، يجب إعداد كل من وكيل Dialogflow وتطبيق Chat في مشروع Google Cloud نفسه. إذا كنت بحاجة إلى إعداد Dialogflow وChat في مشاريع مختلفة على Cloud، يمكنك إعداد خادم وسيط لتسهيل عملية الربط. لمعرفة كيفية إجراء ذلك، اطّلِع على مثال على دمج Chat مع Dialogflow CX على GitHub.

تحديد المشاكل وحلّها

عندما يعرض تطبيق أو بطاقة في Google Chat خطأً، تعرض واجهة Chat رسالة تفيد بأنّه "حدث خطأ". أو "لم نتمكّن من معالجة طلبك". في بعض الأحيان، لا تعرض واجهة مستخدم Chat أي رسالة خطأ، ولكن ينتج تطبيق Chat أو البطاقة نتيجة غير متوقّعة، مثلاً، قد لا تظهر رسالة البطاقة.

على الرغم من أنّه قد لا تظهر رسالة خطأ في واجهة مستخدم Chat، تتوفّر رسائل خطأ وصفية وبيانات سجلّات لمساعدتك في إصلاح الأخطاء عند تفعيل تسجيل الأخطاء لتطبيقات Chat. للحصول على مساعدة في عرض الأخطاء وتصحيحها وتحديد المشاكل فيها، يُرجى الاطّلاع على تحديد مشاكل Google Chat وحلّها.

تَنظيم

لتجنُّب تحمّل رسوم في حسابك على Google Cloud مقابل الموارد المستخدَمة في هذا البرنامج التعليمي، ننصحك بحذف مشروع Cloud.

  1. في Google Cloud Console، انتقِل إلى صفحة إدارة الموارد. انقر على القائمة > إدارة الهوية وإمكانية الوصول والمشرف > إدارة الموارد.

    الانتقال إلى "إدارة الموارد"

  2. في قائمة المشاريع، اختَر المشروع الذي تريد حذفه، ثم انقر على حذف .
  3. في مربّع الحوار، اكتب رقم تعريف المشروع، ثم انقر على إيقاف لحذف المشروع.
  • تتّبع منصة Dialogflow CX أسلوب آلة الحالة في تصميم وكيل Dialogflow، ما يمنحك تحكّمًا واضحًا وصريحًا في المحادثة، ويوفّر تجربة أفضل للمستخدم النهائي، ويحسّن سير عمل التطوير. عند إنشاء تطبيق Chat باستخدام Dialogflow، ننصحك باستخدام Dialogflow CX.
  • ‫Dialogflow ES هي طريقة أخرى لاستخدام Dialogflow مع تطبيق Chat.