Parameter

Parameter digunakan untuk merekam dan merujuk nilai yang telah diberikan oleh pengguna akhir selama sesi. Setiap parameter memiliki nama dan jenis entitas. Tidak seperti input mentah pengguna akhir, parameter adalah data terstruktur yang dapat dengan mudah digunakan untuk melakukan beberapa logika atau menghasilkan respons.

Menentukan, mereferensikan, menyetel, dan mendapatkan parameter

Ada empat cara umum penggunaan parameter:

  • Tentukan saat waktu desain: Selama waktu desain, Anda menggunakan konsol atau API untuk menentukan parameter. Misalnya, Anda dapat menentukan parameter intent dan menggunakannya dalam frasa pelatihan untuk menunjukkan input pengguna akhir yang harus diekstrak.
  • Referensi saat waktu desain: Referensi parameter adalah variabel yang menyimpan nilai parameter yang akan diekstrak saat runtime. Selama waktu desain, Anda menggunakan konsol atau API untuk mereferensikan parameter dalam berbagai jenis data. Misalnya, Anda dapat mereferensikan parameter sesi dalam respons pemenuhan statis untuk rute.
  • Ditetapkan saat runtime: Saat runtime, layanan Agen Percakapan (Dialogflow CX), layanan Anda yang memanggil API, dan layanan webhook Anda dapat menetapkan nilai parameter. Misalnya, layanan Conversational Agents (Dialogflow CX) menetapkan nilai parameter intent saat input pengguna akhir cocok dengan intent, dan input berisi data parameter.
  • Dapatkan saat runtime: Saat runtime, referensi parameter Anda berisi nilai parameter yang telah ditetapkan, dan Anda dapat menggunakan API atau webhook untuk mendapatkan nilai parameter. Misalnya, saat intent cocok dan webhook Anda dipanggil, layanan webhook Anda menerima nilai parameter untuk intent tersebut.

Penamaan parameter

Aturan berikut berlaku untuk penamaan parameter:

  • Gunakan karakter berikut: [A-Z], [a-z], [0-9], ., -, _
  • Nama parameter tidak peka huruf besar/kecil, sehingga Agen Percakapan (Dialogflow CX) memperlakukan Apple dan apple sebagai parameter yang sama. Kode klien API dan webhook juga harus memperlakukan nama parameter sebagai tidak peka huruf besar/kecil, karena tidak ada jaminan huruf besar/kecil untuk nama parameter yang ditampilkan oleh Agen Percakapan (Dialogflow CX).
  • Saat Anda membuat parameter dengan ID atau nama tampilan yang sama dalam berbagai maksud atau formulir, pastikan jenis entitas dan setelan lainnya sama untuk semua definisi. Jika jenis entitas atau setelan parameter lainnya berbeda, gunakan ID parameter atau nama tampilan unik untuk setiap definisi.

Jenis nilai parameter

Nilai parameter mendukung beberapa jenis nilai. Bagian sesi berikut menjelaskan cara mereferensikan setiap jenis nilai parameter. Berikut adalah jenis-jenis yang didukung:

Jenis Deskripsi
Scalar Nilai numerik atau string tunggal.
Gabungan Objek JSON yang diisi dengan mencocokkan entitas gabungan, atau dengan pengisian parameter intent, yang berisi kolom original dan resolved.
Daftar Daftar nilai skalar atau komposit yang diisi untuk parameter yang dikonfigurasi sebagai daftar. Lihat opsi Is List berikut.

String kosong parameter dan nilai null

Anda dapat menetapkan nilai parameter string ke "", yang menetapkan parameter ke string kosong.

Anda dapat menyetel nilai parameter apa pun ke null, yang menunjukkan bahwa parameter belum disetel.

Nilai asli parameter

Saat teks dicocokkan dengan entity tertentu saat runtime, teks tersebut sering kali diselesaikan ke nilai yang lebih mudah diproses. Misalnya, kata "apel" dalam input pengguna akhir dapat diselesaikan sebagai "apel" untuk entitas buah.

Semua jenis nilai untuk referensi parameter intent dapat mereferensikan nilai asli atau nilai yang telah diselesaikan.

Hanya jenis nilai komposit untuk referensi parameter sesi yang dapat mereferensikan nilai asli.

Parameter intent

Maksud (Intent) menggunakan parameter untuk mengekstrak data yang disediakan oleh pengguna akhir saat maksud cocok. Data berikut digunakan untuk menentukan parameter maksud:

  • Nama (juga dikenal sebagai ID atau Nama Tampilan): Nama yang mengidentifikasi parameter.
  • Jenis Entity: Jenis entity yang terkait dengan parameter.
  • Is List: Jika benar (true), parameter diperlakukan sebagai daftar nilai.
  • Samarkan di log: Jika benar, data parameter yang disediakan pengguna akhir akan disamarkan.

Menentukan parameter intent

Parameter intent ditentukan pada waktu desain saat membuat data intent atau saat menganotasi frasa pelatihan.

Parameter niat referensi

Referensi parameter intent dapat digunakan dalam pesan respons pemenuhan statis dari rute intent.

Anda dapat mereferensikan nilai asli atau nilai yang telah diselesaikan.

Untuk mereferensikan parameter untuk maksud yang cocok saat ini, gunakan salah satu format berikut:

$intent.params.parameter-id.original
$intent.params.parameter-id.resolved

Misalnya, jika ID parameter adalah date, Anda dapat mereferensikan nilai yang telah di-resolve sebagai $intent.params.date.resolved.

Menetapkan parameter intent

Saat input pengguna akhir cocok dengan intent saat runtime, parameter apa pun yang digunakan oleh anotasi untuk frasa pelatihan terkait ditetapkan oleh Agen Percakapan (Dialogflow CX).

Fulfillment untuk rute intent dapat menggunakan preset parameter fulfillment untuk menetapkan nilai parameter intent saat runtime.

Mendapatkan parameter maksud

Selama giliran percakapan saat intent cocok, kode Anda dapat mengakses nilai parameter intent.

Interaksi dengan API akan menampilkan nilai parameter intent. Lihat kolom respons queryResult.parameters metode detectIntent untuk jenis Session.

Pilih protokol dan versi untuk Referensi sesi:

Protokol V3 V3beta1
REST Resource sesi Resource sesi
RPC Antarmuka sesi Antarmuka sesi
C++ SessionsClient Tidak tersedia
C# SessionsClient Tidak tersedia
Go SessionsClient Tidak tersedia
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Tidak tersedia Tidak tersedia
Python SessionsClient SessionsClient
Ruby Tidak tersedia Tidak tersedia

Webhook menerima nilai parameter intent. Lihat kolom intentInfo.parameters di Permintaan webhook.

Parameter formulir

Untuk setiap halaman, Anda dapat menentukan formulir, yang merupakan daftar parameter yang harus dikumpulkan dari pengguna akhir untuk halaman tersebut. Agen berinteraksi dengan pengguna akhir untuk beberapa giliran percakapan, hingga agen mengumpulkan semua parameter formulir yang diperlukan, yang juga dikenal sebagai parameter halaman. Agen mengumpulkan parameter ini dalam urutan yang ditentukan di halaman. Untuk setiap parameter formulir yang diperlukan, Anda juga memberikan perintah yang digunakan agen untuk meminta informasi tersebut dari pengguna akhir. Proses ini disebut pengisian formulir.

Misalnya, Anda dapat membuat formulir yang mengumpulkan nama dan nomor telepon pengguna akhir untuk halaman Collect Customer Info.

Data berikut digunakan untuk menentukan parameter formulir:

Nama opsi konsol Rantai kolom API Deskripsi
Nama tampilan Page.form.parameters[].displayName Nama yang mengidentifikasi parameter.
Jenis entitas Page.form.parameters[].entityType Jenis entity yang terkait dengan parameter.
Wajib Page.form.parameters[].required Menunjukkan apakah parameter wajib diisi. Parameter yang diperlukan harus diisi sebelum pengisian formulir selesai, dan agen akan meminta nilai kepada pengguna akhir. Lihat bagian Menetapkan parameter formulir berikut untuk mengetahui detailnya.
Nilai Default (hanya terlihat jika Wajib tidak dicentang) Page.form.parameters[].defaultValue Nilai default parameter opsional. Lihat bagian Menetapkan parameter formulir berikut untuk mengetahui detailnya.
Adalah daftar Page.form.parameters[].isList Jika benar, parameter diperlakukan sebagai daftar nilai.
Menyamarkan di log Page.form.parameters[].redact Jika benar, data parameter yang disediakan pengguna akhir akan disamarkan.
Pemenuhan perintah awal Page.form.parameters[].fillBehavior.initialPromptFulfillment Perintah awal dalam bentuk fulfillment untuk meminta nilai parameter yang diperlukan dari pengguna akhir. Lihat bagian Menetapkan parameter formulir berikut untuk mengetahui detailnya.
Pengendali peristiwa permintaan ulang Page.form.parameters[].fillBehavior.repromptEventHandlers Ini digunakan saat agen perlu meminta ulang pengguna akhir untuk mengisi parameter setelah upaya gagal. Lihat Handler permintaan ulang pengisian formulir. Jika tidak ada pengendali peristiwa reprompt yang ditentukan, agen akan meminta ulang dengan perintah awal setelah upaya gagal.
DTMF Tidak tersedia Lihat bagian DTMF berikut.

Menentukan dan mengelola parameter formulir

Parameter formulir ditentukan pada waktu desain saat membuat halaman.

Untuk mengubah urutan parameter formulir dengan konsol, klik judul bagian Parameter di halaman, lalu tarik baris parameter dalam tabel parameter.

Untuk menghapus parameter formulir, klik judul bagian Parameter di halaman, arahkan kursor ke parameter, lalu klik tombol hapus .

Parameter formulir referensi

Referensi parameter formulir tidak digunakan secara langsung. Anda hanya dapat memeriksa status pengisian setiap parameter formulir atau formulir secara keseluruhan. Anda dapat menggunakan referensi status formulir ini dalam persyaratan kondisi dari rute kondisi.

Untuk memeriksa apakah formulir lengkap halaman saat ini telah diisi, gunakan kondisi berikut:

$page.params.status = "FINAL"

Untuk memeriksa apakah parameter formulir tertentu diisi pada giliran terakhir, gunakan kondisi berikut:

$page.params.parameter-id.status = "UPDATED"

Menetapkan parameter formulir

Nilai parameter formulir dapat ditetapkan dengan berbagai cara. Subbagian berikut menjelaskan setiap mekanisme untuk menyetel nilai parameter formulir.

Nilai parameter default

Anda dapat memberikan nilai default untuk parameter formulir opsional. Saat pengisian formulir dimulai, semua parameter formulir opsional yang tidak ditetapkan akan disetel ke nilai defaultnya. Nilai ini dapat diinisialisasi atau diganti oleh beberapa mekanisme berikut.

Jika parameter wajib diisi, nilai defaultnya akan diabaikan.

Pengisian formulir

Agen Percakapan (Dialogflow CX) otomatis menetapkan nilai parameter yang diberikan oleh pengguna akhir selama pengisian formulir. Agen mengumpulkan parameter yang diperlukan dalam urutan yang ditentukan di halaman. Agen meminta nilai yang diperlukan dari pengguna akhir menggunakan pemenuhan perintah awal yang Anda berikan untuk setiap parameter yang diperlukan. Parameter opsional tidak akan memicu perintah.

