Komponen bawaan tanggal lahir

Komponen bawaan ini menangkap dan memvalidasi tanggal lahir dengan mengumpulkan bulan, tanggal, dan tahun.

Batasan

Selain batasan komponen bawaan umum, komponen bawaan ini memiliki batasan berikut:

  • Komponen ini tidak mendukung verifikasi tanggal lahir pengguna akhir melalui verifikasi tanda pengenal.

Aktifkan DTMF untuk memungkinkan pengguna memasukkan nilai numerik menggunakan keypad telepon.

Fungsi tambahan

Fungsi tambahan berikut disediakan oleh komponen bawaan ini:

Contoh dialog

Contoh dialog berikut menunjukkan skenario umum yang ditangani oleh komponen bawaan ini. Contoh dialog ini menunjukkan perilaku saat komponen dipanggil melalui telepon, yang memicu Intent Selamat Datang Default dan respons agen pertama di awal percakapan.

Tanggal lahir lengkap

Pengguna akhir memberikan tanggal lahir lengkap dalam satu kesempatan; agen berhasil menerimanya.

Input pengguna Respons agen
Berikan tanggal lahir Anda. Harap ucapkan bulan lahir Anda, diikuti tanggal lahir Anda, lalu tahun lahir Anda.
9 September 1995
Oke, tanggal lahir Anda adalah 9 September 1995. Apakah itu benar?
ya
Bagus, saya sudah kumpulkan tanggal lahir Anda.

Tanggal lahir sebagian

Pengguna akhir memberikan tanggal lahir dengan menyatakan bulan pertama diikuti dengan tanggal dan tahun; agen berhasil menerimanya.

Input pengguna Respons agen
Berikan tanggal lahir Anda. Harap ucapkan bulan lahir Anda, diikuti tanggal lahir Anda, lalu tahun lahir Anda.
Maret
Kamu lahirnya hari apa?
12
Anda lahir tahun berapa?
1999
Oke, tanggal lahir Anda adalah 12 Maret 1999. Apakah itu benar?
ya
Bagus, saya sudah kumpulkan tanggal lahir Anda.

Validasi tanggal mendatang

Skenario ini mengasumsikan tanggal saat ini adalah 22 Maret 2023. Pengguna akhir memberikan tanggal lahir di masa mendatang; agen memvalidasinya dan meminta kembali pengguna akhir untuk memberikan tanggal lahir yang benar.

Input pengguna Respons agen
Berikan tanggal lahir Anda. Harap ucapkan bulan lahir Anda, diikuti tanggal lahir Anda, lalu tahun lahir Anda.
9 September 2023
Anda lahir tahun berapa?
2023
Oke, tanggal lahir Anda adalah 9 September 2023. Apakah itu benar?
ya
Maaf, Anda memberikan tanggal yang akan datang. Mari kita mulai lagi.
Anda lahir di bulan apa?
Maret
Kamu lahirnya hari apa?
12
Anda lahir tahun berapa?
1999
Oke, tanggal lahir Anda adalah 12 Maret 1999. Apakah itu benar?
ya
Bagus, saya sudah kumpulkan tanggal lahir Anda.

Tanggal tidak valid

Pengguna akhir memberikan tanggal lahir yang tidak valid, seperti 30 Februari 1999 atau 31 April 1999; agen memvalidasinya dan meminta pengguna akhir untuk memberikan tanggal lahir yang benar.

Input pengguna Respons agen
Berikan tanggal lahir Anda. Harap ucapkan bulan lahir Anda, diikuti tanggal lahir Anda, lalu tahun lahir Anda.
30 Februari 1999
Oke, tanggal lahir Anda adalah 30 Februari 1999. Apakah itu benar?
ya
Tanggal yang Anda berikan tidak valid. Mari kita mulai lagi.
Anda lahir di bulan apa?
Maret
Kamu lahirnya hari apa?
12
Anda lahir tahun berapa?
1999
Oke, tanggal lahir Anda adalah 12 Maret 1999. Apakah itu benar?
ya
Bagus, saya sudah kumpulkan tanggal lahir Anda.

Masukan tidak dikenal

Komponen keluar dari flow setelah pengguna akhir memberikan input yang tidak dikenal sebanyak tiga kali.

Input pengguna Respons agen
Berikan tanggal lahir Anda. Harap ucapkan bulan lahir Anda, diikuti tanggal lahir Anda, lalu tahun lahir Anda.
Tidak apa-apa
Maaf, saya tidak mengerti. Bisa tolong katakan atau masukkan tanggal lahir Anda lagi?
nyaman
Maaf, saya tidak tahu tanggal lahir Anda. Mari kita mulai dengan bulan. Apa nama bulan Anda?
good
Maaf, saya tidak mengerti. Bisa ucapkan atau masukkan nomor bulan lagi?
nyaman
Hmm, saya masih belum bisa memahaminya. Pastikan Anda menyebutkan bulan. Jika saya kesulitan mendengar ucapan Anda, Anda juga dapat menggunakan keypad untuk memasukkan nomor bulan.
nyaman
Maaf, saya kesulitan memahami jawaban Anda.

Validasi tanggal lahir

Komponen bawaan ini menggunakan fungsi sistem IS_DATE dan IS_FUTURE_DATE untuk memeriksa apakah tanggal yang dikumpulkan valid dan sudah berlalu. Selain itu:

  • Input seperti "bulan ini", "bulan depan", atau "bulan lalu" dikonversi ke bulan yang sesuai. Misalnya, jika pengguna akhir berinteraksi dengan agen pada bulan Maret, "bulan ini", "bulan berikutnya", dan "bulan lalu" akan dikonversi masing-masing menjadi "Maret", "April", dan "Februari".
  • Memvalidasi bahwa tahun harus terdiri dari empat digit. Jika {i>input<i} tahun hanya berisi dua digit, komponen akan mengonversinya menjadi tahun dengan empat digit. Misalnya, "98" dikonversi menjadi "1998".
  • Input seperti "Kamis ini", "Kamis lalu", dan "Kamis depan" akan dicatat sebagai bulan dan hari yang sesuai dan agen akan meminta untuk memberikan tahun. Misalnya, jika pengguna akhir berinteraksi dengan agen pada 22 Maret 2023, yaitu Rabu, "Kamis ini", "Kamis lalu", dan "Kamis depan" akan dikonversi masing-masing menjadi "23 Maret", "16 Maret", dan "30 Maret".

Konvensi penamaan

Komponen bawaan ini menggunakan konvensi penamaan berikut:

Fitur Format Contoh
Flow [Nama Komponen] Koleksi TANGGAL LAHIR
Intent Khusus Komponen prebuilt_components_[component_name]_[intent_name] prebuilt_components_dob_collection_collect_month
Parameter [param_name] dob
Jenis Entitas prebuilt_components_[component_name]_[entity_type] prebuilt_components_dob_collection_dob_day

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
dob_collection_dob Parameter ini mengembalikan objek yang berisi elemen tanggal lahir: hari, bulan, dan tahun

{
"year": integer,
"month": integer,
"day": integer
}

Penyiapan dasar

Untuk menyiapkan komponen bawaan ini:

  1. Impor komponen bawaan.

Selesai

Agen Anda kini telah siap untuk diuji.