Panduan ini menjelaskan cara mengirim input audio ke permintaan deteksi intent menggunakan API. Dialogflow memproses audio dan mengonversinya menjadi teks sebelum mencoba kecocokan intent.
Sebelum memulai
Fitur ini hanya berlaku saat menggunakan API untuk interaksi pengguna akhir. Jika menggunakan integrasi, Anda dapat melewati panduan ini.
Sebelum membaca panduan ini, selesaikan tugas berikut:
- Baca Dasar-dasar Dialogflow.
- Selesaikan langkah-langkah penyiapannya.
Buat agen
- Buka konsol Dialogflow ES.
- Login ke konsol jika diminta. Untuk mengetahui informasi selengkapnya, lihat Ringkasan konsol Dialogflow.
- Di menu sidebar, luaskan Loading agents.
- Klik Create new agent.
- Masukkan nama agen, bahasa default, dan zona waktu default.
- Masukkan project yang ada. Untuk mengizinkan konsol Dialogflow membuat project, pilih Create a new Google project.
- Klik Create.
Mendeteksi intent
Untuk mendeteksi intent, panggil metode detectIntent pada jenis
Sessions.
REST
Download file audio input contohbook-a-room.wav, yang mengatakan "book a room." File audio harus dienkode Base64 untuk contoh ini, sehingga dapat diberikan dalam permintaan JSON berikut.
Untuk mengenkode file audio untuk permintaan, gunakan perintah berikut di Linux:
wget https://cloud.google.com/dialogflow/es/docs/data/book-a-room.wav base64 -w 0 book-a-room.wav > book-a-room.b64
Untuk mengetahui informasi selengkapnya tentang cara mengenkode konten audio, lihat Mengenkode konten audio ke format Base64.
Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
- PROJECT_ID: project ID Google Cloud Anda
- AUDIO: konten audio yang dienkode base64
Metode HTTP dan URL:
POST https://dialogflow.googleapis.com/v2/projects/PROJECT_ID/agent/sessions/123456789:detectIntent
Meminta isi JSON:
{
"queryInput": {
"audioConfig": {
"languageCode": "en-US"
}
},
"inputAudio": "AUDIO"
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{
"responseId": "3c1e5a89-75b9-4c3f-b63d-4b1351dd5e32",
"queryResult": {
"queryText": "book a room",
"action": "room.reservation",
"parameters": {
"time": "",
"date": "",
"guests": "",
"duration": "",
"location": ""
},
"fulfillmentText": "I can help with that. Where would you like to reserve a room?",
"fulfillmentMessages": [
{
"text": {
"text": [
"I can help with that. Where would you like to reserve a room?"
]
}
}
],
"intent": {
"name": "projects/PROJECT_ID/agent/intents/e8f6a63e-73da-4a1a-8bfc-857183f71228",
"displayName": "room.reservation"
},
"intentDetectionConfidence": 1,
"diagnosticInfo": {},
"languageCode": "en-us"
}
}
Nilai kolom queryResult.action adalah "room.reservation", dan nilai kolom queryResult.fulfillmentMessages[0|1].text.text[0] meminta pengguna untuk memberikan informasi selengkapnya.
Go
Untuk melakukan autentikasi ke Dialogflow CX, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk melakukan autentikasi ke Dialogflow CX, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk melakukan autentikasi ke Dialogflow CX, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk melakukan autentikasi ke Dialogflow CX, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien, lalu kunjungi Dokumentasi referensi Dialogflow CX untuk .NET.
PHP: Ikuti Petunjuk penyiapan PHP di halaman library klien, lalu kunjungi Dokumentasi referensi Dialogflow CX untuk PHP.
Ruby: Ikuti Petunjuk penyiapan Ruby di halaman library klien, lalu kunjungi Dokumentasi referensi Dialogflow CX untuk Ruby.