Gambaran Umum Automasi Panggilan
Azure Communication Services Call Automation memberi pengembang kemampuan untuk membangun alur kerja panggilan berbasis server, cerdas, dan perekaman panggilan untuk saluran Jaringan Telepon Teralihkan Publik (PSTN). SDK, yang tersedia di C#, Java, JavaScript, dan Python, menggunakan model peristiwa tindakan untuk membantu Anda membangun interaksi pelanggan yang dipersonalisasi. Aplikasi komunikasi Anda dapat mendengarkan peristiwa panggilan real time dan melakukan tindakan sarana kontrol (seperti menjawab, mentransfer, memutar audio, mulai merekam, dll.) untuk mengarahkan dan mengontrol panggilan berdasarkan logika bisnis Anda.
Catatan
Automasi Panggilan saat ini tidak mendukung panggilan Kamar .
Kasus penggunaan umum
Beberapa kasus penggunaan umum yang dapat dibuat menggunakan Automasi Panggilan meliputi:
- Panggilan VoIP program atau PSTN untuk alur kerja transaksi seperti pengingat klik-untuk-panggilan dan janji temu untuk meningkatkan layanan pelanggan.
- Bangun alur kerja interaksi interaktif ke pelanggan mandiri untuk kasus penggunaan seperti pemesanan dan pembaruan pesanan, menggunakan tindakan Putar (URL Audio, Teks ke Ucapan, dan SSML) dan Kenali (DTMF dan Voice).
- Integrasikan aplikasi komunikasi Anda dengan Pusat Kontak dan jaringan telepon privat Anda menggunakan Perutean Langsung.
- Lindungi identitas pelanggan Anda dengan membangun layanan masking nomor untuk menghubungkan pembeli ke penjual atau pengguna ke vendor mitra di platform Anda.
- Tingkatkan keterlibatan dengan membangun program pencapaian pelanggan otomatis untuk pemasaran dan layanan pelanggan.
- Analisis dalam proses pasca-panggilan rekaman audio Anda yang tidak dimix untuk tujuan jaminan kualitas.
Azure Communication Services Call Automation dapat digunakan untuk membangun alur kerja panggilan untuk skenario layanan pelanggan, seperti yang digambarkan dalam arsitektur tingkat tinggi. Anda dapat menjawab panggilan masuk atau melakukan panggilan keluar. Jalankan tindakan seperti memutar pesan selamat datang, menghubungkan pelanggan ke agen langsung di aplikasi klien Azure Communication Services Calling SDK untuk menjawab permintaan panggilan masuk. Dengan dukungan untuk PSTN Azure Communication Services atau Perutean Langsung, Anda kemudian dapat menyambungkan alur kerja ini kembali ke pusat kontak Anda.
Kemampuan
Daftar berikut menyajikan sekumpulan fitur yang saat ini tersedia di SDK Automasi Panggilan Azure Communication Services.
Area Fitur | Kemampuan | .NET | Java | JavaScript | Python |
---|---|---|---|---|---|
Skenario pra-panggilan | Menjawab panggilan satu-ke-satu | ✔️ | ✔️ | ✔️ | ✔️ |
Menjawab panggilan grup | ✔️ | ✔️ | ✔️ | ✔️ | |
Melakukan panggilan keluar baru ke satu atau beberapa titik akhir | ✔️ | ✔️ | ✔️ | ✔️ | |
Mengalihkan* (meneruskan) panggilan ke satu atau beberapa titik akhir | ✔️ | ✔️ | ✔️ | ✔️ | |
Menolak panggilan masuk | ✔️ | ✔️ | ✔️ | ✔️ | |
Skenario pertengahan panggilan | Menambahkan satu atau beberapa titik akhir ke panggilan yang sudah ada | ✔️ | ✔️ | ✔️ | ✔️ |
Batal menambahkan titik akhir ke panggilan yang sudah ada | ✔️ | ✔️ | ✔️ | ✔️ | |
Memutar Audio dari file audio | ✔️ | ✔️ | ✔️ | ✔️ | |
Memutar Audio menggunakan Teks ke Ucapan | ✔️ | ✔️ | ✔️ | ✔️ | |
Mengenali input pengguna melalui DTMF | ✔️ | ✔️ | ✔️ | ✔️ | |
Mengenali input suara pengguna | ✔️ | ✔️ | ✔️ | ✔️ | |
Mulai pengenalan DTMF berkelanjutan | ✔️ | ✔️ | ✔️ | ✔️ | |
Menghentikan pengenalan DTMF berkelanjutan | ✔️ | ✔️ | ✔️ | ✔️ | |
Kirim DTMF | ✔️ | ✔️ | ✔️ | ✔️ | |
Mematikan suara peserta | ✔️ | ✔️ | ✔️ | ✔️ | |
Menghapus satu atau beberapa titik akhir dari panggilan yang sudah ada | ✔️ | ✔️ | ✔️ | ✔️ | |
Transfer Buta* panggilan 1:1 ke titik akhir lain | ✔️ | ✔️ | ✔️ | ✔️ | |
Blind Transfer* peserta dari panggilan grup ke titik akhir lain | ✔️ | ✔️ | ✔️ | ✔️ | |
Menutup panggilan (menghapus kaki panggilan) | ✔️ | ✔️ | ✔️ | ✔️ | |
Menghentikan panggilan (menghapus semua peserta dan mengakhiri panggilan) | ✔️ | ✔️ | ✔️ | ✔️ | |
Batalkan operasi media | ✔️ | ✔️ | ✔️ | ✔️ | |
Bagikan info kustom (melalui header VOIP atau SIP) dengan titik akhir saat menambahkannya ke panggilan atau mentransfer panggilan ke mereka | ✔️ | ✔️ | ✔️ | ✔️ | |
Skenario kueri | Mendapatkan status panggilan | ✔️ | ✔️ | ✔️ | ✔️ |
Mendapatkan peserta dalam panggilan | ✔️ | ✔️ | ✔️ | ✔️ | |
Mencantumkan semua peserta dalam panggilan | ✔️ | ✔️ | ✔️ | ✔️ | |
Rekaman Panggilan | Mulai/jeda/lanjutkan/hentikan perekaman | ✔️ | ✔️ | ✔️ | ✔️ |
*Transfer atau alihkan panggilan VoIP ke nomor telepon saat ini tidak didukung.
Sistem
Automation Panggilan menggunakan antarmuka REST API untuk menerima permintaan dan memberikan respons terhadap semua tindakan yang dilakukan dalam layanan. Karena sifat panggilan asinkron, sebagian besar tindakan memiliki peristiwa yang sesuai yang dipicu ketika tindakan berhasil diselesaikan atau gagal.
Azure Communication Services menggunakan Event Grid untuk mengirimkan peristiwa IncomingCall dan HTTPS Webhooks untuk semua panggilan balik tindakan tengah panggilan.
Tindakan panggilan
Tindakan pra-panggilan
Tindakan ini dilakukan sebelum titik akhir tujuan yang tercantum dalam pemberitahuan peristiwa IncomingCall tersambung. Peristiwa panggilan balik web hook hanya mengomunikasikan tindakan pra-panggilan "jawaban", bukan untuk tindakan penolakan atau pengalihan.
Jawab Menggunakan peristiwa IncomingCall dari Event Grid dan Call Automation SDK, panggilan dapat dijawab oleh aplikasi Anda. Tindakan ini memungkinkan skenario IVR di mana aplikasi Anda dapat menjawab panggilan PSTN masuk secara terprogram. Skenario lain termasuk menjawab panggilan atas nama pengguna.
Tolak Untuk menolak panggilan berarti aplikasi Anda dapat menerima peristiwa IncomingCall dan mencegah panggilan tersambung ke titik akhir tujuan.
Alihkan Menggunakan peristiwa IncomingCall dari Event Grid, panggilan dapat dialihkan ke satu atau beberapa titik akhir yang membuat skenario dering tunggal atau simultan (sim-ring). Tindakan pengalihan tidak menjawab panggilan, panggilan hanya dialihkan atau diteruskan ke titik akhir tujuan lain untuk dijawab.
Membuat tindakan Buat Panggilan Panggilan dapat digunakan untuk melakukan panggilan keluar ke nomor telepon dan ke pengguna komunikasi lainnya. Kasus penggunaan termasuk aplikasi Anda yang melakukan panggilan keluar untuk secara proaktif memberi tahu pengguna tentang pemadaman atau memberi tahu tentang pembaruan pesanan.
Tindakan panggilan tengah
Tindakan ini dapat dilakukan pada panggilan yang dijawab atau ditempatkan menggunakan SDK Automasi Panggilan. Setiap tindakan pertengahan panggilan memiliki peristiwa panggilan balik web hook keberhasilan atau kegagalan yang sesuai.
Tambahkan/Hapus peserta Satu atau beberapa peserta dapat ditambahkan dalam satu permintaan dengan setiap peserta menjadi variasi titik akhir tujuan yang didukung. Panggilan balik web hook dikirim untuk setiap peserta yang berhasil ditambahkan ke panggilan.
Putar Saat aplikasi Anda menjawab panggilan atau melakukan panggilan keluar, Anda dapat memutar perintah audio untuk pemanggil. Audio ini dapat diulang jika diperlukan dalam skenario seperti memutar musik tahan. Untuk mempelajari lebih lanjut, lihat konsep dan panduan cara menyesuaikan permintaan suara kepada pengguna dengan tindakan Putar.
Kenali input Setelah aplikasi Anda memutar perintah audio, Anda dapat meminta input pengguna untuk mendorong logika bisnis dan navigasi di aplikasi Anda. Untuk mempelajari lebih lanjut, lihat konsep dan panduan cara mengumpulkan input pengguna.
Pengenalan DTMF berkelanjutan Ketika aplikasi Anda harus dapat menerima nada DTMF kapan saja dalam panggilan tanpa aplikasi perlu memicu tindakan pengenalan tertentu. Hal ini dapat berguna dalam skenario di mana agen sedang melakukan panggilan dan memerlukan pengguna untuk memasukkan semacam ID atau nomor pelacakan. Untuk mempelajari selengkapnya tentang cara menggunakan tampilan ini, panduan kami.
Kirim DTMF Ketika aplikasi Anda perlu mengirim nada DTMF ke peserta eksternal, ini bisa untuk tujuan seperti menghubungi agen eksternal dan menyediakan nomor ekstensi, atau sesuatu seperti menavigasi menu IVR eksternal.
Mematikan suara aplikasi Anda dapat mematikan suara pengguna tertentu berdasarkan logika bisnis Anda. Pengguna kemudian perlu menyalakan suara mereka sendiri secara manual jika mereka ingin berbicara.
Transfer Saat aplikasi Anda menjawab panggilan atau melakukan panggilan keluar ke titik akhir, panggilan tersebut dapat ditransfer ke titik akhir tujuan lain. Mentransfer panggilan 1:1 akan menghapus kemampuan aplikasi Anda untuk mengontrol panggilan menggunakan SDK Automasi Panggilan.
Catatan Anda memutuskan kapan harus memulai/menjeda/melanjutkan/menghentikan perekaman berdasarkan logika bisnis aplikasi Anda, atau Anda dapat memberikan kontrol kepada pengguna akhir untuk memicu tindakan tersebut. Untuk mempelajari lebih lanjut, lihat konsep dan mulai cepat kami.
Tutup Saat aplikasi Anda telah menjawab panggilan satu-ke-satu, tindakan tutup telepon akan menghapus kaki panggilan dan mengakhiri panggilan dengan titik akhir lainnya. Jika ada lebih dari dua peserta dalam panggilan (panggilan grup), melakukan tindakan 'tutup' akan menghapus titik akhir aplikasi Anda dari panggilan grup.
Hentikan Apakah aplikasi Anda telah menjawab panggilan satu-ke-satu atau grup, atau melakukan panggilan keluar dengan satu atau beberapa peserta, tindakan ini menghapus semua peserta dan mengakhiri panggilan. Operasi ini dipicu dengan mengatur forEveryOne
properti ke true dalam tindakan panggilan Hang-Up.
Batalkan operasi media Berdasarkan logika bisnis, aplikasi Anda mungkin perlu membatalkan operasi media yang sedang berlangsung dan antre. Bergantung pada operasi media yang dibatalkan dan yang dalam antrean, Anda akan menerima peristiwa webhook yang menunjukkan bahwa tindakan telah dibatalkan.
Skenario kueri
Daftar peserta Mengembalikan daftar semua peserta dalam panggilan. Bot perekaman dan transkripsi dihilangkan dari daftar ini.
Peristiwa
Tabel berikut menguraikan peristiwa saat ini yang dipancarkan oleh Azure Communication Services. Dua tabel berikut ini menjelaskan peristiwa yang dipancarkan oleh Event Grid dan dari peristiwa Call Automation sebagai webhook.
Peristiwa Azure Event Grid
Sebagian besar peristiwa yang dikirim oleh Event Grid adalah agnostik platform yang berarti dipancarkan terlepas dari SDK (Automasi Panggilan atau Panggilan). Meskipun Anda dapat membuat langganan untuk peristiwa apa pun, kami sarankan Anda menggunakan peristiwa IncomingCall untuk semua kasus penggunaan Call Automation tempat Anda ingin mengontrol panggilan secara terprogram. Gunakan peristiwa lain untuk tujuan pelaporan/telemetri.
Kejadian | Deskripsi |
---|---|
IncomingCall | Pemberitahuan panggilan ke pengguna komunikasi atau nomor telepon |
CallStarted | Panggilan dibuat (masuk atau keluar) |
CallEnded | Panggilan dihentikan dan semua peserta dihapus |
PesertaTambahkan | Peserta telah ditambahkan ke panggilan |
PesertaRemoved | Peserta telah dihapus dari panggilan |
RecordingFileStatusUpdated | File rekaman tersedia |
Baca selengkapnya tentang peristiwa dan skema payload ini di sini
Memanggil peristiwa webhook Automation
Peristiwa Automasi Panggilan dikirim ke URI panggilan balik hook web yang ditentukan saat Anda menjawab atau melakukan panggilan keluar baru.
Kejadian | Deskripsi |
---|---|
Panggilan Koneksi | Kaki panggilan aplikasi Anda tersambung (masuk atau keluar) |
CallDisconnected | Kaki panggilan aplikasi Anda terputus |
CallTransferAccepted | Kaki panggilan aplikasi Anda telah ditransfer ke titik akhir lain |
CallTransferFailed | Transfer kaki panggilan aplikasi Anda gagal |
AddParticipantSucceeded | Aplikasi Anda menambahkan peserta |
AddParticipantFailed | Aplikasi Anda tidak dapat menambahkan peserta |
CancelAddParticipantSucceededed | Aplikasi Anda dibatalkan penambahan peserta |
CancelAddParticipantFailed | Aplikasi Anda tidak dapat membatalkan penambahan peserta |
RemoveParticipantSucceeded | Aplikasi Anda telah berhasil menghapus peserta dari panggilan. |
RemoveParticipantFailed | Aplikasi Anda tidak dapat menghapus peserta dari panggilan. |
PesertaDiupdated | Status peserta berubah saat kaki panggilan aplikasi Anda tersambung ke panggilan |
PlayCompleted | Aplikasi Anda berhasil memutar file audio yang disediakan |
PlayFailed | Aplikasi Anda gagal memutar audio |
PlayCanceled | Tindakan putar yang diminta telah dibatalkan |
RecognizeCompleted | Pengenalan input pengguna berhasil diselesaikan |
RecognizeCanceled | Tindakan kenali yang diminta telah dibatalkan |
RecognizeFailed | Pengenalan input pengguna tidak berhasil untuk mempelajari selengkapnya tentang mengenali peristiwa tindakan, lihat panduan cara mengumpulkan input pengguna |
RecordingStateChanged | Status tindakan perekaman telah berubah dari aktif menjadi tidak aktif atau sebaliknya |
ContinuousDtmfRecognitionToneReceived | StartContinuousDtmfRecognition berhasil diselesaikan dan nada DTMF diterima dari peserta |
ContinuousDtmfRecognitionToneFailed | StartContinuousDtmfRecognition selesai tetapi terjadi kesalahan saat menangani nada DTMF dari peserta |
ContinuousDtmfRecognitionStopped | Berhasil menjalankan StopContinuousRecognition |
SendDtmfCompleted | SendDTMF berhasil diselesaikan dan nada DTMF dikirim ke peserta target |
SendDtmfFailed | Terjadi kesalahan saat mengirim nada DTMF |
Untuk memahami peristiwa mana yang diterbitkan untuk tindakan yang berbeda, lihat panduan ini yang menyediakan sampel kode dan diagram urutan untuk berbagai alur kontrol panggilan.
Saat mengakui peristiwa panggilan balik, praktik terbaik adalah merespons dengan kode status HTTP standar seperti 200 OK. Informasi terperinci tidak perlu dan lebih cocok untuk proses penelusuran kesalahan Anda.
Untuk mempelajari cara mengamankan pengiriman peristiwa panggilan balik, lihat panduan ini.
Operasi Callback Uri
Ini adalah parameter opsional di beberapa API tengah panggilan yang menggunakan peristiwa sebagai respons asinkron mereka. Secara default, semua peristiwa dikirim ke panggilan balik default yang ditetapkan oleh CreateCall / AnswerCall API saat pengguna membuat panggilan. Dengan penggunaan Uri Panggilan Balik Operasi, peristiwa yang sesuai dari permintaan individu ini (hanya satu kali) akan dikirim ke Uri baru.
API yang didukung | Peristiwa yang sesuai |
---|---|
AddParticipant | AddParticipantSucceed / AddParticipantFailed |
RemoveParticipant | RemoveParticipantSucceed / RemoveParticipantFailed |
TransferCall | CallTransferAccepted / CallTransferFailed |
CancelAddParticipant | CancelAddParticipantSucceeded / CancelAddParticipantFailed |
Putar | PlayCompleted / PlayFailed / PlayCanceled |
PlayToAll | PlayCompleted / PlayFailed / PlayCanceled |
Recognize | RecognizeCompleted / RecognizeFailed / RecognizeCanceled |
StopContinuousDTMFRecognition | ContinuousDtmfRecognitionStopped |
SendDTMF | ContinuousDtmfRecognitionToneReceived / ContinuousDtmfRecognitionToneFailed |
Langkah berikutnya
Berikut adalah beberapa artikel yang menarik bagi Anda:
- Pahami bagaimana sumber daya Anda ditagih untuk berbagai kasus penggunaan panggilan dengan contoh.
- Cobalah mulai cepat untuk melakukan panggilan keluar.
- Pelajari tentang penggunaan dan log operasional yang diterbitkan oleh otomatisasi panggilan.