Komponen bawaan pembatalan pesanan memeriksa tingkat autentikasi pengguna. Setelah pengguna diautentikasi, komponen akan memberikan informasi tentang pesanan terbaru atau sebelumnya dari pengguna. Pengguna kemudian dapat memilih untuk membatalkan seluruh pesanan atau membatalkan item tertentu dalam pesanan. Komponen ini menggunakan komponen bawaan Retail authentication untuk mengautentikasi pengguna. Komponen ini juga menggunakan Generator untuk peringkasan pasca-panggilan.
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. Dialog contoh menunjukkan perilaku saat komponen dipanggil menggunakan telepon, yang memicu Default Welcome Intent dan respons agen pertama di awal percakapan.
Membatalkan satu produk dalam pesanan terbaru
Pengguna akhir telah diautentikasi sebelumnya. Agen mengonfirmasi item mana dari pesanan terbaru yang harus dibatalkan. Agen memeriksa metode pembayaran awal dan mengonfirmasi detail pembatalan kepada pengguna.
| Input pengguna | Respons agen |
|---|---|
| Apakah Anda menelepon terkait nomor pesanan terbaru Anda yang berakhiran 12978 yang berisi 5 botol air dan 1 kaus yang dibuat pada 09-11-2023 pukul 20.00? | |
| ya | |
| Kami menemukan beberapa produk yang memenuhi syarat dalam pesanan Anda. Harap beri tahu kami produk yang ingin Anda batalkan. Produk 1: botol air google, Produk 2: kaus google. Ucapkan atau masukkan nomor produk item yang ingin Anda pilih, atau ucapkan "berikutnya" untuk menampilkan produk lainnya. |
|
| berikutnya | |
| Kami tidak menemukan item lain dalam data kami. Pilih dari daftar yang dibagikan. Produk 1: botol air google, Produk 2: kaus google. Ucapkan atau masukkan nomor produk item yang ingin Anda pilih, atau ucapkan "berikutnya" untuk menampilkan produk lainnya. |
|
| 1 | |
| Untuk memverifikasi, Anda tertarik untuk membatalkan botol air Google. Apakah ini benar? | |
| ya | |
| Kita dapat melihat bahwa jumlah produk yang tersedia yang telah Anda pilih adalah 5. Tentukan jumlah produk yang ingin Anda batalkan. | |
| 4 | |
| Tentukan alasan pembatalan. Anda dapat mengatakan sesuatu seperti: berubah pikiran, tidak lagi diperlukan, saya ingin membeli item lain, pengiriman tertunda, salah beli, ingin mengubah metode pembayaran, atau mengatakan hal lainnya. | |
| Saya ingin membeli item lain | |
| Terima kasih telah memberi tahu kami. Apakah Anda ingin membatalkan produk lain? |
|
| tidak | |
| Untuk pembelian yang dilakukan menggunakan dompet, pengembalian dana akan dikreditkan ke akun dompet atau saldo store. Perlu waktu 3 hingga 5 hari kerja agar pengembalian dana muncul di akun Anda. Perhatikan bahwa jumlah pengembalian dana tidak akan mencakup biaya pengiriman dan pemrosesan. |
Batalkan seluruh pesanan
Pengguna akhir telah diautentikasi sebelumnya. Agen mengonfirmasi bahwa pengguna ingin membatalkan pesanan tertentu, lalu mengumpulkan alasan pembatalan. Agen memeriksa metode pembayaran awal dan mengonfirmasi detail pembatalan kepada pengguna.
| Input pengguna | Respons agen |
|---|---|
| Apakah Anda menelepon terkait nomor pesanan terbaru Anda yang berakhiran 12345 yang berisi 1 kemeja yang dilakukan pada 10-11-2023 pukul 18.00? | |
| tidak | |
| Ingin membatalkan pesanan lain? | |
| ya | |
| Bisakah Anda memberikan 5 digit terakhir ID pesanan yang ingin Anda lacak? | |
| 12346 | |
| Lima digit terakhir ID pesanan yang kami dapatkan adalah 12346, apakah itu benar? | |
| ya | |
| Baik, kami telah selesai mengumpulkan ID pesanan. Apakah Anda ingin membatalkan seluruh pesanan? |
|
| ya | |
| Tentukan alasan pembatalan. Anda dapat mengatakan sesuatu seperti: berubah pikiran, tidak lagi diperlukan, saya ingin membeli item lain, pengiriman tertunda, salah beli, ingin mengubah metode pembayaran, atau mengatakan hal lainnya. | |
| tidak lagi diperlukan | |
| Terima kasih telah memberi tahu kami. Permintaan pembatalan Anda telah dibuat. |
Konvensi penamaan
Komponen bawaan ini menggunakan konvensi penamaan berikut:
| Fitur | Format | Contoh |
|---|---|---|
| Flow | [Nama Komponen] | Batalkan Pesanan |
| Jenis Entitas | prebuilt_components_[component_name]_[entity_type] | prebuilt_components_product_cancel_reason |
| Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_cancel_order:post_cancellation_details |
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. 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 lokal pengguna, tanpa kode negara, yang digunakan untuk mengidentifikasi pengguna. | string |
| $session.params.all_recent_order_id | (opsional) Parameter ini mencantumkan ID pesanan yang terkait dengan pengguna yang diautentikasi, yang diurutkan berdasarkan tanggal pemesanan dalam urutan menurun. Elemen pertama array mewakili pesanan terbaru. Jika pengguna tidak memiliki pesanan, nilai parameter ini adalah null. |
Daftar (string) |
| $session.params.email | (opsional) Email yang terdaftar di akun. | string |
| $session.params.user_first_name | (opsional) Nama depan pengguna, yang digunakan untuk menyapa dan mengonfirmasi kepemilikan akun. | string |
Komponen bawaan ini memungkinkan parameter opsional berikut untuk mengonfigurasi perilaku komponen, termasuk percobaan ulang.
| Nama Parameter | Deskripsi | Format |
|---|---|---|
| $flow.max_retry_another_account_counter | Menentukan jumlah percobaan ulang yang diizinkan saat memilih apakah akan melanjutkan dengan akun alternatif. Nilai defaultnya adalah 2. |
integer |
| $flow.max_retry_order_number | Menentukan jumlah percobaan ulang yang diizinkan saat memberikan lima digit terakhir nomor pesanan. Nilai defaultnya adalah 2. |
integer |
| $flow.max_retry_another_order | Menentukan jumlah percobaan ulang yang diizinkan saat memilih pesanan lain jika ID pesanan tidak ditemukan atau pesanan tidak memenuhi syarat untuk dibatalkan. Nilai defaultnya adalah 2. |
integer |
| $flow.max_retry_select_order_number | Menentukan jumlah percobaan ulang yang diizinkan saat memberikan nomor pesanan lengkap jika beberapa pesanan memiliki lima digit terakhir yang sama. Nilai defaultnya adalah 2. |
integer |
| $flow.max_product_display_counter | Menentukan jumlah maksimum produk yang akan ditampilkan dalam satu giliran. Nilai defaultnya adalah 2. |
integer |
| $flow.max_product_display | Menentukan jumlah maksimum produk yang akan ditampilkan selama seluruh percakapan. Nilai defaultnya adalah 9. |
integer |
| $flow.max_retry_product_number_counter | Menentukan jumlah maksimum percobaan ulang yang diizinkan saat memilih produk yang akan dibatalkan. Nilai defaultnya adalah 2. |
integer |
| $flow.max_product_cancel_confirm_counter | Menentukan jumlah maksimum percobaan ulang yang diizinkan saat mengonfirmasi produk yang dipilih. Nilai defaultnya adalah 2. |
integer |
| $flow.max_retry_select_quantity | Menentukan jumlah maksimum percobaan ulang yang diizinkan saat memilih jumlah produk yang akan dibatalkan. Nilai defaultnya adalah 2. |
integer |
| $flow.order_product_cancel_reason_others | Menentukan nilai entity prebuilt_components_product_cancel_reason yang menunjukkan bahwa pengguna telah memilih alasan pembatalan "lainnya". Nilai defaultnya adalah "others". |
string |
| $flow.max_retry_cancel_reason | Menentukan jumlah percobaan ulang yang diizinkan saat mengonfirmasi alasan pembatalan. Nilai defaultnya adalah 2. |
integer |
| $flow.order_payment_mode_COD | Menentukan nilai kolom order_payment_mode yang ditampilkan oleh webhook get_order_details yang menunjukkan metode pembayaran bayar di tempat (COD). Nilai defaultnya adalah "COD". |
string |
| $flow.order_payment_mode_store_credit | Menentukan nilai kolom order_payment_mode yang ditampilkan oleh webhook get_order_details yang menunjukkan metode pembayaran saldo Store. Nilai defaultnya adalah "store_credit". |
string |
Untuk mengonfigurasi parameter input komponen ini, luaskan untuk melihat petunjuk.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Build.
- Klik komponen yang diimpor di bagian Flows.
- Klik Start Page di bagian Pages.
- Klik Rute true di Start Page.
- Di jendela Route, edit nilai Parameter Presets 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 |
| 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) |
| Email yang terdaftar dengan akun. | string | |
| user_first_name | Nama depan pengguna, yang 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 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 |
Generator
Komponen ini menggunakan Generator untuk mengaktifkan bagian tertentu dari percakapan.
Ringkasan
Generator Summarization digunakan untuk membuat ringkasan pascapanggilan yang menjelaskan
percakapan yang ditangani oleh komponen.
Penyiapan dasar
Untuk menyiapkan komponen bawaan ini:
- Impor komponen bawaan.
- Konfigurasikan webhook fleksibel yang disediakan dengan konfigurasi yang menjelaskan layanan eksternal Anda, lihat Penyiapan webhook.
Penyiapan webhook
Untuk menggunakan komponen ini, Anda harus mengonfigurasi webhook fleksibel yang disertakan untuk mengambil informasi yang diperlukan dari layanan eksternal Anda.
Autentikasi
Jika sebelumnya Anda belum mengonfigurasi layanan eksternal yang diperlukan untuk autentikasi, Anda harus mengonfigurasinya guna mengaktifkan autentikasi pengguna untuk komponen ini. Lihat Penyiapan webhook autentikasi retail untuk mengetahui petunjuk mendetail.
Dapatkan detail pesanan
Webhook prebuilt_components_cancel_order:get_order_details digunakan
oleh komponen untuk mengambil detail pesanan untuk pesanan yang ditentukan.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input untuk permintaan API.
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $flow.order_id | ID pesanan untuk mengambil detail. | string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| order_date | Tanggal pesanan dilakukan, dalam format YYYY-MM-DD. |
string |
| order_time | Waktu pemesanan, dalam format HH:MM. |
string |
| order_product_count | Jumlah produk unik dalam pesanan. | integer |
| order_payment_mode | Menunjukkan mode pembayaran yang digunakan saat melakukan pemesanan. | string |
| cancelable_product_id | Daftar ID produk untuk produk yang dapat dibatalkan dalam pesanan. | Daftar (string) |
| cancelable_product_name | Daftar nama produk untuk produk yang dapat dibatalkan dalam pesanan. | Daftar (string) |
| cancelable_product_brand_name | Daftar nama merek untuk produk yang dapat dibatalkan dalam pesanan. | Daftar (string) |
| cancelable_product_quantity | Daftar jumlah produk yang dapat dibatalkan dalam pesanan. | Daftar (string) |
Untuk mengonfigurasi webhook Dapatkan detail pesanan untuk komponen ini, luaskan untuk melihat petunjuk.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_cancel_order:get_order_details.
- Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di 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 detail pesanan duplikat
Webhook prebuilt_components_retail_services:get_duplicate_order_details digunakan
oleh komponen untuk mengambil informasi mendetail guna membedakan
pesanan saat beberapa nomor pesanan memiliki lima digit terakhir yang sama.
Parameter permintaan API
Parameter berikut disediakan oleh komponen sebagai input untuk permintaan API.
| Nama Parameter | Deskripsi | Format Input |
|---|---|---|
| $flow.duplicate_order_id | Daftar yang berisi lima digit terakhir nomor pesanan yang digunakan bersama antara satu atau beberapa pesanan untuk pengguna. | Daftar (string) |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| all_order_date | Daftar tanggal pesanan untuk pesanan duplikat dengan lima digit terakhir yang ditentukan dalam format YYYY-MM-DD. Setiap elemen dalam array ini sesuai dengan elemen yang sama dalam array all_order_time. |
Daftar (string) |
| all_order_time | Daftar waktu pesanan untuk pesanan duplikat dengan lima digit terakhir yang ditentukan dalam format HH:MM. Setiap elemen dalam array ini sesuai dengan elemen yang sama dalam array all_order_date. |
Daftar (string) |
Untuk mengonfigurasi webhook Get duplicate order details untuk komponen ini, luaskan 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_services:get_duplicate_order_details.
- Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di 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.
Detail setelah pembatalan
Webhook prebuilt_components_cancel_order:post_cancellation_details digunakan
oleh komponen untuk mengirimkan permintaan pembatalan.
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.order_id | ID pesanan untuk mengirimkan tiket. | string |
| $flow.cancel_product_id_list | Daftar ID produk yang ingin dibatalkan oleh pengguna. | Daftar (string) |
| $flow.cancel_product_quantity_list | Daftar jumlah produk yang ingin dibatalkan pengguna, yang sesuai dengan setiap elemen di $flow.cancel_product_id_list. |
Daftar (string) |
| $flow.cancel_reason_list | Daftar alasan pembatalan untuk setiap produk yang dibatalkan, yang sesuai dengan setiap elemen di $flow.cancel_product_id_list. |
Daftar (string) |
| $flow.order_refund_mode | Mode pembayaran untuk pengembalian dana. Nilai yang valid ditentukan oleh entity prebuilt_components_cancel_mode_of_refund. |
string |
Parameter respons API
Parameter berikut diambil dari respons API untuk digunakan oleh komponen.
| Nama Parameter | Deskripsi | Format Output |
|---|---|---|
| order_cancellation_ticket_id | ID tiket untuk pembatalan yang dikirimkan. | string |
Untuk mengonfigurasi webhook Detail pasca-pembatalan untuk komponen ini, luaskan untuk melihat petunjuk.
- Buka konsol Dialogflow CX.
- Pilih project Google Cloud Anda.
- Pilih agen Anda.
- Pilih tab Kelola.
- Klik Webhook.
- Pilih webhook prebuilt_components_cancel_order:post_cancellation_details.
- Ganti URL webhook di kolom Webhook URL Dialogflow CX dengan endpoint untuk layanan yang ingin Anda integrasikan. Pilih Metode yang sesuai di 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 sekarang sudah disiapkan dan siap diuji.