Jika nilai parameter wajib tidak diberikan oleh pengguna akhir setelah perintah agen, perintah awal akan diulang kecuali jika perilaku yang berbeda ditentukan dalam reprompt handlers. Jika ada beberapa perintah teks awal yang ditentukan, perilaku agen sama dengan perilaku untuk respons teks pemenuhan.

Penerusan parameter niat dan sesi

Jika parameter jenis apa pun ditetapkan saat runtime, parameter tersebut akan ditulis ke sesi dan menjadi parameter sesi.

Saat halaman awalnya menjadi aktif, dan selama periode aktifnya, parameter formulir apa pun dengan nama yang sama dengan parameter sesi otomatis disetel ke nilai parameter sesi.

Hal ini dapat terjadi dengan parameter intent yang cocok dalam rute intent atau propagasi parameter.

Penerusan parameter niat dan sesi adalah satu-satunya mekanisme untuk menetapkan parameter formulir opsional ke nilai dari input pengguna akhir, tetapi mekanisme ini juga dapat menetapkan atau mengganti nilai parameter formulir wajib diisi.

Preset parameter pemenuhan

Pemenuhan untuk rute, pengendali peristiwa, atau permintaan ulang formulir dapat menggunakan preset parameter pemenuhan untuk menetapkan nilai parameter formulir saat runtime. Preset parameter pemenuhan akan menggantikan nilai parameter, termasuk nilai default parameter.

Setelan parameter webhook

Webhook Anda dapat menetapkan nilai parameter formulir saat runtime. Lihat kolom pageInfo.formInfo.parameterInfo di Respons webhook.

Mendapatkan parameter formulir

Interaksi dengan API akan menampilkan nilai parameter formulir. Lihat kolom respons queryResult.parameters metode detectIntent untuk jenis Session.

Pilih protokol dan versi untuk Referensi sesi:

Protokol V3 V3beta1
REST Resource sesi Resource sesi
RPC Antarmuka sesi Antarmuka sesi
C++ SessionsClient Tidak tersedia
C# SessionsClient Tidak tersedia
Go SessionsClient Tidak tersedia
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Tidak tersedia Tidak tersedia
Python SessionsClient SessionsClient
Ruby Tidak tersedia Tidak tersedia

Webhook menerima nilai parameter formulir. Lihat kolom pageInfo.formInfo.parameterInfo di Permintaan webhook.

Handler permintaan ulang pengisian formulir

Handler permintaan ulang, juga dikenal sebagai handler peristiwa tingkat parameter, digunakan untuk menentukan perilaku perintah parameter yang kompleks untuk parameter wajib diisi. Misalnya, handler permintaan ulang dapat digunakan untuk mengubah perintah saat pengguna akhir gagal memberikan nilai setelah perintah awal, dan untuk bertransisi ke halaman lain setelah N upaya yang gagal.

Jika tidak ada pengendali permintaan ulang yang ditentukan, perintah awal akan digunakan untuk meminta ulang pengguna akhir sesuai kebutuhan.

Jika pengguna akhir merespons dengan input yang tidak terduga, peristiwa sys.no-match-* atau sys.no-input-* dipanggil, dan pengendali permintaan ulang yang ditentukan untuk peristiwa ini dipanggil.

Seperti pengendali peristiwa lainnya, pengendali permintaan ulang adalah jenis pengendali status yang dapat dikonfigurasi dengan salah satu atau kedua hal berikut:

  • Pemenuhan untuk memberikan pesan pengulangan perintah pengguna akhir dan preset parameter.
  • Target transisi untuk mengubah halaman saat ini.

Parameter sesi

Jika parameter jenis apa pun ditetapkan saat runtime, parameter tersebut akan ditulis ke sesi dan menjadi parameter sesi. Parameter ini tidak ditentukan secara eksplisit pada waktu desain. Anda dapat mereferensikan parameter sesi ini kapan saja selama sesi.

Merujuk parameter sesi

Referensi parameter sesi dapat digunakan dalam pesan respons statis untuk jenis pemenuhan berikut:

  • Pengisian entri halaman
  • Pemenuhan rute
  • Pemenuhan pengendali peristiwa
  • Pemenuhan perintah formulir
  • Pemenuhan permintaan ulang formulir

Referensi juga dapat digunakan di:

Untuk mereferensikan parameter sesi, gunakan format berikut:

Scalar

Untuk mengakses parameter dengan jenis entity skalar:

$session.params.parameter-id

Misalnya, jika ID parameter adalah date, Anda dapat mereferensikan nilai sebagai $session.params.date.

Gabungan

  • Untuk mengakses anggota parameter dengan jenis entity komposit:

    $session.params.parameter-id.member-name

    Misalnya, jika ID parameter adalah location, Anda dapat mereferensikan nilai anggota zip-code sebagai $session.params.location.zip-code.

  • Untuk mengakses nilai asli parameter dengan jenis entity komposit:

    $session.params.parameter-id.original
  • Untuk mengakses objek lengkap parameter dengan jenis entity komposit, gunakan fungsi sistem IDENTITY.

Daftar

  • Untuk mengakses daftar lengkap elemen:

    $session.params.parameter-id

    Misalnya, jika ID parameter daftar adalah colors dan nilai yang diekstrak dari kueri pengguna adalah ["red", "blue", "yellow"], Anda dapat mereferensikan semua nilai sebagai $session.params.colors.

  • Untuk mengakses elemen ke-i dari parameter daftar:

    $session.params.parameter-id[i]

    Misalnya, jika ID parameter daftar adalah colors, Anda dapat mereferensikan nilai pertama sebagai $session.params.colors[0].

Menetapkan parameter sesi

Setelah pengisian formulir selesai, parameter yang diisi akan ditulis ke sesi oleh Agen Percakapan (Dialogflow CX).

Pemenuhan untuk rute, pengendali peristiwa, atau permintaan ulang formulir dapat menggunakan preset parameter pemenuhan untuk menetapkan nilai parameter sesi saat runtime.

Webhook Anda dapat menetapkan nilai parameter sesi saat runtime. Lihat kolom sessionInfo.parameters dalam respons webhook standar atau lihat respons webhook fleksibel.

Interaksi dengan API dapat menetapkan nilai parameter sesi. Lihat kolom permintaan queryParams.parameters metode detectIntent untuk jenis Session.

Pilih protokol dan versi untuk Referensi sesi:

Protokol V3 V3beta1
REST Resource sesi Resource sesi
RPC Antarmuka sesi Antarmuka sesi
C++ SessionsClient Tidak tersedia
C# SessionsClient Tidak tersedia
Go SessionsClient Tidak tersedia
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Tidak tersedia Tidak tersedia
Python SessionsClient SessionsClient
Ruby Tidak tersedia Tidak tersedia

Mendapatkan parameter sesi

Interaksi dengan API akan menampilkan nilai parameter sesi. Lihat kolom respons queryResult.parameters metode detectIntent untuk jenis Session.

Pilih protokol dan versi untuk Referensi sesi:

Protokol V3 V3beta1
REST Resource sesi Resource sesi
RPC Antarmuka sesi Antarmuka sesi
C++ SessionsClient Tidak tersedia
C# SessionsClient Tidak tersedia
Go SessionsClient Tidak tersedia
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP Tidak tersedia Tidak tersedia
Python SessionsClient SessionsClient
Ruby Tidak tersedia Tidak tersedia

Nilai parameter sesi terima webhook. Lihat kolom sessionInfo.parameters di Permintaan webhook.

Penyebaran parameter

Jika input pengguna akhir memberikan nilai parameter, parameter dapat diteruskan ke tingkat lain:

  • Saat parameter intent ditetapkan oleh kecocokan intent, parameter formulir dengan nama yang sama untuk halaman aktif ditetapkan ke nilai yang sama. Jenis entity parameter ditentukan oleh definisi parameter intent.
  • Jika parameter intent ditetapkan oleh kecocokan intent, atau parameter formulir ditetapkan saat mengisi formulir, parameter tersebut akan menjadi parameter sesi.

DTMF untuk integrasi telepon

Anda dapat mengaktifkan dan mengonfigurasi DTMF (Sinyal multi-frekuensi nada ganda) untuk parameter. Setelah diaktifkan, pengguna akhir untuk agen yang menggunakan integrasi telepon dapat menggunakan tombol telepon untuk memberikan nilai parameter.

Untuk mengurangi ambiguitas, input DTMF dapat ditafsirkan dalam bentuk normal dan khusus DTMF (direkomendasikan):

  • Formulir normal adalah nilai keypad yang dimasukkan oleh pengguna akhir. Misalnya, 123#.
  • Formulir khusus DTMF mengonversi input menjadi dtmf_digits_[digits], dengan [digits] adalah digit DTMF asli dengan * diganti dengan star dan # diganti dengan pound. Misalnya, 123# ditafsirkan sebagai dtmf_digits_123pound.

Saat mencocokkan jenis entity untuk parameter, Agen Percakapan (Dialogflow CX) akan mencoba mencocokkan bentuk normal dan khusus DTMF. Jika jenis entity digunakan untuk input DTMF, sebaiknya Anda menentukan sinonim seperti dtmf_digits_123 untuk meningkatkan pencocokan NLU.

Jika input DTMF tidak memenuhi kondisi penghentian (baik belum mencapai panjang digit maksimum atau belum dihentikan oleh digit akhir), agen Agen Percakapan (Dialogflow CX) akan terus menunggu input lainnya. Selama periode ini, jika waktu tunggu tanpa ucapan dipicu, agen akan memanggil peristiwa tanpa input. Jika hanya ucapan yang terdeteksi, agen akan mencocokkan dengan input ucapan. Jika input ucapan dan DTMF terdeteksi, input ucapan akan dihentikan dan hanya input DTMF yang dipertimbangkan.

Untuk mengaktifkan dan menyesuaikan DTMF untuk parameter:

Konsol

  1. Aktifkan Setelan lanjutan dari setelan ucapan agen dan IVR jika Anda belum mengaktifkannya.
  2. Buat parameter halaman.
  3. Di panel parameter, aktifkan Enable DTMF.
  4. Tetapkan Digit maks ke jumlah maksimum digit yang dapat diberikan pengguna akhir untuk parameter ini.
  5. Setel Digit akhir ke nilai tombol yang akan menghentikan input DTMF untuk parameter. # biasanya digunakan untuk setelan ini. Digit akhir tidak ditambahkan ke kueri Agen Percakapan (Dialogflow CX) di agen, jadi jika digit akhir adalah # dan inputnya adalah 123#, maka input kueri sebenarnya adalah '123'

Saat membangun agen, Anda dapat menguji input DTMF di simulator.

Pengakhiran cerdas

Jika smart endpointing diaktifkan untuk agen, Anda dapat menyesuaikan perilaku smart endpointing untuk parameter numerik.

  1. Tetapkan Minimum digit untuk memberi petunjuk pada smart endpointer agar menunggu hingga semua digit dikumpulkan.
  2. Setel Perbaiki transkrip untuk meningkatkan pengenalan ucapan angka dengan memperbaiki error transkripsi angka umum. Hal ini hanya didukung untuk permintaan yang menentukan kode bahasa en atau en-*.
  3. Tetapkan Waktu tunggu untuk menentukan waktu tambahan yang akan digunakan Agen Percakapan (Dialogflow CX) untuk menunggu pengguna memberikan lebih banyak input.

Parameter cakupan alur

