About This Page
This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.
Bias Analysis
Bias Types:
⚠️
windows_tools
⚠️
windows_first
⚠️
missing_linux_example
Summary:
The documentation assumes and references Microsoft-centric tools and workflows (Teams Admin Center, Microsoft Graph Explorer, Azure CLI), and does not mention or provide alternatives for Linux or cross-platform environments. All instructions for administrative tasks are given using web-based Microsoft portals or tools that are primarily designed for Windows environments, with no mention of Linux command-line or open-source alternatives. There are no PowerShell-specific examples, but the documentation is Windows-first in its approach to management and setup.
Recommendations:
- Explicitly mention that Teams Admin Center and Microsoft Graph Explorer are web-based and accessible from any OS/browser, to clarify cross-platform compatibility.
- If possible, provide CLI-based alternatives (e.g., using Microsoft Graph API via curl or HTTPie) for finding the Call Queue Object ID, with example commands that work on Linux/macOS.
- For Azure CLI commands, confirm and note that Azure CLI is cross-platform and works on Linux/macOS, and provide any OS-specific installation or usage notes if needed.
- Where screenshots are used, consider including notes or alternative instructions for users on Linux who may not have the same UI experience.
- Add a section or callout summarizing cross-platform compatibility and any OS-specific considerations for all required tools and steps.
Create pull request
Flagged Code Snippets
> [!NOTE]
> When designing your app, consider when these permissions should be requested. Permissions should be requested as they are needed, not ahead of time. For more information, see, the [Android Permissions Guide.](https://developer.android.com/training/permissions/requesting)
## Object model
The following classes and interfaces handle some of the major features of the Azure Communication Services Calling SDK:
| Name | Description |
| ------------------------------------- | ------------------------------------------------------------ |
| `CallClient`| The `CallClient` is the main entry point to the Calling SDK.|
| `CallAgent` | The `CallAgent` is used to start and manage calls. |
| `CommunicationTokenCredential` | The `CommunicationTokenCredential` is used as the token credential to instantiate the `CallAgent`.|
| `CommunicationIdentifier` | The `CommunicationIdentifier` is used as different type of participant that could be part of a call.|
## Create an agent from the user access token
With a user token, an authenticated call agent can be instantiated. Generally this token is generated from a service with authentication specific to the application. For more information on user access tokens, check the [User Access Tokens](../../../identity/access-tokens.md) guide.
For the quickstart, replace `<User_Access_Token>` with a user access token generated for your Azure Communication Service resource.