On Premises

Microsoft Graph Presence Publisher (Set) Configuration

Note

Introduced in DC2023.04.

Introduction

The Microsoft Graph Cloud Communications Presence APIs are used by Anywhere365 for two distinct presence actions:

  1. See other article: Microsoft Graph Presence Source (or Get Presence) which enables the UCC A Unified Contact Center, or UCC, is a queue of interactions (voice, email, IM, etc.) that are handled by Agents. Each UCC has its own settings, IVR menus and Agents. Agents can belong to one or several UCCs and can have multiple skills (competencies). A UCC can be visualized as a contact center “micro service”. Customers can utilize one UCC (e.g. a global helpdesk), a few UCC’s (e.g. for each department or regional office) or hundreds of UCC’s (e.g. for each bed at a hospital). They are interconnected and can all be managed from one central location. to collect presence of Teams users, and

  2. This Article: Microsoft Graph Presence Publisher (or Set Presence) enables the UCC to set presence of Teams users.

For more information, see Microsoft’s documentation on https://docs.microsoft.com/en-us/graph/api/resources/presence?view=graph-rest-1.0

Steps

In order to start setting or changing presence of other Microsoft Teams user accounts. There are two prerequisites, per tenant.

  1. A Microsoft Entra ID Formerly known as Azure Active Directory (or Azure AD, or AAD) App registration is needed to access the Microsoft Graph APIs.

  2. A ClientID and ClientSecret are needed to authenticate against the App Registration.

Microsoft Azure App Registration setup

Please follow below the steps to setup an App Registration in the Microsoft Entra ID Formerly known as Azure Active Directory (or Azure AD, or AAD) portal.

  1. Navigate to: https://entra.microsoft.com/
  2. Under Applications -> App registrations create a new App registration

    1. Provide a Name for the application, for example: A365 Graph Presence Publisher Application

    2. Select the account type “Accounts in this organizational directory only”

    3. Click “Register”

  3. On the API permissions tab, add the following Application Microsoft Graph permission:

  4. Since the Presence.ReadWrite.All and User.Read.All permissions needs Admin consent, click the button “Grant admin consent for <tenant>”.

    Note

    Only a tenant administrator can grant the admin consent

  5. On the Authentication tab, change “Allow public client flows” to “Yes”.

    • Click “Save”

  6. On the Overview tab, copy both the Application (client) ID and the Directory (tenant) ID

Client secret

An App authenticated with a ClientId and ClientSecret is used to set presence via the Graph API. The ClientSecret needs to be created separately (and periodically renewed) on the Entra ID App registration.

  1. Navigate to the Application you created in Microsoft Azure App Registration setup
  2. On the Client secret tab, click on New client secret:

  3. Enter a Description and set the Expires value

  4. On the next screen, copy the Value of this secret (so not the Secret ID)

Configure the Presence Publisher

Note

Introduced in DC2023.04.

In the config.xml of the UCC service, add the following configuration as child node to the <PresenceProvider> element. Make sure to choose a unique ID (we recommend the domain name). Set the correct TenantId and ClientId copied during Microsoft Azure App Registration setup. The Encryptedsecret must be generated using the Anywhere365 Password Tool to encrypt the ClientSecret

Copy
XML
<PresencePublisher >
<MsGraphPresencePublisher>
<Account Id="my-presence-account1" ClientId="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" TenantId="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" Encryptedsecret="ENCRYPTED Secret" />
</MsGraphPresencePublisher>
</PresencePublisher>