Komponen bawaan janji temu

Komponen bawaan menjadwalkan janji temu memungkinkan pelanggan baru dan lama membuat janji temu. Komponen ini menggunakan versi yang disesuaikan dari komponen bawaan Pengumpulan tanggal lahir 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 Intent Selamat Datang Default dan respons agen pertama di awal percakapan.

Pengguna lama membuat janji temu langsung

Agen mengidentifikasi bahwa pengguna sebelumnya telah diautentikasi sebagai pengguna yang ada. Pengguna memberikan alasan untuk janji temu dan memilih untuk menjadwalkan janji temu secara 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 serta 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 secara langsung di salah satu cabang kami?
Saya ingin hadir 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 pilihan Anda, diikuti dengan hari, lalu tahun. Ingat bahwa cabang kami buka dari Senin sampai Jumat: 09.00 - 17.00, Sabtu: 09.00 - 13.00.
Agen mengumpulkan tanggal janji temu yang diinginkan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir
Bagus, kami telah selesai mengumpulkan tanggal pilihan Anda.

Berikan slot waktu pilihan Anda.
10.00
Anda telah memilih pukul 10.00. Untuk melanjutkan dengan waktu janji temu yang dipilih, jawab 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 itu 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 mendiskusikan 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 memesan 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 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 secara langsung di salah satu cabang kami?
Janji temu virtual tidak masalah
Harap berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan pilihan Anda, diikuti dengan hari, lalu tahun. Ingat bahwa cabang kami buka dari Senin sampai Jumat: 09.00 - 17.00, Sabtu: 09.00 - 13.00.
Agen mengumpulkan tanggal janji temu yang diinginkan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir
Bagus, kami telah selesai mengumpulkan tanggal pilihan Anda.

Berikan slot waktu pilihan Anda.
Jam 3.00 sudah cukup bagi saya
Anda telah memilih 15.00. Untuk melanjutkan dengan waktu janji temu yang dipilih, jawab 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 menjadwalkan 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 perlu membuat janji temu untuk kartu kredit saya
Apakah Anda mencari janji temu panggilan telepon atau video dengan salah satu perwakilan cabang kami?
Telepon
Harap berikan tanggal janji temu yang Anda inginkan. Sebutkan bulan pilihan Anda, diikuti dengan hari, lalu tahun. Ingat bahwa cabang kami buka dari Senin sampai Jumat: 09.00 - 17.00, Sabtu: 09.00 - 13.00.
Agen mengumpulkan tanggal janji temu yang diinginkan pengguna menggunakan komponen bawaan Pengumpulan tanggal lahir
Bagus, kami telah selesai mengumpulkan tanggal pilihan Anda.

Berikan slot waktu pilihan Anda.
Apakah pukul 08.00 bisa?
Anda telah memilih pukul 08.00. Untuk melanjutkan dengan waktu janji temu yang dipilih, jawab 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 1:30
Anda telah memilih 13.30. Untuk melanjutkan dengan waktu janji temu yang dipilih, jawab 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 menjadwalkan 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 [Component Name] 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 alur 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. bilangan bulat
$flow.all_appointment_type Menentukan daftar alasan janji temu yang tersedia untuk semua jenis janji temu. Nilai defaultnya adalah ["loans", "wealth"]. Daftar (string)
$flow.video_phone_appointment_type Menentukan daftar alasan janji temu yang tersedia untuk semua jenis janji temu. Nilai defaultnya adalah ["cards"]. Daftar (string)
$flow.appointment_services Menentukan daftar jenis janji temu yang lokasi cabangnya tidak diperlukan 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 awal. 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, luaskan untuk mendapatkan 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 Alur.
  6. Klik Halaman Awal di bagian Halaman.
  7. Klik Rute true di Halaman Mulai.
  8. Di jendela Rute, edit nilai Preset Parameter 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 saat 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 yang tidak cocok. 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.

Mendapatkan 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 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 terkait 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, luaskan untuk mendapatkan 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 di kolom Webhook URL Agen Percakapan (Dialogflow CX) dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di menu dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat bagi webhook Anda.
  9. Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari respons webhook Anda. Jangan ubah nama parameter, karena 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 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, luaskan untuk mendapatkan 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 di kolom Webhook URL Agen Percakapan (Dialogflow CX) dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di menu dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat bagi webhook Anda.
  9. Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari respons webhook Anda. Jangan ubah nama parameter, karena 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 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 untuk mendapatkan 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 di kolom Webhook URL Agen Percakapan (Dialogflow CX) dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di menu dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat bagi webhook Anda.
  9. Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari respons webhook Anda. Jangan ubah nama parameter, karena 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 ke 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 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 Get available slots untuk komponen ini, luaskan untuk mendapatkan 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 di kolom Webhook URL Agen Percakapan (Dialogflow CX) dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di menu dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat bagi webhook Anda.
  9. Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari respons webhook Anda. Jangan ubah nama parameter, karena diperlukan oleh komponen untuk mengakses nilai kolom yang ditampilkan.
  10. Tinjau dan perbarui setelan Autentikasi sesuai kebutuhan.
  11. Klik Simpan.

Mengirim 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 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 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 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, luaskan untuk mendapatkan 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 di kolom Webhook URL Agen Percakapan (Dialogflow CX) dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di menu dropdown.
  8. Tinjau dan perbarui Isi permintaan untuk membentuk format permintaan yang tepat bagi webhook Anda.
  9. Tinjau dan perbarui Konfigurasi respons untuk mengekstrak kolom tertentu dari respons webhook Anda. Jangan ubah nama parameter, karena 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 kini telah disiapkan dan siap diuji.