بعد إعداد الأهداف والمَشاهد، يجب تعديل رمز التنفيذ لمراعاة التغييرات في تنسيقات الطلبات والردود في "أداة إنشاء المهام". ويمكنك الاستفادة من هذه الميزات الإضافية في "أداة إنشاء المهام". تتناول هذه الصفحة الخطوات والاعتبارات العامة عند تعديل رمز توصيل الطلبات.
التفكير في النهج الذي تتّبعه لتلبية الطلبات
يعتمد رمز تنفيذ مشروعك على النموذج الحواري وميزات منصة التطوير. تقدّم "أداة إنشاء المهام" نموذجًا ووظائف حوارية جديدتين تغيّران طريقة بدء المحادثة، ومن المحتمل أن تغيّر الطريقة التي تتعامل بها مع تنفيذ مشروعك. يوضِّح هذا القسم ميزات "أداة إنشاء المهام" التي تختلف عن Dialogflow، وكيفية تغيير هذه الاختلافات في طريقة تنفيذ رمز التنفيذ.
تغييرات على تنفيذ المحادثات
- يستخدم Dialogflow مسار محادثة تستنِد إلى نية وسياقه، حيث تتم مطابقة الأهداف الفردية استنادًا إلى عبارات التدريب وسياقات الإدخال والإخراج للنية السابقة.
- يستخدم مسار المحادثة في "أداة إنشاء المهام" المَشاهد كحاوية للمنعطفات أثناء المحادثة. يمكن مطابقة أغراض محدّدة ضمن المشهد، كما هو الحال في سياقات Dialogflow. تحدد الانتقالات المشهد الذي يجب الانتقال إليه بناءً على الهدف الذي تتم مطابقته.
دوال الرد التلقائي على الويب القابلة لإعادة الاستخدام
- في Dialogflow، ترتبط معالِجات الردّ التلقائي على الويب بأهداف فردية. وإذا كانت هناك حاجة إلى منطق إضافي، يجب إنشاء هدف منفصل للتعامل مع الدالة الجديدة.
- تحتوي معالِجات الردّ التلقائي على الويب على أسماء معالِجات مخصَّصة في "أداة إنشاء المهام". تمنحك هذه الميزة القدرة على استدعاء دالة من مشاهد متعددة خلال مشروعك.
طرق إضافية لاستدعاء الردود التلقائية على الويب
- يتطلب نهج الرد التلقائي على الويب لكل نية في Dialogflow نوايا إضافية لتسهيل المنطق الحواري ضمن تنفيذ مشروعك.
- تتيح لك "أداة إنشاء الإجراءات" إجراء مكالمات الردّ التلقائي على الويب من أماكن متعددة داخل المشهد: عند الدخول، بناءً على الشروط، وبناءً على ملء الخانات، ومن خلال مطابقة الأهداف والنظام المخصّص.
تعديل رمز توصيل الطلبات
سيختلف رمز تنفيذ كل إجراء حسب مدى تعقيد الإجراء والغرض منه، ولكن هناك خطوات عامة يجب اتّخاذها عند تعديل الرمز:
نزِّل أحدث إصدار من مكتبة البرامج وثبِّته.
npm install @assistant/conversation
يُرجى تعديل عبارات
require
في الرمز. على سبيل المثال:const { SimpleResponse, BasicCard, Image, } = require('actions-on-google');
تم تعديل الرمز أعلاه إلى ما يلي:
const { conversation, Simple, Card, Image, } = require('@assistant/conversation');
أعِد ضبط الإعدادات في التعليمات البرمجية لاستخدام الطرق الجديدة.
- معالِجات الأهداف:
app.intent
←app.handle
- الردّ أو الطلبات:
conv.ask
←conv.add
- إمكانات سطح المكتب/الجهاز:
conv.surface.capabilities.has('actions.capability.SCREEN_OUTPUT')
←conv.device.capabilities.includes('RICH_RESPONSE')
- تخزين البيانات:
conv.data
←conv.session.params
أنواع الردود:
SimpleResponse
←Simple
BasicCard
←Card
Suggestions
←Suggestion
مَعلمات الأهداف:
conv.parameters[KEY]
←conv.intent.parameters[KEY].resolved
السياقات أو الانتقالات في المشهد:
conv.contexts.set(content_name, 5);
←conv.scene.next.name = 'context_name'
إنهاء المحادثة:
conv.close(response)
←conv.add.response; conv.scene.next.name = 'actions.page.END_CONVERSATION'
- معالِجات الأهداف:
يُرجى تعديل رمز الاستجابة لاستخدام أساسيات الردّ الجديدة من "أداة إنشاء الإعلانات". على سبيل المثال:
conv.ask(new Suggestions (['a', 'b']));
تم تعديل الرمز أعلاه إلى ما يلي:
for (suggestion of ['a', 'b']) { conv.add.(new Suggestion({title: suggestion})) }
يمكنك الاطّلاع على خريطة ترجمة رموز التوصيل أدناه للحصول على قائمة كاملة بالطرق.
استخدِم الصفحات التالية لمقارنة حمولات بيانات الطلبات والاستجابة:
- تنسيقات الطلبات
- تنسيقات الردود
إعداد الردود التلقائية على الويب
بعد تعديل التنفيذ، فعِّل مكالمات الرد التلقائي على الويب في مَشاهد المشروع. على الرغم من أنّ أداة نقل البيانات تُنقل إعدادات الردّ التلقائي على الويب في Dialogflow intent، تحتاج إلى مراجعة هذه الإعدادات، حيث قد تتغير وظائف الرد التلقائي على الويب ورمز التنفيذ بعد إعادة ضبط الإعدادات.
في Dialogflow، يتم تفعيل الردود التلقائية على الويب في عناصر intent، ويتضمّن رمز التنفيذ المعالِجات والدوال المطلوب تنفيذها عند مطابقة الغرض. في "أداة إنشاء المهام"، يمكن أن يتم تشغيل الردّ التلقائي على الويب ضمن نوايا الاستدعاء أو المشاهد، ما يرسل طلبًا إلى نقطة نهاية التنفيذ. يحتوي التنفيذ على معالِجات الردّ التلقائي على الويب التي تعالج حمولة JSON في الطلب. يمكنك تفعيل الردود التلقائية على الويب في الحالات التالية:
- بعد تطابق يهدف إلى الاستدعاء
- خلال المشهد على خشبة المسرح
- بعد أن يتم تقييم حالة على أنها صحيحة في مرحلة حالة المشهد
- خلال مرحلة تقديم العرض في المشهد
- بعد حدوث مطابقة الأهداف في مرحلة إدخال المشهد
عند نقل البيانات من Dialogflow إلى "أداة إنشاء المهام"، عليك مراعاة التغييرات التي طرأت على مسار المحادثة، لأنّ ذلك قد يتغيّر في وقت ومكان إجراء مكالمات الردّ التلقائي على الويب.
لتفعيل مكالمة ردّ تلقائي على الويب، اتّبِع الخطوات التالية:
- اختَر المشهد الذي تريد استدعاء الردّ التلقائي على الويب منه.
اختَر الحالة التي تريد تفعيل الردّ التلقائي على الويب لها. يمكنك تفعيل ردّ تلقائي على الويب لحالة واحدة أو أكثر من الحالات التالية:
- عند الدخول
- الشرط
- ملء الخانة
- التعامل مع نية المستخدم
- معالجة الغرض من النظام
ضَع علامة في الخيار الاتصال بالردّ التلقائي على الويب.
أدخِل معالِج الرد التلقائي على الويب الذي حددته ضمن رمز التنفيذ.
انقر على حفظ.
انتقِل إلى اختبار لتجربة التغييرات في الردّ التلقائي على الويب والتنفيذ.
خريطة ترجمة رموز توصيل الطلبات
يوضّح لك الجدول التالي كيفية تحويل بنية رمز التنفيذ في Dialogflow إلى رمز أداة إنشاء المهام. اطّلِع على مستندات مراجع حزمة تطوير البرامج (SDK) و"أداة إنشاء المهام" للحصول على قائمة كاملة بالطرق.
Dialogflow | أداة إنشاء المهام |
---|---|
conv.data |
conv.session.params |
conv.ask |
conv.add |
conv.close |
conv.scene.next.name = 'actions.scene.END_CONVERSATION' |
conv.user.storage |
conv.user.params |
conv.input.raw |
conv.intent.query |
conv.parameters |
conv.intent.params[key].resolved |
conv.arguments.get('MEDIA_STATUS') mediaStatus.status==='FINISHED' |
conv.intent.params['MEDIA_STATUS'] mediaStatus.resolved==='FINISHED' |
فعاليات | معالجة الغرض من النظام:MEDIA_STATUS_FINISHED MEDIA_STATUS_FAILED |
conv.device.capabilities.has("actions.capability.SCREEN_OUTPUT") |
conv.device.capabilities.includes("RICH_RESPONSE") |
app.intent |
app.handler |
app.middleware |
app.middleware |
ردّ بسيط |
prompt
-firstSimple
|
ردّ منسّق |
prompt
-content
-card: object
-image: object
-table: object
-media: object
-suggestions
-link
|
يمكنك العثور على معلومات حول أدوات إضافية أدناه: