Membuat agen RBM yang didukung Dialogflow (Dasar)

Dalam codelab ini, Anda akan mempelajari cara menggunakan Dialogflow untuk membuat antarmuka percakapan guna memberdayakan agen RBM tanpa menulis kode apa pun.

Apa yang akan Anda buat dalam codelab ini?

  • Agen Dialogflow yang mendukung percakapan agen RBM
  • Antarmuka percakapan untuk restoran pizza fiktif yang mengirimkan penawaran diskon kepada pengguna dan memungkinkan mereka melihat menu restoran

Yang dipelajari

  • Cara menggunakan konstruksi utama Dialogflow dari intent untuk membuat antarmuka percakapan
  • Cara membuat jenis respons RBM dari Dialogflow guna menciptakan pengalaman RBM yang kaya bagi pengguna

Yang dibutuhkan

  • Akun Google platform RBM Anda

Membuat dan mengkueri agen pertama

Durasi: 30:00

Membuat agen Dialogflow pertama Anda

Untuk membuat agen Dialogflow:

  1. Buka tab baru dan login ke Dialogflow.
  2. Klik Buat agen di navigasi sebelah kiri.

  3. Masukkan "CodelabRBMPizzaPlace" untuk nama agen Anda, "Inggris" sebagai bahasa default, dan atur zona waktu default ke zona waktu Anda.

  4. Klik Create.

Konsol Dialogflow

Sekarang Anda akan melihat konsol Dialogflow. Jika Anda bekerja di layar yang lebih kecil dan navigasi sebelah kiri disembunyikan, klik tombol navigasi di pojok kiri atas. Tombol setelan akan mengarahkan Anda ke setelan agen saat ini.

Bagian tengah halaman menampilkan daftar intent untuk agen. Secara default, agen Dialogflow dimulai dengan dua intent. Agen Anda cocok dengan Intent Penggantian Default jika tidak memahami ucapan pengguna. Default Welcome Intent menyapa pengguna Anda. Anda dapat mengubah intent ini untuk menyesuaikan pengalaman.

Di sebelah kanan adalah simulator Dialogflow. Hal ini memungkinkan Anda mencoba agen dengan mengucapkan atau mengetik pesan.

Membuat kueri terkait agen Anda

Agen Dialogflow sebaiknya dideskripsikan sebagai modul NLU (Natural Language Definition). Ini dapat disertakan dalam aplikasi, produk, atau layanan Anda untuk mengubah permintaan pengguna alami menjadi data yang dapat ditindaklanjuti.

Saatnya mencoba agen Anda. Pada simulator di sebelah kanan, klik kolom teks yang bertuliskan Cobalah sekarang, ketik "Hi", lalu tekan Enter.

Dialogflow mengidentifikasi kueri, cocok dengan Default Welcome Intent, dan merespons dengan salam generik. Ini berfungsi karena Dialogflow secara otomatis melatih Intent Selamat Datang Default dengan beberapa contoh salam.

Membuat agen RBM

Login ke Business Communications Developer Console, lalu klik Create agent.

Di kolom Nama, masukkan "Tempat Pizza Nama Anda" (seperti "Tempat Pizza Sean"), pilih Wilayah, lalu klik Buat agen.

Menghubungkan agen RBM ke Dialogflow

Setelah agen RBM dibuat, klik agen untuk melihat halaman Ringkasan agen. Klik link Integrasi di navigasi sebelah kiri.

Secara default, agen RBM menggunakan Google Cloud Pub/Sub untuk menangani pesan pengguna. Untuk menghubungkan agen RBM ke agen Dialogflow yang Anda buat sebelumnya, klik integrasi Dialogflow.

Pada dialog, klik Connect existing model. Ikuti petunjuk untuk memberikan izin kepada agen RBM Anda agar dapat memanggil agen Dialogflow Anda. Setelah menyelesaikan petunjuk, klik Next.

Terakhir, Anda harus memberikan project ID Dialogflow. Di tab browser yang berbeda dengan Business Communications Developer Console, buka Dialogflow, lalu buka agen CodelabRBMPizzaPlace yang telah Anda buat sebelumnya. Klik ikon roda gigi di dekat nama project di navigasi sebelah kiri.

Dengan mengklik ini, Anda akan diarahkan ke setelan model. Di bagian GOOGLE PROJECT, temukan dan salin Project ID.

Kembali ke tab Anda dengan Konsol Business Communications Developer yang terbuka, tempel project ID ke dalam dialog, lalu klik Start integration.

Proses ini membutuhkan waktu sekitar dua menit. Setelah selesai, Anda akan melihat opsi integrasi Dialogflow ditandai dan link Lihat agen tersedia.

Semua pesan ke dan dari agen Anda kini ditangani oleh agen DialogCodelab CodelabRBMPizzaPlace.

Mengundang perangkat pengujian dan mengirim pesan

Sebelum menyelami Dialogflow, mari kita siapkan perangkat pengujian Anda. Jika Anda belum memiliki perangkat yang dapat menerima pesan RBM, ikuti panduan ini untuk menyiapkan perangkat Anda.

Dari Konsol Komunikasi Bisnis, klik Perangkat di navigasi sebelah kiri. Dalam formulir, masukkan nomor telepon lengkap perangkat Anda dalam format E.164 (misalnya, +12223334444) dan klik Tambahkan.

Di perangkat, Anda menerima undangan pengujian. Ketuk Jadikan saya sebagai penguji.

Di browser, temukan perangkat Anda dalam daftar Perangkat dan kirimkan pesan pengujian kepada perangkat Anda. Jika menerima pesan di perangkat dari agen RBM, Anda siap melanjutkan codelab ini.

Membuat intent sambutan

Biasanya dengan agen RBM yang didukung Dialogflow, untuk memulai percakapan, Anda membuat panggilan API yang menentukan nomor telepon pengguna dan intent Dialogflow yang memulai percakapan (biasanya intent selamat datang agen). Untuk codelab ini, kita akan melewati langkah ini dan sebagai gantinya, menggunakan thread percakapan yang telah kita buat pada langkah sebelumnya dengan perangkat uji dari Business Communications Developer Console. Namun, jika Anda ingin membaca selengkapnya tentang fitur API ini, lihat panduan ini.

Mari kita mulai dengan menambahkan respons RBM ke Intent Selamat Datang Default sehingga Dialogflow dapat menggunakannya dengan agen RBM Anda. Pertama, buka tab browser yang membuka Dialogflow. Klik link Intent di navigasi sebelah kiri. Hapus sampel "Respons Teks" dengan mengklik tempat sampah di pojok kanan atas. Kemudian, klik Default Welcome Intent, scroll ke bawah ke bagian Respons, klik + di daftar jenis respons, lalu pilih RCS Business Messaging (RBM).

Klik Tambahkan Respons, lalu pilih Respons Sederhana. Di kolom teks untuk Respons Respons Sederhana, masukkan "Lihat promo Pizza Place Sean hari ini! Beli pizza 12 inci dan dapatkan GRATIS!" (ganti Sean dengan nama Anda), lalu klik Simpan.

Memulai percakapan

Setelah mengonfigurasi intent selamat datang, kembali ke perangkat pengujian Anda dan kirim pesan "Hi". Pesan ini memicu Default Welcome Intent, dan Anda akan melihat sesuatu yang mirip dengan gambar di bawah.

Perbarui intent selamat datang Anda

Setelah Dialogflow mengirim pesan sederhana, mari kita perbarui pesan agar sedikit lebih menarik. Kami tidak hanya ingin mengirim pesan tentang promo hari ini, tetapi juga mengirimkan gambar untuk menarik pengguna penerima dan memberi mereka beberapa tindakan lain yang mungkin ingin mereka lakukan.

Mari kita ganti pesan iklan pizza respons sederhana dengan kartu yang berisi gambar dan menyediakan opsi untuk melihat menu lengkap dan situs restoran.

Di bagian Default Welcome Intent'sResponses, pilih tab RCS Business Messaging (RBM). Perbarui teks Respons Sederhana yang ada dengan "Selamat datang di Sean’s Pizza Place. Lihat penawaran promosi hari ini.". Selanjutnya, klik Tambahkan Respons dan pilih Kartu Informasi Mandiri.

Dalam formulir Kartu Informasi Mandiri, masukkan informasi berikut:

  • Judul Kartu: Beli Pizza 12 Inci dan Dapatkan GRATIS!
  • Deskripsi Kartu: Tampilkan pesan ini di lokasi mana pun yang berpartisipasi untuk menukarkan penawaran ini. Penawaran berakhir 17/2.
  • Pilih Orientasi Kartu: Vertikal
  • URL Gambar/Video: https://storage.googleapis.com/df-rbm-codelab/pizza-ad-coupon.png
  • Pilih Tinggi Media: Sedang

Klik Tambahkan Saran, lalu masukkan info berikut:

  • Teks saran: Lihat menu
  • Postback yang Disarankan: reply_view_menu

Tambahkan Tindakan URL Terbuka dengan mengklik Tambahkan Saran, lalu memilih Buka Tindakan URL dari dropdown dan memasukkan hal berikut:

  • Teks saran: Lihat situs
  • Postback yang Disarankan: reply_view_website
  • URL yang akan dibuka: https://www.google.com (atau URL yang valid)

Klik Simpan.

Cobalah.

Setelah model mengucapkan "Pelatihan agen selesai", kembali ke perangkat Anda dan kirim pesan "Halo" ke agen Anda. Sekarang Anda akan melihat Respons Sederhana yang diikuti dengan Kartu Kaya Mandiri yang baru saja Anda desain.

Coba ketuk Lihat menu. Perhatikan bahwa Default Fallback Intent dipicu. Hal ini dikarenakan agen Dialogflow Anda tidak tahu cara menangani data postback yang Anda konfigurasikan untuk saran ini, "reply_view_menu".

Mari kita perbaiki.

Membuat intent Menu Anda

Dialogflow menggunakan intent untuk mengategorikan niat pengguna. Intent memiliki Frasa Pelatihan, yang merupakan contoh hal yang mungkin dikatakan pengguna kepada agen Anda. Misalnya, seseorang yang ingin mengetahui menu mungkin bertanya, "Apa menu Anda; " &}}

Semua kueri ini bersifat unik, tetapi memiliki niat yang sama: untuk mendapatkan informasi tentang menu.

Untuk mencakup kueri ini, buat intent "Menu"

  1. Di navigasi sebelah kiri, klik + di samping Intent.
  2. Untuk Intent name, masukkan "Menu".
  3. Di bagian Frasa Pelatihan, klik Tambahkan ekspresi pengguna, lalu masukkan frasa berikut, tekan enter setelah setiap entri:

    • What's your menu?
    • What can I eat?
    • What can I order?
    • reply_view_menu

    Frasa pelatihan terakhir ini digunakan untuk memetakan data postback yang Anda konfigurasikan di bagian sebelumnya dengan intent ini.

Sebagai respons terhadap intent ini, kita akan membuat carousel yang menampilkan berbagai opsi menu. Untuk menu yang lebih besar, Anda dapat menautkan ke situs atau membagikan satu gambar menu.

  1. Di bagian Respons, klik +, lalu pilih RCS Business Messaging (RBM).
  2. Klik Tambahkan Respons dan pilih Kartu Informasi Carousel.
  3. Tetapkan opsi Pilih Lebar Kartu ke Sedang.
  4. Di bagian opsi lebar, klik Tambahkan Kartu dua kali. Tindakan ini akan memperluas jumlah kartu menjadi 4.
  5. Di Kartu 1, masukkan hal berikut:
    • Judul Kartu: Sosis dan Pepperoni
    • Deskripsi Kartu: Sosis, pepperoni, zaitun, dan paprika hijau
    • URL Gambar/Video: https://storage.googleapis.com/df-rbm-codelab/sausage-pizza.jpg
  6. Di Kartu 3, masukkan hal berikut:
    • Judul Kartu: Italia
    • Deskripsi Kartu: Saus tomat, keju, dan sosis
    • URL Gambar/Video: https://storage.googleapis.com/df-rbm-codelab/italian-pizza.jpg
  7. Di Kartu 2, masukkan hal berikut:
    • Judul Kartu: Margherita
    • Deskripsi Kartu: Tomat San Marzano, keju mozzarella, basil segar, garam, dan minyak zaitun murni
    • URL Gambar/Video: https://storage.googleapis.com/df-rbm-codelab/margarita-pizza.jpg
  8. Di Kartu 4, masukkan hal berikut:
    • Judul Kartu: Supreme
    • Deskripsi Kartu: Sosis, Pepperoni, Hamburger, Bacon Kanada, Bawang, Zaitun, Jamur, dan Paprika Hijau
    • URL Gambar/Video: https://storage.googleapis.com/df-rbm-codelab/supreme-pizza.jpg

Setelah item kartu, kita juga perlu menyediakan cara bagi pengguna untuk melanjutkan percakapan. Untuk mendukung hal ini, klik Tambahkan Respons, lalu pilih Respons Sederhana, lalu masukkan teks "Ingin melakukan sesuatu yang lain|quot;.

Dalam Respons Sederhana, klik Tambahkan Saran, lalu masukkan hal berikut:

  • Teks saran: Lihat promosi
  • Postback Saran: halo

Klik Simpan.

Cobalah.

Sekarang coba minta menumu kepada agen. Di perangkat, pada percakapan untuk agen RBM Anda, masukkan "Apa yang ada di menu{8}quot; dan kirim pesan tersebut kepada agen Anda.

Agen Anda sekarang merespons kueri dengan benar. Perhatikan bahwa meskipun kueri Anda sedikit berbeda dari frasa pelatihan ("What’s on the menu ?>quot; versus "What's menu":"quot;), Dialogflow masih mencocokkan kueri dengan intent yang tepat. Anda juga dapat mencoba mengetuk item Lihat menu di kartu informasi.

Dialogflow menggunakan frasa pelatihan sebagai contoh untuk model machine learning agar cocok dengan kueri pengguna ke intent yang benar. Model machine learning memeriksa kueri terhadap setiap intent dalam agen, memberi setiap intent skor, dan intent dengan skor tertinggi akan dicocokkan. Jika intent penskoran tertinggi memiliki skor yang sangat rendah, intent fallback akan dicocokkan.

Mengambil intent tanpa merespons

Anda hampir selesai, tetapi ada satu hal terakhir yang perlu kami lakukan. Jika kembali ke perangkat pengujian dan mengetuk saran Lihat situs di kartu lengkap awal, Anda akan melihat bahwa mengetuk saran ini tidak hanya membuka URL terkait, tetapi Anda juga menerima pesan yang dipicu oleh Intent Penggantian Default.

Ini karena Tindakan URL Terbuka mengirimkan teks postback "reply_view_website" ke Dialogflow saat Anda mengetuk tindakan dan Dialogflow akan memetakan ini ke Intent Penggantian Default.

Untuk mengambil data postback tanpa segera meresponsnya, kita akan membuat intent dengan frasa pelatihan yang cocok dengan data postback dan menghapus semua respons untuk intent tersebut. Dialogflow akan mencocokkan data postback dengan intent, tetapi tidak akan merespons karena intent tidak memiliki respons yang ditentukan.

Membuat intent Tidak ada respons

Untuk mencakup tindakan yang ingin Anda abaikan, buat intent "Tidak ada respons"

  1. Di navigasi sebelah kiri, klik + di samping Intent.
  2. Untuk Intent name, masukkan "No response".
  3. Di bagian Frasa Pelatihan, klik Tambahkan ekspresi pengguna, lalu masukkan frasa berikut, tekan enter setelah setiap entri:
    • reply_view_website
  4. Scroll ke bawah ke Respons dan hapus semua respons menggunakan ikon sampah.

Klik Simpan.

Cobalah.

Di perangkat, pada percakapan untuk agen RBM Anda, masukkan "hi" dan kirim pesan ke agen Anda. Tindakan ini akan memicu penawaran promosi dari Intent Selamat Datang Default. Klik Lihat saran situs dan amati bahwa situs dibuka di browser dan tidak ada respons agen yang dikirim.

Selesai!

Durasi: 1:00

Bagus!

Sekarang Anda telah melalui semua tahapan pembuatan agen RBM sederhana yang didukung oleh Dialogflow.

Jika Anda tertarik untuk mempelajari lebih lanjut, lihat codelab lanjutan kami.

Selamat mengembangkan aplikasi untuk platform baru yang menarik ini.