Komponen bawaan janji temu

Komponen bawaan pengaturan janji temu memungkinkan pelanggan baru dan lama membuat janji temu. Komponen ini menggunakan versi yang disesuaikan dari komponen bawaan Date of birth collection untuk mengumpulkan tanggal janji temu, dan menggunakan komponen bawaan Telephone number collection dan Zip code collection 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 Intent Sambutan Default dan respons agen pertama di awal percakapan.

Pengguna lama membuat janji temu langsung

Agen mengidentifikasi bahwa pengguna telah diautentikasi sebelumnya sebagai pengguna yang sudah ada. Pengguna memberikan alasan janji temu dan memilih untuk memesan janji temu tatap muka. Agen mengonfirmasi bahwa pengguna ingin pergi ke cabang terdekat dari 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. Bisa beri tahu kami alasan janji temu Anda?
Saya ingin berbicara dengan seseorang tentang pengelolaan kekayaan
Apakah Anda ingin membuat janji temu melalui telepon, panggilan video, atau tatap muka di salah satu cabang kami?
Saya ingin hadir secara langsung
Oke, apakah Anda ingin menjadwalkan janji temu di cabang yang berlokasi di 1600 Amphitheatre Pkwy, Mountain View, CA 94043?
Ya
Harap berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan yang Anda inginkan, diikuti dengan hari, lalu tahun. Ingat bahwa cabang kami buka dari Senin hingga Jumat: pukul 09.00 hingga 17.00, Sabtu: pukul 09.00 hingga 13.00.
Agen mengumpulkan tanggal janji temu pilihan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir
Bagus, kami telah selesai mengumpulkan tanggal yang Anda inginkan.

Berikan slot waktu yang Anda inginkan.
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. Apakah Anda 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 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 dia 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, kami selesai mengumpulkan nomor telepon.

Sebelum menjadwalkan janji temu, kami akan mengajukan beberapa pertanyaan kepada Anda. Bisa beri tahu kami alasan janji temu Anda?
Saya ingin mendapatkan pinjaman
Apakah Anda ingin membuat janji temu melalui telepon, panggilan video, atau tatap muka di salah satu cabang kami?
Janji temu virtual sudah benar
Harap berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan yang Anda inginkan, diikuti dengan hari, lalu tahun. Ingat bahwa cabang kami buka dari Senin hingga Jumat: pukul 09.00 hingga 17.00, Sabtu: pukul 09.00 hingga 13.00.
Agen mengumpulkan tanggal janji temu pilihan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir
Bagus, kami telah selesai mengumpulkan tanggal yang Anda inginkan.

Berikan slot waktu yang Anda inginkan.
Pukul 15.00 cocok untuk saya
Anda telah memilih 15.00. Untuk melanjutkan ke langkah berikutnya dengan waktu janji temu yang dipilih, katakan ya.
Ya
Kami akan menjadwalkan janji temu dengan penasihat kami 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?
Yeah
Sebelum menjadwalkan janji temu, kami akan mengajukan beberapa pertanyaan kepada Anda. Bisa beri tahu kami alasan janji temu Anda?
Saya perlu membuat janji temu untuk kartu kredit saya
Apakah Anda ingin membuat janji temu melalui telepon atau panggilan video dengan salah satu perwakilan cabang kami?
Telepon
Harap berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan yang Anda inginkan, diikuti dengan hari, lalu tahun. Ingat bahwa cabang kami buka dari Senin hingga Jumat: pukul 09.00 hingga 17.00, Sabtu: pukul 09.00 hingga 13.00.
Agen mengumpulkan tanggal janji temu pilihan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir
Bagus, kami telah selesai mengumpulkan tanggal yang Anda inginkan.