Parameter cakupan alur dapat ditentukan sebagai preset parameter pemenuhan atau parameter formulir. Parameter ini hanya dapat dirujuk saat alur yang menentukannya aktif, dan parameter ini tidak dipertahankan ke dalam parameter sesi.

Untuk menentukan atau mereferensikan parameter cakupan alur, gunakan sintaksis berikut:

$flow.parameter-name

Misalnya, jika nama parameter adalah date, Anda dapat menentukan atau mereferensikan parameter sebagai $flow.date.

Perhatikan bahwa penggunaan awalan $ saat menentukan parameter berbeda dengan jenis parameter lain yang tidak menggunakan $ untuk definisi parameter.

Contoh definisi parameter cakupan alur: Gambar definisi parameter cakupan alur.

Masa aktif nilai parameter cakupan alur

Hal ini jarang terjadi, tetapi dalam kasus lanjutan tertentu, Anda mungkin perlu memahami cara nilai parameter cakupan alur dipertahankan (atau dihapus) saat alur menjadi tidak aktif, lalu aktif kembali.

Apakah nilai parameter cakupan alur dipertahankan saat alur menjadi tidak aktif, kemudian aktif lagi bergantung pada stack alur dan instance alur pada stack.

  • Saat alur A bertransisi ke alur B menggunakan target transisi tertentu, alur A (alur induk) tetap berada di stack, alur A mempertahankan nilai parameter cakupan alurnya, dan instance baru alur B (alur turunan) ditambahkan ke stack.
  • Saat transisi alur turunan kembali ke alur induk menggunakan target transisi simbolis (misalnya, END_FLOW), alur turunan akan dihapus dari stack, semua nilai parameter cakupan alur turunan akan dibuang, dan semua nilai parameter cakupan alur induk akan dipertahankan.
  • Dengan menggunakan serangkaian transisi dengan target transisi tertentu, stack alur dapat berisi beberapa instance dari satu jenis alur. Setiap instance jenis alur memiliki nilai parameter cakupan alur yang unik. Misalnya: A1 -> B1 -> C1 -> B2, dengan A, B, dan C adalah jenis alur, dan angka menunjukkan instance dari jenis alur tersebut. Dalam contoh ini, B1 dan B2 adalah instance alur B yang berbeda, dan memiliki parameter cakupan alur yang unik.

Contoh:

Transisi Hasil
Alur A (A1) menjadi aktif.
Flow B (B1) menjadi aktif menggunakan target transisi tertentu.
Flow B bertransisi kembali ke flow A (A1) yang memulainya menggunakan target transisi simbolis.
Alur A mempertahankan nilai parameter.
Alur A (A1) menjadi aktif.
Flow B (B1) menjadi aktif menggunakan target transisi tertentu.
Alur B bertransisi ke instance baru alur A (A2) menggunakan target transisi tertentu.
Instance baru alur A (A2) di bagian atas stack tidak memiliki akses ke nilai parameter alur A (A1) di bagian bawah stack.
Alur A (A1) menjadi aktif.
Flow B (B1) menjadi aktif menggunakan target transisi tertentu.
Flow A (A1) menjadi aktif menggunakan target transisi simbolik.
Flow B (B2) menjadi aktif menggunakan target transisi tertentu.
Alur B (B2) tidak mempertahankan nilai parameter yang ditetapkan saat aktif setelah transisi kedua (B1).

Parameter cakupan permintaan

Parameter cakupan permintaan adalah parameter berumur pendek yang dibuat oleh Agen Percakapan (Dialogflow CX) yang hanya dapat dirujuk selama siklus proses permintaan saat ini, dan tidak dipertahankan ke dalam parameter sesi.

Parameter cakupan permintaan dibuat oleh Agen Percakapan (Dialogflow CX) untuk fitur berikut.

Parameter bawaan

Anda dapat mengakses berbagai data yang terkait dengan permintaan menggunakan:

