Skip to content

Commit a0cebd7

Browse files
authored
Update calling-chat.md
-------
1 parent 038cc0b commit a0cebd7

File tree

1 file changed

+47
-13
lines changed

1 file changed

+47
-13
lines changed

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

Lines changed: 47 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
title: Teams calling and chat interoperability
33
titleSuffix: An Azure Communication Services concept document
44
description: Teams calling and chat interoperability
5-
author: tomkau
6-
ms.author: tomkau
5+
author: tomaschladek
6+
ms.author: tchladek
77
ms.date: 10/15/2021
88
ms.topic: conceptual
99
ms.service: azure-communication-services
@@ -15,20 +15,54 @@ ms.subservice: teams-interop
1515
> [!IMPORTANT]
1616
> 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 will 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, and are not appropriate for production workloads and should only be used with test users and test data. Certain features might not be supported or might 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 and are not appropriate for production workloads, and should only be used with test users and test data. Certain features might not be supported or might 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
>
20-
> 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.
20+
> 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.
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.
23+
24+
To enable calling and chat between your Communication Services users and your Teams tenant, you need to be allow listed via the [form](https://forms.office.com/r/F3WLqPjw0D) and enable the connection between tenant and Communication Services resource.
2325

2426

2527

2628
## Enabling calling and chat interoperability in your Teams tenant
27-
To enable calling and chat between your Communication Services users and your Teams tenant, use the new Teams PowerShell cmdlet [Set-CsTeamsAcsFederationConfiguration](/powershell/module/teams/set-csteamsacsfederationconfiguration). This cmdlet is only available to participants in the private preview.
29+
Azure AD user with [Teams administrator role](/azure/active-directory/roles/permissions-reference#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:
30+
31+
```script
32+
Get-module *teams*
33+
```
34+
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:
36+
37+
```script
38+
Install-Module -Name MicrosoftTeams
39+
```
40+
41+
You will 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:
42+
43+
```script
44+
Update-Module MicrosoftTeams
45+
```
46+
47+
When the module is installed and ready, you can connect to the MicrosftTeams module with the following command. You will be prompted with an interactive window to log in. The user account that you are going to use needs to have Teams administrator permissions. Otherwise, you might get an `access denied` response in the next steps.
48+
49+
```script
50+
Connect-MicrosoftTeams
51+
```
52+
53+
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 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).
54+
55+
```script
56+
$allowlist = @('IMMUTABLE_RESOURCE_ID')
57+
Set-CsTeamsAcsFederationConfiguration -EnableAcsUsers $True -AllowedAcsResources $allowlist
58+
```
59+
2860

29-
Custom applications built with Azure Communication Services to connect and communicate with Teams users can be used by end users or by bots, and there's no differentiation in how they appear to Teams users, unless explicitly indicated by the developer of the application.
61+
## Get Teams user ID
3062

31-
To start a call or chat with a Teams user, the user's Azure Active Directory (Azure AD) object ID is required. This can be obtained using [Microsoft Graph API](/graph/api/resources/users) or from your on-premises directory if you are using [Azure AD Connect](../../../active-directory/hybrid/how-to-connect-sync-whatis.md) (or some other mechanism) to synchronize between your on-premises directory and Azure AD.
63+
To start a call or chat with a Teams user or Teams Voice application, you need an identifier of the target. You have the following options to retrieve the ID:
64+
- User interface of [Azure AD](../troubleshooting-info.md?#getting-user-id) or with on-premise directory synchronization [Azure AD Connect](../../../active-directory/hybrid/how-to-connect-sync-whatis.md)
65+
- Programmatically via [Microsoft Graph API](/graph/api/resources/users)
3266

3367
## Calling
3468
With the Calling SDK, a Communication Services user or endpoint can start a 1:1 call with Teams users, identified by their Azure Active Directory (Azure AD) object ID. You can easily modify an existing application that calls other Communication Services users to instead call a Teams user.
@@ -61,7 +95,7 @@ const call = callAgent.startCall([teamsCallee]);
6195
- Third-party [devices for Teams](/MicrosoftTeams/devices/teams-ip-phones) and [Skype IP phones](/skypeforbusiness/certification/devices-ip-phones) are not supported.
6296

6397
## Chat
64-
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 instead create chats with Teams users. Below is an example on 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).
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 instead create chats with Teams users. Below 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).
6599

66100
Creating a chat with a Teams user:
67101
```js
@@ -77,18 +111,18 @@ createChatThreadRequest, createChatThreadOptions );
77111
const threadId = createChatThreadResult.chatThread.id; return threadId; }
78112
```
79113

80-
To make it easier to test, we have 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.
114+
To make it easier to test, we have 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.
81115

82116
**Limitations and known issues** </br>
83-
While in private preview, a Communication Services user can do various actions using the Communication Services Chat SDK, including sending and receiving of 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:
117+
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:
84118
- Chats can only be initiated by Communication Services users.
85119
- Communication Services users can't send or receive gifs, images, or files. Links to files and images can be shared.
86120
- 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.
87-
- Known issue: Communication Services users aren't displayed correctly in the participant list. They are currently displayed as External but their people card might be inconsistent.
121+
- Known issue: Communication Services users aren't displayed correctly in the participant list. They are currently displayed as External, but their people cards might be inconsistent.
88122
- Known issue: A chat can't be escalated to a call from within the Teams app.
89123
- Known issue: Editing of messages by the Teams user is not supported.
90124

91125
## Privacy
92-
Interoperability between Azure Communication Services and Microsoft Teams enables your applications and users to participate in Teams calls, meetings, and chat. 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.
126+
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.
93127

94128
Microsoft will indicate to you via the Azure Communication Services API that recording or transcription has commenced and 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 as a result of your failure to comply with this obligation.

0 commit comments

Comments
 (0)