Komponen bawaan pengumpulan alamat mengumpulkan alamat dari pengguna akhir, dan menggunakan Google Address Validation API untuk memvalidasi alamat.
Batasan
Selain batasan komponen bawaan umum, komponen bawaan ini memiliki batasan berikut:
- Hanya mendukung alamat dari negara yang tercantum di detail cakupan Address Validation API.
Fungsi tambahan
Fungsi tambahan berikut disediakan oleh komponen bawaan ini:
Contoh dialog
Contoh dialog berikut menunjukkan skenario umum yang ditangani oleh komponen bawaan ini. Contoh dialog menunjukkan perilaku saat komponen dipanggil melalui telepon, yang memicu Intent Selamat Datang Default dan respons agen pertama di awal percakapan.
Alamat lengkap yang valid
Pengguna akhir memberikan alamat lengkap dan komponen pengumpulan alamat berhasil memverifikasinya.
Input pengguna | Respons agen |
---|---|
Beri tahu kami alamat lengkap Anda untuk memulai. | |
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351, USA | |
Saya telah mengumpulkan alamat akhir; nomor jalannya adalah 1600, rutenya adalah Amphitheatre Parkway, kotanya adalah Mountain View, wilayah administratifnya adalah CA, kode posnya adalah 94043, negaranya adalah Amerika Serikat. Apakah itu benar? Silakan jawab ya atau tidak. | |
ya | |
Bagus, saya sudah mengumpulkan alamatnya. |
Alamat sebagian valid dengan elemen yang disimpulkan
Pengguna akhir memberikan alamat sebagian; agen menebak bagian yang hilang dan berhasil memverifikasinya setelah konfirmasi dari pengguna akhir.
Input pengguna | Respons agen |
---|---|
Beri tahu kami alamat lengkap Anda untuk memulai. | |
1600 Amphitheatre Parkway | |
Saya telah menebak beberapa bagian alamat, kotanya adalah Mountain View, kode posnya adalah 94043, wilayah administratifnya adalah CA, negaranya adalah Amerika Serikat. Saya telah mengumpulkan alamat akhir; nomor jalannya adalah 1600, rutenya adalah Amphitheatre Parkway, kotanya adalah Mountain View, wilayah administratifnya adalah CA, kode posnya adalah 94043, negaranya adalah Amerika Serikat. Apakah itu benar? Silakan jawab ya atau tidak. |
|
Ya | |
Bagus, saya sudah mengumpulkan alamatnya. |
Alamat sebagian valid dengan elemen yang disediakan pengguna
Pengguna akhir memberikan alamat sebagian; agen menebak bagian yang hilang, tetapi pengguna akhir memberikan inputnya sendiri setelah mengatakan "tidak", dan agen berhasil menerima alamat tersebut.
Input pengguna | Respons agen |
---|---|
Beri tahu kami alamat lengkap Anda untuk memulai. | |
1600 Amphitheatre Parkway | |
Saya telah menebak beberapa bagian alamat, kotanya adalah Mountain View, kode posnya adalah 94043, wilayah administratifnya adalah CA, negaranya adalah Amerika Serikat. Saya telah mengumpulkan alamat akhir; nomor jalannya adalah 1600, rutenya adalah Amphitheatre Parkway, kotanya adalah Mountain View, wilayah administratifnya adalah CA, kode posnya adalah 94043, negaranya adalah Amerika Serikat. Apakah itu benar? Silakan jawab ya atau tidak. |
|
Tidak | |
Baik. Beri tahu saya bagian alamat mana yang perlu diubah. | |
Kode Pos | |
Dapatkah Anda membagikan kode pos? | |
94044 | |
Saya sudah selesai dengan update ini. Apakah ada hal lain yang perlu diubah? Silakan jawab ya atau tidak. | |
tidak | |
Setelah validasi, saya telah mengganti kode pos menjadi 94043. Saya telah mengumpulkan alamat akhir; nomor jalan adalah 1600, rute adalah Amphitheatre Parkway, kota adalah Mountain View, wilayah administratif adalah CA, kode pos adalah 94043, negara adalah Amerika Serikat. Apakah itu benar? Silakan jawab ya atau tidak. |
|
ya | |
Bagus, saya sudah mengumpulkan alamatnya. |
Input tidak dikenal
Komponen keluar dari alur setelah pengguna akhir memberikan input yang tidak dikenal tiga kali.
Input pengguna | Respons agen |
---|---|
Beri tahu kami alamat lengkap Anda untuk memulai. | |
Tidak apa-apa | |
Maaf, saya tidak mengerti. Beri tahu kami alamat lengkap Anda untuk memulai. | |
bagus | |
Hmm, saya masih belum bisa mendapatkannya. Beri tahu kami alamat lengkap Anda untuk memulai. | |
hebat | |
Maaf, saya kesulitan memahami respons Anda. |
Alamat yang tidak didukung
Komponen keluar dari alur setelah pengguna akhir memberikan alamat yang saat ini tidak didukung oleh Address Validation API.
Input pengguna | Respons agen |
---|---|
Beri tahu kami alamat lengkap Anda untuk memulai. | |
India | |
Maaf, saat ini kami tidak dapat memvalidasi alamat di wilayah tersebut. |
Validasi alamat
Untuk memahami cara komponen pengumpulan alamat memvalidasi alamat, lihat Ringkasan Address Validation API.
Komponen pengumpulan alamat mengambil input pengguna akhir menggunakan entitas sistem@sys.address dan mengirim alamat yang diambil ke Address Validation API untuk mengekstrak elemen alamat guna pemrosesan lebih lanjut.
Elemen alamat berikut ditampilkan oleh Address Validation API dan digunakan oleh komponen untuk mengumpulkan dan memvalidasi alamat lengkap:
- administrative_area_level_1
- archipelago
- negara
- lokalitas
- postal_code
- route
- street_number
Anda dapat mencoba Demo Validasi Alamat Google dengan alamat mana pun dari wilayah yang didukung.
Konvensi penamaan
Komponen bawaan ini menggunakan konvensi penamaan berikut:
Fitur | Format | Contoh |
---|---|---|
Flow | [Nama Komponen] | Pengumpulan Alamat |
Intent Khusus Komponen | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_address_collection_locality |
Parameter | [param_name] | user_provided_address |
Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_address_collection:address_validation |
Parameter input
Parameter input adalah parameter yang digunakan untuk mengonfigurasi perilaku tertentu dari komponen. Parameter akan digunakan oleh satu atau beberapa kondisi dalam alur untuk menentukan perilaku komponen. Parameter cakupan alur harus ditetapkan di halaman awal komponen seperti yang dijelaskan di bawah. Parameter cakupan sesi dapat ditetapkan oleh alur panggilan, atau di halaman awal komponen ini.
Anda dapat mengonfigurasi elemen alamat yang diperlukan oleh komponen ini dengan mengubah preset parameter di halaman awal alur.
Komponen bawaan ini menerima parameter input berikut:
Nama Parameter | Deskripsi | Format Input |
---|---|---|
$flow.zip_code | Jika elemen alamat kode pos diperlukan, tetapkan sebagai true , jika tidak, false . |
boolean |
$flow.city | Jika elemen alamat kota diperlukan, tetapkan sebagai true , jika tidak, false . |
boolean |
$flow.admin_area | Jika elemen alamat area administratif diperlukan, tetapkan sebagai true , jika tidak, false . |
boolean |
$flow.street_number | Jika elemen alamat nomor jalan diperlukan, tetapkan sebagai true , jika tidak, false . |
boolean |
$flow.route | Jika elemen alamat rute diperlukan, tetapkan sebagai true , jika tidak, false . |
boolean |
$flow.country | Jika elemen alamat negara diperlukan, tetapkan sebagai true , jika tidak, false . |
boolean |
$flow.island | Jika elemen alamat pulau diperlukan, tetapkan sebagai true , jika tidak, false . |
boolean |
$flow.retry_num | Menetapkan batas percobaan ulang maksimum untuk panggilan webhook Maps Address Validation API | bilangan bulat |
Untuk mengonfigurasi parameter input untuk komponen ini, luaskan untuk mendapatkan petunjuk.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Build.
- Klik komponen yang diimpor di bagian Alur.
- Klik Halaman Awal di bagian Halaman.
- Klik Rute true di Halaman Mulai.
- Di jendela Rute, edit nilai Preset Parameter sesuai kebutuhan.
- Klik Simpan.
Parameter output
Parameter output adalah parameter sesi yang akan tetap aktif setelah keluar dari komponen. Parameter ini berisi informasi penting yang dikumpulkan oleh komponen. Komponen bawaan ini memberikan nilai untuk parameter output berikut:
Nama Parameter | Deskripsi | Format Output |
---|---|---|
address_collection_address | Parameter ini menampilkan objek alamat jika alamat diambil oleh komponen | { |
address_collection_status | Parameter ini menampilkan status alamat yang dikumpulkan. Nilai yang ditampilkan adalah salah satu dari:VALID_ADDRESS : alamat dikumpulkan dan divalidasi oleh Address Validation API.INVALID_ADDRESS : alamat dikonfirmasi oleh pengguna akhir, tetapi satu atau beberapa elemen tidak divalidasi atau ditandai sebagai UNCONFIRMED_BUT_PLAUSIBLE oleh Address Validation API.MAPS_API_ERROR : alamat tidak dikumpulkan karena error Address Validation API.COUNTRY_NOT_SUPPORTED : alamat tidak dikumpulkan karena Address Validation API tidak mendukung wilayah tersebut.NO_USER_CONFIRMATION : alamat tidak dikonfirmasi karena pengguna akhir tidak mengonfirmasi alamat. |
string |
Penyiapan dasar
Untuk menyiapkan komponen bawaan ini:
- Impor komponen bawaan.
- Aktifkan Address Validation API.
- Konfigurasikan webhook fleksibel yang disediakan dengan kunci Maps API Anda, lihat Penyiapan webhook di bawah.
Penyiapan webhook
Untuk menggunakan Address Validation API guna memvalidasi alamat, Anda harus mengonfigurasi webhook fleksibel yang disediakan dengan kredensial yang benar.
Webhook Address Validation
Webhook ini melakukan tindakan berikut:
- Memproses parameter Agen Percakapan (Dialogflow CX) yang diambil, membuat permintaan, dan memverifikasi alamat menggunakan Address Validation API.
- Mengekstrak elemen alamat yang dikonfirmasi, tidak dikonfirmasi, tidak ada, dan disimpulkan dari respons Google Address Validation API.
Untuk mengonfigurasi webhook untuk komponen ini, Anda harus memperbarui setelan webhook dengan kunci Maps API Anda.
- Untuk mengambil Kunci API: buka Konsol Google Cloud Platform > API & Services > Credentials, pilih kunci Maps API Anda, salin kolom Kunci API.
Untuk mengonfigurasi webhook:
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_address_collection:address_validation.
- Ganti URL di kolom Webhook URL Agen Percakapan (Dialogflow CX) dengan URL yang menyertakan Kunci Maps API Anda: https://addressvalidation.googleapis.com/v1:validateAddress?key=MAPS_API_KEY
- Di setelan Authentication, konfigurasikan Username sebagai
key
dan tetapkan Password ke kunci Maps API Anda. - Klik Simpan.
Selesai
Agen dan webhook-nya kini telah disiapkan dan siap diuji.