Category Archives: IT Guide

For IT to prepare, install and maintain Dynamics Telephony

Per Team Settings

Dynamics Telephony settings out-of-the box are either Global or per-user. However, the Global settings are really for the default team called Global. You can add more teams, each with their own set of “global” settings. We call this a Settings Team

To add a new Settings Team

Go to Customize the System > Option Sets and find the option set “Dynamics Telephony Team”. Add a value to it (e.g. Team22 below) for your new Settings Team. Save – Publish All customizations.

Settings Team Optionset

If you have not already done so, Add the Dynamics Telephony Team optionset to your User Form in CRM.

Edit the CRM user you want to be the first member of your new Settings Team and select the value of Dynamics Telephony Team. NOTE the initial settings for the new Settings Team will be the same as this user.

For new or changed users

Set the users team:

Start the DT Client for this user and logon. You should get a message like this (if the selected team was Team22, for example):

Settings Team Changed

When you restart DT Client for the user, they are now in the new Settings Team. You can check the Settings Team in the About box. Any changes to their settings are now applied to everyone in the new Settings Team.

Settings Team About Box

Audio Troubleshooting

Use the audio control to make sure the right devices are set to speakers and microphone for DT Client

audio_controls

Make sure the correct ones are in use – marked with a green tick.

Clicking on the audio control button will MUTE / UNMUTE the call

If audio controls are not available on the DT Client toolbar, then you can enable them in Advanced Configuration. You need to restart your DT Client to see it. This is a global setting.

enable_audio_controls

Setup Omnichannel Chat

These are notes to quickly set up Microsoft Omnichannel for chat.

The overall process is add a snippet of code to your website, enable agents for chat and understand the “Capacity” number. If you do not have Omnichannel, then get a free trial from Microsoft here: https://docs.microsoft.com/en-us/dynamics365/omnichannel/try-channels

Also, for use with Dynamics Telephony, I will show how to set up a custom presence value that will be auto-selected to prevent chats being delivered when you are on a voice call.

When you enable the Omnichannel license, you will see you have 2 new applications, one for Omnichannel Administration and one for the agents (Omnichannel for Customer Service).

MS_Omni_Apps

 

When you go into Administration, you will see your admin modules down the left side.

First, go to Chat and add a new widget. Make sure Work Stream is Live Chat Workstream. That’s all you really need. Save.

Now grab the Code Snippet that is shown and copy it to your website page you want chat on. Just place it, as it is, straight before  the </head> tag you will find on your current webpage.

MS_Omni_Chat_Config

 

In Users add in existing users of your Dynamics 365 and set their Capacity to 100, assign a queue and maybe the default presence for chat.

Later, we will set the Capacity of a Chat to 50. So with the agent set to 100 this means an agents capacity is full when they are on 2 chats and Omnichannel will not send them another chat until they are back on only one chat.

MS_Omni_User_Config

 

Now go to Workstreams and edit the default workstream. Set capacity to 50 and mode to push.

In the Allowed Presences select all but Busy – DND. This means you can get a chat in any presence except Busy – DND.
MS_Omni_Workstream_Config

 

When configuring for use with Dynamics Telephony, in the Custom Presence module, add a custom presence as shown below. Dynamics Telephony will select this custom presence when on a phone call, to prevent Omnichannel sending a chat to the user during a phone call.

MS_Omni_Presence_Config

Now, to understand and configure the Dynamics Telephony integration with Omnichannel, click here.

First Call Resolution Rate

First Call Resolution (FCR) is a measure of how well you are doing in solving customer issues on the same call as they first report the issue. Obviously, customers are delighted if their issues are solved on the first call and will be more likely to recommend your company to a friend.

FCR rate is one of the most important metrics you should measure in your contact center. If you don’t measure it you can’t improve it. I outline here how Dynamics Telephony has the tools and data you need to do this successfully.

FCR Definition

FCR% = 100 X ( Calls resolved on “Call 1” ) / ( Number of “Call 1” calls – issue resolved or not )
Where “Call 1” is the first call an issue is raised in.

Phonecall Activity

The phonecall activity record in CRM is where you collect the data necessary for measuring FCR. You can use agents to fill the data or Dynamics Telephony can automate most of the data collection.

Outcome: This simple text field is linked to the Outcome the user chooses in Dynamics Telephony Toolbar. You can define as many outcomes as you like. In the definition of the Outcome you set whether “Is Resolved” is true or not for this outcome. This will thus auto-populate the next field described below.

Is Resolved. This is a boolean (two option) field in the phonecall entity. The default value is NO. It will automatically be set depending on the Outcome chosen by the agent for the call.

