Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Contents

Table of Contents

...

The following table visualizes the steps that need to be carried out.

CIF1

CIF2

CIF2 +
Omnichannel

Configure Azure App Registration

X

X

X

Provision Omnichannel

X

Install Channel Integration Framework from AppSource

X

X

Install Voice for D365 package

X

X

X

Configure Application User in D365

X

X

X

Configure Agent Experience Profile

X

X

Assign users to Agent Experience Profile

X

X

Update Enreach Cloud User ID

X

X

X

Click-to-Dial configuration

X

X

X

Anchor
_Toc134179478
_Toc134179478
1.1 Installation Prerequisites

...

Configuring Azure App registrations is done by the following steps:

Sign in to Azure portal (https://portal.azure.com)

From the navigation menu, choose Azure Active Directory and Application registration

Choose New Registration from top of the page

Image Modified

Figure 4 Create App Registration

Fill in a name, for example Voice for Dynamics 365 for the app registration.

All the other settings can be left as default. Choose Register.

Image Modified

Figure 5 Register an Application

Once deployment is done, you should see a similar window than below:

...

Figure 6 Registration done

App registration needs API permissions to be able to authenticate to your Dynamics 365 environment.

Choose API permissions from the navigation panel

Image Modified

Figure 7 Select API Permissions

  • Choose Add a permission

  • Select Dynamics CRM from the pop-up window

...

Channel configuration for CIF2 is maintained by the Deployment Package. However, the channel itself must be added to an Agent Experience Profile.

To do it,

  • Sign in to Dynamics.

  • Switch to Customer Service Admin Center app.

  • On the left menu, click Workspaces within Agent experience section.

  • In the right pane, click Manage next to Agent experience profiles.

  • Select your Agent Experience Profile or create a new one if you don’t have any custom app profile yet. It is recommended to create a dedicated profile for Voice for Dynamics 365 by Enreach.

  • Within Channel providers section of Agent experience profile editor (at the bottom-right of the page), click Edit.

  • Below Third party voice channel providers, open the drop-down and select Voice for Dynamics 365 by Enreach item.

  • Click Save and Close.

Image ModifiedImage Modified
Image Removed
Image AddedImage Modified

Anchor
_Toc134179489
_Toc134179489
1.5.2 Users

...

  • Open Voice for D365 Configurator app

  • Navigate to User Settings

  • From the list, find your API user (see 1.2 Configure Azure app registration)

  • Open the user record and set the Enreach email of API user to Enreach Cloud User Email (e.g. mycompany.apiuser@mycompany.com). Enreach support can help you to have this value.

  • After saving the record, Enreach Cloud User Id of the user gets populated

  • Copy the id

  • Navigate to General Settings -> Phone call Sync Settings -> DefaultCrmAssigneetDefaultCrmAssignee

  • Paste the id to Value field and save the record

...

Note:Users mobile number needs to be saved to User form in Dynamics 365 for all users that are going to need their phonecalls to be synced from mobile to Dynamics 365. By default calls that are classified as Work calls (Call information Privacy setting in Voice Center side) are synchronized. Unclassified and Private calls are not Synced to D365.

Anchor
_Toc134179493
_Toc134179493
1.5.4 Callbacks

...

The API has to accept data in JSON format according to the following schema:

{

  "type""object",
  "properties": {
    "anum": {
      "type""string"
    },
    "bnum": {
      "type""string"
    }
  }
}

Example payload:

{

  "anum""+35850454564", // phone number of caller
  "bnum""+35840675644" // phone number of pool the call is in at the moment
}

Business logic will then find the caller in Dynamics CRM based anum and determine the needed action. Phone numbers have to be saved to CRM in the correct format, with no spaces or other characters, and starting with international calling prefix (plus sign). If phone numbers happen to be saved to CRM in local format then by removing first few (3-4) characters of anum, the rest can be matched to CRM data using contains comparison.

...

When the phone number of target queue has been determined by the business logic, it is returned as an HTTP response.

Example payload:

{

  "InitialTarget""+35853445657", // phone number of target queue or agent
}

Things to notice:

  • If no redirection has to be done (e.g. customer not found) then HTTP 204 No Content response must be returned

  • Returning the same bnum from the request as InitialTarget is forbidden because it would cause an infinite loop in Enreach cloud. In such a case returning HTTP 204 is recommended.

...

Anchor
_Hlk132188992
_Hlk132188992
When user status is changed when not in a call, status is mirrored between Omnichannel and Web Phone according to the following mappings:

OC state

Web Phone state

AVAILABLE

Available (0)

BUSY

Busy (1)

BUSY_DO_NOT_DISTURB

DND (2)

OFFLINE

OffWork (3)

AWAY

Away (5)

When the agent is receiving or making a call, Omnichannel status is se to Do not Disturb, to prevent Unified Routing from distributing any work item to the user during a call.

...

The feature is implemented within the following built-in JavaScript plugins:

Plugin

Event

Purpose

Enreach.Plugins.HandleOCPresenceChange

onPresenceChange

Mirrors OC presence to WebRTC

Enreach.Plugins.HandleWebRTCPresenceChange

user-status-changed

Mirrors WebRTC presence to OC

Enreach.Plugins.OCPresenceDND

call-incoming

call-answered

call-started

Saves the value of current OC presence, then changes OC presence to DND

Enreach.Plugins.OCPresenceReset

call-ended

Resets OC presence to the saved value

All the plugins above are deployed automatically to the system and are by default enabled, no need to configure the feature in any way.

Anchor
_Toc134179506
_Toc134179506
1.8. Test Voice for Dynamics 365 functionality

If everything was set up correctly, you should see the Voice for Dynamics 365 sidebar in the configured applications. Inbound& outbound calls, automatic phone call activity creation, Click-toDial and callback handling (if configured) are now available for the end users.

...

Figure 40 Voice for Dynamics 365, Customer Service Workspace (CIF2) (On the left side of Dynamics 365 UI)

...