Bagikan melalui


Gambaran umum SDK panggilan

Azure Communication Services memungkinkan browser, aplikasi, dan layanan pengguna akhir untuk mendorong komunikasi suara dan video. Halaman ini berfokus pada Memanggil SDK klien, yang dapat disematkan di situs web dan aplikasi asli. Halaman ini menyediakan deskripsi terperinci tentang fitur klien Panggilan seperti platform dan informasi dukungan browser. Layanan secara terprogram mengelola dan mengakses panggilan menggunakan API Automasi Panggilan. ROOMS API adalah API Azure Communication Services opsional yang menambahkan fitur tambahan ke panggilan suara atau video, seperti peran dan izin.

Untuk membangun pengalaman pengguna Anda sendiri dengan SDK Panggilan, lihat Memanggil mulai cepat atau Memanggil sampel hero.

Jika Anda ingin membantu pengalaman pengguna akhir, Pustaka UI Azure Communication Services menyediakan kumpulan komponen UI siap produksi sumber terbuka untuk dihilangkan ke aplikasi Anda. Dengan serangkaian kontrol bawaan ini, Anda dapat menciptakan pengalaman komunikasi yang indah menggunakan bahasa desain Fasih Microsoft. Jika Anda ingin mempelajari selengkapnya tentang Pustaka UI, kunjungi situs gambaran umum.

Setelah Anda memulai pengembangan, lihat halaman masalah yang diketahui untuk menemukan bug yang sedang kami kerjakan.

Tautan SDK

Platform Web (JavaScript) Windows (.NET) iOS Android Lainnya
Memanggil npm NuGet GitHub Maven
Pustaka UI npm - GitHub GitHub GitHub, Storybook

Fitur utama

  • Manajemen Perangkat dan Media - SDK Panggilan menyediakan fasilitas untuk mengikat perangkat audio dan video, mengkodekan konten untuk transmisi yang efisien melalui pesawat data komunikasi, dan merender konten ke perangkat output dan tampilan yang Anda tentukan. API juga disediakan untuk berbagi layar dan aplikasi.
  • PSTN - SDK Panggilan dapat memulai panggilan suara dengan jaringan telepon tradisional yang dialihkan secara publik, menggunakan nomor telepon yang Anda peroleh di portal Azure atau secara terprogram. Anda juga dapat membawa nomor Anda sendiri menggunakan pengontrol batas sesi.
  • Rapat & Panggilan Teams - SDK Panggilan dapat bergabung dalam rapat Teams dan berinteraksi dengan dataplane suara dan video Teams.
  • Enkripsi - SDK Panggilan mengenkripsi lalu lintas dan mencegah perusakan pada kawat.
  • Mengatasi - Azure Communication Services menyediakan identitas umum yang digunakan untuk mengatasi titik akhir komunikasi. Klien menggunakan identitas ini untuk mengautentikasi ke layanan dan berkomunikasi satu sama lain. Identitas ini digunakan dalam API Panggilan yang memberikan visibilitas klien ke siapa yang terhubung ke panggilan (daftar nama).
  • Keamanan Akses Pengguna
    • Kontrol roster, kontrol jadwal, dan peran/izin pengguna diberlakukan melalui Virtual Rooms.
    • Kemampuan pengguna untuk Memulai panggilan baru atau bergabung dengan panggilan yang ada dapat dikelola melalui Identitas Pengguna dan Token
  • Pemberitahuan - SDK Panggilan menyediakan API yang memungkinkan klien untuk diberi tahu tentang panggilan masuk. Dalam situasi di mana aplikasi Anda tidak berjalan di latar depan, pola tersedia untuk mengaktifkan pemberitahuan pop-up ("toasts") untuk memberi tahu pengguna akhir tentang panggilan masuk.
  • Statistik Media - SDK Panggilan memberikan wawasan komprehensif tentang metrik VoIP dan panggilan video Anda. Dengan informasi ini, pengembang memiliki pemahaman yang lebih jelas tentang kualitas panggilan dan dapat membuat keputusan berdasarkan informasi untuk lebih meningkatkan pengalaman komunikasi mereka.
  • Batasan Video - SDK Panggilan menyediakan API yang mendapatkan kemampuan untuk mengatur kualitas video di antara parameter lain selama panggilan video dengan menyesuaikan parameter seperti resolusi dan kecepatan bingkai yang mendukung situasi panggilan yang berbeda untuk tingkat kualitas video yang berbeda
  • User Facing Diagnostics (UFD) - SDK Panggilan menyediakan peristiwa yang dirancang untuk memberikan wawasan tentang masalah yang mendasarinya yang dapat memengaruhi kualitas panggilan. Pengembang dapat berlangganan pemicu seperti sinyal jaringan yang lemah atau mikrofon yang dibisukan, memastikan bahwa mereka selalu mengetahui faktor apa pun yang memengaruhi panggilan.

Kemampuan terperinci

Daftar berikut menyajikan sekumpulan fitur yang saat ini tersedia di SDK Panggilan Azure Communication Services.

Grup fitur Kemampuan JS Windows Java (Android) Objective-C (iOS)
Kemampuan Inti Melakukan panggilan satu ke satu di antara dua pengguna ✔️ ✔️ ✔️ ✔️
Melakukan panggilan grup dengan lebih dari dua pengguna (hingga 100 pengguna) ✔️ ✔️ ✔️ ✔️
Mempromosikan panggilan satu ke satu dengan dua pengguna ke dalam panggilan grup dengan lebih dari dua pengguna ✔️ ✔️ ✔️ ✔️
Bergabung dalam panggilan grup setelah dimulai ✔️ ✔️ ✔️ ✔️
Mengundang peserta VoIP lain untuk bergabung dalam panggilan grup yang sedang berlangsung ✔️ ✔️ ✔️ ✔️
Kontrol panggilan tengah Mengaktifkan/menonaktifkan video Anda ✔️ ✔️ ✔️ ✔️
Mematikan suara/Menyalakan suara mikrofon ✔️ ✔️ ✔️ ✔️
Mematikan suara peserta lain ✔️ ✔️1 ✔️1 ✔️1
Beralih antar kamera ✔️ ✔️ ✔️ ✔️
Penahanan lokal/tidak ditahan ✔️ ✔️ ✔️ ✔️
Pengeras suara aktif ✔️ ✔️ ✔️ ✔️
Pilih speaker untuk panggilan ✔️ ✔️ ✔️ ✔️
Pilih mikrofon untuk panggilan ✔️ ✔️ ✔️ ✔️
Memperlihatkan status peserta
Diam, Media awal, Menghubungkan, Terhubung, Ditahan, Di Lobi, Terputus
✔️ ✔️ ✔️ ✔️
Memperlihatkan status panggilan
Media Awal, Masuk, Menyambungkan, Berdering, Tersambung, Tahan, Putuskan Sambungan, Terputus
✔️ ✔️ ✔️ ✔️
Memperlihatkan apakah peserta dibisukan ✔️ ✔️ ✔️ ✔️
Memperlihatkan alasan mengapa peserta meninggalkan panggilan ✔️ ✔️ ✔️ ✔️
Berbagi layar Bagikan seluruh layar dari dalam aplikasi ✔️ ✔️2 ✔️2 ✔️2
Berbagi aplikasi tertentu (dari daftar aplikasi yang sedang berjalan) ✔️ ✔️2
Berbagi tab browser web dari daftar tab yang terbuka ✔️
Berbagi audio sistem selama berbagi layar ✔️
Peserta dapat melihat berbagi layar jarak jauh ✔️ ✔️ ✔️ ✔️
Daftar Daftar peserta ✔️ ✔️ ✔️ ✔️
Menghapus peserta ✔️ ✔️ ✔️ ✔️
PSTN Melakukan panggilan satu-ke-satu dengan peserta PSTN ✔️ ✔️ ✔️ ✔️
Melakukan panggilan grup dengan peserta PSTN ✔️ ✔️ ✔️ ✔️
Mempromosikan panggilan satu ke satu dengan peserta PSTN ke dalam panggilan grup ✔️ ✔️ ✔️ ✔️
Melakukan panggilan keluar dari panggilan grup sebagai peserta PSTN ✔️ ✔️ ✔️ ✔️
Dukungan untuk media awal ✔️ ✔️ ✔️ ✔️
Umum Uji mikrofon, pengeras suara, dan kamera Anda dengan layanan pengujian audio (tersedia dengan menghubungi 8:echo123) ✔️ ✔️ ✔️ ✔️
Manajemen Perangkat Minta izin untuk menggunakan audio dan/atau video ✔️ ✔️ ✔️ ✔️
Dapatkan daftar kamera ✔️ ✔️ ✔️ ✔️
Atur kamera ✔️ ✔️ ✔️ ✔️
Dapatkan kamera yang dipilih ✔️ ✔️ ✔️ ✔️
Dapatkan daftar mikrofon ✔️ ✔️ 3 3
Atur mikrofon ✔️ ✔️ 3 3
Dapatkan mikrofon yang dipilih ✔️ ✔️ 3 3
Dapatkan daftar pengeras suara ✔️ ✔️ 3 3
Mengatur pengeras suara ✔️ ✔️ 3 3
Dapatkan pengeras suara yang dipilih ✔️ ✔️ 3 3
Penyajian Video Merender video tunggal di banyak tempat (kamera lokal atau aliran jarak jauh) ✔️ ✔️ ✔️ ✔️
Mengatur / memperbarui mode penskalaan ✔️ ✔️ ✔️ ✔️
Render streaming video jarak jauh ✔️ ✔️ ✔️ ✔️
Efek Video Latar Belakang Kabur ✔️ ✔️ ✔️ ✔️
Gambar latar belakang kustom ✔️ ✔️ ✔️ ✔️
Efek Audio Mode Musik ✔️ ✔️ ✔️
Pembatalan gema ✔️ ✔️ ✔️
Penekanan kebisingan ✔️ ✔️ ✔️ ✔️
Kontrol perolehan otomatis (AGC) ✔️ ✔️ ✔️
Pemberitahuan 4 Pemberitahuan push ✔️ ✔️ ✔️ ✔️
Konteks kustom Menambahkan Pengguna ke Pengguna (UUI) atau header kustom ke panggilan ✔️

1 Kemampuan untuk Mematikan Suara Orang Lain saat ini dalam pratinjau publik.

2 Kemampuan Berbagi Layar dapat dicapai menggunakan API Media Mentah. Untuk mempelajari lebih lanjut, kunjungi panduan mulai cepat akses media mentah.

3 SDK Panggilan tidak memiliki API eksplisit untuk fungsi-fungsi ini, Anda harus menggunakan API OS Android &iOS untuk dicapai sebagai gantinya.

4 Nilai maksimum untuk TTL dalam platform asli, adalah 180 hari (15.552.000 detik), dan nilai min adalah 5 menit (300 detik). Untuk CTE (Titik Akhir Teams Kustom)/Identitas M365, nilai TTL maks adalah 24 jam (86.400 detik).

Dukungan JavaScript Calling SDK oleh OS dan browser

Tabel berikut ini mewakili sekumpulan browser yang didukung, yang saat ini tersedia. Kami mendukung tiga versi utama browser terbaru (terbaru tiga versi minor untuk Safari) kecuali dinyatakan lain.

Platform Chrome Safari Azure Stack Edge Firefox Tampilan Web Electron
Android ✔️ ✔️ ✔️
iOS ✔️ ✔️ ✔️ ✔️
macOS ✔️ ✔️ ✔️ ✔️ ✔️
Windows ✔️ ✔️ ✔️ ✔️
Ubuntu/Linux ✔️
  • Berbagi Layar Keluar tidak didukung di browser seluler iOS atau Android.
  • Dukungan Firefox ada di pratinjau publik.
  • Saat ini, SDK panggilan hanya mendukung Android System WebView di Android, iOS WebView(WKWebView) di pratinjau publik. Jenis browser atau WebView yang disematkan lainnya di platform OS lain tidak didukung secara resmi, misalnya, GeckoView, Chromium Embedded Framework (CEF), Microsoft Edge WebView2. Menjalankan JavaScript Calling SDK pada platform ini tidak diuji secara aktif, mungkin atau mungkin tidak berfungsi.
  • Aplikasi iOS di Safari tidak dapat menghitung/memilih perangkat mikrofon dan speaker (misalnya, Bluetooth). Masalah ini adalah batasan iOS, dan sistem operasi mengontrol pemilihan perangkat default.

Klien panggilan - model keamanan browser

Menggunakan WebRTC melalui HTTPS

API WebRTC getUserMedia seperti mengharuskan aplikasi yang memanggil API ini dilayani melalui HTTPS. Untuk pengembangan lokal, Anda dapat menggunakan http://localhost.

Sematkan Azure Communication Services Memanggil SDK dalam iframe

Kebijakan izin baru (juga disebut kebijakan fitur) tersedia di berbagai browser. Kebijakan ini mempengaruhi skenario panggilan dengan mengontrol bagaimana aplikasi dapat mengakses kamera dan mikrofon perangkat melalui elemen iframe lintas-asal.

