Otentikasi ritel komponen bawaan mengumpulkan informasi dari pengguna untuk mengotentikasi mereka ke tingkat otentikasi yang diperlukan. Komponen ini mencakup persyaratan otentikasi yang umum, tetapi tidak eksklusif, untuk industri retail. Komponen ini menggunakan atribut Pengumpulan nomor telepon komponen bawaan untuk mengumpulkan dan memvalidasi detail pengguna.
Tingkat autentikasi
Ada beberapa tingkat autentikasi yang diperlukan oleh beragam sistem komponen, dengan tingkat yang lebih tinggi membutuhkan lebih banyak informasi pengguna untuk mengotentikasi pengguna. Komponen otentikasi ritel memungkinkan pengguna untuk mengotentikasi ke Level 0 (ANI Match) atau Level 1 (Basic) seperti yang dijelaskan dalam tabel Level Autentikasi.
Tingkat Autentikasi | Persyaratan |
---|---|
Level 0: Pencocokan ANI | Pengguna diautentikasi dengan menelepon dari atau memberikan nomor telepon yang sesuai dengan akun yang terdaftar. Pengguna dapat diautentikasi ke Level 0 menggunakan komponen bawaan Salam. |
Level 1: Dasar | Pengguna diautentikasi dengan memverifikasi kode sandi sekali pakai (OTP) yang dikirim ke email atau nomor telepon mereka. |
Jenis pengguna yang didukung
Komponen autentikasi retail memberikan dukungan bagi pengguna dengan nomor telepon dan email.
Batasan
Selain pasal batasan komponen bawaan yang umum, komponen bawaan ini memiliki batasan berikut:
- OTP hanya akan dikirim ke nomor ponsel atau alamat email sebelumnya terdaftar sebagai pengguna. Komponen tidak akan menggunakan OTP untuk mengautentikasi pelanggan menelepon dari nomor telepon alternatif yang tidak terdaftar di akunnya. Saat pengguna menelepon dari nomor telepon alternatif, pertanyaan keamanan digunakan untuk mengotentikasi pemanggil.
- Komponen ini tidak mengenkripsi data apa pun.
Contoh dialog
Contoh dialog berikut menunjukkan skenario umum yang ditangani oleh metode ini komponen bawaan asli. Contoh dialog menunjukkan perilaku saat komponen yang dipanggil menggunakan telepon, yang memicu Niat Selamat Datang Default dan respons agen di awal percakapan.
Keberhasilan autentikasi level 0: pencocokan ANI
Pengguna menelepon dari nomor telepon yang terdaftar pada akun yang ada, mengonfirmasi bahwa milik Anda, dan berhasil diotentikasi ke Level 0.
Input pengguna | Respons agen |
---|---|
Halo, nomor yang Anda telepon ditautkan ke akun Joni. Apakah Anda menanyakan tentang pesanan orang lain? Silakan bilang ya jika itu masalahnya, atau ucapkan tidak. | |
Tidak | |
Terima kasih Joni. Anda telah berhasil diidentifikasi. |
Autentikasi level 1 berhasil: OTP
Panggilan pengguna dari nomor telepon tidak dikenal. Komponen ini mengumpulkan informasi nomor telepon yang terdaftar, lalu mengirim dan meminta pengguna untuk mengonfirmasi OTP yang dikirim ke pilihan pengguna. Pengguna dapat memberikan OTP yang valid dan berhasil diotentikasi ke Level 1.
Input pengguna | Respons agen |
---|---|
Kami tidak dapat menemukan nomor telepon ini yang dikaitkan dengan kami. Harap berikan nomor telepon yang terdaftar kepada kami. | |
Agen mengumpulkan nomor telepon menggunakan komponen bawaan Pengumpulan nomor telepon | |
Oke, kami sudah selesai mengumpulkan nomor telepon. Demi keamanan, kami perlu memvalidasi identitas Anda, jadi kami akan mengirimkan kode kepada Anda. Apakah Anda lebih suka menerima kode melalui telepon atau email? |
|
telepon | |
Sekadar konfirmasi, apakah Anda mau menerima OTP di ponsel Anda? Silakan jawab ya atau tidak. | |
ya | |
Kami telah mengirimkan kode ke nomor ponsel Anda yang terdaftar yang diakhiri dengan 0000. Proses ini mungkin perlu waktu beberapa detik. Bisakah Anda mengonfirmasi kodenya? | |
123457 | |
Terima kasih Joni. Anda telah berhasil diidentifikasi. |
Konvensi penamaan
Komponen bawaan ini menggunakan konvensi penamaan berikut:
Fitur | Format | Contoh |
---|---|---|
Flow | [Nama Komponen] | Autentikasi Retail |
Intent 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 mengkonfigurasi perilaku tertentu dari komponennya. Parameter akan digunakan oleh satu atau beberapa kondisi dalam untuk menentukan bagaimana komponen harus berperilaku. Parameter cakupan alur harus disetel pada halaman awal komponen seperti yang dijelaskan di bawah ini. Cakupan sesi parameter dapat disetel oleh alur panggilan, atau di awal dari komponen ini.
Komponen bawaan ini menerima parameter input berikut:
Nama Parameter | Deskripsi | Format Input |
---|---|---|
$session.params.auth_level_req | Menentukan tingkat autentikasi yang akan diautentikasi pengguna akhir. Nilai yang valid adalah 0 atau 1 . |
bilangan bulat |
$session.params.auth_level | (opsional) Menunjukkan tingkat autentikasi saat ini dari pengguna akhir. | bilangan bulat |
$session.params.phone_number | (opsional) Nomor telepon pengguna akhir. Jika parameter ini tidak disediakan, 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 jika 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 channel untuk menerima Sandi Sekali Pakai (OTP). Nilai defaultnya adalah 3 . |
bilangan bulat |
Untuk mengonfigurasi parameter input bagi 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 Flows.
- Klik Halaman Awal di bagian Halaman.
- Klik Rute true di Halaman Awal.
- Di jendela Route, edit nilai Parameter Presets sesuai kebutuhan.
- Klik Simpan.
Parameter output
Parameter output adalah parameter sesi yang akan tetap aktif setelah keluar komponennya. Parameter ini berisi informasi penting yang dikumpulkan oleh komponen. Komponen bawaan ini memberikan nilai untuk output berikut parameter:
Nama Parameter | Deskripsi | Format Output |
---|---|---|
auth_level | Menunjukkan tingkat autentikasi saat ini dari pengguna akhir. | bilangan bulat |
all_recent_order_id | Parameter ini mencantumkan ID pesanan yang terkait dengan pengguna terautentikasi, yang diurutkan berdasarkan tanggal penempatan pesanan dalam urutan menurun. Elemen pertama array mewakili urutan 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 dengan akun tersebut. | string | |
user_first_name | Nama depan pengguna, digunakan untuk menyambut 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 pada suatu saat selama percakapan.denial_of_information : pengguna akhir menolak memberikan 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 percobaan ulang maksimum untuk peristiwa ketidakcocokan. Lihat peristiwa bawaan yang tidak cocok.webhook_error : terjadi error webhook. Lihat peristiwa bawaan webhook.error. webhook_not_found : URL webhook tidak dapat dijangkau. Lihat peristiwa bawaan webhook.error.not-found bawaan. |
string |
Penyiapan dasar
Untuk menyiapkan komponen bawaan ini:
- Impor komponen bawaan.
- Konfigurasi alamat IP yang disediakan web webhook fleksibel dengan yang menjelaskan layanan eksternal Dialogflow Anda, lihat Webhook penyiapan di bawah ini.
Penyiapan webhook
Untuk menggunakan komponen ini, Anda perlu mengonfigurasi web webhook fleksibel untuk mengambil informasi yang dibutuhkan dari layanan eksternal Anda.
Memverifikasi detail pengguna
Webhook prebuilt_components_retail_authentication:verify_user_details
digunakan oleh komponen untuk mengambil detail
akun pengguna berdasarkan jenis telepon yang disediakan
angka
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input untuk 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 dengan akun tersebut. | string | |
all_recent_order_id | Daftar ID pesanan yang terkait dengan pengguna terautentikasi, yang diurutkan berdasarkan tanggal penempatan pesanan dalam urutan menurun. Elemen pertama array mewakili urutan terbaru. Jika pengguna tidak memiliki pesanan, nilai parameter ini adalah null . |
Daftar (string) |
user_first_name | Nama depan pengguna, digunakan untuk menyambut dan mengonfirmasi kepemilikan akun. | string |
Untuk mengonfigurasi webhook Verifikasi detail pengguna untuk komponen ini, luaskan untuk mendapatkan petunjuk.
- 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 dengan endpoint untuk layanan yang ingin diintegrasikan. Pilih Metode yang tepat di dropdown.
- Tinjau dan perbarui Isi permintaan guna membentuk format permintaan yang tepat untuk webhook Anda.
- Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari kunci webhook Anda yang dihasilkan. Jangan ubah nama parameter, karena nama ini diperlukan oleh komponen untuk mengakses nilai kolom yang ditampilkan.
- Tinjau dan perbarui setelan Authentication sesuai kebutuhan.
- Klik Simpan.
Kirim OTP
Webhook prebuilt_components_retail_authentication:send_otp
digunakan
oleh komponen untuk mengirim {i>one-time password<i} (OTP) ke saluran yang terdaftar
dipilih oleh pengguna akhir.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input untuk 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 telah 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 dihasilkan dan dikirim kepada pengguna menggunakan saluran yang dipilih. | string |
Untuk mengonfigurasi webhook Kirim OTP untuk komponen ini, luaskan untuk mendapatkan 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 dengan endpoint untuk layanan yang ingin diintegrasikan. Pilih Metode yang tepat di dropdown.
- Tinjau dan perbarui Isi permintaan guna membentuk format permintaan yang tepat untuk webhook Anda.
- Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari kunci webhook Anda yang dihasilkan. Jangan ubah nama parameter, karena nama ini diperlukan oleh komponen untuk mengakses nilai kolom yang ditampilkan.
- Tinjau dan perbarui setelan Authentication sesuai kebutuhan.
- Klik Simpan.
Selesai
Agen Anda dan webhooknya kini seharusnya sudah disiapkan dan siap diuji.