Requirements for Extend Model
The Microsoft Teams Extend model integrates the contact center deeply with the Teams client, using Microsoft Graph APIs and Teams Phone infrastructure. It enables agents to fully leverage Teams for calling, collaboration, and presence while the vendor manages advanced routing and workflows via Teams APIs.
To ensure a successful deployment and smooth operation of Heedify Cloud CX, it is important to review and fulfill all necessary requirements. The following outlines the prerequisites and environment considerations needed before beginning setup.
Administror role
To set up Heedify CX, an Azure Global Administrator is required. This role is needed to grant permissions to the Heedify Apps, assign licenses, and configure core settings. The Global Administrator handles tasks such as creating Azure Service Principals and assigning phone numbers.
Microsoft Graph Permissions
Heedify Cloud CX requires a set of permissions. Microsoft 365 tenant Admin should consent for each Heedify Cloud CX module.
Heedify Cloud for call management
| Permissions | Permission type | Description |
|---|---|---|
| Calls.AccessMedia.All | Application | Access media streams in a call as an app |
| Calls.Initiate.All | Application | Initiate outgoing 1 to 1 call from the app |
| Calls.InitiateGroupCall.All | Application | Initiate outgoing group calls from the app |
| Calls.JoinGroupCall.All | Application | Join group calls and meetings as an app |
| Calls.JoinGroupCallAsGuest.All | Application | Join group calls and meetings as a guest |
Heedify Presence Application
| Permissions | Permission type | Description |
|---|---|---|
| Presence.Read.All | Application | Read presence information for all users |
Heedify Admin portal
| Permissions | Permission type | Description |
|---|---|---|
| User.Read | Delegated | Sign in and read user profile |
| User.Read.All | Delegated | Read all users’ full profiles |
Heedify Agent Console
| Permissions | Permission type | Description |
|---|---|---|
| Presence.Read | Delegated | Read presence information of all users in your organization |
| Presence.Read.All | Delegated | Read and write your presence information |
| Contacts.ReadWrite | Delegated | Allows the app to create, read, update, and delete user contacts. |
| Contacts.ReadWrite.Shared | Delegated | Allows the app to create, read, update, and delete contacts a user has permissions to, including their own and shared contacts. |
| OrgContact.Read.All | Delegated | Read organizational contacts |
| Calendars.Read | Delegated | Allows the app to read events in your calendars. |
| offline_access | Delegated | Maintain access to data you have given it access to |
| openid | Delegated | Sign in as you |
| profile | Delegated | View your basic profile |
| Teams.ManageCalls | Delegated | Start, join, forward, transfer, or leave Teams calls and update call properties |
| Teams.ManageChats | Delegated | Create, read, update, and delete 1:1 or group chat threads on behalf of the signed-in user. Read, send, update, and delete messages in chat threads on behalf of the signed-in user |
Heedify Reporting
| Permissions | Permission type | Description |
|---|---|---|
| User.Read | Delegated | Sign in and read user profile |
Refer to #calls-permissions for more informations about permission types (Delegated and Application)
Proxy settings
Verify that your Web Proxy settings allow outbound connections to :
- wss://*.signalr.net : websocket endpoinst on Microsoft SignalR instance used for real-time status updates on Heedify End-User apps.
- https://*.heedify.io : Heedify Cloud domain used for hosting all Heedify Core services.
Networking
For optimal call quality and performance, the Heedify Agent Console requires certain network configurations. Please refer to the network-requirements page for detailed guidance.