All the necessary documentation is intended for the native environment (java/swift), so it may be necessary to investigate unexpected behaviors or crashes in the native environment to confirm if the problem is here or in the native platform sdk itself.
Additional documentation for this sample can be found on Microsoft Docs.
- Android >= 21
- iOS >= 12
- UWP (Min Target: 10.0.18362)
- macOS (study in progress)
Mobile support is maintained by @tompi
Windows support is official.
Features | iOS | Android | UWP |
---|---|---|---|
Start or join in existing group call | ✅ | ✅ | ✅ |
Start a new PSTN call | ✅ | ✅ | ✅ |
Join an existing Teams Meeting | ✅ | ✅ | ✅ |
Start calls inside sdk | ✅ | ✅ | ✅ |
Receive calls inside sdk | ✅ | ✅ | ✅ |
Add participants during calls | ✅ | ✅ | ✅ |
call notification | ❌ | ✅ | ✅ |
answer calls with locked screen | 🚧 | ⌛ | ❌ |
Switch layout between different call cases: only-local video view, one-on-one call view and group call with multiple participants | ✅ | ✅ | ✅ |
Render remote participant video streams dynamically | ✅ | ✅ | ✅ |
Show remote call participants | ✅ | ✅ | ✅ |
Show remote participants with microphone on/off | ✅ | ✅ | ✅ |
Turning local video stream from camera on/off | ✅ | ✅ | ✅ |
switch between cameras | ✅ | ✅ | ❌ |
View remote screen sharing | ❌ | ❌ | ❌ |
Request permission to use audio and/or video | ✅ | ✅ | ✅ |
Mute/unmute local microphone audio | ✅ | ✅ | ✅ |
Show dominant speaker | ✅ | ✅ | ✅ |
Turn off screen on calls | ⌛ | ⌛ | ❌ |
Toggle audio output | ✅ | ✅ | ❌ |
Screensharing | ❌ | ⌛ | ❌ |
Background Voip API | ✅ Services | 🚧 Callkit | ❌ VoipPhoneCall |
in progress 🚧
In consideration ⌛
Not implemented ❌
implemented ✅
- An Azure account with an active subscription. Create an account for free.
- An OS running Visual Studio 2022.
- A deployed Communication Services resource. Create a Communication Services resource.
- An Authentication Endpoint that will return the Azure Communication Services Token. See example
- Build/Run in Visual Studio 2022
For simple demonstration purposes, this sample uses a publicly accessible endpoint by default to fetch an Azure Communication token. For production scenarios, it is recommended that the Azure Communication token is returned from a secured endpoint.
The camera on android doesn't seem to work during calls.
The token initialization agent has a wait of up to 15 seconds
Incoming call and accept/or reject status does not update on event.
Video refresh event no longer works after a video is removed from the screen.
Please refer to the wiki for known issues related to this sample. ](https://docs.microsoft.com/en-us/azure/communication-services/concepts/voice-video-calling/calling-sdk-features)