Komponen bawaan autentikasi retail mengumpulkan informasi dari pengguna untuk mengautentikasi mereka ke tingkat autentikasi yang diperlukan. Komponen ini mencakup persyaratan autentikasi yang umum, tetapi tidak eksklusif, untuk industri retail. Komponen ini menggunakan komponen bawaan Pengumpulan nomor telepon untuk mengumpulkan dan memvalidasi detail pengguna.
Tingkat autentikasi
Ada beberapa tingkat autentikasi yang diperlukan oleh berbagai komponen bawaan, dengan tingkat yang lebih tinggi memerlukan lebih banyak informasi pengguna untuk mengautentikasi pengguna. Komponen autentikasi retail memungkinkan pengguna melakukan autentikasi ke Level 0 (Pencocokan ANI) atau Level 1 (Dasar) seperti yang dijelaskan dalam tabel Tingkat Autentikasi.
| Tingkat Autentikasi | Persyaratan |
|---|---|
| Level 0: Pencocokan ANI | Pengguna diautentikasi dengan melakukan panggilan dari atau memberikan nomor telepon yang sesuai dengan akun terdaftar. Pengguna dapat diautentikasi ke Level 0 dengan menggunakan komponen bawaan Greeting. |
| Level 1: Dasar | Pengguna diautentikasi dengan memverifikasi kode sandi sekali pakai (OTP) yang dikirim ke email atau nomor teleponnya. |
Jenis pengguna yang didukung
Komponen autentikasi retail memberikan dukungan bagi pengguna dengan nomor telepon dan email yang terdaftar.
Batasan
Selain batasan komponen bawaan umum, komponen bawaan ini memiliki batasan berikut:
- OTP hanya akan dikirim ke nomor ponsel atau alamat email yang sebelumnya terdaftar untuk pengguna. Komponen tidak akan menggunakan OTP untuk mengautentikasi pelanggan yang menelepon dari nomor telepon alternatif yang tidak terdaftar di akun mereka. Saat pengguna menelepon dari nomor telepon alternatif, pertanyaan keamanan akan digunakan untuk mengautentikasi penelepon.
- Komponen ini tidak mengenkripsi data apa pun.
Contoh dialog
Contoh dialog berikut menunjukkan skenario umum yang ditangani oleh komponen bawaan ini. Dialog contoh menunjukkan perilaku saat komponen dipanggil menggunakan telepon, yang memicu Maksud Sambutan Default dan respons agen pertama di awal percakapan.
Keberhasilan autentikasi Level 0: Kecocokan ANI
Pengguna menelepon dari nomor telepon yang terdaftar ke akun yang sudah ada, mengonfirmasi akunnya, dan berhasil diautentikasi ke Level 0.
| Input pengguna | Respons agen |
|---|---|
| Halo, nomor yang Anda hubungi ditautkan ke akun John. Apakah Anda menanyakan pesanan orang lain? Ucapkan ya jika memang begitu, atau ucapkan tidak. | |
| Tidak | |
| Terima kasih, John. Anda telah berhasil diidentifikasi. |
Keberhasilan autentikasi Level 1: OTP
Pengguna menelepon dari nomor telepon yang tidak dikenal. Komponen mengumpulkan nomor telepon terdaftar pengguna, lalu mengirim dan meminta pengguna untuk mengonfirmasi OTP yang dikirim ke saluran pilihan pengguna. Pengguna dapat memberikan OTP yang valid dan berhasil diautentikasi ke Level 1.
| Input pengguna | Respons agen |
|---|---|
| Kami tidak dapat menemukan nomor telepon ini yang terkait dengan kami. Harap berikan nomor telepon terdaftar kepada kami. | |
| Agen mengumpulkan nomor telepon menggunakan komponen siap pakai Pengumpulan nomor telepon | |
| Bagus, kami telah selesai mengumpulkan nomor telepon. Untuk tujuan keamanan, kami perlu memvalidasi identitas Anda, jadi kami akan mengirimkan kode kepada Anda. Apakah Anda ingin menerima kode melalui telepon atau email? |
|
| telepon | |
| Sekadar memastikan, apakah Anda ingin menerima OTP di ponsel Anda? Ucapkan ya atau tidak. | |
| ya | |
| Kami telah mengirimkan kode ke nomor telepon terdaftar Anda yang berakhiran 0000. Proses ini mungkin memerlukan waktu beberapa detik. Dapatkah Anda mengonfirmasi kode tersebut? | |
| 123457 | |
| Terima kasih, John. Anda telah berhasil diidentifikasi. |
Konvensi penamaan
Komponen bawaan ini menggunakan konvensi penamaan berikut:
| Fitur | Format | Contoh |
|---|---|---|
| Flow | [Nama Komponen] | Autentikasi Retail |
| Niat Khusus Komponen | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_retail_authentication_incorrect_phone_number |
| Jenis Entitas | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_channel_email_phone |
| Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_retail_authentication:verify_user_details |
Parameter input
Parameter input adalah parameter yang digunakan untuk mengonfigurasi perilaku tertentu 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 mulai komponen ini.
Komponen bawaan ini menerima parameter input berikut:
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $session.params.auth_level_req | Menentukan tingkat autentikasi yang akan digunakan untuk mengautentikasi pengguna akhir. Nilai yang valid adalah 0 atau 1. |
bilangan bulat |
| $session.params.auth_level | (opsional) Menunjukkan tingkat autentikasi pengguna akhir saat ini. | bilangan bulat |
| $session.params.phone_number | (opsional) Nomor telepon pengguna akhir. Jika parameter ini tidak diberikan, komponen akan mengumpulkan nomor telepon dari pengguna akhir. | string |
| $flow.max_retry_phone_number | Menentukan jumlah percobaan ulang yang diizinkan saat mengumpulkan nomor telepon pengguna. Nilai defaultnya adalah 3. |
bilangan bulat |
| $flow.max_retry_otp | Menentukan jumlah percobaan ulang yang diizinkan saat mengumpulkan Sandi Sekali Pakai (OTP). Nilai defaultnya adalah 3. |
bilangan bulat |
| $flow.max_retry_otp_not_received | Menentukan jumlah percobaan ulang yang diizinkan saat Sandi Sekali Pakai (OTP) tidak diterima. Nilai defaultnya adalah 1. |
bilangan bulat |
| $flow.max_retry_otp_confirm_channel | Menentukan jumlah percobaan ulang yang diizinkan saat mengumpulkan saluran untuk menerima Sandi Sekali Pakai (OTP). Nilai defaultnya adalah 3. |
bilangan bulat |
Untuk mengonfigurasi parameter input untuk komponen ini, perluas 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 |
|---|---|---|
| auth_level | Menunjukkan tingkat autentikasi pengguna akhir saat ini. | bilangan bulat |
| all_recent_order_id | Parameter ini mencantumkan ID pesanan yang terkait dengan pengguna yang diautentikasi, yang diurutkan berdasarkan tanggal penempatan pesanan dalam urutan menurun. Elemen pertama array mewakili pesanan terbaru. Jika pengguna tidak memiliki pesanan, nilai parameter ini adalah null. |
Daftar (string) |
| phone_number | Nomor telepon lokal pengguna, tanpa kode negara, yang digunakan untuk mengidentifikasi pengguna. | string |
| Email yang terdaftar di akun. | string | |
| user_first_name | Nama depan pengguna, digunakan untuk menyapa dan mengonfirmasi kepemilikan akun. | string |
| transfer_reason | Parameter ini menunjukkan alasan alur keluar, jika tidak berhasil. Nilai yang ditampilkan adalah salah satu dari:agent: pengguna akhir meminta agen manusia di beberapa titik selama percakapan.denial_of_information: pengguna akhir menolak untuk membagikan informasi yang diminta oleh komponen.max_no_input: percakapan mencapai jumlah percobaan ulang maksimum untuk peristiwa tanpa input. Lihat peristiwa bawaan tanpa input.max_no_match: percakapan mencapai jumlah maksimum percobaan ulang untuk peristiwa tanpa kecocokan. Lihat peristiwa bawaan tanpa kecocokan.webhook_error: terjadi error webhook. Lihat webhook.error built-in event. webhook_not_found: URL webhook tidak dapat dijangkau. Lihat webhook.error.not-found built-in event. |
string |
Penyiapan dasar
Untuk menyiapkan komponen bawaan ini:
- Impor komponen bawaan.
- Konfigurasi webhook fleksibel yang disediakan dengan konfigurasi yang menjelaskan layanan eksternal Anda, lihat penyiapan Webhook di bawah.
Penyiapan webhook
Untuk menggunakan komponen ini, Anda harus mengonfigurasi webhook fleksibel yang disertakan untuk mengambil informasi yang diperlukan dari layanan eksternal Anda.
Memverifikasi detail pengguna
Webhook prebuilt_components_retail_authentication:verify_user_details digunakan oleh komponen untuk mengambil detail akun pengguna berdasarkan nomor telepon yang diberikan.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input ke permintaan API.
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $session.params.phone_number | Nomor telepon lokal pengguna, tanpa kode negara, yang digunakan untuk mengidentifikasi pengguna. | string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| Email yang terdaftar di akun. | string | |
| all_recent_order_id | Daftar ID pesanan yang terkait dengan pengguna yang diautentikasi, diurutkan berdasarkan tanggal penempatan pesanan dalam urutan menurun. Elemen pertama array mewakili pesanan terbaru. Jika pengguna tidak memiliki pesanan, nilai parameter ini adalah null. |
Daftar (string) |
| user_first_name | Nama depan pengguna, digunakan untuk menyapa dan mengonfirmasi kepemilikan akun. | string |
Untuk mengonfigurasi webhook Verifikasi detail pengguna untuk komponen ini, luaskan petunjuknya.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_retail_authentication:verify_user_details.
- Ganti URL di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang tepat di menu dropdown.
- Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat untuk webhook Anda.
- Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari respons webhook Anda. Jangan ubah nama parameter, karena nama ini diperlukan oleh komponen untuk mengakses nilai kolom yang ditampilkan.
- Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
- Klik Simpan.
Kirim OTP
Webhook prebuilt_components_retail_authentication:send_otp digunakan
oleh komponen untuk mengirimkan sandi sekali pakai (OTP) ke saluran terdaftar
yang dipilih oleh pengguna akhir.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input ke permintaan API.
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $session.params.phone_number | Nomor telepon lokal pengguna, tanpa kode negara, yang digunakan untuk mengidentifikasi pengguna. | string |
| $flow.channel | Saluran yang dipilih pengguna untuk menerima OTP. Nilai yang valid ditentukan oleh entity kustom prebuilt_components_channel_email_phone. Secara default, email dan phone didukung. |
string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| generated_otp | Nilai OTP yang dibuat dan dikirim ke pengguna menggunakan saluran yang dipilih. | string |
Untuk mengonfigurasi webhook Kirim OTP untuk komponen ini, perluas untuk melihat petunjuk.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_retail_authentication:send_otp.
- Ganti URL di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang tepat di menu dropdown.
- Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat untuk webhook Anda.
- Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari respons webhook Anda. Jangan ubah nama parameter, karena nama ini diperlukan oleh komponen untuk mengakses nilai kolom yang ditampilkan.
- Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
- Klik Simpan.
Selesai
Agen dan webhook-nya kini telah disiapkan dan siap diuji.