Agen Business Messages mendukung integrasi langsung dengan
- Dialogflow ES: pencocokan intent dan bot FAQ
- Dialogflow CX: pencocokan intent dan handoff agen langsung
Untuk mengintegrasikan agen Business Messages dengan fitur Dialogflow lainnya ES atau Dialogflow CX, lihat dokumentasi masing-masing produk.
Saat pengguna mengirim pesan ke agen yang memiliki integrasi Dialogflow,
Business Messages meneruskan pesan pengguna ke Dialogflow dan mengirimkan permintaan
respons kepada agen melalui
Objek dialogflowResponse
. Anda dapat mengonfigurasi agen untuk
secara otomatis mengirim respons Dialogflow kepada pengguna tanpa tindakan apa pun pada
bagian. Lihat Respons otomatis
untuk mengetahui detailnya.
Integrasi Dialogflow
Sebelum Anda dapat memanfaatkan otomatisasi berbasis Dialogflow melalui Business Messages, Anda harus mengaktifkan integrasi Dialogflow.
Prasyarat
Untuk memulai, Anda memerlukan
- Business Messages agen
- agen Dialogflow di region Global dengan bahasa dasar bahasa Inggris (id)
Jika Anda tidak memiliki agen Dialogflow, buatlah agen.
Dialogflow ES
Sebelum dapat mengaktifkan integrasi Dialogflow ES, Anda memerlukan ID project agen Dialogflow. Untuk menemukan project ID,
- Buka Konsol Dialogflow.
- Pilih agen Dialogflow yang ingin Anda hubungkan ke Business Messages, lalu klik ikon roda gigi di samping nama agen.
- Di bagian Project Google, catat nilai Project ID.
Dialogflow CX
Sebelum dapat mengaktifkan integrasi Dialogflow CX, Anda memerlukan ID agen dan project ID agen Dialogflow. Untuk menemukan ID ini,
- Buka Konsol Dialogflow CX.
- Pilih project Dialogflow Anda.
- Di pemilih agen, klik menu tambahan di samping agen Dialogflow Anda.
- Klik Copy name. Tindakan ini akan menyalin nama lengkap agen Anda di
format berikut:
projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID
. - Catat nilai project ID dan ID agen.
Mengaktifkan integrasi
- Di Konsol Developer Business Communications, buka Integrasi.
- Untuk Dialogflow, klik Enable integration.
- Klik Connect existing model.
- Untuk Dialogflow edition, pilih edisi yang akan diaktifkan.
- Masukkan project ID agen Dialogflow Anda.
- Untuk mengaktifkan Dialogflow CX, masukkan juga ID agen agen Dialogflow Anda.
- Jika Anda ingin Business Messages merespons pengguna secara otomatis dengan Respons Dialogflow, pilih Aktifkan respons otomatis.
- Klik Berikutnya.
- Salin email akun layanan. Akun ini menghubungkan Business Messages Anda dan agen Dialogflow.
- Di paket Google Cloud Konsol, memilih project Dialogflow Anda.
- Membuka IAM izin akses.
- Klik Add, lalu masukkan email akun layanan untuk New principals.
- Untuk Select a role, pilih Dialogflow Console Agent Editor.
- Klik Add another role dan pilih Dialogflow API Client.
- Klik Simpan.
- Di Konsol Developer Business Communications, klik Berikutnya.
- Klik Start integration.
Perlu waktu sekitar dua menit untuk menghubungkan Business Messages dan Dialogflow.
Mengupdate integrasi
- Di Konsol Developer Business Communications, buka Integrasi.
- Klik ikon roda gigi di samping Dialogflow.
- Alihkan tombol Aktifkan respons otomatis, bergantung pada apakah Anda menginginkannya atau tidak Business Messages untuk otomatis merespons pengguna dengan respons Dialogflow.
Beralih antaredisi Dialogflow
Agen Business Messages hanya dapat mendukung satu integrasi Dialogflow dalam satu waktu. Untuk beralih dari satu edisi Dialogflow ke edisi lainnya, Anda perlu menonaktifkan integrasi saat ini sebelum mengaktifkan yang baru.
Menonaktifkan integrasi
- Di Konsol Developer Business Communications, buka Integrasi.
- Klik ikon roda gigi di samping Dialogflow.
- Klik Nonaktifkan integrasi.
- Klik Nonaktifkan.
Perlu waktu sekitar satu menit untuk menonaktifkan integrasi Dialogflow yang ada.
Aktifkan integrasi Dialogflow baru dengan mengikuti langkah-langkah berikut.
Pencocokan intent
Setelah Anda mengaktifkan integrasi Dialogflow untuk agen Business Messages, dapat menggunakan intent terkonfigurasi project Dialogflow Anda untuk memahami dan menanggapi pertanyaan pengguna tanpa harus menulis kode. Untuk mempelajari lebih lanjut tentang lihat dokumentasi untuk Dialogflow ES dan Dialogflow CX.
Konfigurasikan intent Dialogflow Anda untuk setiap opsi percakapan yang ingin Anda pengguna melalui otomatisasi. Agen Business Messages mengandalkan Dialogflow untuk memahami pesan pengguna.
Saat memanggil Dialogflow API, Business Messages akan meneruskan
payload pesan pengguna
ke intent dan webhook fulfillment Anda. Saat pesan pengguna cocok
dengan intent, Anda dapat mengakses payload ini dalam format Struct
di
Kolom business_messages_payload
dalam QueryParameters
.
Payload berisi semua kolom dari pesan pengguna kecuali DialogflowResponse
.
Untuk Dialogflow CX, Business Messages juga meneruskan parameter sesi yang disebut channel
dengan nilai google_business_messages
ke intent Anda dan Anda dapat mereferensikannya dalam agen dengan format berikut: $session.params.channel
.
Parameter ini dapat digunakan untuk menambahkan kondisional ke fulfillment Dialogflow untuk mendukung beberapa saluran dalam agen Dialogflow yang sama.
Untuk mengetahui informasi lebih lanjut tentang parameter kueri, lihat referensi Dialogflow ES dan Dialogflow CX.
Prasyarat
Saat membuat model NLU di dalam Dialogflow, Anda dapat mengonfigurasi berbagai jenis respons untuk intent. Business Messages mendukung respons Default, yang dapat mencakup hal berikut:
- Teks
- Payload kustom
- Pengalihan agen langsung (khusus Dialogflow CX)
Payload kustom harus cocok dengan respons pesan JSON Business Messages yang valid objek. Saat mengonfigurasi respons payload kustom untuk intent, Business Messages mengabaikan kolom berikut:
name
messageId
representative
Lihat contoh respons berikut.
Teks dengan saran
{
"text": "Hello World!",
"fallback": "Hello World!\n\nReply with \"Hello\" or \"Hi!\"",
"suggestions": [
{
"reply": {
"text": "Hello",
"postbackData": "hello-formal"
}
},
{
"reply": {
"text": "Hi!",
"postbackData": "hello-informal"
}
}
]
}
Kartu informasi
{
"fallback": "Hello, world!\nSent with Business Messages\n\nReply with \"Suggestion #1\" or \"Suggestion #2\"",
"richCard": {
"standaloneCard": {
"cardContent": {
"title": "Hello, world!",
"description": "Sent with Business Messages.",
"media": {
"height": "TALL",
"contentInfo":{
"altText": "Google logo",
"fileUrl": "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png",
"forceRefresh": "false"
}
},
"suggestions": [
{
"reply": {
"text": "Suggestion #1",
"postbackData": "suggestion_1"
}
},
{
"reply": {
"text": "Suggestion #2",
"postbackData": "suggestion_2"
}
}
]
}
}
}
}
Carousel kartu informasi
{
"fallback": "Card #1\nThe description for card #1\n\nCard #2\nThe description for card #2\n\nReply with \"Card #1\" or \"Card #2\"",
"richCard": {
"carouselCard": {
"cardWidth": "MEDIUM",
"cardContents": [
{
"title": "Card #1",
"description": "The description for card #1",
"suggestions": [
{
"reply": {
"text": "Card #1",
"postbackData": "card_1"
}
}
],
"media": {
"height": "MEDIUM",
"contentInfo": {
"fileUrl": "https://my.files/cute-dog.jpg",
"forceRefresh": false
}
}
},
{
"title": "Card #2",
"description": "The description for card #2",
"suggestions": [
{
"reply": {
"text": "Card #2",
"postbackData": "card_2"
}
}
],
"media": {
"height": "MEDIUM",
"contentInfo": {
"fileUrl": "https://my.files/elephant.jpg",
"forceRefresh": false
}
}
}
]
}
}
}
Penyerahan tugas ke agen langsung
{
"metadata": {}
}
Bot FAQ
Setelah mengaktifkan integrasi Dialogflow ES untuk agen Business Messages, Anda dapat membuat bot FAQ. Ketika Anda memberikan pertanyaan dan jawaban sebagai dokumen pengetahuan yang didukung. Business Messages dan Dialogflow membuat infrastruktur yang diperlukan untuk memahami dan menanggapi pertanyaan pengguna tanpa Anda harus menulis kode.
Untuk melihat cara kerja bot FAQ, chat dengan FAQ Business Messages Bot.
Prasyarat
Sebelum membuat bot FAQ, Anda perlu menyediakan pertanyaan dan jawaban sebagai dokumen pengetahuan (maks. 50 MB): file HTML atau file CSV yang tersedia untuk umum.
Umumnya, dokumen pengetahuan
- Dapat menyertakan Markdown terbatas dalam jawaban, seperti yang ditentukan dalam Kalimat teks.
- Memiliki ukuran maksimum 50 MB.
- Tidak boleh melebihi 2.000 pasangan pertanyaan/jawaban.
- Tidak mendukung pertanyaan duplikat dengan jawaban yang berbeda.
Untuk file HTML,
- File dari URL publik harus sudah di-crawl oleh pengindeks penelusuran Google, agar mereka ada di indeks pencarian. Anda dapat memeriksanya dengan Search Console. Perhatikan bahwa pengindeks tidak membuat konten Anda tetap terbaru. Anda harus secara eksplisit memperbarui dokumen Anda bila konten sumber berubah.
- Dialogflow akan menghapus tag HTML dari konten saat membuat respons. Karena sebaiknya hindari penggunaan tag HTML dan gunakan teks polos jika memungkinkan.
- File dengan pasangan pertanyaan/jawaban tunggal tidak didukung.
Untuk {i>file<i} CSV,
- File harus memiliki pertanyaan di kolom pertama dan jawaban di kolom kedua, tanpa menggunakan {i>header<i}.
- File harus menggunakan koma sebagai pembatas.
Membuat bot FAQ
- Di Konsol Developer Business Communications, buka Integrasi.
- Di bagian Pusat informasi (FAQ), klik Buat pusat informasi.
- Masukkan nama untuk pusat informasi, lalu klik Berikutnya.
- Pilih Jenis MIME.
- Tambahkan dokumen pengetahuan.
- Jika Anda memilih HTML untuk Jenis MIME, masukkan URL yang dapat diakses URL untuk FAQ di URL.
- Jika Anda memilih CSV untuk Jenis MIME, klik Upload dan pilih CSV.
- Klik Tambahkan dan selesai.
Untuk menambahkan dokumen tambahan ke bot FAQ, klik tombol Tambahkan dokumen.
Setelah Anda mengikuti langkah-langkah ini, Business Messages akan menyertakan
dialogflowResponse
dalam pesan pengguna yang dikirimkannya ke agen Anda. Jika Anda mengaktifkan respons otomatis, Business Messages akan merespons pengguna
dengan pasangan pertanyaan/jawaban yang memiliki skor matchConfidence
tertinggi saat
dibandingkan dengan pesan pengguna.
Respons otomatis
Jika Anda mengaktifkan respons otomatis selama integrasi Dialogflow, Pesan merespons pengguna secara otomatis melalui Dialogflow. Bisnis Anda Agen Message merespons dengan kecocokan tingkat keyakinan tertinggi. Dengan Integrasi Dialogflow ES, jika ada kecocokan dengan jawaban FAQ dan niat kustom, Business Messages akan merespons dengan pencocokan yang memiliki tingkat kepercayaan.
Business Messages menandai semua pesan yang ditanggapi otomatis sebagai berasal dari BOT
perwakilan. Jika agen Anda mendukung agen langsung,
Business Messages menangguhkan respons otomatis setelah REPRESENTATIVE_JOINED
peristiwa
dan melanjutkan respons otomatis setelah peristiwa REPRESENTATIVE_LEFT
. Lihat Handoff
dari bot hingga agen langsung.
Respons otomatis dengan jawaban FAQ
Dengan integrasi Dialogflow ES, jika jawaban FAQ memiliki tingkat keyakinan tertinggi Business Messages akan memetakan jawaban atas pesan teks. Jika ada terkait, tetapi jawaban berbeda, pesan akan menampilkan jawab" saran. Jika tidak, pesan akan menyertakan pertanyaan dan saran balasan yang menanyakan apakah pesan tersebut memenuhi permintaan pengguna.
Merespons otomatis dengan respons intent
Respons intent dapat menyertakan satu atau beberapa respons berikut.
- Dialogflow ES: Teks, Payload kustom
- Dialogflow CX: Teks, Payload kustom, Serah terima agen langsung
Jika respons niat memiliki kecocokan tingkat keyakinan tertinggi, hal berikut berlaku.
- Jika respons memiliki minimal satu nilai Teks, Business Messages akan memetakannya nilai pada pesan teks.
- Jika respons memiliki setidaknya satu Payload kustom dengan kolom Bisnis yang valid Struktur objek JSON Message, Business Messages membuat pesan menggunakan yang menyediakan objek JSON.
- Jika respons memiliki setidaknya satu respons serah terima agen Langsung, lihat Respons otomatis dengan permintaan agen langsung.
Karena Dialogflow dapat menyertakan beberapa respons dalam satu kecocokan intent, Business Messages mengirimkan setiap Pengiriman Teks, Payload kustom, atau Agen langsung sebagai pesan terpisah. Jika ada beberapa pesan dalam satu intent cocok, tetapi beberapa di antaranya salah format, Business Messages hanya mengirim pesan yang valid pesan sebagai respons otomatis.
Merespons secara otomatis dengan permintaan agen langsung
Dialogflow CX mendukung serah terima langsung agen yang dihasilkan. Ini menandakan bahwa percakapan harus diserahkan kepada manusia representatif, dan memungkinkan Anda meneruskan metadata kustom untuk materi yang prosedur standar. Jika respons niat memiliki kecocokan tingkat keyakinan tertinggi, dan itu menyertakan penyerahan ke agen Langsung, Business Messages mengirimkan peristiwa yang diminta agen langsung ke webhook Anda. Untuk menangani peristiwa ini, lihat Menyerahkan dari bot ke agen langsung.
Merespons secara otomatis dengan pesan penggantian
Jika Dialogflow tidak mendapatkan kecocokan tingkat keyakinan tinggi, Business Messages akan mengirimkan respons penggantian. Penggantian ditangani secara berbeda di Dialogflow ES dan Dialogflow CX.
Dialogflow ES
Untuk bot FAQ, jika tidak ada kecocokan dengan jawaban FAQ, Business Messages mengirimkan pesan penggantian bahwa tidak dapat menemukan jawaban.
Untuk intent yang dikonfigurasi, jika tidak ada kecocokan dengan respons intent, Pesan mengirim respons intent penggantian. Anda dapat menggunakan teks fallback yang disediakan oleh Dialogflow, atau mengonfigurasi dengan teks tambahan dan payload kustom.
Berikut contoh respons intent penggantian yang webhook Anda dapat menerima:
{
"intentResponses": [
{
"intentName": "projects/df-integration/agent/intents/12345",
"intentDisplayName": "Default Fallback Intent",
"intentDetectionConfidence": "1.0",
"fulfillmentMessages": [
{
"text": "One more time?"
}
]
}
]
}
Dialogflow akan mengisi otomatis intent_name
dan intent_display_name
.
Dialogflow CX
Dialogflow CX menangani respons intent penggantian sebagai peristiwa bawaan. Jika tidak ada kecocokan dengan respons intent, Business Messages akan mengirimkan pesan penggantian dari peristiwa default Tidak ada kecocokan di Dialogflow. Anda dapat menggunakan teks penggantian yang disediakan oleh Dialogflow, atau mengonfigurasi penggantian dengan teks tambahan, payload kustom, dan opsi pengalihan ke agen langsung.
Berikut adalah contoh respons intent penggantian yang webhook dapat menerima:
{
"intentResponses": [
{
"intentName": "sys.no-match-default",
"intentDisplayName": "Default Fallback Intent",
"intentDetectionConfidence": "0.3",
"fulfillmentMessages": [
{
"text": "I missed that, say that again?"
}
]
}
]
}
Business Messages melakukan hard code intent_name
dan intent_display_name
.
Kolom khusus Dialogflow
Setelah Anda mengaktifkan integrasi Dialogflow, pengguna akan mengirim pesan ke agen
menerima
sertakan
dialogflowResponse
. Webhook Anda menerima payload untuk semua pesan pengguna terlepas dari
apakah Business Messages otomatis merespons pesan di
nama Anda. Untuk memeriksa respons otomatis, lihat nilai respons
autoResponded
dan memutuskan apakah Anda perlu merespons pengguna.
Dialogflow ES
... "dialogflowResponse": { "queryText": "TEXT", "intentResponse": { "intentName": "INTENT_ID", "intentDisplayName": "INTENT_NAME", "intentDetectionConfidence": "CONFIDENCE_NUMERIC", "fulfillmentMessages": [{ "text": "FULFILLMENT_TEXT", "jsonPayload": "JSON", "error": "ERROR_STATUS", }], "faqResponse": { "userQuestion": "USER_QUESTION", "answers": [{ "faqQuestion": "FAQ_QUESTION", "faqAnswer": "FAQ_ANSWER", "matchConfidenceLevel": "CONFIDENCE_LEVEL", "matchConfidence": "CONFIDENCE_NUMERIC", }], }, "autoResponded": "BOOLEAN", "autoRespondedMessages": [{ "message": "MESSAGE_JSON", "responseSource": "SOURCE", }], }, ...
Kolom | Deskripsi |
---|---|
queryText
|
Teks kueri percakapan asli. Jika ejaan otomatis
koreksi diaktifkan untuk model Dialogflow, queryText
berisi input pengguna yang dikoreksi. |
intentName |
ID unik dari intent yang cocok. |
intentDisplayName |
Nama intent yang cocok. |
intentDetectionConfidence
|
Rating keyakinan numerik dalam pertandingan
antara queryText dan intentName . |
text |
Pesan balasan. |
jsonPayload
|
Respons payload kustom.
String ini cocok dengan kolom
payload yang ditentukan dalam Dialogflow.
Jika payload tidak memiliki JSON Business Messages yang valid
struktur objek, error menjelaskan masalah. |
error |
Deskripsi error dengan pesan fulfillment intent. |
userQuestion |
Pertanyaan yang diajukan pengguna, sebagaimana diuraikan oleh Dialogflow. |
faqQuestion |
Pertanyaan dari Dialogflow yang cocok dengan pertanyaan pengguna. |
faqAnswer |
Jawaban dari Dialogflow cocok dengan pertanyaan pengguna. |
matchConfidenceLevel
|
Tingkat kepercayaan dalam
kecocokan antara
userQuestion dan faqQuestion . |
matchConfidence
|
Tingkat keyakinan numerik pada
kecocokan antara
userQuestion dan faqQuestion . |
autoResponded
|
Apakah Business Messages merespons secara otomatis atau tidak pengguna dengan jawaban dari Dialogflow. |
message |
Payload respons otomatis. |
responseSource
|
Sumber respons otomatis. Lihat
ResponseSource |
Dialogflow CX
... "dialogflowResponse": { "queryText": "TEXT", "intentResponse": { "intentName": "INTENT_ID", "intentDisplayName": "INTENT_NAME", "intentDetectionConfidence": "CONFIDENCE_NUMERIC", "fulfillmentMessages": [{ "text": "FULFILLMENT_TEXT", "jsonPayload": "JSON", "error": "ERROR_STATUS", "liveAgentHandoff": { "metadata": {} } }], "autoResponded": "BOOLEAN", "autoRespondedMessages": [{ "message": "MESSAGE_JSON", "responseSource": "SOURCE", }], }, ...
Kolom | Deskripsi |
---|---|
queryText
|
Teks kueri percakapan asli. Jika ejaan otomatis
koreksi diaktifkan untuk model Dialogflow, queryText
berisi input pengguna yang dikoreksi. |
intentName |
ID unik dari intent yang cocok. |
intentDisplayName |
Nama intent yang cocok. |
intentDetectionConfidence
|
Rating keyakinan numerik dalam pertandingan
antara queryText dan intentName . |
text |
Pesan balasan. |
jsonPayload
|
Respons payload kustom.
String ini cocok dengan kolom
payload yang ditentukan dalam Dialogflow.
Jika payload tidak memiliki JSON Business Messages yang valid
struktur objek, error menjelaskan masalah. |
error |
Deskripsi error dengan pesan fulfillment intent. |
liveAgentHandoff |
Metadata kustom untuk prosedur serah terima agen langsung Anda. |
autoResponded
|
Apakah Business Messages merespons secara otomatis atau tidak pengguna dengan jawaban dari Dialogflow. |
message |
Payload respons otomatis. |
responseSource
|
Sumber respons otomatis. Lihat
ResponseSource |