Komponen bawaan atur janji temu memungkinkan pelanggan baru dan lama membuat janji temu. Komponen ini menggunakan komponen bawaan Pengumpulan tanggal lahir versi yang disesuaikan untuk mengumpulkan tanggal janji temu, dan menggunakan komponen bawaan Pengumpulan nomor telepon dan Pengumpulan kode pos untuk mengumpulkan informasi tentang pengguna dan lokasi janji temu.
Alasan dan jenis janji temu
Komponen ini mendukung beberapa kategori alasan janji temu dan menawarkan berbagai jenis janji temu, bergantung pada alasan yang dipilih pengguna.
| Alasan janji temu | Jenis janji temu yang tersedia |
|---|---|
| Pinjaman | Tatap muka, virtual, telepon |
| Hipotek | Tatap muka, virtual, telepon |
| Pengelolaan aset kekayaan | Tatap muka, virtual, telepon |
| Kartu kredit | Virtual, telepon |
| Lainnya | Telepon |
Kategori janji temu dapat disesuaikan dengan mengubah entity kustom prebuilt_components_arrange_appt_reason. Jenis janji temu yang tersedia untuk setiap kategori dapat dikonfigurasi
dengan mengubah parameter input
untuk setiap jenis janji temu.
Batasan
Selain batasan komponen bawaan umum, komponen bawaan ini memiliki batasan berikut:
- Komponen ini tidak mengenkripsi data apa pun.
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 Maksud Selamat Datang Default dan respons agen pertama di awal percakapan.
Pengguna lama membuat janji temu langsung
Agen mengidentifikasi bahwa pengguna telah diautentikasi sebelumnya sebagai pengguna lama. Pengguna memberikan alasan janji temu dan memilih untuk membuat janji temu langsung. Agen mengonfirmasi bahwa pengguna ingin pergi ke cabang terdekat dengan alamat terdaftarnya, dan mengonfirmasi bahwa tanggal dan waktu pilihan pengguna tersedia. Agen mengonfirmasi waktu dan tempat, lalu berhasil menjadwalkan janji temu.
| Input pengguna | Respons agen |
|---|---|
| Sebelum menjadwalkan janji temu, kami akan mengajukan beberapa pertanyaan kepada Anda. Dapatkah Anda memberi tahu kami alasan Anda membuat janji temu? | |
| Saya ingin berbicara dengan seseorang tentang pengelolaan kekayaan | |
| Apakah Anda mencari janji temu melalui telepon, panggilan video, atau tatap muka di salah satu cabang kami? | |
| Saya ingin datang langsung | |
| Oke, apakah Anda ingin menjadwalkan janji temu di cabang yang berlokasi di 1600 Amphitheatre Pkwy, Mountain View, CA 94043? | |
| Ya | |
| Berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan pilihan Anda, diikuti dengan hari, lalu tahun. Ingatlah bahwa cabang kami buka dari Senin hingga Jumat: 09.00 - 17.00, Sabtu: 09.00 - 13.00. | |
| Agen mengumpulkan tanggal janji temu pilihan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir | |
| Bagus, kita sudah selesai mengumpulkan tanggal pilihan Anda. Harap berikan slot waktu pilihan Anda. |
|
| 10.00 | |
| Anda telah memilih pukul 10.00. Untuk melanjutkan dengan waktu janji temu yang dipilih, ucapkan ya. | |
| Ya | |
| Kami akan menjadwalkan janji temu di alamat bank 1600 Amphitheatre Pkwy, Mountain View, CA 94043 pada 23-09-2023 pukul 10.00. Apakah sudah benar? | |
| Ya | |
| Oke, kami telah menjadwalkan janji temu. Nomor konfirmasi Anda adalah 818452. Ingin membuat janji temu lain? | |
| Tidak, itu saja | |
| Terima kasih telah menghubungi kami. Semoga hari Anda menyenangkan! |
Pelanggan baru membuat beberapa janji temu
Agen mengidentifikasi bahwa pengguna belum pernah diautentikasi sebelumnya dan mengumpulkan nomor telepon pengguna. Pengguna meminta janji temu virtual untuk membahas pinjaman. Preferensi pertama pengguna untuk tanggal dan waktu tidak tersedia, sehingga agen menawarkan slot waktu yang tersedia kepada pengguna. Pengguna memilih slot waktu yang tersedia dan janji temu berhasil dijadwalkan. Pengguna mengonfirmasi bahwa mereka ingin membuat janji temu kedua, dan agen berhasil menjadwalkan janji temu kedua.
| Input pengguna | Respons agen |
|---|---|
| Agen mengumpulkan nomor telepon pengguna menggunakan komponen bawaan Pengumpulan nomor telepon | |
| Bagus, kita sudah selesai mengumpulkan nomor telepon. Sebelum menjadwalkan janji temu, kami akan mengajukan beberapa pertanyaan kepada Anda. Dapatkah Anda memberi tahu kami alasan Anda membuat janji temu? |
|
| Saya ingin mendapatkan pinjaman | |
| Apakah Anda mencari janji temu melalui telepon, panggilan video, atau tatap muka di salah satu cabang kami? | |
| Janji temu virtual tidak masalah | |
| Berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan pilihan Anda, diikuti dengan hari, lalu tahun. Ingatlah bahwa cabang kami buka dari Senin hingga Jumat: 09.00 - 17.00, Sabtu: 09.00 - 13.00. | |
| Agen mengumpulkan tanggal janji temu pilihan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir | |
| Bagus, kita sudah selesai mengumpulkan tanggal pilihan Anda. Harap berikan slot waktu pilihan Anda. |
|
| Jam 3:00 cocok untuk saya | |
| Anda telah memilih 15.00. Untuk melanjutkan dengan waktu janji temu yang dipilih, ucapkan ya. | |
| Ya | |
| Kita akan menjadwalkan janji temu dengan penasihat pada 03-10-2023 pukul 15.00. Apakah itu benar? | |
| Ya, silakan | |
| Oke, kami telah menjadwalkan janji temu. Nomor konfirmasi Anda adalah 754731. Apakah Anda ingin membuat janji temu lain? |
|
| Ya | |
| Sebelum menjadwalkan janji temu, kami akan mengajukan beberapa pertanyaan kepada Anda. Dapatkah Anda memberi tahu kami alasan Anda membuat janji temu? | |
| Saya memerlukan janji temu untuk kartu kredit saya | |
| Apakah Anda mencari janji temu panggilan telepon atau video dengan salah satu perwakilan cabang kami? | |
| Telepon | |
| Berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan pilihan Anda, diikuti dengan hari, lalu tahun. Ingatlah bahwa cabang kami buka dari Senin hingga Jumat: 09.00 - 17.00, Sabtu: 09.00 - 13.00. | |
| Agen mengumpulkan tanggal janji temu pilihan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir | |
| Bagus, kita sudah selesai mengumpulkan tanggal pilihan Anda. Harap berikan slot waktu pilihan Anda. |
|
| Apakah pukul 08.00 bisa? | |
| Anda telah memilih pukul 08.00. Untuk melanjutkan dengan waktu janji temu yang dipilih, ucapkan ya. | |
| Ya | |
| Maaf, slot waktu yang dipilih tidak tersedia. Kami memiliki jadwal yang tersedia pada pukul 11.30, 12.30, 13.30, dan 15.00 pada 06-10-2023. Apakah Anda ingin mengubah slot waktu atau menjadwalkan janji temu pada tanggal lain? | |
| Oke, kita mulai pukul 13.30 | |
| Anda telah memilih 13.30. Untuk melanjutkan dengan waktu janji temu yang dipilih, ucapkan ya. | |
| Ya | |
| Kami akan menjadwalkan janji temu dengan penasihat kami pada 06-10-2023 pukul 13.30. Apakah itu benar? | |
| Ya | |
| Oke, kami telah menjadwalkan janji temu. Nomor konfirmasi Anda adalah 714637. Apakah Anda ingin membuat janji temu lain? |
|
| Tidak, itu saja | |
| Terima kasih telah menghubungi kami. Semoga hari Anda menyenangkan! |
Konvensi penamaan
Komponen bawaan ini menggunakan konvensi penamaan berikut:
| Fitur | Format | Contoh |
|---|---|---|
| Flow | [Nama Komponen] | Atur Janji Temu |
| Niat Khusus Komponen | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_arrange_appt_change_date_slot |
| Jenis Entitas | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_arrange_appt_reason |
| Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_arrange_appointment:submit_appointment |
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.phone_number | (opsional) Nomor telepon terdaftar pelanggan yang digunakan untuk autentikasi. | string |
| $session.params.auth_level | (opsional) Menunjukkan tingkat autentikasi pemanggil. | bilangan bulat |
| $flow.all_appointment_type | Menentukan daftar alasan janji temu yang semua jenis janji temunya tersedia. Nilai defaultnya adalah ["loans", "wealth"]. |
Daftar (string) |
| $flow.video_phone_appointment_type | Menentukan daftar alasan janji temu yang semua jenis janji temunya tersedia. Nilai defaultnya adalah ["cards"]. |
Daftar (string) |
| $flow.appointment_services | Menentukan daftar jenis janji temu yang tidak memerlukan lokasi cabang dan tidak akan dikumpulkan dari pengguna. Nilai defaultnya adalah ["video", "phone"]. |
Daftar (string) |
| $flow.working_hours | Menentukan jam buka cabang, misalnya "Monday to Friday: 9 AM to 5 PM, Saturday: 9 AM to 1 PM". |
string |
| $session.params.arrange_appointment_max_days | Menentukan jumlah maksimum hari setelah tanggal saat ini yang diizinkan untuk pemesanan janji temu. Secara default, nilai ini adalah 90, yang menunjukkan bahwa tanggal janji temu dapat dipesan tidak lebih dari 90 hari setelah tanggal saat ini. Parameter ini ditetapkan di rute true halaman mulai. |
bilangan bulat |
| flow.max_retry_count | Menentukan jumlah percobaan ulang yang diizinkan saat mengumpulkan informasi dari pengguna. 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 |
|---|---|---|
| phone_number | Nomor telepon lokal pengguna, tanpa kode negara, yang digunakan untuk mengidentifikasi pengguna. | 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.
Mendapatkan akun
Webhook prebuilt_components_arrange_appointment:get_account digunakan
oleh komponen untuk mendapatkan detail akun untuk nomor telepon yang diberikan, jika ada
akun terdaftar.
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 |
|---|---|---|
| account_count | Jumlah akun yang dikaitkan dengan nomor telepon terdaftar. | bilangan bulat |
| cards_count | Jumlah kartu yang terkait dengan nomor telepon terdaftar. | bilangan bulat |
| loans_count | Jumlah pinjaman yang terkait dengan nomor telepon terdaftar. | bilangan bulat |
| mortgage_count | Jumlah hipotek yang terkait dengan nomor telepon terdaftar. | bilangan bulat |
| branch_code | Kode cabang yang terkait dengan nomor telepon terdaftar, digunakan untuk mengidentifikasi lokasi cabang yang unik. | string |
Untuk mengonfigurasi webhook Get account untuk komponen ini, perluas petunjuknya.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_arrange_appointment:get_account.
- 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.
Mendapatkan cabang
Webhook prebuilt_components_arrange_appointment:get_branch digunakan
oleh komponen untuk mengambil informasi tentang lokasi cabang berdasarkan kode
cabang.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input ke permintaan API.
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $flow.branch_code | Kode cabang yang mengidentifikasi lokasi cabang yang unik. | string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| branch_address | Alamat cabang. | string |
Untuk mengonfigurasi webhook Get branch untuk komponen ini, perluas petunjuknya.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_arrange_appointment:get_branch.
- 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.
Cabang yang tersedia
Webhook prebuilt_components_arrange_appointment:available_branch digunakan
oleh komponen untuk mendapatkan lokasi cabang terdekat berdasarkan kode pos.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input ke permintaan API.
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $flow.zip_code | Kode pos yang diberikan oleh pengguna akhir. | string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| branch_address | Alamat cabang. | string |
Untuk mengonfigurasi webhook Cabang yang tersedia 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_arrange_appointment:available_branch.
- 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.
Mendapatkan slot yang tersedia
Webhook prebuilt_components_arrange_appointment:get_available_slots digunakan oleh komponen untuk memeriksa slot waktu yang tersedia untuk tanggal dan jenis janji temu pilihan pengguna.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input ke permintaan API.
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $flow.preferred_date | Tanggal pilihan untuk janji temu yang diberikan oleh pengguna akhir dalam format "YYYY-MM-DD". | string |
| $flow.appointment_type | Jenis janji temu dari janji temu. | string |
| $flow.branch_code | Kode cabang yang mengidentifikasi lokasi cabang unik yang dipilih oleh pengguna akhir. | string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| available_slots | Daftar waktu janji temu yang tersedia untuk tanggal yang ditentukan, dalam format "HH:MM XM", misalnya ["09:00 AM", "2:30 PM"]. Jika tidak ada slot yang tersedia, parameter ini adalah daftar kosong []. |
Daftar (string) |
Untuk mengonfigurasi webhook Dapatkan slot yang tersedia untuk komponen ini, perluas petunjuknya.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_arrange_appointment:get_available_slots.
- 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 janji temu
Webhook prebuilt_components_arrange_appointment:submit_appointment
digunakan oleh komponen untuk menjadwalkan janji temu bagi pengguna pada
tanggal, waktu, cabang, alasan janji temu, dan jenis janji temu yang dipilih.
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.preferred_date | Tanggal pilihan untuk janji temu yang diberikan oleh pengguna akhir dalam format "YYYY-MM-DD". | string |
| $flow.preferred_slot | Waktu pilihan untuk janji temu yang diberikan oleh pengguna akhir dalam format "HH:MM XM". | string |
| $flow.appointment_reason | Alasan janji temu untuk janji temu. | string |
| $flow.appointment_type | Jenis janji temu dari janji temu. | string |
| $flow.branch_code | Kode cabang yang mengidentifikasi lokasi cabang unik yang dipilih oleh pengguna akhir. | string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| request_number | Nomor permintaan untuk janji temu terjadwal. | bilangan bulat |
Untuk mengonfigurasi webhook Kirim janji temu untuk komponen ini, perluas petunjuknya.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_arrange_appointment:submit_appointment.
- 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.