Recent Posts


Something went wrong. Please refresh the page and/or try again.


Fixed – Power Virtual Agents bots for voice not working (Dynamics 365 Customer Service Omnichannel)

We can configure aa PVA Bot for workstreams and when we install the voice channel demo, we can see a bot already configured for the demo workstream.

Recently in our case, the bot configured was not working and we were getting the below message on calling the workstream/voice channel configured.

“Sorry, we couldn’t serve you at this moment. Please call back later”

On removing the bot the workstream/channel was working properly.

We raised the Microsoft support ticket for the same and were suggested to create/configure a new bot instead of using the existing demo/trial one as it might give an issue because of being configured in a different environment.

On configuring a new bot the issue got fixed for us.

Hope it helps..


List Rows, Select Columns, and Lookup field – Power Automate / Dataverse

Suppose we want to retrieve the value of the source campaign lookup of the lead records.

The schema name of Source Campaign is – campaignid

To get its GUID in the Select columns of list rows we can specify it as

_campaignid_value i.e. _lookupschemaname_value

The other option is if we specify the schema name in select columns then we need to use the expand property to get the GUID as well if we want any other attribute values e.g. text/label of the lookup field.

Hope it helps..


Agents not receiving calls in Omnichannel Voice – Dynamics 365 Customer Service

Recently we saw a few of our agents were not receiving the calls/notification for incoming conversations.

Apart from checking the Routing Diagnostics, we can refer to the Omnichannel Ongoing Conversation Dashboard (available for the Omnichannel Supervisor role)

In our case, we realized that the ongoing conversation was in Wrap-up status for the agent.

And also as we had a work item limit of 1 along with assignment blocking defined through the capacity profile for that agent, the agent wasn’t receiving the incoming notifications.

So here we can ask the agent to close the session correctly.

Or as a supervisor, we can force close the conversation from the Omnichannel Ongoing Conversation Dashboard.

Force Close-

Hope it helps..


Using Coalesce Function to handle null value in Power Automate – Dataverse

Recently in one of our flows, we were getting the below error –

InvalidTemplate. Unable to process template language expressions in action ‘List_rows_:_Region’ inputs at line ‘0’ and column ‘0’: ‘The template language function ‘replace’ expects its first parameter ‘string’ to be a string. The provided value is of type ‘Null’. Please see https://aka.ms/logicexpressions#replace for usage details.’.

One or more fields provided is of type ‘Null’, a different type is expected.

This was because the replace function that we were using for the Filter rows property of List Rows (Dataverse) had the variable value as null.

Below was our dynamics expression where we replaced apostrophe with 2 single quotes – https://nishantrana.me/2023/02/27/how-to-handle-single-quote-apostrophe-in-filter-rows-in-power-automate-dataverse/

replace(replace(variables(‘varFieldData’)?[‘myVariable’],‘_’,’ ‘),””,”””)

The solution was to use coalesce function, to replace null with a blank string as shown below.

replace(replace(coalesce(variables(‘varFieldData’)?[‘myVariable’],”),‘_’,’ ‘),””,”””)

Similarly, we can use coalesce function to provide a default value.

The coalesce function will evaluate its arguments in order and will return the first non-blank or non-empty value. If all the arguments are blank or empty strings, the function will return blank.

After using the coalesce function, our flow was successful.


A similar example in SQL –

Hope it helps..


How to – Configure Voicemail Workstream and Queue – Dynamics 365 Customer Service

When we configure the Voice demo, we can see 2 workstreams and queues created for Voicemail one for individuals other for voicemail of type group.

The Default Group Voicemail Workstream has the following intake rule defined.

And following Route to Queue Rule

Configuring Voicemail – https://nishantrana.me/2023/02/23/how-to-configure-voicemail-in-omnichannel-voice-channel-dynamics-365-customer-service/

Similarly, Default Individual Voicemail Workstream has the following intake rule

And Route to Queue rule

Now say we want the voicemail of an advanced queue (type – voice) to be routed to its corresponding advanced queue (type – record) instead of the Default Group Voicemail Queue.

Say we have the below Advanced Queue of type Voice used in the Voice Workstream– 


And the below Advanced Queue – My Sample Voice Mail Queue

Now let us define the Workstream that will route the voicemail to that queue.

Select Type as Record and Record Type as Voicemail.

The intake rule checks for the Queue record in the related entity of voice mail – Missed Conversation (Conversation)

So basically any conversation or voicemail generated because of a call to My Sample Voice Queue / Workstream will be routed to its corresponding Voice Mail Queue.

Overflow handlinghttps://nishantrana.me/2023/03/07/understanding-overflow-handling-work-item-limit-exceeds-in-voice-channel-omnichannel-dynamics-365-customer-service/

And the intake rule of that workstream to route to the Voicemail Queue created earlier.

Hope it helps..


How to – Enable Desktop notifications when the app is in the background – Dynamics 365 Customer Service (Omnichannel – Voice)

Below is how the notification appears to the agents for the incoming conversation. In case the app is in the background the agent might miss the notification. To avoid this scenario we can enable Desktop notifications.




Navigate to Agent Experience >> Workspaces >> Notification Templates (Manage) in the Customer Service Admin center

Here we can see the default template – authenticated and unauthenticated for the incoming voicemail. We cannot update these out-of-the-box templates, however, we can refer to these existing templates to create a new template.

Let us open the existing incoming authenticated template.

The Voice call – incoming authenticated – default :-

Let us create a new template, referring to the existing template, where we will set the Show Desktop Notifications = When the app is in the background.

Notice we can specify other values such as notification timeout, auto assign work items, show reject button as well as notification fields.

Below is our new notification template.

With the template created, navigate to the workstream to which we want to apply this template. In the Agent notification template, specify the custom notification template for the Incoming Authenticated.

Also, enable Notifications for the app in the browser from Site Settings.

Here we can see the Desktop notification for the agent on the incoming call.

Learn more about it – https://learn.microsoft.com/en-us/dynamics365/app-profile-manager/notification-templates?tabs=customerserviceadmincenter#create-a-notification-template

To enable Sound Notification – https://nishantrana.me/2023/03/08/enable-sound-notifications-in-omnichannel-voice-and-other-channels-dynamics-365-for-customer-service/

Hope it helps..


%d bloggers like this: