Hello again! This is the third part of my Unified Service Desk Agent blog series, and in this installment, we will be taking a look at the many different types of hosted controls used in the USD Agent Application.

residential data


Hosted Controls

As a quick recap, Hosted Controls are components used to build an entire USD application and can be found in the form of tabs, menus, panels, scripts, toolbars etc., and that some of these Hosted Controls are not ‘visible’ as part of the User Interface (e.g. Panel Layout, Connection Manager, Global Manager, etc.). Here’s a few points about what we have discussed so far about the Hosted Control types:

  • There are two Hosted Control types required to build a USD agent application: Connection Manager (manages connections to the CRM server) and Global Manager (core component which manages configuration and session data, navigation rules between agent application and the CRM server).
  • Only one instance for each of these Hosted Control types is required to build a USD agent application.
  • Hosted Controls come in two categories: predefined and custom. Predefined hosted controls come shipped with the Unified Service Desk installer and the USD framework while the custom hosted controls are the ones you create using a tool such as Visual Studio
  • USD Hosted Controls’ lifecycle can either be global or session. Global hosted controls starts when the agent application is started while the session hosted controls is only started when a session starts.
  • Dynamic Hosted Controls are started or stopped by the agent application on-demand, either through the UI or programmatically. (This topic is not covered in this blog.)

Again, I already have set up a Dynamics CRM instance with Unified Service Desk installed and running locally in my virtual machine. We will point out the different records in Dynamics CRM which are “rendered” as actual UI components in the USD Agent Application.

Dynamics CRM and the USD Agent Application

The USD Agent Application UI is built using the data contained in Dynamics CRM under a few entities grouped under the Unified Service Desk menu in CRM:

crm and the usd agent application


Click the Hosted Controls menu to show the available hosted controls and whatever makes up the USD Agent application:

active hosted controls


Here’s some of my thoughts about the Hosted Controls above:

  • The Toolbar Panel hosts the About Panel and the Debug Panel which I think also are shown under Settings > Unified Service Desk > Toolbars.

toolbar panel


  • Any Hosted Control under the MainPanel Display Group appears on the main work area of the USD Agent Application window.

active cases


  • The LeftPanelFill consists of Agent Script, Associated Cases & Contacts plus the Notes entry which can be seen when expanding the Left Panel part of the USD Agent Application screen while a Contact, Case or Account record is open. The same also happens in the ToolbarStatus hosted control:

left panel fill


  • I think that for the Associated Cases LeftPanelFill, it launches a new CRM tab when in the same session when the Create the case link is clicked. For the Associated Contacts LeftPanelFill however, launches a new tab beside the Notes LeftPanelFill when the highlighted link below is clicked:

notes left panel fill

last pic


There you have it for this installment! Next up, we’ll be tackling how to configure and/or make changes to our existing Base Package (or we’ll attempt to do so 🙂 )