Jika ingin menggunakan iframe untuk menghosting sebagian aplikasi dari domain lain, Anda harus menambahkan atribut allow dengan nilai yang benar ke iframe Anda.

Misalnya, iframe ini memungkinkan akses kamera dan mikrofon:

<iframe allow="camera *; microphone *">

Dukungan Android Calling SDK

  • Dukungan untuk Android API Level 21 atau Yang Lebih Tinggi
  • Dukungan untuk Java 7 atau yang lebih tinggi
  • Dukungan untuk Android Studio 2.0

Kami sangat menyarankan untuk mengidentifikasi dan memvalidasi skenario Anda dengan mengunjungi platform Android yang didukung

Dukungan sdk Panggilan iOS

  • Dukungan untuk iOS 10.0+ pada waktu build, dan iOS 12.0+ pada waktu berjalan
  • XCode 12.0+
  • Dukungan untuk iPadOS 13.0+

Durasi panggilan maksimum

Durasi panggilan maksimum adalah 30 jam, peserta yang mencapai durasi panggilan maksimum selama 30 jam akan terputus dari panggilan.

Jumlah aliran video masuk yang didukung

Azure Communication Services Calling SDK mendukung konfigurasi streaming berikut:

Batas Web Windows/Android/iOS
# maksimum aliran lokal keluar yang dapat dikirim secara bersamaan 1 video dan 1 berbagi layar 1 video + 1 berbagi layar
# maksimum aliran jarak jauh yang masuk yang dapat dirender secara bersamaan 16 video + 1 berbagi layar di browser desktop*, 4 video + 1 berbagi layar di browser seluler web 9 video + 1 berbagi layar

* Mulai dari Azure Communication Services Web Calling SDK versi 1.16.3 Meskipun SDK Panggilan tidak memberlakukan batas ini, pengguna Anda mungkin mengalami penurunan performa jika terlampaui. Gunakan API Jumlah Video Optimal untuk menentukan berapa banyak streaming video masuk saat ini yang dapat didukung lingkungan web Anda. Untuk mendukung 16 video masuk dengan benar, komputer harus memiliki mimimum RAM 16GB dan CPU 4-core atau lebih besar yang berusia tidak lebih dari 3 tahun

Resolusi video yang didukung

SDK Panggilan Azure Communication Services secara otomatis menyesuaikan resolusi aliran berbagi video dan layar selama panggilan.

Catatan

Resolusi dapat bervariasi tergantung pada jumlah peserta pada panggilan, jumlah bandwidth yang tersedia untuk klien, kemampuan perangkat keras peserta lokal yang merender strean video jarak jauh dan parameter panggilan keseluruhan lainnya.

SDK Panggilan Azure Communication Services mendukung pengiriman resolusi video berikut

Resolusi video maksimum WebJS iOS Android Windows
Mengirim video 720P 720P 720P 1080P
Mengirim berbagi layar 1080P 1080P 1080P 1080P
Menerima aliran video jarak jauh atau berbagi layar 1080P 1080P 1080P 1080P

Jumlah peserta pada dukungan panggilan

  • Hingga 350 pengguna dapat bergabung dengan panggilan grup, panggilan Ruang atau Teams + ACS.
  • Setelah ukuran panggilan mencapai 100+ peserta dalam panggilan, hanya 4 speaker paling dominan yang memiliki kamera video mereka yang dapat dilihat.
  • Ketika jumlah orang dalam panggilan adalah 100+, jumlah render video masuk yang dapat dilihat secara otomatis berkurang dari 4x4 (16 video masuk) menjadi 2x2 (4 video masuk).
  • Ketika jumlah pengguna di bawah 100, jumlah video masuk yang didukung akan dicadangkan hingga 4x4 (16 video masuk).

Memanggil batas waktu SDK

Batas waktu berikut berlaku untuk SDK Panggilan Azure Communication Services:

Perbuatan Waktu habis dalam detik
Menyambungkan kembali/menghilangkan peserta 60
Menambahkan atau menghapus modalitas baru dari panggilan (Mulai/hentikan berbagi video atau layar) 40
Batas waktu operasi Transfer Panggilan habis 60
1:1 waktu pendirian panggilan habis 85
Batas waktu pembentukan panggilan grup 85
Batas waktu pembentukan panggilan PSTN 115
Mempromosikan panggilan 1:1 ke batas waktu panggilan grup 115

Langkah berikutnya

Untuk informasi lebih lanjut, baca artikel berikut: