Setelah Anda mem-build fulfillment webhook, deploy ke produksi dan hubungkan ke Action Anda. Langkah-langkah berikut menunjukkan cara menyiapkan lingkungan Anda yang akan di-deploy ke Cloud Functions for Firebase untuk hosting produksi. Namun, Anda dapat memilih platform hosting web apa pun yang mendukung permintaan dan respons HTTPS untuk menghosting fulfillment Anda.
Jika telah men-deploy webhook ke platform hosting web, Anda dapat langsung ke bagian Menghubungkan webhook ke Action. Perlu diperhatikan bahwa langkah terakhir dalam proses di bawah ini berbeda-beda bergantung pada apakah Anda menggunakan Dialogflow atau Actions SDK.
Men-deploy ke Cloud Functions for Firebase
- Download dan instal Node.js.
Menyiapkan dan melakukan inisialisasi Firebase CLI. Jika perintah berikut gagal dengan error
EACCES
, Anda mungkin perlu mengubah izin npm.npm install -g firebase-tools
Autentikasi alat Firebase dengan Akun Google Anda:
firebase login
Buka direktori project Action Anda dan lakukan inisialisasi Firebase. Anda akan diminta untuk memilih fitur Firebase CLI yang ingin disiapkan untuk project Actions Anda. Pilih
Functions
dan fitur lain yang mungkin ingin Anda gunakan, seperti Firestore, lalu tekan Enter untuk mengonfirmasi dan melanjutkan:cd <cloud_function_dir> firebase init
Kaitkan alat Firebase dengan project Action Anda dengan memilihnya menggunakan tombol panah untuk membuka daftar project:
. Setelah memilih project, alat Firebase akan memulai penyiapan Functions dan menanyakan bahasa yang ingin Anda gunakan. Pilih menggunakan tombol panah dan tekan Enter untuk melanjutkan.
=== 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 TypeScriptPilih apakah Anda ingin menggunakan ESLint untuk menangkap kemungkinan bug dan menerapkan gaya pengetikan
Y
atauN
:? Do you want to use ESLint to catch probable bugs and enforce style? (Y/n)
Dapatkan dependensi project dengan mengetik
Y
pada perintah:? Do you want to install dependencies with npm now? (Y/n)
Setelah penyiapan selesai, Anda akan melihat output mirip seperti berikut:
✔ Firebase initialization complete!
Instal dependensi actions-on-google:
cd <cloud_function_dir>/functions npm install actions-on-google
Dapatkan dependensi fulfillment dan deploy fungsi fulfillment:
npm install firebase deploy --only functions
Deployment memerlukan waktu beberapa menit. Setelah selesai, Anda akan melihat {i>output<i} yang mirip dengan berikut ini. Anda memerlukan URL Function untuk masuk ke 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
Menghubungkan webhook ke Action Anda
Jika Anda menggunakan Dialogflow: Di konsol Dialogflow, buka Fulfillment, alihkan tombol Webhook ke ENABLED, dan ganti URL di kolom URL dengan Function URL Anda.
Jika Anda menggunakan Actions SDK: Buat objek
di dalam objek conversations
untuk mendeklarasikan fulfillment Anda dalam paket
Action:
{ "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" }