USD – Interactive Service Hub Page, NOT!

I have recently published a couple of posts regarding the new feature in Unified Service Desk (USD) to display Interactive Service Hub pages in hosted controls. I first covered dashboards and then went on to look at entity navigation. But what if you don’t want to use the entity forms included in the Interactive Service Hub?

call-center-1027585_1920

I really like the style of the Interactive Service Hub forms but I have a couple of reservations. In my opinion, the Interactive Service Hub may not be appropriate in a couple of scenarios. Firstly, the interactive hub has a focus on service, in many circumstances this will be ideal. But some contact centres have a dual purpose with agents needing to promote product sales and service customer needs in a single call. Meaning an interface with a pure service focus might not be appropriate for them. Secondly, if your organisation has already invested in customizations to the traditional CRM forms making the transition to the interactive service hub could be a costly and time consuming process.

So the interactive service hub might not be for everyone, but what if you want to leverage the benefits offered by the new interactive dashboards without needing to rework your existing traditional forms????

You might, for example, decide to do this as a short term quick win before investing the time needed to reengineer your current forms.

In this post I will explore how Unified Service Desk can provide an interface that combines the Interactive Service Hub dashboards with traditional CRM forms. Hopefully an approach that might offer the best of both worlds.

By way of an example I will focus on cases but you could adapt my example to any entity shown on the interactive service hub dashboards.

The steps involved are this,

  1. Created a hosted control. (For Dashboard)
  2. Create a hosted control. (for Interactive Service Hub Case)
  3. Create an action. (To load Dashboard)
  4. Add the action to a Toolbar.
  5. Create a Scriptlet.
  6. Create a popup action.
  7. Create a window navigation rule, to not load Interactive Service Hub Page.
  8. Create a window navigation rule, to open session using traditional form.

Step One – Create a hosted control. (For Dashboard)

In this example I am going to assume you have an existing USD interface that supports the traditional forms already. But you’ll want to add in the interactive service hub dashboards and then still be able to open sessions but using your existing CRM forms.

So first of all we will need a new hosted control for the interactive service hub dashboard.

Field Name
Name ISH Dashboard
Display Name Dashboard (Global)
USD Component Type Interactive Service Hub Page
Application is Global Selected
Display Group MainPanel
Application is Dynamic Yes
User Can Close Selected

Step Two – Create a hosted control (For ISH Case)

I am not going to actually display the case from the interactive service hub but I do want a “dummy” hosted control for it. The reason being that we will later have a navigation rule that will create a session based on this BUT instead of displaying the interactive service hub page we will display the normal incident tab instead. But more on that a little later.

Note:
The display group is “Hidden” as we aren’t going to display this!

Field Name
Name ISH Case
Display Name << Blank >>
USD Component Type Interactive Service Hub Page
Application is Global Not Selected
Display Group Hidden
Application is Dynamic Yes
User Can Close Selected

Step Three – Create an action. (To load Dashboard)

The next step will be to create an action that we will use to navigate to the interactive service hub dashboard and display it in a hosted control.

So we will need a navigate action to load the interactive service hub dashboard of your choice.

Field Name
Name ISH Dashboard – Navigate
Hosted Control ISH Dashboard
Action Navigate
Data url=&pagetype=interactioncentricdashboard&id=D201A642-6283-4F1D-81B7-DA4B1685E698

Tip:
I have chosen to display the tier 1 multi-stream dashboard in this example. You can display other dashboards by changing this url. See my earlier post on display the interactive service hub dashboard for details.

Step Four – Add the action to a toolbar

This is a simple step; all we need is a button on your existing main toolbar to call the navigate action we just created. I’m assuming here that you already have a toolbar and understand how to add a button to call the navigate action we created.

Step Five – Create a Scriptlet.

I needed a scriptlet that would take the URL used to load the Interactive Service Hub page and construct a new one that would load the traditional CRM page instead. This ended up being a pretty simple piece of code.

