Skip to content

Commit 4192c77

Browse files
authored
Merge pull request #227991 from tomaschladek/patch-37
Update calling-chat.md
2 parents 5c4a73e + 1110079 commit 4192c77

File tree

1 file changed

+52
-14
lines changed

1 file changed

+52
-14
lines changed

articles/communication-services/concepts/interop/calling-chat.md

Lines changed: 52 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13,50 +13,88 @@ ms.subservice: teams-interop
1313
# Teams Interoperability: Calling and chat
1414

1515
> [!IMPORTANT]
16-
> Calling and chat interoperability is in private preview, and restricted to a limited number of Azure Communication Services early adopters. You can [submit this form to request participation in the preview](https://forms.office.com/r/F3WLqPjw0D), and we'll review your scenario(s) and evaluate your participation in the preview.
16+
> Calling and chat interoperability is in private preview and restricted to a limited number of Azure Communication Services early adopters. You can [submit this form to request participation in the preview](https://forms.office.com/r/F3WLqPjw0D), and we'll review your scenario(s) and evaluate your participation in the preview.
1717
>
18-
> Private Preview APIs and SDKs are provided without a service-level agreement, aren't appropriate for production workloads, and should only be used with test users and test data. Certain features may not be supported or have constrained capabilities. For more information, see [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
18+
> Private Preview APIs and SDKs are provided without a service-level agreement, aren't appropriate for production workloads, and should only be used with test users and data. Certain features may not be supported or have constrained capabilities. For more information, see [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
1919
>
2020
> For support, questions, or to provide feedback or report issues, please use the [Teams interop ad hoc calling and chat channel](https://teams.microsoft.com/l/channel/19%3abfc7d5e0b883455e80c9509e60f908fb%40thread.tacv2/Teams%2520Interop%2520ad%2520hoc%2520calling%2520and%2520chat?groupId=d78f76f3-4229-4262-abfb-172587b7a6bb&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47). You must be a member of the Azure Communication Service TAP team.
2121
22-
As part of this preview, the Azure Communication Services SDKs can be used to build applications that enable bring your own identity (BYOI) users to start 1:1 calls or 1:n chats with Teams users. [Standard Azure Communication Services pricing](https://azure.microsoft.com/pricing/details/communication-services/) applies to these users, but there's no extra fee for the interoperability capability itself. Custom applications built with Azure Communication Services to connect and communicate with Teams users or Teams voice applications can be used by end users or by bots, and there's no differentiation in how they appear to Teams users in Teams applications unless explicitly indicated by the developer of the application with a display name.
22+
As part of this preview, the Azure Communication Services SDKs can be used to build applications that enable bring your own identity (BYOI) users to start 1:1 calls or 1:n chats with Teams users. [Standard Azure Communication Services pricing](https://azure.microsoft.com/pricing/details/communication-services/) applies to these users, but there's no extra fee for the interoperability capability. Custom applications built with Azure Communication Services to connect and communicate with Teams users or Teams voice applications can be used by end users or by bots, and there's no differentiation in how they appear to Teams users in Teams applications unless explicitly indicated by the developer of the application with a display name.
2323

24-
To enable calling and chat between your Communication Services users and your Teams tenant, allow your tenant via the [form](https://forms.office.com/r/F3WLqPjw0D) and enable the connection between the tenant and Communication Services resource.
24+
To enable calling and chat between your Communication Services users and Teams tenant, allow your tenant via the [form](https://forms.office.com/r/F3WLqPjw0D) and enable the connection between the tenant and Communication Services resource.
2525

2626

2727

28-
## Enabling calling and chat interoperability in your Teams tenant
29-
Azure AD user with [Teams administrator role](../../../active-directory/roles/permissions-reference.md#teams-administrator) can run PowerShell cmdlet with MicrosoftTeams module to enable the Communication Services resource in the tenant. First, open the PowerShell and validate the existence of the Teams module with the following command:
28+
## Enable interoperability in your Teams tenant
29+
Azure AD user with [Teams administrator role](../../../active-directory/roles/permissions-reference.md#teams-administrator) can run PowerShell cmdlet with MicrosoftTeams module to enable the Communication Services resource in the tenant.
30+
31+
### 1. Prepare the Microsoft Teams module
32+
33+
First, open the PowerShell and validate the existence of the Teams module with the following command:
3034

3135
```script
3236
Get-module *teams*
3337
```
3438

35-
If you don't see the MicrosoftTeams module, you need to install it first. To install the module, you need to run PowerShell as an administrator. Then run the following command:
39+
If you don't see the `MicrosoftTeams` module, install it first. To install the module, you need to run PowerShell as an administrator. Then run the following command:
3640

3741
```script
3842
Install-Module -Name MicrosoftTeams
3943
```
4044

41-
You'll be informed about the modules that are going to be installed, which you can confirm with a `Y` or `A` answer. If the module is installed but is outdated, you can run the following command to update the module:
45+
You'll be informed about the modules that will be installed, which you can confirm with a `Y` or `A` answer. If the module is installed but is outdated, you can run the following command to update the module:
4246

4347
```script
4448
Update-Module MicrosoftTeams
4549
```
4650

51+
### 2. Connect to Microsoft Teams module
52+
4753
When the module is installed and ready, you can connect to the MicrosftTeams module with the following command. You'll be prompted with an interactive window to log in. The user account that you're going to use needs to have Teams administrator permissions. Otherwise, you might get an `access denied` response in the next steps.
4854

4955
```script
5056
Connect-MicrosoftTeams
5157
```
5258

59+
### 3. Enable tenant configuration
60+
61+
Interoperability with Communication Services resources is controlled via tenant configuration and assigned policy. Teams tenant has a single tenant configuration, and Teams users have assigned global policy or custom policy. The following table shows possible scenarios and impacts on interoperability.
62+
63+
| Tenant configuration | Global policy | Custom policy | Assigned policy | Interoperability |
64+
| --- | --- | --- | --- | --- |
65+
| True | True | True | Global | **Enabled** |
66+
| True | True | True | Custom | **Enabled** |
67+
| True | True | False | Global | **Enabled** |
68+
| True | True | False | Custom | Disabled |
69+
| True | False | True | Global | Disabled |
70+
| True | False | True | Custom | **Enabled** |
71+
| True | False | False | Global | Disabled |
72+
| True | False | False | Custom | Disabled |
73+
| False | True | True | Global | Disabled |
74+
| False | True | True | Custom | Disabled |
75+
| False | True | False | Global | Disabled |
76+
| False | True | False | Custom | Disabled |
77+
| False | False | True | Global | Disabled |
78+
| False | False | True | Custom | Disabled |
79+
| False | False | False | Global | Disabled |
80+
| False | False | False | Custom | Disabled |
81+
5382
After successful login, you can run the cmdlet [Set-CsTeamsAcsFederationConfiguration](/powershell/module/teams/set-csteamsacsfederationconfiguration) to enable Communication Services resource in your tenant. Replace the text `IMMUTABLE_RESOURCE_ID` with an immutable resource ID in your communication resource. You can find more details on how to get this information [here](../troubleshooting-info.md#getting-immutable-resource-id).
5483

5584
```script
5685
$allowlist = @('IMMUTABLE_RESOURCE_ID')
5786
Set-CsTeamsAcsFederationConfiguration -EnableAcsUsers $True -AllowedAcsResources $allowlist
5887
```
5988

89+
### 4. Enable tenant policy
90+
91+
Each Teams user has assigned an `External Access Policy` that determines whether Communication Services users can call this Teams user. Use cmdlet
92+
[Set-CsExternalAccessPolicy](/powershell/module/skype/set-csexternalaccesspolicy) to ensure that the policy assigned to the Teams user has set `EnableAcsFederationAccess` to `$true`
93+
94+
```script
95+
Set-CsExternalAccessPolicy -Identity Global -EnableAcsFederationAccess $true
96+
```
97+
6098

6199
## Get Teams user ID
62100

@@ -91,11 +129,11 @@ const call = callAgent.startCall([teamsCallee]);
91129
- Communication Services call recording isn't available for 1:1 calls.
92130
- Advanced call routing capabilities such as call forwarding, group call pickup, simultaneous ringing, and voice mail aren't supported.
93131
- Teams users can't set Communication Services users as forwarding/transfer targets.
94-
- There are many features in the Teams client that don't work as expected during 1:1 calls with Communication Services users.
132+
- Many features in the Teams client don't work as expected during 1:1 calls with Communication Services users.
95133
- Third-party [devices for Teams](/MicrosoftTeams/devices/teams-ip-phones) and [Skype IP phones](/skypeforbusiness/certification/devices-ip-phones) aren't supported.
96134

97135
## Chat
98-
With the Chat SDK, Communication Services users or endpoints can have group chats with Teams users, identified by their Azure Active Directory (AAD) object ID. You can easily modify an existing application that creates chats with other Communication Services users to create chats with Teams users instead. Here is an example of how to use the Chat SDK to add Teams users as participants. To learn how to use Chat SDK to send a message, manage participants, and more, see our [quickstart](../../quickstarts/chat/get-started.md?pivots=programming-language-javascript).
136+
With the Chat SDK, Communication Services users or endpoints can have group chats with Teams users, identified by their Azure Active Directory (Azure AD) object ID. You can easily modify an existing application that creates chats with other Communication Services users to create chats with Teams users instead. Here is an example of how to use the Chat SDK to add Teams users as participants. To learn how to use Chat SDK to send a message, manage participants, and more, see our [quickstart](../../quickstarts/chat/get-started.md?pivots=programming-language-javascript).
99137

100138
Creating a chat with a Teams user:
101139
```js
@@ -111,18 +149,18 @@ createChatThreadRequest, createChatThreadOptions );
111149
const threadId = createChatThreadResult.chatThread.id; return threadId; }
112150
```
113151

114-
To make testing easier, we've published a sample app [here](https://github.com/Azure-Samples/communication-services-web-chat-hero/tree/teams-interop-chat-adhoc). Update the app with your Communication Services resource and interop enabled Teams tenant to get started.
152+
To make testing easier, we've published a sample app [here](https://github.com/Azure-Samples/communication-services-web-chat-hero/tree/teams-interop-chat-adhoc). Update the app with your Communication Services resource, and interop enabled Teams tenant to get started.
115153

116154
**Limitations and known issues** </br>
117155
While in private preview, a Communication Services user can do various actions using the Communication Services Chat SDK, including sending and receiving plain and rich text messages, typing indicators, read receipts, real-time notifications, and more. However, most of the Teams chat features aren't supported. Here are some key behaviors and known issues:
118156
- Communication Services users can only initiate chats.
119157
- Communication Services users can't send or receive GIFs, images, or files. Links to files and images can be shared.
120-
- Communication Services users can delete the chat. This removes the Teams user from the chat thread and hides the message history from the Teams client.
121-
- Known issue: Communication Services users aren't displayed correctly in the participant list. They're currently displayed as External, but their people cards might need to be more consistent.
158+
- Communication Services users can delete the chat. This action removes the Teams user from the chat thread and hides the message history from the Teams client.
159+
- Known issue: Communication Services users aren't displayed correctly in the participant list. They're currently displayed as External, but their people cards show inconsistent data.
122160
- Known issue: A chat can't be escalated to a call from within the Teams app.
123161
- Known issue: Editing of messages by the Teams user isn't supported.
124162

125163
## Privacy
126164
Interoperability between Azure Communication Services and Microsoft Teams enables your applications and users to participate in Teams calls, meetings, and chats. It is your responsibility to ensure that the users of your application are notified when recording or transcription are enabled in a Teams call or meeting.
127165

128-
Microsoft will indicate to you via the Azure Communication Services API that recording or transcription has commenced. You must communicate this fact in real time to your users within your application's user interface. You agree to indemnify Microsoft for all costs and damages incurred due to your failure to comply with this obligation.
166+
Microsoft will indicate via the Azure Communication Services API that recording or transcription has commenced. You must communicate this fact in real time to your users within your application's user interface. You agree to indemnify Microsoft for all costs and damages incurred due to your failure to comply with this obligation.

0 commit comments

Comments
 (0)