بعد إنشاء عملية تنفيذ الردّ التلقائي على الويب، يمكنك نشرها في مرحلة الإنتاج وربطها بالإجراء. توضّح لك الخطوات التالية كيفية إعداد بيئتك للنشر في وظائف السحابة الإلكترونية لمنصة Firebase لاستضافة عملية الإنتاج. مع ذلك، يمكنك اختيار أي نظام أساسي لاستضافة الويب يتوافق مع طلبات HTTPS وردوده لاستضافة عملية التنفيذ.
إذا سبق لك نشر الردّ التلقائي على الويب على منصّة لاستضافة الويب، يمكنك تخطّي إلى ربط الردّ التلقائي على الويب بالإجراء. يُرجى العلم أنّ الخطوات الأخيرة في العملية أدناه تختلف استنادًا إلى ما إذا كنت تستخدم Dialogflow أو حزمة SDK للإجراءات.
النشر في وظائف السحابة الإلكترونية لبرنامج Firebase
- نزِّل Node.js وثبِّتها.
إعداد واجهة سطر الأوامر لمنصة Firebase وإعدادها إذا تعذَّر الأمر التالي مع ظهور خطأ
EACCES
، قد تحتاج إلى تغيير أذونات npm.npm install -g firebase-tools
مصادقة أداة Firebase مع حسابك على Google:
firebase login
انتقِل إلى دليل مشروع Action (الإجراء) وابدأ إعداد Firebase. سيُطلب منك تحديد ميزات واجهة سطر الأوامر في Firebase التي تريد إعدادها لمشروع الإجراءات. اختر "
Functions
" والميزات الأخرى التي قد تريد استخدامها، مثل Firestore، ثم اضغط على Enter للتأكيد والمتابعة:cd <cloud_function_dir> firebase init
اربط أداة Firebase بمشروع "المهام" من خلال اختياره باستخدام مفاتيح الأسهم للتنقّل في قائمة المشاريع:
بعد اختيار المشروع، تبدأ أداة Firebase في إعداد الدوال وتسألك عن اللغة التي تريد استخدامها. حدد باستخدام مفاتيح الأسهم واضغط على Enter للمتابعة.
=== Functions Setup
A functions directory will be created in your project with a Node.js package pre-configured. Functions can be deployed with firebase deploy. ? What language would you like to use to write Cloud Functions? (Use arrow keys) > JavaScript TypeScriptاختَر ما إذا كنت تريد استخدام ESLint لاكتشاف الأخطاء المحتملة وتطبيق نمط الكتابة
Y
أوN
:? Do you want to use ESLint to catch probable bugs and enforce style? (Y/n)
يمكنك الحصول على تبعيات المشروع عن طريق كتابة
Y
في الطلب:? Do you want to install dependencies with npm now? (Y/n)
بعد اكتمال الإعداد، ستظهر لك نتيجة مشابهة لما يلي:
✔ Firebase initialization complete!
ثبِّت التبعية actions-on-google:
cd <cloud_function_dir>/functions npm install actions-on-google
الحصول على تبعيات التنفيذ ونشر دالة التنفيذ:
npm install firebase deploy --only functions
تستغرق عملية النشر بضع دقائق. بمجرد الانتهاء، سترى مخرجات مشابهة لما يلي. ستحتاج إلى عنوان URL للدالة للدخول في Dialogflow.
✔ Deploy complete!
Project Console: https://console.firebase.google.com/project/exampleproject-123/overview Function URL (cloudFunctionName): https://us-central1-exampleproject-123.cloudfunctions.net/cloudFunctionName
ربط الرد التلقائي على الويب بالإجراء
إذا كنت تستخدم Dialogflow: في وحدة تحكُّم Dialogflow، انتقِل إلى Fulfillment، وبدِّل على الزر Webhook إلى تفعيل، واستبدل عنوان URL في الحقل عنوان URL بـ عنوان URL للدالة.
في حال استخدام Actions SDK: أنشِئ كائنًا
داخل الكائن conversations
للإعلان عن عملية التنفيذ في حزمة "الإجراءات":
{ "actions": [ { "description": "Default Welcome Intent", "name": "MAIN", "fulfillment": { "conversationName": "myFulfillmentFunction" }, "intent": { "name": "actions.intent.MAIN", "trigger": { "queryPatterns": [ "talk to myFulfillmentFunction" ] } } } ], "conversations": { "myFulfillmentFunction": { "name": "myFulfillmentFunction", "url": "https://us-central1-myprojectname-ab123.cloudfunctions.net/cloudFunctionName" } }, "locale": "en" }