Call Number for Issue: This integer field is automatically incremented by Dynamics Telephony if the previous call to/from this customer was less than N hours ago and marked Is Resolved NO. N is configurable per DNIS. If there was no call in the last N hours then it is set to 1.

Customer view via SMS

Optionally, you can add to your FCR solution by using Dynamics Telephony SMS Service to send the customer an SMS to find out if they agree that the issue was resolved on the last call. Dynamics Telephony SMS Service has the following features you will need:

Send SMS
– specify related entity (e.g. phonecall, case, account contact, ..)
– From phonenumber, to phonenumber,

Receive SMS with parsing
– “Value” populated in related entity field1
– “comment” populated in related entity field2

Your CRM partner will be able to construct an FCR survey using this service by making a workflow in CRM to trigger a survey for the right conditions and use the service to send the SMS. The reply from the customer will be automatically added to the related customer record. For example, in the case of FCR, it would probably attach to a phonecall record.

FCR Reporting

With the above data, you are now in a position to report on your FCR rate, using your favorite CRM reporting tool, such as Power BI. You set up the report to use phonecalls as the source of data.

Referring back to the definition above…

For “Calls resolved on Call 1”, you count the phonecalls with Call Number for Issue = 1 AND Is Resolved = YES.

For “Number of “Call 1″ calls – issue resolved or not”, you count the phonecalls with Call Number for Issue = 1

 

Omnichannel & Avaya AACC Blended

Currently, users on Avaya AACC and Microsoft Dynamics 365 Omnichannel, have to manually keep themselves in the right status on each system. So, when they are on a voice call in Avaya, they have to manually set themselves to Do Not Disturb in Omnichannel. And when they are too busy on Omnichannel, they have to manually go Not Ready in Avaya AACC.

Furthermore, the real-time displays and reporting on each of the two systems is completely unaware of the other system. So, a supervisor might think a user is simply “Not Ready”, when in fact they are very busy on chats with customers.

These are major pains and leads to lack of adoption of one system or the other.

Now, Dynamics Telephony does the synchronization automatically for you. When you are on a voice call, your status in Omnichannel will show “On Phone Call”, and you will not be sent any chats. When you are busy on chats in Omnichannel, your status in AACC will be “Not Ready – On 2 Chats” and AACC will not send you any voice calls. NOTE these features are in addition to our other AACC Features

omnichannel_status

This is a major innovation allowing users to seamlessly work on Omnichannel and Avaya AACC in the one blended environment.

See a short presentation of this feature on YouTube here.

How It works

Because Dynamics Telephony has access to both Avaya AACC status and Omnichannel status, it can monitor and control both systems. Using this capability, it implements 2 rules:

  1. When you are on N chats in Omnichannel, it will auto-select a status (e.g. Not Ready – On 2 Chats) for you in Avaya AACC. When you are back on <N chats, it reverts you to Ready in AACC.
  2. When you are on a voice call in AACC, it will select a particular presence (e.g. Do Not Disturb – On Phone Call) for you in Omnichannel. When you end the voice call, it will make you available in Omnichannel again. You need to define a custom presence in Omnichannel Admin of type Do Not Disturb with a label such as “On Phone Call”.
Reports & Realtime Displays

Because Dynamics Telephony is keeping your status in each system correctly synchronized, your reports and real-time displays in each system can show the full picture. So, your Omnichannel report can include the number of times and duration of the “On Phone Call” presence. Similarly, your data in Avaya AACC can include the number and duration of “On 2 Chats”.

Settings

The following settings control how the blending works.

OC Omnichannel – Check this box to enable the Omnichannel (OC) blending features.

OC Max Chats and OC Max Chats Reason – When the number of chats being handled by the user in Omnichannel gets to OC Max Chats, then the Not Ready reason in AACC is automatically selected. The reason selected is the one with label defined in OC Max Chats Reason (case sensitive)

OC Voice Call Presence – When the user is on a voice call in AACC, this presence is automatically selected in Omnichannel. Case sensitive. Leave blank to disable this feature.

OC Voice Application – From the list, select the Dynamics 365 Application to use for Avaya AACC voice calls. It is very unlikely you will want to use the Omnichannel Application with voice calls.

omnichannel_config

 

Outcome Triggerd Workflows

You can trigger a workflow to do such things as disqualify a lead, convert a lead to an opportunity or send an email to the customer.

You set the workflow to trigger off our dialerCall entity field called “outcome”. In the workflow, you use our plugin (see below) to get a reference to the phonecall, To Party or Regarding entity.

The plugin you need in the workflow is in a solution file you need to import to CRM. You can find it HERE

NOTE: You cannot use Flow / Power Automate as it does not support plugins.