// ** Function returns the URL needed to load standard case form **
function ISH_Case_URL() {
  var URL = "[[URL]+]";
  var URLSplit = URL.split("&id=");
  var returnURL="main.aspx?etn=incident&pagetype=entityrecord&id=%7B" + URLSplit[1] + "%7D";
  return returnURL;
};
ISH_Case_URL();

My completed scriptlet looked like this;

Step Six – Create a popup action.

Now let’s create an action that will pop up a CRM window based on the URL created by the scriptlet we created in the previous step.

Note:
There is a reason I am using a popup here! When we fire a pop up it will trigger the window navigation rules to be evaluated. I can then have a rule that will allow me to show the traditional CRM form as required.

Field Name
Name CRM Global Manager – Popup (ISH Case)
Hosted Control CRM Global Manager
Action Popup
Data url=[[$Scriptlet.ISH Case URL]]

Step Seven – Create a window navigation rule., to not load interactive service hub page.

Now we can start to create a couple of window navigation rules to bring all of this together! Firstly, we need to have a navigation rule that doesn’t load the interactive service hub page but does call the popup action we just created.

What is actually going to happen here is I am going to use this navigation rule to create the session. And open the incident tab.

Note: I am assuming here that (like me) you will already have an incident tab for the traditional CRM form. I actually also have agent scripts, knowledge base search and toolbars in existence. Hence why I wanted to keep those features but still use the Interactive Service Hub dashboards.

Field Name
Name Case from ISH Dashboard
Order 1

Tip: 1 worked fine for me! You might need a different order to fit in with your existing rules.

From ISH Dashboard
Entity Incident
Route Type In Place

Note: You will find all route types for ISH will be in place!

Destination Tab
Action Create Session
Target Tab ISH Case

Don’t forget this hosted control is hidden so won’t actually show!

Show Tab << Blank >>
Hide Navigation Bar No

Once I had saved my navigation rule I then went to actions in the navigation bar.


And under actions I added the popup action I had created earlier.


Step Eight – Create a window navigation rule, to open session using traditional form.

The final piece in this jigsaw is a window navigation rule that will load my normal / traditional incident form into the session.

Tip: Assuming you already have a navigation rule to load your incident tab you will essentially be cloning that here. In my case I also had a number of actions associated with loading my incident tab. Such as opening the correct agent script.

Field Name
Name Case from CRM Global Manager
Order 1

Tip: 1 worked fine for me! You might need a different order to fit in with your existing rules.

From CRM Global Manager

I added this as I had run my popup action from global manager. You may actually find you can “get away” with the “from” being blank. Which might allow you to keep the number of navigation rules you have to a minimum.

Entity Incident
Route Type In Place
Destination Tab
Action Route Window

I used route window as I had already created the session with the previous navigation rule.

Target Tab Incident

Note: Here I am targeting my existing hosted control for the incident entity.

Show Tab Incident
Hide Navigation Bar Yes

TEST

All that remained was for me to test my changes. When I run Unified Service Desk I can see the interactive service hub dashboard in a tab and gain all the benefits that interactive dashboard gives. Such as dynamic filtering and charting etc. From a contact centre agent point of view the multi-stream dashboards can really help focus on the right jobs.

But when I click on an active case, my standard case form loads along with my pre-existing agent script and toolbar etc. Meaning I also retain all the investment I have already made in customizing the case entity.

To finish this change off I will want to replicate this approach on other entities such as account and contact. But as the entities shown on the interactive service hub dashboard is limited it won’t take me many minutes to extend this logic to all of the entities I require.

Here is a video of this change in action ….

I hope this post has shown you how you can use the power of the interactive service hub dashboards whilst retaining you existing investment in traditional CRM forms. J

3 thoughts on “USD – Interactive Service Hub Page, NOT!

  1. Pingback: USD – The Book | Microsoft Dynamics CRM and Unified Service Desk

  2. Great information my issue is when i download the latest version of USD when i use the package deployer their is not an option for ISH ? Any Ideas?

    Like

    • I certainly get an option for ISH.

      Are you using CRM 2016 with Update 1? (As this is minimum version of CRM required.)

      If you try creating a hosted control do you can the hosted control component type for Interactive Service hub?

      Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s