توضّح هذه الصفحة كيفية إنشاء تطبيق 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، مثل:
- حجز رحلات جوية
- تحديد مواعيد مع الأطباء
- طلب توصيل الطعام
- الإجابة عن أسئلة حول كتالوج منتجات البيع بالتجزئة، مثل ما إذا كانت المنتجات متوفرة بألوان أخرى
-
الشكل 1. اختيار وكيل مُنشأ مسبقًا لتطبيق Dialogflow Chat -
الشكل 2. اختبار الوكيل في Dialogflow CX للتأكّد من أنّ منطق الوكيل وإعداداته تعمل على النحو المطلوب يعرض الرسم البياني مجموعة متسلسلة من الصفحات الموضوعية التي تتعلّق بخطوات معيّنة في المحادثة، مثل تحديد موقع استلام سيارة مستأجرة وإرجاعها، ويضبط المنطق الذي يربط بينها. يتم اختبار المحادثة في محاكي. -
الشكل 3. ضبط تطبيق Chat لمعالجة الردود باستخدام وكيل Dialogflow CX في صفحة إعدادات Chat API في Google Cloud Console -
الشكل 4. إجراء محادثة حول حجز سيارة مستأجرة باستخدام تطبيق Dialogflow Chat في Google Chat
الأهداف
- إعداد البيئة
- إنشاء وكيل Dialogflow CX ونشره
- إنشاء تطبيق في Chat ونشره باستخدام وكيل Dialogflow CX
- اختبِر تطبيق Chat.
المتطلبات الأساسية
- حساب Google Workspace Business أو Enterprise مع إمكانية الوصول إلى Google Chat
- مشروع Google Cloud تم تفعيل الفوترة فيه للتأكّد من تفعيل الفوترة في مشروع حالي، يُرجى الاطّلاع على التحقّق من حالة الفوترة في مشاريعك. لإنشاء مشروع وإعداد الفوترة، يُرجى الاطّلاع على مقالة إنشاء مشروع على Google Cloud.
الهندسة المعمارية
يوضّح المخطط التالي بنية تطبيق دردشة تم إنشاؤه باستخدام Dialogflow:
في الرسم البياني السابق، يتضمّن تفاعل المستخدم مع تطبيق Chat من Dialogflow تدفق المعلومات التالي:
- يرسل مستخدم رسالة في Chat إلى تطبيق Chat، إما في رسالة مباشرة أو في مساحة Chat.
- يتلقّى وكيل Dialogflow الافتراضي، الذي يستضيفه Google Cloud، الرسالة ويعالجها لإنشاء ردّ.
- يمكنك اختياريًا استخدام خطاف ويب في Dialogflow، ليتفاعل وكيل Dialogflow مع خدمات خارجية تابعة لجهات خارجية، مثل نظام إدارة المشاريع أو أداة إصدار التذاكر.
- يرسل وكيل Dialogflow ردًا إلى خدمة تطبيق Chat في Chat.
- يتم تسليم الرد إلى مساحة Chat.
إعداد البيئة
قبل استخدام واجهات Google APIs، عليك تفعيلها في مشروع على Google Cloud. يمكنك تفعيل واجهة برمجة تطبيق واحدة أو أكثر في مشروع واحد على Google Cloud.في Google Cloud Console، فعِّل Google Chat API وDialogflow API.
تأكَّد من أنّك بصدد تفعيل واجهات برمجة التطبيقات في مشروع Cloud الصحيح، ثم انقر على التالي.
تأكَّد من تفعيل واجهات برمجة التطبيقات الصحيحة، ثم انقر على تفعيل.
إنشاء وكيل في Dialogflow CX
وكيل Dialogflow CX هو وكيل آلي يتعامل مع المحادثات المتزامنة مع المستخدمين النهائيين. وهي وحدة لفهم اللغة الطبيعية، تدرك الفروق الدقيقة في اللغة البشرية. يحوّل Dialogflow نص المستخدم النهائي أثناء المحادثة إلى بيانات منظَّمة يمكن لتطبيقاتك وخدماتك فهمها. يمكنك تصميم وإنشاء وكيل Dialogflow للتعامل مع أنواع المحادثات المطلوبة لنظامك.
موظّف الدعم في Dialogflow يشبه موظّف الدعم في مركز الاتصال. ويتم تدريبهما معًا للتعامل مع سيناريوهات المحادثات المتوقّعة، ولا يحتاج التدريب إلى أن يكون صريحًا بشكل مفرط.
إليك كيفية إنشاء وكيل Dialogflow CX:
في وحدة تحكّم Dialogflow CX، افتح وحدة تحكّم Dialogflow CX. انقر على القائمة > Dialogflow CX.
اختَر مشروعًا على Google Cloud. للعثور على مشروعك، قد تحتاج إلى النقر على الكل ثم البحث عنه.
يمكنك الآن اختيار وكيل تم إنشاؤه مسبقًا أو إنشاء وكيلك الخاص. إذا كنت تفضّل استكشاف خيارات تخصيص الوكيل بالتفصيل لاحقًا، اختَر أحد الوكلاء المبرمَجين مسبقًا، الذين يساعدون أيضًا في التعرّف على الإجراءات التي يمكن للوكلاء تنفيذها.
لاختيار وكيل مُنشأ مسبقًا، اتّبِع الخطوات التالية:
- انقر على استخدام وكلاء مسبقَي الإنشاء.
اختَر وكيلًا مُعدًّا مسبقًا. بالنسبة إلى هذا الدليل، اختَر السفر: استئجار سيارة.
يتم تصنيف الوكلاء على أنّهم مبتدئون أو متوسطو الخبرة أو متقدّمون استنادًا إلى عدد الميزات التي يستخدمها الوكيل ومدى تطوّر منطق المحادثة لديه. قد يتطلّب اختيار وكيل متوسط أو متقدّم إجراء تخصيصات وإعدادات خاصة بالوكيل، بما في ذلك تفعيل الميزات وواجهات برمجة التطبيقات في Google Cloud Console.
انقر على الاستيراد كموظّف دعم.
لإنشاء وكيلك الخاص، اتّبِع الخطوات التالية:
- انقر على إنشاء وكيل.
- اختَر إنشاء تلقائي لإنشاء وكيل تخزين بيانات أو اختَر إنشاء وكيلك الخاص لإنشاء أنواع أخرى من الوكلاء.
للحصول على شرح تفصيلي لعملية إنشاء الوكيل، راجِع إنشاء وكيل Dialogflow CX.
اضبط الإعدادات الأساسية للوكيل:
- في الاسم المعروض، أدخِل اسمًا معروضًا.
- اختَر موقعك الجغرافي المفضّل. إذا أردت تغيير إعدادات الموقع الجغرافي المتقدّمة، انقر على تعديل.
- اختَر المنطقة الزمنية المفضَّلة.
- اختَر اللغة التلقائية للوكيل. لا يمكنك تغيير اللغة التلقائية للوكيل بعد إنشائه.
انقر على إنشاء. يبدأ Dialogflow CX في إنشاء الوكيل، ثم يعرض مسار بدء الوكيل التلقائي.
يمكنك تخصيص الوكيل اختياريًا. للحصول على شرح تفصيلي حول عملية تخصيص الوكيل، يُرجى الاطّلاع على إنشاء وكيل Dialogflow CX.
كأفضل ممارسة، اختبِر الوكيل باتّباع الخطوات التالية:
- انقر على اختبار الوكيل.
- اختَر اختبار الوكيل في البيئة.
- في "البيئة"، اختَر مسودّة.
- في Flow، اختَر Default Start Flow.
- في Page، اختَر صفحة البدء.
- في شريط الإنشاء التحدّث مع وكيل، اكتب
Helloواضغط على Enter. يردّ الوكيل بتقديم نفسه. - أكمِل الاختبار من خلال إجراء محادثة الاختبار التجريبي.
يتم إنشاء وكيل Dialogflow CX. ارجع إلى وحدة تحكّم Dialogflow CX. انقر على القائمة > Dialogflow CX.
ضِمن الوكلاء، انقر على > نسخ الاسم. احفظ هذا الاسم، لأنّك ستستخدمه عند إعداد تطبيق Chat.
إنشاء تطبيق Chat وربطه بوكيل Dialogflow
بعد إنشاء وكيل Dialogflow CX، اتّبِع الخطوات التالية لتحويله إلى تطبيق Chat:
في Google Cloud Console، انتقِل إلى Google Chat API. ابحث عن "Google Chat API" وانقر على Google Chat API، ثم انقر على إدارة.
انقر على الإعداد وأعِدّ تطبيق Chat على النحو التالي:
- في حقل اسم التطبيق، أدخِل
Dialogflow App. - في عنوان URL للأفاتار، أدخِل
https://developers.google.com/workspace/chat/images/quickstart-app-avatar.png. - في الوصف، أدخِل
Responds to real human conversation. - ضمن الوظائف، اختَر الانضمام إلى المساحات والمحادثات الجماعية.
- ضمن إعدادات الاتصال، اختَر Dialogflow.
- ضمن إعدادات Dialogflow، اختَر Dialogflow CX.
- في اسم مورد الوكيل أو البيئة، الصِق اسم وكيل Dialogflow CX الذي نسخته في نهاية إنشاء وكيل Dialogflow CX.
- إتاحة تطبيق Chat لمستخدمين ومجموعات محدّدة في نطاقك وأدخِل عنوان بريدك الإلكتروني.
- ضمن السجلات، اختَر تسجيل الأخطاء في خدمة تسجيل البيانات.
- في حقل اسم التطبيق، أدخِل
انقر على حفظ.
تطبيق Chat جاهز لتلقّي الرسائل والردّ عليها.
اختبار تطبيق Chat
اختبِر تطبيق الدردشة Dialogflow CX من خلال مراسلته في Google Chat.
افتح Google Chat باستخدام حساب Google Workspace الذي قدّمته عند إضافة نفسك كمختبِر موثوق به.
- انقر على محادثة جديدة.
- في حقل إضافة مستخدم واحد أو أكثر، اكتب اسم تطبيق Chat.
اختَر تطبيق Chat من النتائج. سيتم فتح رسالة مباشرة.
في الرسالة المباشرة الجديدة مع التطبيق، اكتب
Helloواضغط علىenter.سيردّ تطبيق Dialogflow Chat بتعريف نفسه.
- أكمِل الاختبار من خلال إجراء محادثة الاختبار التجريبي.
نموذج محادثة اختبارية
لاختبار تطبيق Chat في Dialogflow CX، سواء في وحدة تحكّم Dialogflow CX أو في Google Chat، عليك إجراء المحادثة التالية. تساعدك هذه الإضافة في فهم الطريقة التي يفسّر بها وكيل Dialogflow CX اللغة الطبيعية للمستخدم وينتج ردّه الخاص باللغة الطبيعية في كل خطوة من المحادثة. تستند محادثة النموذج هذه إلى الوكيل المُعدّ مسبقًا الذي يُطلق عليه اسم السفر: تأجير السيارات.
| مربّع حوار | الشرح |
|---|---|
|
المستخدم النهائي: مرحبًا الموظف: مرحبًا أنا وكيل تأجير السيارات الافتراضي. يمكنني مساعدتك في بدء حجز جديد لاستئجار سيارة. كيف يمكننا مساعدتك اليوم؟ |
|
|
المستخدم النهائي: أريد استئجار سيارة. الموظف: أين تريد استلام المركبة؟ |
|
|
المستخدم النهائي: لاس فيغاس الوكيل: حسنًا، سيتم الاستلام في لاس فيغاس. الموظف: هل يختلف موقع التسليم عن موقع الاستلام؟ |
|
|
المستخدم النهائي: نعم. سأعيد السيارة في لوس أنجلوس. الوكيل: حسنًا، سيتم تسليم الطرد في لوس أنجلوس. الموظف: في أي تاريخ ووقت تريد استلام المركبة؟ |
|
|
المستخدم النهائي: أريد استلام السيارة في 5 مارس عند الظهر. الموظف: ما هو التاريخ والوقت المناسبان لك لتسليم المركبة؟ |
|
|
المستخدم النهائي: 15 مارس في منتصف النهار الموظف: للتأكيد: ستستلم المركبة في لاس فيغاس في 2024-03-05 الساعة 12:00:00 وستعيدها في لوس أنجلوس في 2024-03-15 الساعة 12:00:00 هل هذا صحيح؟ |
|
|
المستخدم النهائي: نعم، شكرًا. موظف الدعم: ممتاز. لنختار الآن مركبة. الموظف: هل تريد مركبة اقتصادية أم فاخرة؟ |
|
|
المستخدم النهائي: أريد الشحن بتكلفة منخفضة. الموظف: هل تريد سيارة Cymbal أو شاحنة Cymbal؟ |
|
|
المستخدم النهائي: Cymbal Truck العميل: تبلغ تكلفة شاحنة Cymbal 50.33 دولار أمريكي في اليوم. تتسع لأربعة أشخاص وتتضمّن راديو AM/FM. هل تريد الانتقال إلى صفحة الدفع؟ المستخدم النهائي: نعم، من فضلك. |
|
|
الموظف: ما هو نوع البطاقة التي ستستخدمها؟ المستخدم النهائي: 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 دولار أمريكي. الموظف: شكرًا لك على استئجار السيارة من شركتنا، ونتمنّى لك يومًا رائعًا. |
|
إرسال رسائل البطاقات من Dialogflow
يمكن أن يردّ Dialogflow برسائل نصية أو برسائل بطاقة. للردّ برسالة بطاقة، حدِّدها على أنّها حمولة مخصّصة في التنفيذ.
يوضّح ملف JSON التالي كيفية إرسال رسالة بطاقة كحمولة مخصّصة في عملية التنفيذ:
json
{ "hostAppDataAction": { "chatDataAction": { "createMessageAction": {
"message": { "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"
}}
}]}}]}]
}
}]}
}}}}
الحدود والاعتبارات
- عند استخدام إضافات Google Workspace مع Dialogflow، تنطبق القيود والاعتبارات التالية على عناصر أحداث المحادثة:
- أحداث صفحة "التطبيق" الرئيسية: لا تتوفّر بعد إمكانية استخدام أحداث
APP_HOME. - إدخال طلب بحث في Dialogflow: يعتمد النص الذي يتم إرساله كإدخال لطلب البحث إلى وكيل Dialogflow على نوع الحدث:
MESSAGE: قيمة الحقلargumentTextمن رسالة المحادثة.APP_COMMAND: السلسلة"APP_COMMAND_PAYLOAD"ADDED_TO_SPACE: السلسلة"ADDED_TO_SPACE_PAYLOAD"REMOVED_FROM_SPACE: السلسلة"REMOVED_FROM_SPACE_PAYLOAD"CARD_CLICKED: السلسلة"BUTTON_CLICKED_PAYLOAD"WIDGET_UPDATED: السلسلة"WIDGET_UPDATED_PAYLOAD"(المستخدَمة في الإكمال التلقائي)
- حِمل الحدث الكامل: يتم إرسال حِمل JSON الكامل لحدث التفاعل مع المحادثة إلى Dialogflow ضمن الحقل
WebhookRequest.payload. يمكنك الوصول إلى هذه البيانات في Webhook الخاص بخدمة Dialogflow. لمزيد من المعلومات، يُرجى الاطّلاع على مستندات طلبات Webhook في Dialogflow CX.
- أحداث صفحة "التطبيق" الرئيسية: لا تتوفّر بعد إمكانية استخدام أحداث
- اعتبارات الاستجابة للأوامر وتلقّي البيانات من البطاقات أو مربّعات الحوار:
- إذا كان وكيل Dialogflow بحاجة إلى معالجة حمولة JSON لحدث التفاعل مع المحادثة، يمكنه إجراء ذلك باستخدام خطاف Dialogflow لفحص الحمولة المخصّصة في مَعلمة طلب البحث.
- لعرض مربع حوار من
وكيل Dialogflow، يجب الردّ باستخدام حمولة JSON مخصّصة واحدة تحتوي على كائن
RenderActionsمعpushCardالتنقّل. - لمعالجة البيانات التي يتم إدخالها من البطاقات، يمكنك استخدام خطاف Dialogflow والرد بحِزمة 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.
تحديد المشاكل وحلّها
لتصحيح أخطاء تطبيق Chat، ابدأ بمراجعة سجلّات الأخطاء. بما أنّ هذا التطبيق يستخدم Dialogflow، تتوفّر لك العديد من المراجع لتسجيل البيانات وتحديد المشاكل وحلّها:
سجلّات إضافات Google Workspace: يمكنك البحث في السجلّات للحصول على معلومات تفصيلية حول سلوك الإضافة، بما في ذلك تفاعلاتها مع Chat. اطّلِع على سجلّات طلب البحث عن إضافات Google Workspace.
أخطاء تطبيق Google Chat: للاطّلاع على رسائل الخطأ العامة في تطبيق Chat وحلولها، يُرجى الرجوع إلى تحديد مشاكل تطبيق Chat وحلّها.
تسجيل الدخول إلى Dialogflow CX Cloud: تأكَّد من تفعيل Cloud Logging في إعدادات وكيل Dialogflow لتسجيل سجلّات التنفيذ التفصيلية، بما في ذلك الأخطاء من الوكيل وتفاعلات الردّ التلقائي على الويب. تعرَّف على كيفية تفعيل هذه الميزة وإعدادها في مستندات إعدادات وكيل Dialogflow CX. يمكن الاطّلاع على هذه السجلّات في "مستكشف السجلّات" في Google Cloud Console.
سجلّ المحادثات في Dialogflow CX: راجِع التفاعلات السابقة لفهم سير المحادثة وتحديد مواضع حدوث المشاكل. الاطّلاع على سجلّ المحادثات
تحديد المشاكل العامة في Dialogflow وحلّها: لمعالجة مشاكل أوسع نطاقًا في Dialogflow، يُرجى الرجوع إلى دليل تحديد المشاكل وحلّها في Dialogflow CX.
تَنظيم
لتجنُّب تحمّل رسوم في حسابك على Google Cloud مقابل الموارد المستخدَمة في هذا البرنامج التعليمي، ننصحك بحذف مشروع Cloud.
- في Google Cloud Console، انتقِل إلى صفحة إدارة الموارد. انقر على القائمة > إدارة الهوية وإمكانية الوصول والمشرف > إدارة الموارد.
- في قائمة المشاريع، اختَر المشروع الذي تريد حذفه، ثم انقر على حذف .
- في مربّع الحوار، اكتب معرّف المشروع، ثم انقر على إيقاف لحذف المشروع.
مواضيع ذات صلة
- تتّبع منصة Dialogflow CX نهج آلة الحالة في تصميم وكيل Dialogflow، ما يمنحك تحكّمًا واضحًا وصريحًا في المحادثة، ويوفّر تجربة أفضل للمستخدم النهائي، ويحسّن سير عمل التطوير. عند إنشاء تطبيق دردشة على Dialogflow، ننصحك باستخدام Dialogflow CX.
- لمزيد من المعلومات حول إنشاء الوكلاء وإعدادهم، راجِع وكلاء Dialogflow CX.
- للحصول على شرح تفصيلي يوضّح كيفية إنشاء الوكلاء وإعدادهم، يُرجى الاطّلاع على إنشاء وكيل Dialogflow CX.
- Dialogflow ES هي طريقة أخرى لاستخدام Dialogflow مع تطبيق Chat.