Create the workflow

In Processes, make a workflow to trigger off change of field outcome in dialerCall entity.

To get a reference to the phonecall activity that Dynamics Telephony used for the call, add a step like this

workflow_plugin_dtiCommand

Set the properties like this:

workflow_dtiCommand_toEntityRef

Now you can use that entity reference to update the entity.

Similarly, you can get a reference to the To Party (ToId in dialerCall) and Regarding

 

Add fields to multi-match dialog

Sometimes you need more information on the multi-match dialog to help with associating the phonecall with the right entity. This might be extra information on cases, or more fields from contacts or accounts.

You can specify the field from the entity that Dynamics Telephony will display in the case of multi-match. So, you make this field a custom field that is a concatenation of other fields with the information you need.

1. Create a custom field on the entity you pop for incoming calls. Make this field a concatenation of the other fields in the entity that you want to display on the multi-match dialog.

2. Say the entity you pop is contact, and the custom field from step 1 is new_custom1. Then you need to locate the diallerKVTable record in the CRM where
Name=incomingLookup_contact AND Type=name.
Change the Key and Value fields to new_custom1

3. If you pop more than one entity for incoming calls, you may want to repeat steps 1 and 2 above for each one.

 

Phonebook Contacts CRM Entity

Dynamics Telephony can retrieve its phonebook contacts from CRM or from an XML file. This article explains how to have Dynamics Telephony retrieve its phonebook contacts from CRM.

The contacts are stored in entity Dialler Phonebook Contacts (cts_phonebook). The main fields are:

  • Full Name: Mandatory. A good idea to format like Lastname, Firstname for sorting purposes. The phonebook will be sorted using this field.
  • Phone Number: Mandatory.
  • Phone Book Team: Mandatory. This is used to allow different groups of users have a different set of contacts in their phonebook.

An on-demand workflow is included to copy data from existing Users to Dialler Phonebook Contacts. It copies the phone number from the user “Other Phone” field, and the Team Name from the users Business Unit name.

phonebook_add_users_workflow

Then, in Dynamics Telephony Settings, General, fill in the team name for each user.

phonebook_team_setting

 

TIP: You could have a workflow trigger on a user’s “Other Phone” change event, and use that to keep the phonebook synchronized.

 

Lookup other phonenumber fields

Dynamics Telephony can search other phone-number fields; custom fields or built-in fields. To have Dynamics Telephony search another phone-number field…

Add 1 diallerKVTable entry as follows

name: incomingLookup_x, where x is contact, lead, contact etc.
scope: global
key: N, – Where N is one more than the current largest Key value on others with name=incomingLookup_x
type: phone
value: y, – where y is the name of the field, e.g. new_fieldname
parent: leave blank

NOTE: The fields Dynamics Telephone searches out-of-the-box are
Lead; telephone1, telephone2, telephone3, mobilephone
Contact: telephone1, telephone2, telephone3, mobilephone
Account: telephone1, telephone2, telephone3

Scripting Pane: Display Phonecall

You can display the current phonecall activity in the Scripting Pane. This is useful to be able to enter phonecall notes and result without having to switch away from the main customer record in CRM.

scriptingPanePhonecall

You do this by defining the script URL as a custom HTML page that will receive all phonecall ID and then redirect to the phonecall itself. There is a sample of that initial custom page code here (view page source when it opens): dtAssociatedPhonecall. Also, this is included in the CRM Solution now so you can simply use https://yourcrmdomain.crmXX.dynamics.com//WebResources/cts_dtAssociatedPhonecall

TIP: If you want to display some other entity, for example the regarding entity, then you can use the parameters passed to the splitscreen page to re-direct to it. the full list of parameters passed to the splitscreen page is HERE

The script URL is defined on a per DNIS (inbound) or queue (dialer outbound) basis, as shown below

scriptingPansDnisUrl

NOTES

  • You will want to customise the phonecall form to improve legibility as the Scripting Pane is fixed at 33% of the parent window width.
  • Alternatively, you could make a special phonecall form and specify the formid in the extraqs parameter of the URL you redirect to. You might also consider adding navbar=off&cmdbar=false to the URL to hide the navigation and command bars to give you more space.
  • Test with your users to make sure autosave is working correctly, or they are happy to use a SAVE button.
  • Using the Dynamics Telephony Client API, it is possible to make a Save & Close button that would save the phonecall and close the DT window.
  • If users will enter notes, then define the default Phonecall Description as blank ( DT Menu > Settings > Advanced Configuration : Phonecall Description )
  • Similarily the Phonecall Subject. ( DT Menu > Settings > Advanced Configuration : Phonecall Subject )