Berikan slot waktu yang Anda inginkan.
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 ketersediaan untuk 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, mari kita lakukan pukul 13.30
Anda telah memilih 13.30. Untuk melanjutkan ke langkah berikutnya dengan waktu janji temu yang dipilih, katakan ya.
Ya
Kami akan menjadwalkan janji temu dengan konsultan kami pada 06-10-2023 pukul 13.30. Apakah itu benar?
Ya
Oke, kami telah menjadwalkan janji temu. Nomor konfirmasi Anda adalah 714637.

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] Mengatur Janji Temu
Intent 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 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 flow panggilan, atau di halaman awal 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. integer
$flow.all_appointment_type Menentukan daftar alasan janji temu yang menyediakan semua jenis janji temu. Nilai defaultnya adalah ["loans", "wealth"]. Daftar (string)
$flow.video_phone_appointment_type Menentukan daftar alasan janji temu yang menyediakan semua jenis janji temu. 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 hari maksimum setelah tanggal saat ini yang diizinkan untuk membuat 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 awal. integer
flow.max_retry_count Menentukan jumlah percobaan ulang yang diizinkan saat mengumpulkan informasi dari pengguna. Nilai defaultnya adalah 3. integer

Untuk mengonfigurasi parameter input komponen ini, luaskan untuk melihat petunjuk.

  1. Buka konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Build.
  5. Klik komponen yang diimpor di bagian Flows.
  6. Klik Start Page di bagian Pages.
  7. Klik Rute true di Start Page.
  8. Di jendela Route, edit nilai Parameter Presets sesuai kebutuhan.
  9. 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 pada suatu waktu 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 tidak ada kecocokan. Lihat peristiwa bawaan 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.
string

Penyiapan dasar

Untuk menyiapkan komponen bawaan ini:

  1. Impor komponen bawaan.
  2. Konfigurasikan 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.

Dapatkan akun

Webhook prebuilt_components_arrange_appointment:get_account digunakan oleh komponen untuk mendapatkan detail akun untuk nomor telepon yang diberikan, jika akun terdaftar ada.

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
account_count Jumlah akun yang terkait dengan nomor telepon terdaftar. integer
cards_count Jumlah kartu yang terkait dengan nomor telepon terdaftar. integer
loans_count Jumlah pinjaman yang terkait dengan nomor telepon terdaftar. integer
mortgage_count Jumlah hipotek yang terkait dengan nomor telepon yang terdaftar. integer
branch_code Kode cabang yang terkait dengan nomor telepon terdaftar, yang digunakan untuk mengidentifikasi lokasi cabang yang unik. string

Untuk mengonfigurasi webhook Dapatkan akun untuk komponen ini, luaskan untuk melihat petunjuk.

  1. Buka konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Webhook.
  6. Pilih webhook prebuilt_components_arrange_appointment:get_account.
  7. Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat untuk webhook Anda.
  9. 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.
  10. Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
  11. 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 untuk 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, luaskan untuk melihat petunjuk.

  1. Buka konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Webhook.
  6. Pilih webhook prebuilt_components_arrange_appointment:get_branch.
  7. Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat untuk webhook Anda.
  9. 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.
  10. Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
  11. 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 untuk 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 untuk melihat petunjuk.

  1. Buka konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Webhook.
  6. Pilih webhook prebuilt_components_arrange_appointment:available_branch.
  7. Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat untuk webhook Anda.
  9. 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.
  10. Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
  11. 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 untuk permintaan API.

Nama Parameter Deskripsi Format Input
$flow.preferred_date Tanggal yang diinginkan untuk janji temu yang diberikan oleh pengguna akhir dalam format "YYYY-MM-DD". string
$flow.appointment_type Jenis 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, luaskan untuk melihat petunjuk.

  1. Buka konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Webhook.
  6. Pilih webhook prebuilt_components_arrange_appointment:get_available_slots.
  7. Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat untuk webhook Anda.
  9. 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.
  10. Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
  11. Klik Simpan.

Kirim janji temu

Webhook prebuilt_components_arrange_appointment:submit_appointment digunakan oleh komponen untuk menjadwalkan janji temu untuk tanggal, waktu, cabang, alasan janji temu, dan jenis janji temu yang dipilih pengguna.

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.preferred_date Tanggal yang diinginkan untuk janji temu yang diberikan oleh pengguna akhir dalam format "YYYY-MM-DD". string
$flow.preferred_slot Waktu yang diinginkan 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. 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. integer

Untuk mengonfigurasi webhook Kirim janji temu untuk komponen ini, luaskan untuk melihat petunjuk.

  1. Buka konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Webhook.
  6. Pilih webhook prebuilt_components_arrange_appointment:submit_appointment.
  7. Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat untuk webhook Anda.
  9. 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.
  10. Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
  11. Klik Simpan.

Selesai

Agen dan webhook-nya sekarang sudah disiapkan dan siap diuji.