Referensi Deskripsi
$request.agent-id ID agen.
$request.session-id ID sesi.
$request.project-id ID project.
$request.location-id ID lokasi agen.
$request.language Kode bahasa yang ditentukan dalam QueryInput.language_code.
$request.resolved-language Kode bahasa sebenarnya yang digunakan oleh agen selama pemrosesan. Bahasa yang diselesaikan dapat berbeda dengan bahasa yang ditentukan dalam permintaan. Misalnya, jika agen hanya mendukung "en", sedangkan bahasa yang ditentukan dalam permintaan adalah "en-US", bahasa yang diselesaikan adalah "en".
$request.user-utterance Ucapan pengguna saat ini yang ditentukan dalam permintaan.
$request.last-agent-utterance Ucapan terbaru yang dikirim oleh agen.
$request.nlu-confidence-score Skor keyakinan klasifikasi NLU saat ini.

Payload Kustom

Jika QueryParameters.payload ditetapkan, Anda dapat mengakses parameter yang sesuai menggunakan $request.payload.param-id.

Analisis Sentimen

Referensi sentimen berikut tersedia saat analisis sentimen diaktifkan:

Referensi Jenis Deskripsi
$request.sentiment.score Angka Skor sentimen antara -1,0 (sentimen negatif) dan 1,0 (sentimen positif).
$request.sentiment.magnitude Angka Menunjukkan kekuatan emosi secara keseluruhan (positif dan negatif) antara 0,0 dan +inf. Tidak seperti skor, besaran tidak dinormalisasi; setiap ekspresi emosi dalam input pengguna akhir (positif dan negatif) berkontribusi pada besaran input. Input yang lebih panjang mungkin memiliki magnitude yang lebih besar.
$request.sentiment.succeeded Boolean Benar jika analisis sentimen berhasil, salah jika tidak.

Penyensoran parameter

Untuk setiap parameter intent atau formulir, Anda dapat mengaktifkan penyamaran parameter, yang akan menyamarkan data parameter runtime pengguna akhir dari log dan penyimpanan internal Agen Percakapan (Dialogflow CX). Parameter yang disamarkan ditampilkan sebagai $parameter-name_redacted dalam log.

Misalnya, pertimbangkan input pengguna akhir "Alamat saya adalah 1600 Amphitheatre Parkway" yang menghasilkan parameter alamat dikirim ke "1600 Amphitheatre Parkway". Teks yang dicatat akan menjadi "My address is $address_redacted".

Untuk mengaktifkan penyamaran parameter:

Konsol

Centang kotak Samarkan dalam log saat membuat atau memperbarui parameter.

API

Tetapkan kolom parameters[].redact ke benar (true) untuk jenis Intent.

Pilih protokol dan versi untuk referensi Maksud:

Protokol V3 V3beta1
REST Resource maksud (intent) Resource maksud (intent)
RPC Antarmuka intent Antarmuka intent
C++ IntentsClient Tidak tersedia
C# IntentsClient Tidak tersedia
Go IntentsClient Tidak tersedia
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Tidak tersedia Tidak tersedia
Python IntentsClient IntentsClient
Ruby Tidak tersedia Tidak tersedia

Tetapkan kolom form.parameters[].redact ke benar (true) untuk jenis Page.

Pilih protokol dan versi untuk Referensi halaman:

Protokol V3 V3beta1
REST Resource halaman Resource halaman
RPC Antarmuka halaman Antarmuka halaman
C++ PagesClient Tidak tersedia
C# PagesClient Tidak tersedia
Go PagesClient Tidak tersedia
Java PagesClient PagesClient
Node.js PagesClient PagesClient
PHP Tidak tersedia Tidak tersedia
Python PagesClient PagesClient
Ruby Tidak tersedia Tidak tersedia

Sebagai alternatif, Anda dapat menghapus semua parameter jenis entity tertentu.