Lewati layar penyiapan dalam aplikasi
Pustaka Antarmuka Pengguna Azure Communication Services menawarkan opsi untuk bergabung dalam panggilan tanpa melewati layar penyiapan. Ini memberdayakan pengembang untuk membangun aplikasi komunikasi dengan cara yang memungkinkan pengguna untuk bergabung dengan panggilan secara langsung, tanpa interaksi pengguna. Fitur ini juga menyediakan kemampuan untuk mengonfigurasi status default kamera dan mikrofon (aktif atau nonaktif) sebelum pengguna bergabung dalam panggilan.
Dalam artikel ini, Anda mempelajari cara menyiapkan fitur dengan benar di aplikasi Anda.
Prasyarat
- Akun Azure dengan langganan aktif. Buat akun secara gratis.
- Sumber daya Communication Services yang disebarkan. Buat sumber daya Azure Communication Services.
- Token akses pengguna untuk mengaktifkan klien panggilan. Dapatkan token akses pengguna.
- Opsional: Penyelesaian mulai cepat untuk memulai komposit Pustaka UI.
Menyiapkan fitur
Untuk informasi selengkapnya, lihat Pustaka UI Android sumber terbuka dan kode aplikasi sampel.
Opsi untuk melewati layar penyetelan
CallCompositeLocalOptions
adalah pembungkus opsi yang mengatur kemampuan Pustaka UI untuk melewati layar penyiapan dengan menggunakan Boolean. Secara default, kemampuan untuk melewati layar penyiapan diatur ke false
. Anda harus mengatur skipSetupScreen
dengan true
nilai Boolean untuk memberikan pengalaman melompati layar penyiapan.
Kami menyarankan agar Anda membuat aplikasi sedemikian sehingga ketika pengguna mencoba bergabung dengan panggilan, izin mikrofon sudah diberikan untuk pengalaman bergabung yang lancar.
Untuk menggunakan fitur ini, teruskan nilai Boolean dengan skipSetupScreen
ke CallCompositeLocalOptions
dan masukkan ke .callComposite.launch
import com.azure.android.communication.ui.calling.models.CallCompositeLocalOptions
val localOptions: CallCompositeLocalOptions = CallCompositeLocalOptions()
.setSkipSetupScreen(true)
callComposite.launch(callLauncherActivity, remoteOptions, localOptions)
Opsi default untuk konfigurasi kamera dan mikrofon
Secara default, layar penyiapan memberi pengguna opsi untuk mengonfigurasi pengaturan kamera dan mikrofon sebelum bergabung dengan panggilan. Saat Anda menyiapkan melewati layar penyiapan untuk bergabung dengan panggilan, pengguna tidak memiliki opsi tersebut hingga mereka berada dalam panggilan.
Anda dapat meneruskan nilai Boolean dengan cameraOn
dan microphoneOn
untuk mengaktifkan atau menonaktifkan kamera dan mikrofon sebelum pengguna bergabung dalam panggilan. Fungsionalitas mengontrol status default kamera dan mikrofon tidak terpengaruh jika pengguna memberikan izin masing-masing untuk masing-masing.
Secara default, keduanya cameraOn
dan microphoneOn
diatur ke false
. Anda dapat menggunakan fungsionalitas ini bahkan dengan pengalaman bergabung dengan panggilan default Pustaka UI. Dalam hal ini, kamera dan mikrofon dinyalakan atau dimatikan pada layar penyiapan sesuai dengan konfigurasi yang Anda tetapkan.
Untuk mengatur status default kamera dan mikrofon, teruskan nilai Boolean dengan cameraOn
dan microphoneOn
ke CallCompositeLocalOptions
dan masukkan ke .callComposite.launch
import com.azure.android.communication.ui.calling.models.CallCompositeLocalOptions
val localOptions: CallCompositeLocalOptions = CallCompositeLocalOptions()
.setMicrophoneOn(true)
.setCameraOn(true)
callComposite.launch(callLauncherActivity, remoteOptions, localOptions)
Penanganan izin
Kami menyarankan agar Anda mengizinkan pengguna bergabung dengan panggilan dengan izin mikrofon dan kamera yang diberikan untuk menggunakan fitur melompati layar penyiapan dengan API konfigurasi default untuk mikrofon dan kamera. Jika Anda tidak menangani izin pengguna, Pustaka UI mencoba menanganinya untuk Anda.
Pengguna harus mengaktifkan izin mikrofon untuk bergabung dalam panggilan. Jika pengguna mencoba bergabung dengan panggilan setelah menolak izin mikrofon, Pustaka UI menghilangkan panggilan di tahap penghubungan dan melemparkan kesalahan dengan kode CallCompositeErrorCode.MICROPHONE_PERMISSION_NOT_GRANTED
.
Namun, pengguna dapat bergabung dengan panggilan bahkan jika mereka menolak izin kamera. Pustaka UI menonaktifkan fungsionalitas kamera saat izin kamera ditolak. Jadi, API konfigurasi default untuk kamera tidak memengaruhi pengalaman panggilan. Pengguna dapat menikmati efek API konfigurasi default untuk kamera setelah memberikan izin kamera.
Sebaiknya Anda menangani izin mikrofon. Jika pengguna bergabung dengan panggilan dengan kamera diaktifkan secara default, kami sarankan Anda juga menangani izin kamera.
Kesalahan jaringan
Jika gangguan jaringan terjadi selama panggilan atau panggilan turun, Pustaka UI menutup dan melemparkan kesalahan dengan kode CallCompositeErrorCode.CALL_END_FAILED
.
Jika pengguna tidak memiliki koneksi jaringan dan mencoba bergabung dengan panggilan setelah melewati layar penyiapan, Pustaka UI ditutup pada tahap penyabungan panggilan dan melemparkan kesalahan dengan kode CallCompositeErrorCode.NETWORK_CONNECTION_NOT_AVAILABLE
. Untuk menghindari kesalahan ini, kami sarankan Anda mengonfigurasi aplikasi untuk memeriksa ketersediaan jaringan sebelum pengguna bergabung dalam panggilan.
Untuk menerima peristiwa kesalahan, hubungi setOnErrorHandler
dengan CallComposite
.
Nilai berikut error
mungkin dikirim ke penanganan kesalahan:
microphonePermissionNotGranted
networkConnectionNotAvailable
Untuk informasi selengkapnya, lihat Pustaka UI iOS sumber terbuka dan kode aplikasi sampel.
Opsi untuk melewati layar penyetelan
LocalOptions
adalah pembungkus opsi yang mengatur kemampuan Pustaka UI untuk melewati layar penyiapan dengan menggunakan Boolean. Secara default, kemampuan untuk melewati layar penyiapan diatur ke false
. Anda harus mengatur skipSetupScreen
dengan true
nilai Boolean untuk memberikan pengalaman melompati layar penyiapan.
Kami menyarankan agar Anda membuat aplikasi sedemikian sehingga ketika pengguna mencoba bergabung dengan panggilan, izin mikrofon sudah diberikan untuk pengalaman bergabung yang lancar.
Untuk menggunakan fitur ini, teruskan nilai Boolean dengan skipSetupScreen
ke LocalOptions
dan masukkan ke .callComposite.launch
let localOptions = LocalOptions(skipSetupScreen: true)
callComposite.launch(remoteOptions: remoteOptions, localOptions: localOptions)
Opsi default untuk konfigurasi kamera dan mikrofon
Secara default, layar penyiapan memberi pengguna opsi untuk mengonfigurasi pengaturan kamera dan mikrofon sebelum bergabung dengan panggilan. Saat Anda menyiapkan melewati layar penyiapan untuk bergabung dengan panggilan, pengguna tidak memiliki opsi tersebut hingga mereka berada dalam panggilan.
Anda dapat meneruskan nilai Boolean dengan cameraOn
dan microphoneOn
untuk mengaktifkan atau menonaktifkan kamera dan mikrofon sebelum pengguna bergabung dalam panggilan. Fungsionalitas mengontrol status default kamera dan mikrofon tidak terpengaruh jika pengguna memberikan izin masing-masing untuk masing-masing.
Secara default, keduanya cameraOn
dan microphoneOn
diatur ke false
. Anda dapat menggunakan fungsionalitas ini bahkan dengan pengalaman bergabung dengan panggilan default Pustaka UI. Dalam hal ini, kamera dan mikrofon dinyalakan atau dimatikan pada layar penyiapan sesuai dengan konfigurasi yang Anda tetapkan.
Untuk mengatur status default kamera dan mikrofon, teruskan nilai Boolean dengan cameraOn
dan microphoneOn
ke LocalOptions
dan masukkan ke .callComposite.launch
let localOptions = LocalOptions(cameraOn: true, microphoneOn: true)
callComposite.launch(remoteOptions: remoteOptions, localOptions: localOptions)
Penanganan izin
Kami menyarankan agar Anda mengizinkan pengguna bergabung dengan panggilan dengan izin mikrofon dan kamera yang diberikan untuk menggunakan fitur melompati layar penyiapan dengan API konfigurasi default untuk mikrofon dan kamera. Jika Anda tidak menangani izin pengguna, Pustaka UI mencoba menanganinya untuk Anda.
Pengguna harus mengaktifkan izin mikrofon untuk bergabung dalam panggilan. Jika pengguna mencoba bergabung dengan panggilan setelah menolak izin mikrofon, Pustaka UI menghilangkan panggilan di tahap penghubungan dan melemparkan microphonePermissionNotGranted
kesalahan.
Namun, pengguna dapat bergabung dengan panggilan bahkan jika mereka menolak izin kamera. Pustaka UI menonaktifkan fungsionalitas kamera saat izin kamera ditolak. Jadi, API konfigurasi default untuk kamera tidak memengaruhi pengalaman panggilan. Pengguna dapat menikmati efek API konfigurasi default untuk kamera setelah memberikan izin kamera.
Sebaiknya Anda menangani izin mikrofon. Jika pengguna bergabung dengan panggilan dengan kamera diaktifkan secara default, kami sarankan Anda juga menangani izin kamera.
Kesalahan jaringan
Jika gangguan jaringan terjadi selama panggilan atau panggilan turun, Pustaka UI menutup dan melemparkan callEndFailed
kesalahan.
Jika pengguna tidak memiliki koneksi jaringan dan mencoba bergabung dengan panggilan setelah melewati layar penyiapan, Pustaka UI ditutup pada tahap penyabungan panggilan dan melemparkan networkConnectionNotAvailable
kesalahan. Untuk menghindari kesalahan ini, kami sarankan Anda mengonfigurasi aplikasi untuk memeriksa ketersediaan jaringan sebelum pengguna bergabung dalam panggilan.
Anda dapat menerapkan penutupan untuk bertindak pada peristiwa komposit. Contoh berikut menunjukkan peristiwa kesalahan untuk komposit yang gagal:
callComposite?.events.onError = { error in
print("CallComposite failed with error:\(error)")
}
Nilai berikut error
mungkin dikirim ke penanganan kesalahan:
microphonePermissionNotGranted
networkConnectionNotAvailable