You are on page 1of 182

Cisco dCloud

Cisco Unified Contact Center Express Enablement Modules


Last Updated: 15-May-2016

This lab was created by the Solutions Readiness Engineers.

About This Solution


Unified CCX offers sophisticated call routing and comprehensive contact management capabilities. It includes an embedded
reporting solution that offers a comprehensive view of contact center statistics at a glance. Unified CCX provides customer
segmentation with state-of-the-art, built-in, interactive voice response capability, and proactive customer service for a superior
customer experience with integrated, outbound, call management capabilities. Multichannel capabilities include management of
voice, email, web chat, and social media inquiries.

Cisco Unified Contact Center Express offers:

Sophisticated call routing and comprehensive contact management capabilities

E-mail, Web Chat and social media integration

Automatic call distributor features, including conditional routing, call-in-queue, and expected-wait-time messages

Presence integration to help increase caller satisfaction through improved agent performance and expertise

Workforce optimization, including workforce management and advanced quality management

Next-generation historical and real-time reports and dashboards with flexible presentation options using Cisco Unified
Intelligence Center

A mobile skill manager feature that helps enable skill management on the go

This lab is intended to give the participant hands-on configuration experience with particular components and configuration
elements of the Unified CCX solution. The content in this lab is focused on providing a self-paced interaction experience
highlighting product features and functions specifically requested by Cisco Partners and Customers.

NOTE: Participants should have a degree of familiarity with the software, tools and methods used to deploy, configure and
maintain Cisco Customer Collaboration technologies.

About This Lab


This Unified Contact Center Express Enablement Modules lab includes the following topics:

Students will observe and interact including the configuration and/or installation of the following components:

o CAD to Finesse Migration

o Advanced Unified CCX Scripting Techniques

o Email and Chat Provisioning for multi-channel communications

o Finesse Gadget Creation and Customization

o Cisco Unified Intelligence Center Report Customization and Creation

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 1 of 182
Cisco dCloud

Table of Contents

About This Solution .................................................................................................................................. 1


About This Lab ......................................................................................................................................... 1
Lab Workflow .................................................................................................................................................... 7
Modular Approach .................................................................................................................................................. 7
Lab Requirements .................................................................................................................................... 8
Lab Configuration .................................................................................................................................... 8
Lab Topology ........................................................................................................................................... 8
Applications and Versions .................................................................................................................................. 9
Lab Pre-Configuration ...................................................................................................................................... 10
Unified Contact Center Express 10.6 .................................................................................................................... 10
Dial Plan ................................................................................................................................................................ 10
Certificate Management and DNS Resolution ...................................................................................................... 10
Cisco Jabber .......................................................................................................................................................... 10
Connecting to Your Pod ......................................................................................................................... 11
Lab Orientation ...................................................................................................................................... 12
Connecting to Required Resources ................................................................................................................... 12
Introduction .......................................................................................................................................................... 12
Host Reference and Use Cases ............................................................................................................................. 12
Create and Connect RDP Sessions ........................................................................................................................ 13
Activity Complete ................................................................................................................................................. 14
Module 1: Cisco Agent Desktop (CAD) to Finesse Migration ................................................................... 15
Module Overview ............................................................................................................................................ 15
What is Cisco Finesse? .......................................................................................................................................... 15
CAD and Finesse Mixed Mode Operation ............................................................................................................. 16
Mixed Mode Functional Caveats .......................................................................................................................... 16
CAD to Finesse Recommended Approach ............................................................................................................ 16
Module Objectives ........................................................................................................................................... 17
Unified CCX 10.6(1) Configuration Review ........................................................................................................ 17
Confirm RmCm Configuration ............................................................................................................................... 17
Enterprise Data and Workflow Assignments ........................................................................................................ 19
Review CAD Workflows ........................................................................................................................................ 21
Verify Operation of CAD and Supervisor Desktop ............................................................................................. 25
Launch and Login to the Cisco Supervisor Desktop .............................................................................................. 25
Launch and Login to the Cisco Agent Desktop ...................................................................................................... 25
Place a Test Call to the Customer Service Unified CCX Script Application ............................................................ 27
Enabling CAD and Cisco Finesse Mixed Mode Operation .................................................................................. 29
Confirm Status of Cisco Finesse Services .............................................................................................................. 29
Activate Cisco Finesse Services ............................................................................................................................. 30
Confirm Finesse Service Activation ....................................................................................................................... 30
Configure the Customer Service Workflow in Cisco Finesse .............................................................................. 32
Finesse Administration Overview ......................................................................................................................... 32
Access Cisco Finesse Administration .................................................................................................................... 32
Modify Call Variables Layout ................................................................................................................................ 33

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 2 of 182
Cisco dCloud

Desktop Layout ..................................................................................................................................................... 34


Add Phone Book ................................................................................................................................................... 34
Configure Reason Codes ....................................................................................................................................... 36
Add Workflows and Actions ................................................................................................................................. 37
Assigning Configured Resources to the Customer Service Team ......................................................................... 39
Complete and Test Agent Team Migration ....................................................................................................... 41
Log into the Cisco Finesse Desktop ....................................................................................................................... 41
Validate Cisco Finesse Workflow Elements .......................................................................................................... 43
Module 1 Conclusion ....................................................................................................................................... 45
Module 2: Advanced Unified CCX Scripting Techniques .......................................................................... 46
Module Overview ............................................................................................................................................ 46
Module Objectives ........................................................................................................................................... 47
Unified CCX 11.0(1) Configuration Review ........................................................................................................ 47
Confirm Cisco Script Application Configuration .................................................................................................... 48
Locate and Download the current Customer Service Unified CCX Script File ....................................................... 49
Analyze the Customer Service CCX Application Script Work Flow ..................................................................... 50
Call Flow Review ................................................................................................................................................... 50
Place a Test Call to the Customer Service Unified CCX Script Application ............................................................ 52
Log into Unified CCX as a Customer Service Agent and Accept the Call ............................................................... 53
Observations ......................................................................................................................................................... 56
Unified CCX Editor Orientation ......................................................................................................................... 56
About the Cisco Unified CCX Editor ...................................................................................................................... 56
Launch the Unified CCX Editor .............................................................................................................................. 56
Open a Unified CCX Script File .............................................................................................................................. 57
Unified CCX Editor Window Layout ...................................................................................................................... 58
Explore the Current version of the Customer Service Application Script ........................................................... 59
Call Variables Used in the Script ........................................................................................................................... 59
Variable Naming Conventions .............................................................................................................................. 59
Identify and Review Script Steps .......................................................................................................................... 60
Using Advanced Scripting Techniques to Enhance Caller Experience ................................................................. 65
About the Estimate Wait Time Statistic ................................................................................................................ 65
Functional Workflow Objectives ........................................................................................................................... 66
Programmatic Requirements ................................................................................................................................ 66
Adding New Script Variables ................................................................................................................................. 67
Adding Unified CCX Editor Palette Steps .............................................................................................................. 70
Review Added Steps ............................................................................................................................................. 76
Validate and Save ................................................................................................................................................. 77
Upload and Refresh .............................................................................................................................................. 77
Test and Validate .................................................................................................................................................. 79
Module 2 Conclusion ....................................................................................................................................... 81
Module 3: Provisioning Finesse Agent Email and Unified CCX WebChat ................................................. 82
Module Overview ............................................................................................................................................ 82
What is Unified CCX WebChat? ............................................................................................................................ 82
What is Cisco Finesse Agent Email? ...................................................................................................................... 83
Module Objectives ........................................................................................................................................... 84
Topology Review and Pre-Configuration .......................................................................................................... 84
Topology ............................................................................................................................................................... 84
Cisco Unified Contact Center Express 11.0(1) ...................................................................................................... 85

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 3 of 182
Cisco dCloud

Cisco SocialMiner 11 ............................................................................................................................................. 85


Microsoft Exchange Server 2010 .......................................................................................................................... 85
Microsoft Internet Information Services (IIS) ....................................................................................................... 86
Agent Email and WebChat Design Specifications .............................................................................................. 87
Chat and Email CSQs ............................................................................................................................................. 87
Configure the Unified CCX Chat and Email Subsystem ...................................................................................... 87
Create Skills for Email and WebChat .................................................................................................................... 88
Social Miner Configuration ................................................................................................................................... 89
Mail Server Configuration ..................................................................................................................................... 90
Adding Chat and Email Contact Service Queues ................................................................................................... 90
Assigning Chat and Email CSQs to the Customer Service Agent Team ................................................................. 93
Assigning Email and WebChat Skills to Agents ..................................................................................................... 94
Predefined Responses .......................................................................................................................................... 95
Create a Chat Web Form and Social Minder Chat Widget .................................................................................... 96
Email and Chat Channel Parameters .................................................................................................................... 99
Chat and Email Provisioning Complete ................................................................................................................. 99
Configure Cisco Finesse to Enable Agent Email and WebChat ......................................................................... 100
Configure Desktop Layout .................................................................................................................................. 100
Hosting the Chat Web Form Generated Code ................................................................................................. 102
Save chat.html to ad1.dcloud.cisco.com ............................................................................................................ 102
Restart IIS ............................................................................................................................................................ 103
Verify Web Form ................................................................................................................................................. 103
Testing Unified CCX WebChat ......................................................................................................................... 104
Log in to Cisco Finesse and Transition to Ready for Chat and Email ................................................................... 104
Test Unified CCX WebChat .................................................................................................................................. 105
Testing Cisco Finesse Agent Email .................................................................................................................. 107
Send An Email to Customer Service .................................................................................................................... 107
Reply to a Customer Email .................................................................................................................................. 107
Confirm Receipt of Reply .................................................................................................................................... 108
Last-Agent routing (Email Stickiness) .................................................................................................................. 108
Module 3 Conclusion ..................................................................................................................................... 110
Module 4: Finesse Gadget Creation and Customization Tutorial ........................................................... 111
Module Overview .......................................................................................................................................... 111
What is Cisco Finesse? ........................................................................................................................................ 111
Finesse Gadgets at a Glance ............................................................................................................................... 112
Module Objectives ......................................................................................................................................... 112
Topology Review and Pre-Configuration ........................................................................................................ 112
Topology ............................................................................................................................................................. 112
Cisco Unified Contact Center Express 11.0(1) .................................................................................................... 113
Microsoft Internet Information Services (IIS) ..................................................................................................... 113
An Overview of Gadget Operation ................................................................................................................. 114
What is the WebService Sample Gadget ......................................................................................................... 114
Basics of Operation ............................................................................................................................................. 114
How Will We Use It? ........................................................................................................................................... 114
Download Gadget Code from Cisco DevNet .................................................................................................... 115
The Anatomy of a Gadget .............................................................................................................................. 116
Create the Current Promotion XML File .......................................................................................................... 117
Create the New CurrentPromotion.xml File ....................................................................................................... 117

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 4 of 182
Cisco dCloud

Save the CurrentPromotion.xml File to the IIS Web Server ................................................................................ 118
Restart IIS on ad1.dcloud.cisco.com ................................................................................................................... 118
Verify Accessibility of CurrentPromotion.xml ..................................................................................................... 118
Edit the WebService JavaScript File ................................................................................................................ 119
Edit the Gadget Definition File WebService.xml ............................................................................................. 120
Edit the Gadget Header ...................................................................................................................................... 121
Edit the Gadget Body .......................................................................................................................................... 122
Edit the Cascading Style Sheet (CSS) Associated with the Gadget ................................................................... 122
Hosting the WebService Gadget in Finesse on Unified CCX ............................................................................. 124
Set the password for the Cisco Unified CCX 3rd Party Gadget Directory ............................................................. 124
Upload Gadget Files to the Cisco Finesse 3rd Party Gadget Directory ................................................................ 125
Observe the Finesse Agent Desktop Layout Prior to Gadget Deployment ....................................................... 127
Add the Gadget to the Finesse Agent Desktop Layout .................................................................................... 128
Confirm Operation of the Custom Cisco Finesse Gadget ................................................................................. 132
Module 4 Conclusion ..................................................................................................................................... 134
Module 5: Cisco Unified Intelligence Center (CUIC) Report Customization and Creation ....................... 135
Module Overview .......................................................................................................................................... 135
What is Cisco Unified Intelligence Center Standard? ......................................................................................... 135
What is Cisco Unified Intelligence Center Premium? ......................................................................................... 135
Module Objectives ......................................................................................................................................... 136
Unified CCX 11.0(1) Configuration Review ...................................................................................................... 136
Lab Module Preparation ................................................................................................................................ 137
CUIC Administration ...................................................................................................................................... 138
CUIC Interface Layout .................................................................................................................................... 138
Configuring CUIC for an End User ................................................................................................................... 139
Log In to CUIC Standard ...................................................................................................................................... 139
Create a Dashboards Sub-Category for Customer Service ................................................................................. 140
Grant Security Privileges to a System End User .................................................................................................. 141
Create and Customize a Report ...................................................................................................................... 142
Log in to CUIC as an End User ............................................................................................................................. 142
Customize the Report by editing the data View ................................................................................................. 144
Customize the Report further by editing the Default Filter ................................................................................ 146
Run a Stock and Custom Report and Compare ................................................................................................... 147
Create a Dashboard ....................................................................................................................................... 149
Modify a Report for Use in a Dashboard ............................................................................................................ 149
Create a new Dashboard .................................................................................................................................... 149
Add items to a Dashboard .................................................................................................................................. 150
Getting Started with Unified Intelligence Center Premium ............................................................................. 152
Integrating CUIC Premium with Unified CCX ................................................................................................... 152
Identify Reporting Requirements and Design a CUIC Report ........................................................................... 156
Customer Report Requirements and Existing Capabilities ................................................................................. 156
Expanding on and Clarifying Reporting Requirements ....................................................................................... 157
Based on the requirements specified our report data set should include the following viewable data: ........... 157
Visual Presentation ............................................................................................................................................. 157
Identifying SQL Programming to Create a Report Data Source .......................................................................... 158
Create a Report Definition and Parameter Value List ..................................................................................... 158
Create the Report Definition .............................................................................................................................. 158
Create a Value List for the @VoiceApplicationName Parameter ....................................................................... 163

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 5 of 182
Cisco dCloud

Complete Parameter Configuration using a Value List ....................................................................................... 165


Create a Report using the new Report Definition ........................................................................................... 166
Customize Data Grid View of the New Report .................................................................................................... 167
Create a Pie Chart Data View .............................................................................................................................. 169
Test Report Execution .................................................................................................................................... 170
Test the Chart Data View .................................................................................................................................... 172
Export the Packaged Report and Import to CUIC Standard ............................................................................. 173
Test Imported Call Summary By Inquiry Type Report ......................................................................................... 175
Module 5 Conclusion ..................................................................................................................................... 176
Lab Conclusion ..................................................................................................................................... 176
Appendix A: CAD to Finesse Migration Tool ........................................................................................ 177
What is Migrated? .............................................................................................................................................. 177
Download the Utility ........................................................................................................................................... 177
Export the CAD configuration using the Utility ................................................................................................... 178
Importing the CAD configuration to Finesse using the Utility ............................................................................ 180
Appendix B Technical Reference Documents ........................................................................................ 181
CAD to Finesse Migration ............................................................................................................................... 181
Scripting with Unified Contact Center Express 11 ........................................................................................... 181
Provisioning the Chat and Email Subsystem ................................................................................................... 181
Reporting System Technical Reference ........................................................................................................... 181

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 6 of 182
Cisco dCloud

Lab Workflow
Modular Approach

The lab consists of a series of five modules, each of which is tailored to require between 45 to 60 minutes. All modules are
designed to operate independently so that students with limited time may select those topics most important to a personalized
professional development approach.

Note: Modules may be completed in any order desired. The greatest learning benefit will be realized when approached in
sequential order and through completion of each activity.

Module 1: Cisco Agent Desktop (CAD) to Finesse Migration

Module 2: Advanced Unified CCX Scripting Techniques

Module 3: Finesse Agent Email and Unified CCX WebChat Provisioning

Module 4: Finesse Gadget Creation and Customization Tutorial

Module 5: Cisco Unified Intelligence Center Report Customization and Creation

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 7 of 182
Cisco dCloud

Lab Requirements
The table below outlines the requirements for this preconfigured lab activity.

Table 1. Lab Requirements

Required Optional

Laptop with Cisco AnyConnect None


Mobile or Office Telephone with Capability to Dial Domestic LD

Lab Configuration
This lab contains preconfigured users and components to illustrate the scripted scenarios and features of this solution. All
information needed to access the demonstration components is in the Topology and Servers menus of your active session.

Topology Menu. Click on any server in the topology and a popup window will appear with available server options.

Servers Menu. Click on or next to any server name to display the available server options and credentials.

Table 2. Demonstration User Information

User Name User ID Password Endpoint Devices Phone Email/Directory URI

Charles Holland cholland C1sco12345 Cisco Jabber for Windows 6018 cholland@dcloud.cisco.com

Anita Perez aperez C1sco12345 Cisco Jabber for Windows 6017 aperez@dcloud.cisco.com

Lab Topology
This demonstration includes several server virtual machines. Most of the servers are fully configurable using the administrative
level account. Administrative account details are included in the script steps where relevant and in the server details table.

Figure 1. Lab Topology Overview

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 8 of 182
Cisco dCloud

Table 3. Equipment details

Name Description Host Name (FQDN) IP Address Username Password

UCCX1 Unified Contact Center Express 10.6(1)SU1 uccx1.dcloud.cisco.com 198.18.133.19 ccxadministrator dCloud123!

UCCX2 Unified Contact Center Express 11.0.1 uccx2.dcloud.cisco.com 198.18.133.20 ccxadministrator dCloud123!

CCX-SM1 Cisco Social Miner 11.0 ccx-sm1.dcloud.cisco.com 198.18.133.21 administrator dCloud123!

CUIC1 Unified Intelligence Center Premium 11 cuic1.dcloud.cisco.com 198.18.133.22 administrator dCloud123!

UCM1 Communications Manager 11.0 (Call Control) ucm1.dcloud.cisco.com 198.18.133.3 administrator dCloud123!

IMP1 IM & Presence 11.0 (Presence and Chat) cup1.dcloud.cisco.com 198.18.133.4 administrator dCloud123!

CUC1 Unity Connection 11.0 (Voicemail) cuc1.dcloud.cisco.com 198.18.133.5 administrator dCloud123!

AD1 Active Directory, DNS, ADFS2.0 ad1.dcloud.cisco.com 198.18.133.1 administrator C1sco12345


Exchange Exchange 2010 mail1.dcloud.cisco.com 198.18.133.2 administrator C1sco12345

Workstation 1 Windows 7 wkst1.dcloud.cisco.com 198.18.133.36 cholland C1sco12345

Workstation 2 Windows 7 wkst2.dcloud.cisco.com 198.18.133.37 aperez C1sco12345

NOTE: Two passwords are used throughout this lab. Password1 (dCloud123!) is used across all Cisco Collaboration components
and linux hosts. Password2 (C1sco12345) is used for all Microsoft Active Directory accounts including administrative, service, and
demonstration user accounts. This applies to both Platform and Administrative user accounts within Cisco Collaboration
Applications.

Applications and Versions


The Table below provides detail on the software components used in this Lab.
Software Description Version Installed

Cisco Unified Communications Manager 11.0.1.10000-10

Cisco Unified IM and Presence Service 11.0.1.10000-6


Cisco Unified Contact Center Express 11.x 11.0.1.10000-75

Cisco Unified Contact Center Express 10.6 10.6.1.11001-31


Cisco Social Miner 11.0.1.10000-36
Cisco Unified Intelligence Center Premium 11.0.1.10000-107

Cisco Unity Connection 11.0.1.10000-10

Microsoft Windows Server (AD, DNS, IIS) Microsoft Windows Server 2008 R2 with Hotfix 3
Microsoft Exchange Microsoft Exchange 2010

External DNS server Microsoft Windows Server 2008 R2

Mail Server Microsoft Windows Server 2008 R2 with Exchange 2010

Demonstration Workstations Microsoft Windows 7

Cisco Jabber for Windows 11.x

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 9 of 182
Cisco dCloud

Lab Pre-Configuration
In order to save time, certain elements of this lab have been pre-configured in advance to provide a baseline starting point. Please
review this section before proceeding to the first configuration activity.

Unified Contact Center Express 10.6

This lab focuses primarily on feature configuration using Unified Contact Center Express (CCX) version 11.0.1, however to
illustrate the Cisco Agent Desktop (CAD) to Finesse migration process a standalone instance of Unified Contact Center Express
10.6(1) SU1 mirroring the Team, Users, Skills, CSQs and other fundamental configuration elements of the version 11.0.1 host has
been implemented.

Dial Plan

Basic Class of Control elements have been pre-defined as follows:

Table 1. Partitions

Partition Description
ALL-DN-PT Collaboration Specialist Training DN Partition

ALL-URI-PT Collaboration Specialist Training URI Partition

Table 2. Calling Search Spaces

Calling Search Space Partitions

CST-DN-PT ALL-DN-PT, ALL-URI-PT, (All System Generated Partitions)

Certificate Management and DNS Resolution

All components of this Lab environment have been provisioned with SSL certificates signed by a Microsoft Windows Server 2008
Certificate Services server running on ad1.dcloud.cisco.com. Workstations used for configuration and demonstration have
been provisioned to trust ad1.dcloud.cisco.com as a Trusted CA.

In addition, all Collaboration systems used in this demonstration are configured with Fully Qualified Domain Names and each is
resolvable via hostname lookup.

Cisco Jabber

Cisco Jabber is used exclusively for all Unified CCX Agent telephony functions.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 10 of 182
Cisco dCloud

Connecting to Your Pod

Follow the steps below to schedule your demonstration and configure your demonstration environment.

1. Browse to dcloud.cisco.com, choose the location closest to you, and then login with your Cisco.com credentials.

2. Schedule a demonstration. [Show Me How]

3. Test your bandwidth from the demonstration location before performing any demonstration scenario. [Show Me How]

4. Verify your demonstration is Active under My Demonstrations on the My Dashboard page in the Cisco dCloud UI.

It may take up to 30 minutes for your demonstration to become active.

5. If you are not connected to the lab from behind a router, on your laptop, use Cisco AnyConnect paired with the session
credentials from the UI to connect to the lab. [Show Me How]

6. From your laptop, access the demonstration workstation named wkst1 located at 198.18.133.36 and login using the following
credentials: Username: dcloud\cholland, Password: C1sco12345.

Recommended method: Use Cisco AnyConnect [Show Me How] and the local RDP client on your laptop. [Show Me
How]

Alternate method: Use the Cisco dCloud Remote Desktop client with HTML5. [Show Me How]

o Accept any certificates or warnings

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 11 of 182
Cisco dCloud

Lab Orientation
Note: Read and Complete the Activities in this section before proceeding. Connections to lab hosts require an active
connection to the assigned Lab Pod via the Cisco AnyConnect VPN Client.

Connecting to Required Resources


Introduction

The student will be using a series of Remote Desktop Protocol (RDP) sessions to Microsoft Windows workstations and servers in
order to complete the following:

Access Administrative Interfaces for Configuration

Interact with the Unified CCX Applications and Tools used in this lab

Test features and functionality

In this activity, the student will configure and connect the RDP sessions required and referenced throughout the lab.

Note: Connections to lab hosts require an active connection to the assigned Lab Pod through either a router connected to dCloud
or the Cisco AnyConnect VPN Client.

The table below identifies the hosts, use cases, and credentials required when connecting.

Name Use Case Host Name (FQDN) IP Address Domain\Username Password

Workstation 1 Primary Configuration Workspace, wkst1.dcloud.cisco.com 198.18.133.36 dcloud\cholland C1sco12345


Demonstration User Charles Holland

Workstation 2 Demonstration User Anita Perez wkst2.dcloud.cisco.com 198.18.133.37 dcloud\aperez C1sco12345

AD1 Active Directory, DNS, IIS ad1.dcloud.cisco.com 198.18.133.1 dcloud\administrator C1sco12345

Throughout this guide, steps will instruct the student to Open or Switch to the RDP session connected to one of the hosts
referenced above. These statements always reference the FQDN of the host accompanied at times by contextual information. All
FQDNs should be resolvable directly from the student workstation (while connected to Lab Pod via VPN - required), however IP
addresses may be used as well.

Host Reference and Use Cases

wkst1.dcloud.cisco.com (Workstation 1):

o Lab User Assignment: Charles Holland

Windows Logon Account: cholland

Windows Logon Domain: dcloud

Windows Logon Password: C1sco12345

o Use Cases: Workstation 1 is the primary anchor point for configuration activities in addition to hosting the Cisco
Supervisor Desktop client for lab user Charles Holland.

wkst2.dcloud.cisco.com (Workstation 2):

o Lab User Assignment: Anita Perez

Windows Logon Account: aperez

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 12 of 182
Cisco dCloud

Windows Logon Domain: dcloud

Windows Logon Password: C1sco12345

o Use Cases: Workstation 2 is assigned to Lab User Anita Perez. Workstation 2 is used only for demonstration
and testing of features.

ad1.dcloud.cisco.com (Workstation 2):

o Lab User Assignment: Administrator

Windows Logon Account: administrator

Windows Logon Domain: dcloud

Windows Logon Password: C1sco12345

o Use Cases: AD1 is used as part of Module 3 in order to host the Web Form for Unified CCX WebChat.

Create and Connect RDP Sessions

NOTE: These Steps will be repeated for each host specified, until an active connection has been created for each.

From the Students personal computer:

1. Click Start > All Programs > Accessories > Remote Desktop Connection.

2. Click Options.

3. Choose the Local Resources tab.

4. Click Settings, under Remote audio.

5. Choose Play on this computer and Do Not Record.

Figure 2. Audio Playback

6. Click OK.

7. Click the Experience tab.

8. Choose LAN (10Mbps or higher) from the connection speed menu.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 13 of 182
Cisco dCloud

Figure 3. LAN Connection Speed

9. Click the General tab and fill in the Computer and Username fields based on the table below, according to the host to which
you are connecting:

Table 3. RDP Connection Settings

Field WKST1 WKST2 AD1

Computer: wkst1.dcloud.cisco.com wkst2.dcloud.cisco.com ad1.dcloud.cisco.com


or 198.18.133.36 or 198.18.133.37 or 198.18.133.1

Username: dcloud\cholland dcloud\aperez dcloud\administrator

10. Click Allow me to save credentials.

11. (Optional) Click Save and use the Save As file dialog to name and save the session definition to your computer.

Figure 4. Saving Session Settings

12. Click Connect.

13. When Prompted enter the Password: C1sco12345 and click Remember my credentials.

14. Click OK.

15. Acknowledge any warnings to proceed.

16. Repeat Steps 1-15 for each Host listed in table 3.

Activity Complete

This activity is complete when the student has three active RDP sessions to the hosts listed in the table above.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 14 of 182
Cisco dCloud

Module 1: Cisco Agent Desktop (CAD) to Finesse Migration


ATTENTION: Students MUST complete the activities Connecting to Your Pod and Lab Orientation prior to working on this lab
module. This ensures an active Cisco AnyConnect VPN session to your assigned Lab Pod and active RDP connections to
wkst1.dcloud.cisco.com, wkst2.dcloud.cisco.com, and ad1.dcloud.cisco.com.

Module Overview
In this Module, we will explore the process for migrating a team of Unified CCX Agents and Supervisors who are using the Cisco
Agent and Supervisor Desktop applications to Cisco Finesse. This is a common situation for existing CCX installations, and is
required prior to upgrading to Unified Contact Center Express 11, which no longer maintains support for the CAD/CSD client
applications. In order to maintain consistency of service, CAD workflows and configuration elements must be migrated to Finesse
prior to an upgrade to Unified CCX 11.

What is Cisco Finesse?

Finesse is a browser based Single Customizable Desktop Interface for both Agents and Supervisors. The interface is a
compilation of customizable tables for various desktop layouts. It allows the Agent to change their state and interact with CRMs,
3rd Party tools, Recording or reporting via customizable Gadgets.

Figure 5. Cisco Finesse Desktop

Cisco Finesse can use 3rd Party Gadgets to imbed applications into its interface or using REST API imbed the Finesses API into a
customers own application.

Gadgets use existing web standards:

XML to define metadata

HTML for markup

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 15 of 182
Cisco dCloud

JavaScript for interactivity

CSS for presentation and

Follow OpenSocial Gadget specification (Metadata storage and Content)

CAD and Finesse Mixed Mode Operation

Mixed mode operation can be summarized as a situation in which at least one (may be multiple) team(s) of Unified Contact Center
Express Agents/Supervisors are leveraging the CAD and CSD client tools to log in and accept ACD calls, while Cisco Finesse
Desktop services have been activated on the Unified CCX server or HA cluster.

Mixed mode operation is intended to facilitate Agent migration to the Cisco Finesse Desktop and first became available with
Unified CCX release 10.6(1), and required the application of a Cisco Options Package to enable the functionality. With the
subsequent release of Unified CCX 10.6(1) SU1, the Cisco Options Package is no longer required (or available) and mixed mode
capability is included in the release.

Note: In order to run in Mixed Mode you must upgrade to Unified Contact Center Express 10.6(1)SU1 or greater.

Mixed Mode Functional Caveats

When CAD Finesse Mixed Mode operation is enabled, the following functional caveats must be observed:

The Agent Web Chat feature is ONLY available when using the Cisco Finesse Desktop.

The Agent E-mail feature is ONLY available when using the Cisco Finesse Desktop.

Cisco Finesse supervisors CANNOT access recordings previously made with CAD or CSD. It is recommended to archive
the recordings made with CAD and CSD.

Because of these functional limitations when operating in mixed mode is imperative that certain guidelines be followed when
enabling this mode of operation with the intention of migrating from CAD to Finesse.

CAD to Finesse Recommended Approach

A team is defined as one or more supervisors managing a group of agents receiving contacts from one or more Contact Service
Queues (CSQs).

Agents and supervisors should be migrated by team where all agents and supervisors within a single team use either
Finesse or CAD/CSD exclusively. Supervisors logged into CSD CANNOT manage agents logged into Finesse and
reverse is true.

Prior to migration of a team Cisco Finesse workflows matching those functional capabilities of the CAD workflow should
be created.

Move all Agents who handle Chat and Email to Finesse at the same time and as soon as possible after enabling Finesse
services. These functions will only be available when using the Finesse desktop.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 16 of 182
Cisco dCloud

Module Objectives
In this module, we will migrate the Customer Service agent team currently using the Cisco Agent Desktop and Cisco
Supervisor Desktop to Cisco Finesse by performing the following tasks:

Review the Unified CCX identifying active Teams and CAD workflows to be migrated to Cisco Finesse.

Test current inbound call routing and CAD voice workflow and observe results.

Activate Finesse Services.

Use the Finesse Desktop Administration interface to configure required Workflows.

Complete Finesse Migration.

Test inbound call routing and workflow after Finesse Migration.

Unified CCX 10.6(1) Configuration Review


Unified Contact Center Express 10.6(1)SU1 has been installed and provisioned with active agents and teams as part of this lab
exercise. The following tables define the basic configuration of the system as part of the lab pre-configuration.

Table 4. Configured Teams

Name Primary Supervisor Agents Assigned CSQs Assigned

Customer Service Charles Holland Anita Perez, Charles Holland CustomerService_Voice

Product Support Shannelle Macks Shannelle Macks ProductSupport_Voice

Table 5. Primary Demonstration Users

Name Use Case IPCC Ext Login ID Password

Charles Holland Acts as both a Supervisor and Agent for the 6018 cholland C1sco12345
Customer Service Team

Anita Perez Acts as the primary Agent for the Customer Service 6017 Aperez C1sco12345
team

Shannelle Macks Supervisor and Agent for Product Support (not used for 6019 smacks C1sco12345
feature demonstration)

Table 6. Contact Service Queues (CSQs)

Name Use Case Skill Name Skill Level

CustomerService_Voice Voice Contact CSQ for Customer Service Minimum - 5


Customer Service Calls
ProductSupport_Voice Voice Contact CSQ for Product Support Minimum - 5
Product Support

Confirm RmCm Configuration

1. Open or bring focus to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Launch Mozilla Firefox by clicking on the shortcut in the task bar [ ].

3. From the homepage navigate to Collaboration Admin Links > Cisco Unified CCX 10.6.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 17 of 182
Cisco dCloud

Figure 6. Unified CCX Admin Web Link

4. Click the Cisco Unified Contact Center Express Administration hyperlink.

5. Log in to Unified CCX with the (administrator/dCloud123!) password combination.

6. From the menu choose Subsystems > RmCm > Teams.

Figure 7. RmCM > Teams

7. Observe the entries for both Customer Service and Product Support.

Figure 8. Configured Teams

8. Click the hyperlink for Customer Service.

9. Confirm that the configuration matches the graphic below:

Figure 9. Team Configuration

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 18 of 182
Cisco dCloud

10. From the menu select Subsystems > RmCm > Resources

11. Confirm that the list of Resources matches the list below.

Figure 10. Resources

12. From the menu select Subsystems > RmCm > Contact Service Queues

Figure 11. RmCM > Contact Service Queues

13. Confirm that the CSQs provisioned match the graphic below:

Figure 12. Contact Service Queues

Enterprise Data and Workflow Assignments

In a Unified CCX deployment using the legacy Cisco Agent Desktop (CAD) tool, we must access and navigate the Cisco
Desktop Administrator web interface to identify certain components of the voice contact workflow including:

Call Variable Data captured through the execution of a Unified CCX application script.

Data Fields presented to an agent .

Workflow groups assigned to Unified CCX agents.

1. Use the drop-down menu in the upper right corner of the Unified CCX Administration web page to select Cisco Desktop
Administrator.

Figure 13. Select Cisco Desktop Administration

2. Click Go.

3. From the navigation pane on the left click the + (plus sign) next to the Services Configuration label.

4. Expand Enterprise Data by clicking the + (plus sign) directly to the left of the label.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 19 of 182
Cisco dCloud

5. Click the hyperlink for Fields.

Figure 14. Enterprise Data Fields Link

6. Locate the Search For filter and type Call V. Click Find.

Figure 15. Search String

7. The following Custom Call Variables (Also referred to as Peripheral Call Variables in the UCCX Script editor), are being
written for each incoming call:

Call Variable 1 The type of customer inquiry represented by a string of text is stored and set in this variable. This data
is both written to the CCX database and presented to the Customer Service agent. Possible options are:

o New Order

o Existing Order

o Other

Call Variable 2 The Unified CCX Script captures the Calling Number (ANI) of the incoming voice contact and the data
is both recorded in this variable and presented to the Customer Service agent.

Figure 16. Configured Call Variables

Note: A full analysis of the data collected during Unified CCX application script execution and how certain data elements are
associated with a contact is part of Module 2: Advanced Unified CCX Scripting Techniques.

8. From the navigation pane on the left click the + (plus sign) next to the Personnel label.

9. Click the hyperlink for Agents.

Figure 17. Agents Link

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 20 of 182
Cisco dCloud

10. Confirm that both Charles Holland and Anita Perez have been assigned to the Customer Service Workflow Group. This is
the means by which a CAD Workflow configuration is applied to a Unified CCX Agent.

Figure 18. Agent Workflow Assignments

Review CAD Workflows

Next, we must use the Cisco Desktop Administrator application to review the assigned Workflow Configuration identified in the
previous step. Of particular importance will be

Reason Codes for Logout and Not Ready

Phone Books

Voice Contact Work Flow Actions (Macros) applied to members of the Customer Service team. These items will
need to be replicated as Cisco Finesse workflows.

1. Launch the Cisco Desktop Administrator utility by clicking on the icon in the taskbar of wkst1.dcloud.cisco.com.

Figure 19. Desktop Administrator Icon

2. Use the Left hand navigation pane to expand Call Center 1 > Work Flow Configuration > Work Flow Groups > Customer
Service. Click Reason Codes.

Figure 20. Reason Codes Navigation

3. Observe that the following Reason Codes are assigned to the Logout function:

100 End Of Shift

101 Lunch

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 21 of 182
Cisco dCloud

Figure 21. Logout Codes

4. Click the Not Ready tab to review the assigned reasoned codes.

5. Confirm that the following Reason Codes are assigned to the Not Ready function:

102 Break

103 Training

Figure 22. Not Ready Codes

6. Review the configured Phone Book for this Workflow Group by clicking the Phone Book menu option from the menu tree.

7. Click Edit to review the current Phone Book.

Figure 23. Phone Book

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 22 of 182
Cisco dCloud

8. As part of the Cisco Agent Desktop to Cisco Finesse migration process, any provisioned Phone Books should be
Exported as CSV files for later import into the Cisco Finesse Desktop Administration portal. Click Export.

9. From the Export Phonebook dialog, click Browse to a Different Folder.

10. Navigate to Desktop\CCX-Enablement\Module1and click Open.

11. Click OK to complete the export.

Figure 24. Phone Book Export Parameters

12. Click OK to close the Phone Book Editor.

13. From the left hand navigation pane expand CAD Agent and select Voice Contact Work Flows.

Figure 25. Contact Work Flow Navigation

14. Select Default and click Edit.

Figure 26. Select Default

15. From the Voice Contact Work Flow configuration editor, select the entry for Answered under Events.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 23 of 182
Cisco dCloud

16. Under Rules highlight CallAnswered, and then select Finesse Sample Gadgets.

Figure 27. Select Rule to Edit

17. Click Edit to view the actions associated with this rule.

18. Notice that this is a simple HTTP Get Action the result of which is pushed to the main browser window of the Cisco Agent
Desktop. When a call is Answered by an agent, the integrated CAD browser will redirect to the Cisco Finesse Sample
Gadgets page hosted on Cisco DevNet.

Figure 28. Edit Rule Action

19. The URL to which the browser is redirected is a concatenation of Protocol, Host, and Path. In our case:
https://developer.cisco.com/site/finesse/downloads/sample-gadgets.

20. Click Cancel to exit the HTTP Action Setup configuration dialog.

21. Close the Cisco Desktop Workflow Administrator application by clicking on the X in the upper right-hand corner of the
window.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 24 of 182
Cisco dCloud

Verify Operation of CAD and Supervisor Desktop


We have now reviewed the baseline configuration of Resources, Teams, and Workflows for the configured Customer Service
team. Our next objective will be to test both the CSD and CAD tools and validate expected operation of the configured workflow.

Launch and Login to the Cisco Supervisor Desktop

1. From the desktop of wkst1.dcloud.cisco.com, launch the Cisco Supervisor Desktop application by clicking on the icon in
the taskbar.

Figure 29. Launch Supervisor Desktop

2. If prompted regarding an incompatible JRE version for agent e-mail click No.

3. In the Login field type cholland. In the Password field, type C1sco12345.

4. Click OK.

5. Acknowledge the message regarding Call Intervention by clicking OK when prompted.

6. From the Select Team drop down menu, choose Customer Service.

7. Note that there are currently no agents actively logged in and taking calls.

Figure 30. Select Agents

Launch and Login to the Cisco Agent Desktop

8. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

9. Launch the Cisco Agent Desktop application by clicking on the icon in the Windows taskbar.

Figure 31. Launch Agent Desktop

Note: Cisco Jabber is used exclusively as the agent telephony endpoint for these lab exercises. Jabber is already running on both
wkst1.dcloud.cisco.com and wkst2.dcloud.cisco.com and is configured to launch and authenticate at Windows Login.

10. Login using the following details:

ID: aperez

Password: C1sco12345

Extension: 6017

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 25 of 182
Cisco dCloud

Figure 32. Login to Agent Desktop

11. Click OK.

12. Confirm that login is successful and that Cisco Agent Desktop indicates that it is in Full Service and Anita Perez is in the
Not Ready state by default.

Figure 33. Cisco Agent Desktop

13. Observe that the CAD integrated browser tab is configured to use www.google.com as the start page.

14. Transition Anita Perez to a Ready state by clicking the associated icon on the CAD menu bar.

Figure 34. Transition to Ready

15. Confirm that the Cisco Agent Desktop status is now Ready.

16. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

17. If necessary, bring the Cisco Supervisor Desktop application into focus.

18. Click the + (plus sign) to the left of Agents in the navigation pane on the bottom left. Observe that Anita Perez is now logged
in and in a Ready state.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 26 of 182
Cisco dCloud

Figure 35. Expand Agent View

Place a Test Call to the Customer Service Unified CCX Script Application

Next, we will place a test call to verify operation of the CAD application and the results of the configured Cisco Agent Desktop
workflow reviewed earlier. You may either use the Cisco Jabber client on wkst1.dcloud.cisco.com or dial through the PSTN
directly.

Note: The preferred method of UCCX script testing is via dial-in from the PSTN this is to ensure clearer prompt playout and higher
overall call quality.

1. Locate the Session Details tab for your lab pod session in dCloud. This will list the automatically assigned DIDs for the
session and the Directory Number (DN) to which to the DID corresponds. In this case you should locate the DID associated
with Directory Number 7800. Consult the graphic below for reference.

Figure 36. Locate DN 7800 under Session DIDs

2. From a telephone with long distance dialing capability dial the DID listed. In the example above (See Figure 36) the number
would be +1(919) 474-5520.

3. Alternatively from the Cisco Jabber client on wkst1.dcloud.cisco.com(Charles Holland) type: 7800 into the Call or Search
field and press Enter or click the green call button.

Figure 37. Call from Cisco Jabber

4. You will be prompted with the following menu choices:

For new orders press 1.

For questions regarding an existing order press 2.

For all other inquiries press 3.

5. Press 1 on the telephone or Cisco Jabber keypad to continue. Based on the menu option selected the icd.aef script sets the
value of the strInquiryType String variable to New Order.

6. Switch to the RDP session connected to wkst2.dcloud.cisco.com(Anita Perez) in order to answer the incoming call.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 27 of 182
Cisco dCloud

7. Click the Answer/Drop button on the Cisco Agent Desktop menu bar to answer the call.

Figure 38. Use CAD to Answer the call

8. Observe that the following call data is passed to the CAD client and that the integrated browser has performed a redirect to
the Finesse sample gadgets page on Cisco DevNet.

Inquiry Type: New Order

Calling Number: (your originating calling number)

Figure 39. Cisco Agent Desktop with Workflow Elements

Recall that in our configuration review we identified that Call Variable 1 is programmed to hold the value for Inquiry Type. This is
achieved by using a Set Enterprise Call Info step from within the Unified CCX Script Palette and setting that value equal to the
contents of the strInquiryType variable. Module 2 Advanced Unified CCX Scripting Techniques, provided detailed coverage
of this topic.

9. If the results of the test call are similar to those displayed in the graphic above then we have successfully confirmed the action
of the Unified CCX script application, parsing of call variables and the expected behavior of configured Cisco Agent Desktop
workflow actions associated with the workflow group is matched.

10. Hang up the active phone call.

This concludes the CAD/CSD validation activity.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 28 of 182
Cisco dCloud

Enabling CAD and Cisco Finesse Mixed Mode Operation


In the previous activities we validated the current CAD/CSD workflow configuration of the Customer Service team currently
configured on our Unified CCX 10.6(1)SU1 instance. We further performed functional testing of the Cisco Agent and Cisco
Supervisor Desktop applications to confirm operation of the tools and configured desktop workflows.

At this point, we are ready to activate Cisco Finesse services and enter Mixed Mode operation in preparation to migrate the
Customer Service team from CAD/CSD to Cisco Finesse.

Confirm Status of Cisco Finesse Services

In Unified CCX version 10.6(1) and earlier, Finesse services must be explicitly enabled by a system administrator. This process
requires authentication using the platform administrator account and access to the Unified CCX CLI interface.

1. Switch focus to the RDP session connected to wkst1.dcloud.cisco.com(Charles Holland).

2. If the Cisco Supervisor Desktop is in focus, minimize it at this time.

3. Launch the PuTTY terminal emulator by clicking the icon [ ] in the windows taskbar.

4. Highlight the entry for uccx1 and click Load.

Figure 40. Select Session and Load

5. Click Open.

6. Login with the username administrator and password dCloud123!.

7. Type the following command followed by the Enter key to validate that Cisco Finesse is currently deactivated:

utils service list

8. Ensure that the status of the Cisco Finesse Tomcat service is [STOPPED] Service Not Activated

Figure 41. Service Status

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 29 of 182
Cisco dCloud

Activate Cisco Finesse Services

9. Activate Cisco Finesse by typing the following command followed by the Enter key.

utils uccx finesse activate

10. When prompted: Do you want to proceed? Type yes and press the Enter key.

11. The Cisco Finesse activation process will commence. You should be prompted as below.

Figure 42. Confirm Activation Request

Note: It may take several minutes for Cisco Finesse activation to complete.

12. Once complete a message indicating successful activation and the requirement to reboot the Unified CCX server will be
displayed.

Figure 43. Confirm Activation

13. To finalize the Cisco Finesse activation reboot the node by typing the following command:

utils system restart

14. Type yes when prompted to proceed.

15. After system shutdown the active PuTTY session will be disconnected. Acknowledge any messages displayed and close the
PuTTY window.

16. Wait at least 5 minutes before proceeding to the next section.

Confirm Finesse Service Activation

1. Launch the PuTTY terminal emulator by clicking the icon in the windows taskbar.

2. Highlight the entry for uccx1 and click Load.

3. Click Open to launch the CLI session.

4. Login with the username administrator and password dCloud123!.

5. Type the following command followed by the Enter key to list the state of all services with pagination to ensure that Cisco
Finesse has been activated:

utils service list page

6. Press the Space Bar key to scroll through installed services until the entry for Cisco Finesse Tomcat can be seen.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 30 of 182
Cisco dCloud

7. Ensure that the status of the Cisco Finesse Tomcat service is [STARTED].

Figure 44. Confirm Service State

8. Close the PuTTY application and acknowledge the prompt to complete the exit process.

9. An additional validation check for the successful activation of Cisco Finesse can be performed using a web browser. Switch
application focus to Mozilla Firefox and open a new tab.

10. Type or paste the following URI into the browser window:

https://uccx1.dcloud.cisco.com:8445/finesse/api/SystemInfo

The browser will render an XML configuration file as demonstrated in the graphic below. Confirm that the status element is
populated as follows: <status>IN_SERVICE</status>.

Figure 45. Confirm Finesse Service Activation

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 31 of 182
Cisco dCloud

11. Congratulations, Cisco Finesse is activated and Unified CCX is operating in Mixed Mode.

Configure the Customer Service Workflow in Cisco Finesse


Now that Cisco Finesse services have been activated, the Unified CCX cluster is operating in Mixed Mode. In essence, the
concurrent operation of both CAD/CSD clients and the Cisco Finesse Desktop are both supported.

In order to complete the migration of the Customer Service team, a corresponding workflow in Cisco Finesse matching the
existing workflow in CAD must be configured to allow continuity of service through the migration process.

Finesse Administration Overview

The Finesse Administrator builds the layout of the Finesse desktop customizing it to provide Agents with all the necessary tools
at their fingertips. Defining Call Variables, Desktop layouts, populating Phonebooks, defining Reason Codes, Team Resources and
finally Team Workflows, accomplish this.

Call Variables: Determine how call variables set during Unified CCX script execution will appear in the Agent Desktop view. You
may define one Call Variable in the Call Header Layout and up to 20 in the two columns below the header.

Desktop Layout: Gadgets and Tabs are defined and uploaded to the Gadget repository.

Note: Module 4 Gadget Creation and Customization Tutorial explores in detail the feature and function of Finesse Gadgets and
how to customize and implement them within the Finesse Desktop Layout.

Phone Books: Administrators have the ability to create a single phone book for a single team or for all agents. These phone books
can be populated either via the Gadget or through CSV import. CSV export is also possible for backing up, updating an existing
phone book or creating a new phone book. Some maximums to be aware of:

Maximum 10 global phone books

Maximum 50 team phone books

Maximum of 1500 contacts

Reason Codes: Administrators can View, Add, Edit, and/or Delete reason codes on a global basis or team specific basis. Note
that any changes or additions take three (3) seconds to take effect and any logged in Agents must logout and login again to see
the changes.

Access Cisco Finesse Administration

1. From any tab of the Mozilla Firefox browser click the Mozilla Firefox Start Page icon [ ].

2. From the homepage navigate to Collaboration Admin Links > Cisco Unified CCX 10.6.

Figure 46. Unified CCX Admin Web Link

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 32 of 182
Cisco dCloud

3. Click the Cisco Unified Contact Center Express Administration hyperlink.

4. From the Navigation drop-down menu select Cisco Finesse Administration and click Go.

Figure 47. Navigate to Cisco Finesse Administration

Finesse Administration may also be accessed using the following URI directly: https://uccx1.dcloud.cisco.com:8445/cfadmin

5. Log in to Cisco Finesse Administration with ID: administrator and Password: dCloud123!

6. Click Sign In.

Figure 48. Login to Cisco Finesse Administration

Modify Call Variables Layout

Call Variables are used to display extra information to Agents on an accepted call. Displayed in three areas of the Manage Call
gadget on the Agents Finesse desktop, these can include but are not limited to Account numbers or a Callers Name. Both
columns, Call Body Left-Hand and Call Body Right-Hand, may be empty if so desired.

Display Name: A friendly label that describes the data expected to be contained in the variable. For example: Inquiry
Type

Variabe: The name of a Unified CCX custom call variable (Peripheral Call Variable) or a user defined Extended Call
Control (ECC) variable.

Variables can be added or deleted based on the customer use case. There is a maximum limit of 10 variables configurable per
column. Once this maximum is reached, the Add Row button is disabled for that respective column.

We will now modify the default Call Variables layout to reflect the call data being collected by our deployed Unified CCX script
application and presented via the CAD today. Our goal is to match as closely the current Agent experience as possible.

1. Modify the Call Variables Layout from the default by deleting any unused variables from the Call Body Left-Hand Column
and Call Body Right-Hand Column layouts, leaving 2 variables in each.

2. Change the Display Name of the Call Header Layout to Inquiry Type. Use the drop-down menu to select callVariable1 and
set it as the value of the Variable field.

3. Change the Display Name of the first listed variable in the Call Body Left-Hand Column to Inquiry Type. Use the drop-
down menu to select callVariable1 and set it as the value of the Variable field.

4. Change the Display Name of the second listed variable in the Call Body Left-Hand Column to Calling Number. Use the
drop-down menu to select callVariable2 and set it as the value of the Variable field.

5. Your configuration should match the graphic below:

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 33 of 182
Cisco dCloud

Figure 49. Cisco Finesse Administration Web Page

6. Click Save. Observe that a message indicating Successfully saved settings is displayed in the upper right-hand corner of
the page.

Desktop Layout

The Desktop Layout configuration determines what the Agents Finesse client will display once they are logged in. This includes
having the ability to answer an incoming call, recording a call, connect to any CRM integrations required by the Agent. Each
functional element is called a Gadget. From this location, the default behavior of the Cisco Finesse Desktop can be defined.
Changes made to the default desktop layout take 10 seconds to take effect. Any agents / supervisors signed in must sign out and
sign back in again to see the new changes. Changes are made in the Finesse Layout XML area. Finesse will validate the XML file
to ensure that it is valid XML syntax and conforms to the Finesse schema.

We will go into further depth regarding the configuration of Finesse Gadgets and modification to the default Finesse layout in
Module 4 Finesse Gadget Customization Tutorial.

Note: The Cisco Finesse Agent and Supervisor Layouts remain the default which disables all references to WebChat and Agent
Email gadgets. This is because Unified CCX WebChat and Finesse Agent Email provisioning are covered in Module 3.

No modification to the Desktop Layout is necessary for this lab exercise.

Add Phone Book

Recall that during the validation activity we observed a Phone Book currently in use by the Customer Service team. As part of our
Cisco Desktop Administrator workflow configuration review, we exported the existing Phone book to a CSV file. In this exercise,
we will create a new Phone Book entry and populate it using an import from the CSV file saved earlier.

1. Click the hyperlink for Phone Books on the Cisco Finesse Administration webpage.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 34 of 182
Cisco dCloud

Figure 50. Select Phone Books

2. Click the New button.

3. In the Name field, type Customer Service. From the Assign To drop-down menu, select Teams. This will create a new entry
for a Phone Book that will be assigned to a particular agent team.

4. Click Save.

Figure 51. Create New Phone Book

5. Click the Customer Service phone book to highlight it. This will open a list of contacts enabling an option to Import.

6. Click the Import button in the bottom right of the page.

7. In the Import Contacts dialog, click the Browse button to launch a file explorer where the previously saved CSV file may be
selected.

Figure 52. Browse for Contacts to Import

8. Browse to Desktop\CCX-Enablement\Module1 and Select the file Customer Service.csv.

Figure 53. Select Customer Service.csv

9. Click Open.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 35 of 182
Cisco dCloud

10. Click OK at the Import Contacts dialog to complete the import.

11. The Contact List should be immediately populated as follows:

Figure 54. Contact List After Import

Configure Reason Codes

In this exercise, we will add Reason Codes to Cisco Finesse that match those in use in the current Cisco Agent Desktop team
workflow. These Reasons will in turn be assigned as resources available to members of the Customer Service agent team.

The table below identifies the Reason Codes to be added:

Table 7. Logout and Not Ready Reason Codes

Reason Label Reason Code Global? Usage

End Of Shift 100 No Logout

Lunch 101 No Logout

Break 102 No Not Ready

Training 103 No Not Ready

1. Click the hyperlink for Reasons on the Cisco Finesse Administration web page main menu.

2. Under the heading Manage Reason Codes (Not Ready) click the New button.

3. Enter the following information to add the Break reason code:

Table 8. Reason Code Break

Setting Input

Reason Label Break

Reason Code 102

Global Un-Checked

4. Click Save.

5. Under the heading Manage Reason Codes (Not Ready) click the New button.

6. Enter the following information to add the Training reason code:

Table 9. Reason Code Training

Setting Input

Reason Label Training

Reason Code 103

Global Un-Checked

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 36 of 182
Cisco dCloud

7. Click Save.

Figure 55. Not Ready Reason Codes

8. Under the heading Manage Reason Codes (Sign Out) click the New button.

9. Enter the following information to add the End Of Shift reason code:

Table 10. Reason Code End Of Shift

Setting Input

Reason Label End Of Shift

Reason Code 100

Global Un-Checked

10. Click Save.

11. Under the heading Manage Reason Codes (Sign Out) click the New button.

12. Enter the following information to add the Lunch reason code:

Table 11. Reason Code Lunch

Setting Input

Reason Label Lunch

Reason Code 101

Global Un-Checked

13. Click Save.

Figure 56. Sign Out Reason Codes

Add Workflows and Actions

In this exercise, we will model a new Cisco Finesse Work Flow to match the HTTP GET action already in use by the Customer
Service agent team in CAD. This workflow will then be assigned as a Customer Service agent team resource.

1. Click the hyperlink for Workflows on the Cisco Finesse Administration webpage main menu.

2. Under the Manage Workflow Actions heading click the New button.

3. Under the New Action dialog, enter the following information to create a Cisco Finesse Browser Pop action.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 37 of 182
Cisco dCloud

Table 12. Browser Pop Configuration Parameters

Setting Input

Name Finesse Sample Gadgets

Type Browser Pop (Default)

Handled by Finesse Desktop (Default)

Window Name CS_Browser

Browser URL https://developer.cisco.com/site/finesse/downloads/sample-gadgets/

Figure 57. New Workflow Action

4. Click Save.

5. Under the Manage Workflows heading, click the New button.

6. Under the New Workflow dialog, enter the following information to create a Cisco Finesse workflow for the Customer
Service agent team, which matches that currently configured for CAD.

Table 13. New Workflow

Setting Input

Name Customer Service

Description CS Finesse Workflow

When to perform Actions When a Call is answered

How to apply Conditions If any Conditions are met

7. Click Add Condition.

8. From the Call Variable drop-down select callVariable2. From the Condition field drop-down select Is not Empty

9. Under the Ordered List of Actions sub-heading click Add.

10. From the Add Actions pop-up, select Finesse Sample Gadgets. Click on the X to close the pop-up.

11. Confirm that the values entered match the graphic below:

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 38 of 182
Cisco dCloud

Figure 58. Workflow Configuration

12. Click Save to add the Workflow.

Assigning Configured Resources to the Customer Service Team

Now that all of the Workflow related elements have been provisioned via the Cisco Finesse Administration interface, we may
assign the configured elements to the Customer Service agent team, in order to complete the migration process.

1. Click the hyperlink for Team Resources on the Cisco Finesse Administration webpage main menu.

2. Under the List of Teams heading, click Customer Service.

3. Observe that a Tabbed layout for resource assignment is visible at the bottom of the webpage.

Figure 59. Configure Team Resources

4. Click the tab labeled Phone Books.

5. Under the List of Phone Books sub-heading, click Add.

6. From the Add Phone Books pop-up, select Customer Service. Click on the X to close the pop-up.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 39 of 182
Cisco dCloud

Figure 60. Assign Team Phone Book

7. Click the tab labeled Reason Codes (Not Ready).

8. Under the List of Reason Codes (Not Ready) sub-heading, click Add.

9. From the Add Reason Codes (Not Ready) pop-up, click both Break and Training to add these to the List of Reason Codes
assigned. Once finished, click on the X to close the pop-up.

Figure 61. Assign Not Ready Reason Codes

10. Click the tab labeled Reason Codes (Sign Out).

11. Under the List of Reason Codes (Sign Out) sub-heading, click Add.

12. From the Add Reason Codes (Sign Out) pop-up, click both End Of Shift and Lunch to add these to the List of Reason
Codes assigned. Once finished, click on the X to close the pop-up.

Figure 62. Assign Sign Out Reason Codes

13. Click the tab labeled Workflows.

14. Under the List of Workflows sub-heading, click Add.

15. From the Add Workflow pop-up, select Customer Service. Click on the X to close the pop-up.

Figure 63. Assign Workflows

16. Scroll to the bottom of the page and click Save to activate team resource assignment.

17. This concludes the team Workflow Configuration and assignment activity.

18. Close the Mozilla Firefox browser.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 40 of 182
Cisco dCloud

Complete and Test Agent Team Migration


The activities completed thus far have positioned us to finalize the migration of the Customer Service agent team from CAD/CSD
to Cisco Finesse.

Full Configuration Review of Unified CCX RmCm and CAD Workflows

Enable CAD/Finesse Mixed Mode Operation

Created a Cisco Finesse team workflow to support the Customer Service agent team.

Finalizing the process simply involves logging out of any active Cisco Supervisor and Cisco Agent Desktop application
sessions, and logging into the Cisco Finesse.

Log into the Cisco Finesse Desktop

1. Switch to or maintain focus on the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Maximize the Cisco Supervisor Desktop application.

3. From the main menu select File > Exit.

Figure 64. Close CSD

4. Launch Mozilla Firefox by clicking on the icon in the Windows taskbar.

5. From the homepage navigate to Collaboration User and Test Links > UCCX 10.6(1) Finesse Desktop.

Figure 65. Cisco Finesse Desktop 10.6 Web Link

6. Enter the following to log into the Cisco Finesse Supervisor Desktop:

ID: cholland

Password: C1sco12345

Extension: 6018

Figure 66. Log In to Cisco Finesse

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 41 of 182
Cisco dCloud

7. Click Sign In.

8. Confirm successful login and loading of Customer Service Agent team data (as seen in the graphic below):

Figure 67. Cisco Finesse Supervisor Desktop

Note: No configuration beyond specifying Supervisor permissions in Unified CCX is required to enable Supervisor functions as
well as enabling Agent functionality.

9. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

10. Bring focus the Cisco Agent Desktop application. Acknowledge any messages generated by the restart of
uccx1.dcloud.cisco.com as part of Cisco Finesse service activation by clicking OK.

11. Click the X on the application window to close the application.

12. Choose either Lunch or End of Shift as the reason code when prompted and click OK.

13. Launch Mozilla Firefox by clicking the icon in the Windows taskbar.

14. From the homepage navigate to Collaboration User and Test Links > UCCX 10.6(1) Finesse Desktop.

15. Enter the following to log into the Cisco Finesse Agent Desktop:

ID: aperez

Password: C1sco12345

Extension: 6017

Figure 68. Log In to Cisco Finesse

16. Click Sign In.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 42 of 182
Cisco dCloud

Validate Cisco Finesse Workflow Elements

1. Click the Not Ready menu item at the top of the Cisco Finesse Agent Desktop page.

2. Observe that the Not Ready reason codes configured as part of our migration are both present

Figure 69. Review Not Ready Reason Codes

3. Click on the Make a New Call menu heading to expand.

4. Observe that the Phone Book for Customer Service is available.

Figure 70. Phone Book Entries

5. (Optional) you may select Charles Holland from the list and click the Call button to test dialing capabilities.

6. Click the Not Ready menu item at the top of the Cisco Finesse Agent Desktop page.

7. Transition into a Ready state by selecting Ready from the Agent State menu items.

8. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

9. Observe that Anita Perez is now listed under Team Performance in a Ready state.

10. Click on Anita Perez under the Team Performance gadget; click the Not Ready button to force Anita Perez to transition from
Ready to Not Ready. This confirms that our Finesse Supervisory functions are active.

Figure 71. Force Agent Transition to Not Ready

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 43 of 182
Cisco dCloud

11. From a telephone with long distance dialing capability dial the dCloud session DID mapped to Directory Number 7800
(identified earlier in this lab).

12. You will be prompted with the following menu choices:

For new orders press 1.

For questions regarding an existing order press 2.

For all other inquiries press 3.

11. Press the number 1 on the telephone keypad.

12. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

13. Click the Not Ready menu item at the top of the Cisco Finesse Agent Desktop page.

14. Transition into a Ready state by selecting Ready from the Agent State menu items.

15. Click the Answer button to answer the incoming call. Observe that the Variable Layout changes to display call variable data
have been effective.

Figure 72. Observe Configured Workflow

16. Notice that the Browser Pop Workflow action configured as part of this team workflow has also been successful as a new tab
in Mozilla Firefox has opened to https://developer.cisco.com/site/finesse/downloads/sample-gadgets/.

Figure 73. Workflow Browser Pop Tab

17. Switch back to the Cisco Finesse Desktop by clicking browser tab labeled Cisco Finesse.

18. Click the End button to hang up the active contact.

Figure 74. End Call

19. Close the Browser Pop tab in Mozilla Firefox.

20. Close the Mozilla Firefox browser application.

21. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

22. Close the Mozilla Firefox browser application.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 44 of 182
Cisco dCloud

Module 1 Conclusion
We have now successfully completed the migration of the Customer Service agent team. All agents and supervisors are using
the Cisco Finesse desktop to log in and handle incoming ACD contacts, with associated team workflows migrated from CAD.

With all active teams migrated to Cisco Finesse we are ready to upgrade to Unified CCX 11.0.1, and explore new features and
functions. All remaining modules in this Lab will use a Pre-Installed Unified CCX 11.0.1 instance which matches the workflow
items reviewed in this exercise.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 45 of 182
Cisco dCloud

Module 2: Advanced Unified CCX Scripting Techniques


ATTENTION: Students MUST complete the activities Connecting to Your Pod and Lab Orientation prior to working on this lab
module. This ensures an active Cisco AnyConnect VPN session to your assigned Lab Pod and active RDP connections to
wkst1.dcloud.cisco.com, wkst2.dcloud.cisco.com, and ad1.dcloud.cisco.com.

Module Overview
Voice contact workflows are powered by a collection of pre-defined steps and call handling logic instructions referred to as scripts.
In order to work with scripts, Cisco Unified CCX provides a powerful development environment, the Cisco Unified CCX Editor.
The Cisco Unified CCX Editor is a visual programming environment for creating, modifying, validating and debugging telephony
and multimedia application scripts in a Unified CCX System.

Using this tool a developer can create highly customized and feature rich end user experiences. Out of the Box Unified Contact
Center Express 11 provides a set of purpose driven script templates which can be used as-is or modified slightly to add
enhanced feature functionality.

In this module, we will review the currently deployed Customer Service voice workflow script (icd.aef) and highlight key
components of operation. Students will then add additional functionality to inform callers in queue of their expected wait time
(EWT).

Note: This module assumes previous development experience with the Cisco Unified CCX Editor application and previous
exposure to the basic concepts around creating and modifying Unified CCX application scripts.

For students new to the Cisco Unified Contact Center Express Editor or interested in furthering their current knowledgebase the
following reading is highly recommended:

Cisco Unified Contact Center Express Getting Started with Scripts, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/programming/g
uide/EditorSeriesVol1.pdf

Cisco Unified Contact Center Express Editor Step Reference Guide, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/programming/g
uide/EditorSeriesVol2.pdf

Cisco Unified Contact Center Express Expression Language Reference Guide, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/programming/g
uide/EditorSeriesVol3.pdf

Note: For students wishing to skip the script development process or those who encounter difficulty following the exercise a fully
completed and updated version of the icd.aef script can be found in the Desktop\CCX-Enablement\Student-
Resources\Module2-Completed-Script folder.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 46 of 182
Cisco dCloud

Module Objectives
In this module, we will use the Cisco Unified CCX Editor to modify the existing application script used for calls to the Customer
Service Team and enhance the caller experience using advanced script techniques.

Confirm the current caller experience when calling and executing the Customer Service application script.

Launch the Cisco Unified CCX Editor 11.0(1) tool and review important interface elements.

Open the current script and identify key elements that construct the current caller experience.

Use the Get Reporting Statistic step from the Step Palette to collect Real-Time Queue information.

With Data derived from the Result of the Get Reporting Statistic step, play a prompt to the caller estimating their
expected wait time.

Validate, Save and Upload the updated application script

Test and validate the newly modified script

Unified CCX 11.0(1) Configuration Review


Unified Contact Center Express 11.0(1) has been installed and provisioned with active agents and teams to support this lab
exercise. In this section, we will identify key configuration elements, and download a copy of the application script file with which
we can work.

The following tables define the basic configuration of the system as part of the lab pre-configuration.

Table 14. Configured Teams

Name Primary Supervisor Agents Assigned CSQs Assigned

Customer Service Charles Holland Anita Perez, Charles Holland CustomerService_Voice

Table 15. Primary Demonstration Users

Name Use Case IPCC Ext Login ID Password

Charles Holland Acts as both a Supervisor and Agent for the 6018 cholland C1sco12345
Customer Service Team

Anita Perez Acts as the primary Agent for the Customer Service 6017 Aperez C1sco12345
team

Table 16. Contact Service Queues (CSQs)

Name Use Case Skill Name Skill Level

CustomerService_Voice Voice Contact CSQ for Customer Service Minimum - 5


Customer Service Calls

Table 17. Voice Applications, Scripts, Trigger#

Application Name Description Script File Trigger DN

CS_Voice_Main Voice Contact CSQ for CCX_Enablement/icd.aef 6021


Customer Service Calls

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 47 of 182
Cisco dCloud

Confirm Cisco Script Application Configuration

Next, we will log into Unified CCX and validate the current configuration of the Customer Service Script Application.

1. Open the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Launch Mozilla Firefox by clicking on the icon [ ] in the task bar.

3. From the homepage navigate to Collaboration Admin Links > Cisco Unified CCX 11.0.

Figure 75. Unified CCX Admin Web Link

4. Click the Cisco Unified Contact Center Express Administration hyperlink.

5. Log in to Unified CCX with the (administrator/dCloud123!) username/password combination.

6. Click Login.

7. From the menu choose Applications > Application Management.

Figure 76. Applications > Application Management

8. Observe the entry for CS_Voice_Main.

Figure 77. Configured Applications

9. Click the hyperlink for CS_Voice_Main to review the configured properties.

Figure 78. Application Properties

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 48 of 182
Cisco dCloud

10. Confirm the following configuration details (refer to Figure above)

Table 18. CS_Voice_Main Application Configuration

Image Tag Field Name Value

1 Unified CM Telephony Trigger 6021

2 Script SCRIPT[CCX_Enablement\icd.aef]

3 strCSQ CustomerService_Voice

The Unified CM Telephony Trigger is the Directory Number which when called will launch the Customer Service script
application. The Script defines the application script file executed when the trigger is called. The parameter strCSQ is a variable of
type String that is defined in the icd.aef script file. Because this variable is assigned the Parameter attribute, it may be modified
from within the application configuration.

Note: Using the Parameter attribute is an excellent way to make the most use of configured scripts. The same script may then be
used for multiple applications, simply by modifying parameters at the Application level where necessary.

Locate and Download the current Customer Service Unified CCX Script File

In order to review and edit the currently running Unified CCX Script file we must first locate and download the file. In the following
steps we will navigate to the Unified CCX Script repository, locate the file icd.aef and download a copy.

11. Use the Menu to navigate to Applications > Script Management.

Figure 79. Applications > Script Management

12. Click the hyperlink for the directory CCX_Enablement to browse to the target folder.

Figure 80. Click Folder

13. To initiate the download, left click on the icon to the left of the file named icd.aef.

Figure 81. Click to Download

14. When prompted by the Mozilla Firefox save file dialog, select the radio button for Save File and click the OK button.

15. A copy of the icd.aef is downloaded to the default download directory: Desktop\CCX-Enablement\Downloads folder.

16. Close Mozilla Firefox.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 49 of 182
Cisco dCloud

Analyze the Customer Service CCX Application Script Work Flow


In this section, we will analyze the contact workflow and describe decision elements found within the icd.aef script file.

We will place a call to the CS_Voice_Main Unified CCX Application and validate the expected caller experience. In addition, we
will take on the role of a Unified CCX Agent and answer the call to observe certain data collected and configured to be presented
to the answering agent.

Call Flow Review

Figure 82. Icd.aef Baseline Voice Contact Workflow

The baseline application script file (icd.aef) used throughout this lab is in fact a slightly modified version of the built-in Unified CCX
script queuing template freely accessible as part of the Unified CCX product installation. Elements modified include the addition of
some variables, use of custom-recorded prompts for menu and default queue messages and the addition of a basic Menu step

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 50 of 182
Cisco dCloud

added as part of the initial call greeting. In addition, a Set Enterprise Call Info step is used to pass data obtained from the script to
the Cisco Finesse Desktop.

The following represents the voice contact workflow as depicted in the figure above.

1. A call is placed to the Unified CCX Application Trigger DN 6021.

2. The script answers the call using an Accept step from the Unified CCX Editor Palette.

3. A Get Call Contact Info step is used to assign the value of the calling party number (ANI) to a String variable named
strCallingNumber.

4. A Menu step is used to play the following prompt to the caller: Based on the callers keypad entry, the variable
strInquiryType is populated as described below.

Thank You for calling. For new orders press 1. For calls regarding an existing order press 2. For all other
inquiries press 3 or remain on the line

a. Caller Presses 1

The string variable strInquiryType is set to New Order.

b. Caller Presses 2

The string variable strInquiryType is set to Existing Order.

c. Caller Presses 3, Makes no selection, or enters an invalid option

The string variable strInquiryType is set to Other Inquiry.

5. The call is then queued to the CustomerService_Voice CSQ using a Select Resource script step. The target CSQ is defined
within the string variable strCSQ. As discussed earlier, this value is set as a parameter in the Unified CCX Application the
value of which is the string CustomerService_Voice.

6. The Select Resource step checks to see if a Unified CCX Agent skilled to the CustomerService_Voice CSQ is in a Ready
state and able to take the call. The following represents the decision branch logical paths.

d. No Agent Available: Queued

i. Call enters the Queued branch of the Select Resource Step.

ii. A Play Prompt step is used to play the following generic queuing message:

All representatives are currently assisting other callers please remain on the line and your call
will be answer in the order it was received.

iii. A Call Hold step is executed to place the call on hold and begin play out of Music On Hold (MOH) audio
stream.

iv. A Delay step is used to leave the call in the hold state for the number of seconds defined in the integer (int)
variable intQueueDelay (This is set to 30 seconds). After the specified interval is reached, processing
proceeds to the next defined script step.

v. A Call Unhold step is used to resume control of the call and cease play out of Music on Hold audio.

vi. A GoTo step is used to send logical processing back to the beginning of the Queued execution branch,
effectively creating a loop.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 51 of 182
Cisco dCloud

Note: If at any point during the execution of steps within the Queued branch of the Select Resource step an agent becomes
available to take the call, the call is offered irrespective of the Call Hold step being invoked. The only exception to this logic is if the
Interruptible parameter of a step is explicitly set to a value of No.

vii. If an agent becomes available during the loop execution, the script will move to the Selected branch of the
Select Resource step.

e. Agent Available: Selected

i. When an Agent in the specified CSQ is available and selected call processing moves to the Selected
execution branch of the Select Resource step.

ii. A Set Enterprise Call Info step is used to assign the following script variable values to Unified CCX
Custom call variables which may then be presented via the Cisco Finesse Desktop.

1. Call.PeripheralVariable1: strInquiryType

2. Call.PeripheralVariable2: strCallingNumber

iii. A Connect step is used to route the call to the selected agent resource.

1. If the call connects with the agent successfully, (Agent Answers) script execution ends at the End
step.

2. If the agent fails to answer the call or a telephony system error occurs, script execution resumes at
the Queued branch.

Place a Test Call to the Customer Service Unified CCX Script Application

Next, we will place a test call to confirm the caller experience and investigate the information dynamically passed from the Unified
CCX script icd.aef to the Cisco Finesse Desktop. You may either use the Cisco Jabber client on wkst1.dcloud.cisco.com or
dial through the PSTN directly. Make an effort to correlate the caller experience with the logical workflow defined above.

Note: The preferred method of UCCX script testing is via dial-in from the PSTN this is to ensure clearer prompt play out and higher
overall call quality.

1. Locate the Session Details tab for your lab pod session in dCloud. This will list the automatically assigned DIDs for the
session and the Directory Number (DN) to which to the DID corresponds. In this case you should locate the DID associated
with Directory Number 6021. Consult the graphic below for reference.

Figure 83. Locate DN 6021 under Session DIDs

2. From a telephone with long distance dialing capability dial the DID mapped to DN 6021 as listed. In the example above (See
Figure 83) the number would be +1(919) 474-5551.

Note: Each set of DIDs is unique to your lab pod and are assigned when the pod starts. You must consult your dCloud Lab Pod
session details to obtain this information. The DIDs shown in this guide are examples only.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 52 of 182
Cisco dCloud

3. Alternatively from the Cisco Jabber client on wkst1.dcloud.cisco.com(Charles Holland) type: 6021 into the Call or Search
field and press Enter or click the green call button. If Cisco Jabber is running minimized you may click on the Cisco Jabber

taskbar icon [ ] to bring the application into focus.

Figure 84. Call from Cisco Jabber

4. You will be prompted with the following menu choices:

For new orders press 1.

For questions regarding an existing order press 2.

For all other inquiries press 3.

5. Press 1 , 2 or 3 on the telephone or Cisco Jabber keypad to continue. Based on the menu option selected the icd.aef script
sets the value of the strInquiryType String variable as specified in the earlier call flow review activity. In our example we have
selected option 2 for Existing Order.

Recall that in our configuration review we identified that Call.PeripheralVariable1 is programmed to hold the value for Inquiry
Type via the strInquiryType script variable. This is achieved by using a Set Enterprise Call Info step from within the Unified CCX
Script Palette and setting that value of Call.PeripheralVariable1 equal to the contents of the strInquiryType variable.

6. As there are no agent resources logged into Unified CCX to take calls, we expect to encounter the Queued execution branch
of the Select Resource script step. Confirm that the following message played back through the telephone:

All representatives are currently assisting other callers. Please remain on the line and your call will be answered in
the order it was received.

7. Next, observe that the Music on Hold audio begins to play. This indicates the execution of the Call Hold script step. This will
continue for 30 seconds.

8. One may refer to the call flow diagram and observe that the call is now progressing through the Queuing Process portion of
the call flow. This will continue until an agent becomes available to take the call.

Log into Unified CCX as a Customer Service Agent and Accept the Call

In order to fully validate the call flow experience end-to-end we will now log into Unified CCX as agent Anita Perez an agent
skilled to the CustomerService_Voice CSQ. We will transition to a Ready state, accepted the queued call, and observe the data
presented on the Cisco Finesse Desktop.

1. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

2. Launch Mozilla Firefox by clicking the icon in the Windows taskbar [ ].

3. From the homepage navigate to Collaboration User and Test Links > UCCX 11.0.1 Finesse Desktop.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 53 of 182
Cisco dCloud

Figure 85. Finesse Desktop Web Link

4. Enter the following to log into the Cisco Finesse Agent Desktop:

ID: aperez

Password: C1sco12345

Extension: 6017

5. Click Sign In.

Figure 86. Sign In to Cisco Finesse

6. Observe the Agent CSQ Statistics Report gadget on the Cisco Finesse Agent Desktop. Note that 1 call is currently in
Queue along with the total wait time. It may take several seconds to display the data at first login; you will see a status of
Loading Report while Cisco Finesse connects to real-time reporting data and renders it.

Note: If the report fails to render within 30 seconds or an error is displayed. Initiate a refresh of the browser page by clicking the [
] icon directly to the right of the browser address bar.

Figure 87. Agent CSQ Statistics Report

7. To transition to a Ready state, click the Not Ready menu item at the top of the Cisco Finesse Agent Desktop page.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 54 of 182
Cisco dCloud

8. Select Ready.

Figure 88. Transition to Ready

9. Observe that the queued call is offered to agent Anita Perez and that the data expected is presented via the Cisco Finesse
Agent Desktop.

10. Click the Answer button on the Cisco Finesse Desktop to answer the call.

Figure 89. Offered Call with Data

11. Confirm that the Inquiry Type and Calling Number fields (CallVariable1 and CallVariable2 respectively) are populated with
data dynamically collected during script execution.

Inquiry Type: Existing Order (Option 2 selected at menu), or based on your choice during the menu.

Calling Number: Calling Party Number (ANI)

Figure 90. Answered Call with Data

12. Click End to hang up the active call.

13. Transition to a Not Ready state, by selecting Not Ready Break from the reason code drop-down menu.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 55 of 182
Cisco dCloud

Figure 91. Transition to Not Ready

Observations

Through this testing process, we have observed that based on the Unified CCX script design the call flow and data elements
appear to be working as expected.

Callers hear Menu and Queuing Prompts as documented.

Data collected during script execution is passed to the Cisco Finesse Desktop.

Unified CCX Editor Orientation


Before beginning to review and work with the Customer Service application script, lets take an opportunity to orient to the Cisco
Unified CCX Editor application.

About the Cisco Unified CCX Editor

The Cisco Unified CCX Editor enables you to develop a wide variety of interactive scripts. The Cisco Unified CCX Editor
simplifies script development by providing blocks of contact-processing logic in easy-to-use Java-based steps. Each step has its
own unique capabilities, from simple increment to generating and playing out prompts, obtaining user input, queuing calls, or
performing complex database operations.

Although the steps are written in Java, you do not need to understand Java programming to build a Cisco Unified CCX script. You
can assemble a script by dragging step icons from a palette on the left pane of the workspace to the design area on the right pane
of the workspace. The Cisco Unified CCX Editor supplies the code required to connect the steps; you provide the variable
definitions and other parameters.

You can validate and debug the completed script to find and address logic errors directly in the Cisco Unified CCX Editor.

Launch the Unified CCX Editor

1. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Launch the Cisco Unified CCX Editor application by locating and clicking the icon in the Windows taskbar.

Figure 92. Launch the Unified CCX Editor

3. At the Authentication form enter the following data into the corresponding fields:

User Identification: administrator

Password: dCloud123!

Unified CCX Server: uccx2.dcloud.cisco.com (Pre-populated)

4. Click Log On.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 56 of 182
Cisco dCloud

Figure 93. Unified CCX Editor Authentication

Open a Unified CCX Script File

Figure 94. Open Script

5. Click the Open Script icon from the menu.

6. Open the icd.aef script file downloaded previously by navigating to Desktop\CCX-Enablement\Downloads in the Open
Script dialog.

Figure 95. Browse to icd.aef and Open

7. Select the file named icd.aef and click Open.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 57 of 182
Cisco dCloud

Unified CCX Editor Window Layout

The Cisco Unified CCX Editor window is comprised of four distinct workspaces or panes as depicted in the labeled figure below.

Figure 96. Unified CCX Editor Window

8. The table below provides a reference for the key areas of the Unified CCX Editor workspace. We will refer to these elements
numerous times through the following activities. Take a moment to become acquainted with these layout components before
proceeding on.

Table 19. Unified CCX Window Layout Reference

Image Tag # Name Description

1 Palette Pane Use the Palette pane to choose steps using the Unified CCX script.

2 Design Pane Use the Design pane to interact with a Unified CCX script file.
3 Message Pane Use the Message pane to view messages while validating or debugging
a Unified CCX script.

4 Variable Pane Use the Variable pane to create, modify and view variables used in the
Unified CCX script.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 58 of 182
Cisco dCloud

Explore the Current version of the Customer Service Application Script


In the previous activity, we took the opportunity to observe from a callers perspective the functionality of the icd.aef Unified CCX
Application script. In this section, we will use the Unified CCX Editor to explore the programmatic elements or steps, which
cause it to function as it does.

Call Variables Used in the Script

The table below specifies the variables used by steps within the Unified CCX Application script. Notice that some variables have
an explicit assigned value at runtime (start of script execution), while others are left with the default value. Those with assigned
values are intended to be used along with the Parameter attribute to allow certain script settings to be configurable by the
administrator. Those using default values are intended to contain data collected during script execution for processing.

Table 20. Customer Service Scrip t Variables

Name Data Type Assigned Value Description Use Case

intQueueDelay Int 30 An integer intended to represent Used to specify the timeout attribute of the
the desired length of the delay Delay step between the Call Hold and Call
between Call Hold and Call Unhold steps.
Unhold script steps.

pMenuPrompt Prompt P[CCX_Enablement\MainMenu.wav] Specifies the path to the wav audio Used as the prompt for the Menu step.
file to be played to a caller.

pQueuePrompt Prompt P[CCX_Enablement\QueuePrompt.wa Specifies the path to the wav audio Provides a generic comfort message at call
v] file to be played to a caller. entry and between hold loops.

strCSQ String Value defined as an application CSQ route target for Select Used to define the CSQ Target value of the
parameter. Expected to be Resource step. Defined as a Select Resource step.
CustomerService_Voice at runtime. parameter on the application

strCallingNumber String This string variable is assigned the Assigned a value by the Get Call Contact
value of the contact calling number Info step. Passed to the agent as a custom
call variable using the Set Enterprise Call
Info step. (Call Variable 1)

strtInquiryType String This string variable is assigned a The value of this variable is set during
value based on caller menu execution of the Menu step based on caller
selection. input. Passed to the agent as a custom call
variable using the Set Enterprise Call Info
step. (Call Variable 2)

uAgentSelected User This variable represents the unique Derived during execution of the Select
agent id selected by the system Resource step, used by the Connect step to
during the Select Resource Step. offer the call to the specified agent extension.

Variable Naming Conventions

There are four total data types represented by the variables defined for this script:

int

String

Prompt

User

Notice that each variable specified follows a specific and consistent naming convention:

Alphanumeric string (no spaces or special characters).

Broken into two identifiable parts:

o Prefix in lowercase from one to three characters meant to represent the variable data type.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 59 of 182
Cisco dCloud

o Descriptive name specifying the purpose of the variable or its intended data contents. This may be made up of
multiple distinct words in a single conjoined string in Camel Case notation (First Letter of each word capitalized)

For example the variable strCallingNumber

str: The three character abbreviation signifying data type String

CallingNumber: A very descriptive name signifying that this variable will hold the value of the incoming contact Calling
Number

In this way, our convention allows for consistency of execution and ease of reference given the variable Data Type and Intended
purpose at a glance.

Note: While the Unified CCX Editor facilitates ease of script development, it is important to define conventions and standards
used in your Unified CCX scripts. Such conventions help to clarify the content of scripts when others review them and eliminate
many common programming errors and mistakes. You may use any convention for variable naming in your scripts, but ensure
that the convention is sensible and consistently applied throughout the script.

Identify and Review Script Steps

1. Change the size and position of the icd.aef script file currently open in the Design Pane to allow for all of the contents to be
clearly viewed.

2. Locate the Get Call Contact Info step and double-click to open the customizer and view the step properties.

Figure 97. Get Call Contact Info step

3. Observe that as per our call flow design review the value of Calling Number attribute value is assigned to the variable
strCallingNumber.

Figure 98. Get Call Contact Info Properties

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 60 of 182
Cisco dCloud

4. Click Cancel to close the properties window without making changes.

5. Locate the Menu step. Right click anywhere on the step and select Expand All from the context menu.

Figure 99. Expand All Branches

6. Observe that per our design review the strInquiryType variable is assigned a value based on selection of the caller at the
Menu step. Consult the graphic for reference.

Table 21. strInquiryType Variable Assignment

Keypad Input Branch Name Configuraiton

1 NewOrder Set the value of strInquiryType equal to New Order.

2 ExistingOrder Set the value of strInquiryType equal to Existing Order.

3 OtherInquiry Set the value of strInquiryType equal to Other Inquiry.

Figure 100. Menu Step Decision Branches

7. Double-click the Menu step to open the customizer and view step properties.

8. Click the Prompt tab.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 61 of 182
Cisco dCloud

Figure 101. Prompt Properties for Menu Step

9. Confirm that the Prompt to be played for this step is represented by the variable pMenuPrompt. When this step executes
during an active call, the script will consult the assigned variable value and attempt to play the wav file at the path specified.

10. Click Cancel to close the properties window without making changes.

11. Scroll down slightly and locate the Select Resource step.

12. Double-click on the Select Resource step to open the properties dialog and review the applied configuration.

Figure 102. Select Resource step

13. Observe the following attribute value assignments as illustrated in the figure below. Be sure to correlate these with the logical
call flow diagram reviewed earlier.

Routing Target Type: Contact Service Queue.

o This may also be set to Resource in the case of an Agent-based routing configuration.

CSQ Target: strCSQ.

o The String variable strCSQ is used to hold the value of the voice CSQ name CustomerService_Voice.
Recall that an application parameter is used to set this value from the Unified CCX script application rather than
hard-coding within the script.

Resource Selected: uAgentSelected

o The User variable uAgentSelected is used to store the value of the selected Agent Resource. This value is
used immediately following in the Connect step.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 62 of 182
Cisco dCloud

Figure 103. Select Resource Properties

14. Click Cancel to close the customizer without making changes.

15. To understand what happens when an agent is available to take a call we must analyze the Selected branch of the Select
Resource step.

16. Observe the steps defined underneath the Selected branch and recall based on the logical call flow diagram that the following
series of events occurs:

A Set Enterprise Call Info step is used to assign the following script variable values to Unified CCX Custom call
variables which may then be presented via the Cisco Finesse Desktop.

o Call.PeripheralVariable1: strInquiryType

o Call.PeripheralVariable2: strCallingNumber

A Connect step is used to route the call to the selected agent resource.

o If the call connects with the agent successfully, (Agent Answers) script execution ends at the End step.

o If the agent fails to answer the call or a telephony system error occurs, script execution resumes at the Queued
branch.

Figure 104. Select Resource > Selected

17. Double-click the Set Enterprise Call Info step [ ] to open the properties dialog and review the configuration details.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 63 of 182
Cisco dCloud

Note: The Set Enterprise Call Info is the script step which takes dynamic data stored in variables and sets the value of Custom
Call and Expanded Call Control variables. This data may then be presented along with the call to the answering agent and
preserved on subsequent transfers within Unified CCX. In addition, Call variables 1-10 are reserved within UCCX and are stored
in the Unified CCX Historical Database. Because of this property, custom reports may be run using these values to filter query
results. In Module 5, we explore how to use these custom variable values to drive custom report development.

18. Observe the following attribute value assignments as illustrated in the figure below. Be sure to correlate these with the logical
call flow diagram reviewed earlier.

strInquiryType is assigned to Call.PeripheralVariable1 (Referred to as CallVariable1 within Cisco Finesse)

strCallingNumber is assigned to Call.PeripheralVariable2 (Referred to as CallVariable2 within Cisco Finesse)

It is this step along with the Finesse Desktop layout that allows both calling number and inquiry type data to be presented to
the agent for each call.

Figure 105. Set Enterprise Call Info Properties

19. Click Cancel to close without making changes.

20. Observe the Connect step and its associated logical execution branches.

Figure 106. Connect Step Expanded

21. The Connect step is used to offer the active call to the selected Unified CCX agent selected by the system as the route
target. Observe that there are two possible branches of execution for the Connect step.

Connected: This branch of execution is taken when the call is successfully transferred to the target agent resource. The
script progresses to the End step and completes execution.

Failed: If the call fails to be successfully transferred to the target agent resource, because of a Ring No Answer condition
or other telephony failure the Failed execution branch is matched. Our script is configured to move the call to a label
entitled queueLoop which resides directly beneath the Queued branch of the Select Resource step. This is simple error
handling, which ensures that the call is not dropped but is rather re-queued and the Select Resource step permitted to
search for another suitable resource.

22. Finally scroll down to the Queued branch of the Select Resource step to review the configuration for the call queuing
experience.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 64 of 182
Cisco dCloud

Figure 107. Queued Branch

23. Lets review the ordered steps and their functions:

queueLoop label: This label serves as an anchor point to which the call can be directed programmatically using a Goto
step. We saw an example of this earlier in the case that the call executes the Failed branch of the Connect step.

Goto steps and Label steps work together to provide a means of moving the processing of a script based on conditional execution.
This is especially important because each Unified CCX script executes in a procedural way (Top Down) unless explicitly directed
to circumvent steps using a GoTo command.

Delay: A 1-second delay has been added just prior to the Play Prompt step. This is typically unnecessary but due to
performance constraints of a lab environment, it is present to prevent un-intended clipping of audio play out during
execution of the Play Prompt step.

Play Prompt: This step plays the wav file specified by the pQueuePrompt variable. All agents are currently assisting
other callers. Please remain on the line and your call will be answered in the order received.

Call Hold: This step literally places the call on hold and initiates Music On Hold (MOH) playback to the caller.

Delay: A delay regulated by the value of the intQueueDelay variable ensures that the call remains on hold (playing Music
On Hold) for the number of seconds required before resuming the call and re-starting the loop. Recall that this value is 30
seconds.

Call Unhold: This step resumes the call from hold and ceases the playout of Music On Hold to the caller.

Goto: This command instructs script execution to jump to the queueLoop label of the script, thus facilitating a loop
behavior. Without the addition of this step, logical processing would continue to the End step.

This concludes our script review. Feel free to re-read this section and compare the script steps analyzed with the expected logical
call flow. Before proceeding, you should have a high level of comfort with the mechanics of this script and be prepared to modify it
to enhance the caller experience.

Using Advanced Scripting Techniques to Enhance Caller Experience


Through completion of the preceding activities, you have become highly familiar with the logical and programmatic voice contact
workflow configured in the icd.aef script. Now we will harness the inherent power of the Unified CCX Editor to customize the call
queuing workflow by determining the callers estimated wait time (EWT) during each queue iteration (loop) and playing this
information back to the caller.

About the Estimate Wait Time Statistic

Expected Wait Time (EWT) is a calculated field object available from the Get Reporting Statistic step of the Unified CCX Editor
Palette. A calculated object is value derived based on an algorithm applied to certain metrics available at the time of its calculation.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 65 of 182
Cisco dCloud

Unlike a static metric such as Longest Wait Time or Position in Queue, Expected Wait Time is a predictive value, which seeks
to present an estimate of the callers expected wait time based on several factors:

Current Calls In Queue

Average Handle Time

Total # of Active Agents (Talking/Ready)

Note: The EWT calculation yields the most reliable result in a production system with well-established call volume patterns per 24-
hr period. Because we are working in a lab system with call volume generated only by calls we are placing as part of lab activities,
the values calculated may be inaccurate or seem arbitrary. Also, keep in mind that it is possible for the method to return an error
indicating that there is not enough data to calculate the value. This can happen when there are 1 or more calls in queue and no
agents in either Ready or Talking states. This is expected as the calculation is loosely (CallsInQueue +1) * AHT/Active Agents.
With no agents logged in or none in a Ready or Talking state when the call arrives, the algorithm cannot effectively calculate a
value (Division by zero condition). This is why we will add error handling to the script to account for these cases and respond
appropriately.

Functional Workflow Objectives

On first arrival at during subsequent queue iterations (Call Hold, Call Unhold step cycles), the value of the callers current
expected wait time in seconds should be retrieved. If that value is greater than 0 seconds, the expected wait time should be played
back to the caller immediately following the standard comfort queue message. If the expected wait time is less than or equal to 0
seconds, the caller will hear only the standard queue prompt message.

Programmatic Requirements

Based on our stated functional objectives let us identify the programming logic or algorithm required to meet the stated
requirements.

1. Obtain the value of the callers Expected Wait Time (EWT)

Use the Get Reporting Statistic script step from the Unified CCX Editor palette. Using the CSQ IPCC Express Report
Object with a CSQ target of CustomerService_Voice, and a target field of Expected Wait Time.

o The expected return data of the Get Reporting Statistic step is any positive integer, zero, or -1 in the case of an
erroneous result. We will use a new script variable of data type int (integer), and save the Get Reporting
Statistic result to this variable. The variable name will be intExpectedWaitTime.

2. If the calculated EWT is greater than 0 seconds, play back the value of the callers Expected Wait Time

Because the Get Reporting Statistic (Expected Wait Time) step will return an integer value that is calculated
dynamically based on the conditions discussed earlier, we will use a Create Generated Prompt step leveraging simple
built-in Text to Speech (TTS) capabilities to create a prompt dynamically by having the system speak the number of
seconds represented by the intExpectedWaitTime variable. The value of this generated prompt will be stored in a
variable of type Prompt called pExpectedWaitTimeGenerated.

In order to play a coherent message to the caller, which incorporates the generated prompt value dynamically created, we
will use a Create Container Prompt script to join or concatenate several prompts together to create a continuous
playback to the caller.

o Use a pre-recorded prefix prompt which says Your Expected Wait Time Is.

o Play the prompt stored in variable pExpectedWaitTimeGenerated (ie. Twenty)

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 66 of 182
Cisco dCloud

o Use a pre-recorded suffix prompt which says Seconds.

The result generated via Create Container Prompt is assigned to a variable of type Prompt named
pExpectedWaitTime, which will be activated using a Play Prompt step when desired.

Finally use an If step to perform a logical comparison and determine whether the value of intExpectedWaitTime is
greater than 0 seconds.

o True: intExpectedWaitTime is any value greater than 0.

Play Prompt (pExpectedWaitTime)

o False: intExpectedWaitTime is less than or equal to 0.

Do Nothing

Note: A Prompt variable contains the contents of a waveform sound file.

Adding New Script Variables

Before variables can be used or referenced within script steps, they must first be defined. Based on the algorithm developed
above it is clear that new variables must be added to the script to track and evaluate data dynamically as well as to hold the value
of a series of prompts. The following table represents the new script variables to be added and used within script steps.

Table 22. New Variables

Name Data Type Assigned Value Description Use Case

intExpectedWaitTime Int 0 A variable holding integer Store the result of a Get Report Statistic
data representing the caller (Expected Wait Time) step. May be (-1, 0,
EWT in seconds any positive integer)

pExpectedWaitTimeGenerated Prompt P[] A prompt which will be a Store the result of a Create Generated
system spoken TTS prompt Prompt (intExpectedWaitTime). For
of numeric value of the example if intExpectedWaitTime is equal to
intExpectedWaitTime 20 the system will generate a TTS prompt
variable which says Twenty.

pExpectedWaitTimePrefix Prompt P[CCX_Enablement\Expecte Your expected wait time Pre-recorded prompt used as the prefix to a
dWaitTimeIs.wav] is concatenation of prompts intended to
playback expected wait time in seconds.
pExpectedWaitTimeSuffix Prompt P[CCX_Enablement\Seconds seconds. Pre-recorded prompt used as the suffix to a
.wav] concatenation of prompts intended to
playback expected wait time in seconds.
pExpectedWaitTime Prompt P[] pExpectedWaitTimePrefix + Your expected wait time is..
pExpectedWaitTimeGenerat Twenty
ed +
pExpectedWaitTimeSuffix Seconds

Note: All Variable names and data types are case-sensitive. Ensure adherence to the spelling and case of the variable names and
data types as defined above.

1. In the Unified CCX Editor application window, locate the Variable Pane and click the New Variable icon.

Figure 108. New Variable

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 67 of 182
Cisco dCloud

2. Set the following values:

a. Type: int

b. Name: intExpectedWaitTime

c. Value: 0

3. Click OK.

Figure 109. New Variable intExpectedWaitTime

4. Click the New Variable icon.

5. Set the following values:

a. Type: Prompt

b. Name: pExpectedWaitTime

c. Value: P[]

6. Click OK.

Figure 110. New Variable pExpectedWaitTime

7. Click the New Variable icon.

8. Set the following values:

a. Type: Prompt

b. Name: pExpectedWaitTimeGenerated

c. Value: P[]

9. Click OK.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 68 of 182
Cisco dCloud

Figure 111. New Variable pExpectedWaitTimeGenerated

10. Click the New Variable icon.

11. Set the following values:

a. Type: Prompt

b. Name: pExpectedWaitTimePrefix

c. Value: P[CCX_Enablement\ExpectedWaitTimeIs.wav]

12. Click OK.

Figure 112. New Variable pExpectedWaitTimePrefix

13. Click the New Variable icon.

14. Set the following values:

a. Type: Prompt

b. Name: pExpectedWaitTimeSuffix

c. Value: P[CCX_Enablement\Seconds.wav]

15. Click OK.

Figure 113. New Variable pExpectedWaitTimeSuffix

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 69 of 182
Cisco dCloud

16. Ensure that added variables are present in the Unified CCX Editor Variable Pane as depicted in the graphic below.

Figure 114. Unified CCX Editor Variables

Adding Unified CCX Editor Palette Steps

With all the required data variables defined, its time to use the Unified CCX Editor step palette to add the script steps needed to
complete the algorithm defined earlier. Keep in mind that because a Unified CCX script executes in a procedural manner (top
down), the placement of script steps within the established logic is critical.

When dragging and dropping steps from the Palette Pane to the Editor Window one must drag the new step and drop on top of
the step after which this new step should be executed.

The following script steps will added to the icd.aef script as part of this activity:

Get Reporting Statistic

Use the Get Reporting Statistic step to access real-time information about agents, Contact Service Queues (CSQs), the
overall Cisco Unified CCX system, and contacts. We will use this step to obtain the projected Expected Wait Time in
seconds and save that value to the variable intExpectedWaitTime.

Create Generated Prompt

Use the Create Generated Prompt step to create prompt phrases from intermediate variables whose values are
dynamically determined based on run-time script information. We will use this step to create a system generated prompt
based on the value of the intExpectedWaitTime variable. We will save this prompt to the variable
pExpectedWaitTimeGenerated.

Create Container Prompt

Use the Create Container Prompt step to combine multiple prompts into one larger prompt. We will use the Create
Container Prompt step to combine pre-recorded prompts with the result of the Create Generated Prompt step to
playback a coherent message to the caller. The output of this combination will be stored in the prompt variable
pExpectedWaitTime.

If Step

Use the If step to cause the script to go to one of two branches based on the evaluation of a specified Boolean
expression. We will use If/Then logic to determine whether to play the EWT prompt based on the value of the
intExpectedWaitTime variable.

Play Prompt

Use the Play Prompt step to play back specified prompts to the caller. We will use this step to play the
pExpectedWaitTime prompt.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 70 of 182
Cisco dCloud

2. Scroll to the bottom of the script file in the editor window and locate the Select Resource script step.

3. Scroll further to the Queued branch of the Select Resource step.

Figure 115. Select Resource Step

4. From the Palette Pane of the Unified CCX Editor window, locate and expand the ACD folder by clicking the + directly to the
left of the folder name.

5. Left-click and hold the mouse on the Get Reporting Statistic step.

6. While continuing to hold the mouse, drag the cursor over the queueLoop Label step.

7. Release the mouse button to add the script step just below the queueLoop Label step.

Figure 116. Drag and Drop Get Reporting Statistic

8. Open the step customizer by double-clicking on the newly added Get Reporting Statistic script step.

Figure 117. Double-click Get Reporting Statistic

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 71 of 182
Cisco dCloud

9. Enter the following values to complete the configuration of this step:

Report Object: CSQ IPCC Express

Field: Expected Wait Time

Row Identifier: strCSQ

Result Statistic: intExpectedWaitTime

10. Click OK to save your changes.

Figure 118. Get Reporting Statistic Step Configuration

11. From the Palette Pane of the Unified CCX Editor window, locate and expand the Prompt folder by clicking the + directly to
the left of the folder name.

12. Left-click and hold the mouse on the Create Generated Prompt step.

Figure 119. Select the Create Generated Prompt Step

13. While continuing to hold the mouse, drag the cursor over the newly added Get Reporting Statistic step.

14. Release the mouse button to add the script step just below the Get Reporting Statistic step.

15. Open the step customizer by double-clicking on the newly added Create Generated Prompt script step.

Figure 120. Double-Click Create Generated Prompt

16. Enter the following values:

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 72 of 182
Cisco dCloud

Generator Type: number

Constructor Type: number,play.full

17. From the Arguments table select the entry for number and click the Set button.

Figure 121. Generated Prompt General Properties

18. From the drop-down menu, select intExpectedWaitTime.

19. Click OK.

20. From the Arguments table select the entry for play.full and click the Set button.

21. From the drop-down menu, select true.

22. Click OK.

23. Locate the Output Prompt field; use the drop-down menu to select pExpectedWaitTimeGenerated.

24. Click OK to complete step configuration.

Figure 122. Create Generated Prompt Configuration

25. From the Palette Pane under the Prompts folder Left-click and hold the mouse on the Create Container Prompt step.

Figure 123. Select the Create Container Prompt Step

26. While continuing to hold the mouse, drag the cursor over the newly added Create Generated Prompt step.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 73 of 182
Cisco dCloud

27. Release the mouse button to add the script step just below the Create Generated Prompt step.

28. Open the step customizer by double-clicking on the newly added Create Container Prompt script step.

Figure 124. Double-Click Create Container Prompt

29. Click the Add button.

30. From the Add Prompt dialog select pExpectedWaitTimePrefix and click OK.

31. Click the Add button.

32. From the Add Prompt dialog select pExpectedWaitTimeGenerated and click OK.

33. Click the Add button.

34. From the Add Prompt dialog select pExpectedWaitTimeSuffix and click OK.

35. In the Output Prompt field use the drop-down menu to select pExpectedWaitTime.

36. Click OK to complete step configuration.

Figure 125. Create Conditional Prompt Configuration

37. From the Palette Pane of the Unified CCX Editor window, locate and expand the General folder by clicking the + directly to
the left of the folder name.

38. Left-click and hold the mouse on the If step.

Figure 126. Select the If Step

39. While continuing to hold the mouse, drag the cursor over the existing Play Prompt (pQueuePrompt) step.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 74 of 182
Cisco dCloud

40. Release the mouse button to add the script step just below the Play Prompt step.

41. Open the step customizer by double-clicking on the newly added If script step.

Figure 127. Double-Click the If Step

42. In the Condition field type or copy: intExpectedWaitTime > 0

Figure 128. If Step Configuration

43. Click OK.

Recall: The If step is designed to evaluate a logical expression and return either a true or false (Boolean) result. The logical test
here is to determine whether the callers EWT in seconds, represented by the value of the integer variable intExpectedWaitTime
is greater than 0. If the result is true we will play the prompt pExpectedWaitTime. If the result is false because the value of the
intExpectedWaitTime variable is either 0 or -1, no prompt will be played.

44. From the Palette Pane of the Unified CCX Editor window, locate and expand the Media folder by clicking the + directly to the
left of the folder name.

45. Left-click and hold the mouse on the Play Prompt step.

Figure 129. Select the Play Prompt Step

46. While continuing to hold the mouse, drag the cursor over the true branch of the If step.

47. Release the mouse button to add the script step just below the true branch of the If step.

48. Open the step customizer by double-clicking on the newly added Play Prompt script step.

Figure 130. Double-Click the Play Prompt Step

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 75 of 182
Cisco dCloud

49. On the General tab of the step customizer, click the No radio button for Interruptible.

Figure 131. Play Prompt > General

50. Click the Prompt tab.

51. Set the following values:

Prompt: pExpectedWaitTime

Barge in: No

Figure 132. Play Prompt > Prompt

52. Click OK.

Review Added Steps

53. Carefully compare your modified icd.aef script in the Unified CCX Editor with the image below to confirm the presence of
required steps and their precise placement.

Figure 133. Modified icd.aef Script File

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 76 of 182
Cisco dCloud

Validate and Save

With our intended modifications complete, we must now use the Validate function of the Unified CCX Editor to ensure that all
script step configuration and variable references are correct. After successful validation, we will save a copy of the update script
file. This new version of icd.aef will be used to update the Customer Service voice application.

Note: Script validation will catch errors involving missing variable references, incorrect Goto/Label references, and incorrectly
configured script steps. It will NOT detect logic mistakes made by the programmer.

1. From the Unified CCX Editor menu, select Tools > Validate.

Figure 134. Validate

2. Click OK to acknowledge successful validation.

Figure 135. Script Validation Succeeded

3. From the Unified CCX Editor menu, select File > Save As.

4. Use the Save Script As file dialog to browse to the folder Desktop\CCX-Enablement\Module2.

5. Click Save.

Figure 136. Save Script As

6. Observe that the file path of the currently open script has changed to reflect the Save As operation.

Figure 137. Updated Script File Location

7. Exit the Unified CCX Editor by choosing File > Exit from the menu.

Upload and Refresh

In order to make our changes active we must upload our saved script to the Unified CCX Script Repository.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 77 of 182
Cisco dCloud

8. Launch Mozilla Firefox by clicking on the icon in the task bar.

9. From the homepage navigate to Collaboration Admin Links > Cisco Unified CCX 11.0.

Unified CCX Admin Web Link

10. Click the Cisco Unified Contact Center Express Administration hyperlink.

11. Log in to Unified CCX with the (administrator/dCloud123!) password combination.

12. Click Login.

13. From the menu choose Applications > Script Management.

Applications > Script Management

14. Click the hyperlink for CCX_Enablement to browse to the CCX_Enablement folder.

15. Click the Upload Scripts button.

Figure 138. Upload Scripts

16. In the Upload Script pop-up window, click Browse.

17. Use the File Upload dialog to browse to the folder Desktop\CCX-Enablement\Module2.

18. Select the file icd.aef (saved in the previous activity), click Open.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 78 of 182
Cisco dCloud

Figure 139. Upload Script

19. In the Upload Script pop-up window, click Upload.

20. When prompted to overwrite the existing script file click OK.

Figure 140. Overwrite Existing

21. In order to refresh both the script and the application click Yes when prompted. This will make the uploaded script active.

Note: Overwriting and Refreshing a script application is a service impacting event. While the script is updated and are loaded into
memory incoming calls to the affected Unified CCX script application will fail with an error. The time duration for a refresh is
extremely narrow, but it is important to perform such changes during a scheduled maintenance window.

Figure 141. Refresh Script and Application

Test and Validate

With all modifications to enable EWT play back to callers made and the updated icd.aef script file in place, we are ready to place a
test call to our application and verify that our advanced script update has been successful.

Recall that earlier in our activity we discussed the nature of the Expected Wait Time data field as being predictive and dependent
on having enough data to perform a calculation. In a production system with a volume of incoming calls and one or more personnel
actively taking calls we could expect that our change would produce instant results. However because the only call traffic
generated toward this Unified CCX system is that created during the course of our lab exercises, we will need to take steps to
create the environment required for the EWT calculation to return a result.

We will begin by placing a test call from the jabber client on wkst1.dcloud.cisco.com to the Unified CCX application trigger. We
will answer the call as an Anita Perez. While leaving the conversation active we will place a second call via the PSTN to the
assigned DID. It will be from this queued call that we will observe the result of our changes in action.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 79 of 182
Cisco dCloud

1. Switch focus to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

2. From earlier in this lab exercise agent Anita Perez should be logged into the Cisco Finesse Desktop and in a Not Ready
state.

Note: If either of the Live Data Report gadgets indicate a timeout error simply click the [ ] icon to renew the connection.

3. In order to transition to a Ready state, click the Not Ready menu item at the top of the Cisco Finesse Agent Desktop page.

4. Select Ready.

Figure 142. Transition to Ready

5. Anita Perez is now in a Ready state and will immediately receive the next incoming call.

6. Switch focus to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

7. In the Cisco Jabber client type: 6021 into the Call or Search field and press Enter or click the green call button. If Cisco

Jabber is running minimized you may click on the Cisco Jabber taskbar icon [ ] to bring the application into focus.

Figure 143. Call from Cisco Jabber

8. You will be prompted with the following menu choices:

For new orders press 1.

For questions regarding an existing order press 2.

For all other inquiries press 3.

9. Press either 1 , 2 or 3 on the Cisco Jabber keypad to continue.

10. Switch focus to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

11. Click the Answer button on the Cisco Finesse Desktop to answer the call.

12. Locate the Session Details tab for your lab pod session in dCloud. This will list the automatically assigned DIDs for the
session and the Directory Number (DN) to which to the DID corresponds. In this case you should locate the DID associated
with Directory Number 6021. Consult the graphic below for reference.

Figure 144. Locate DN 6021 under Session DIDs

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 80 of 182
Cisco dCloud

13. From a telephone with long distance dialing capability dial the DID mapped to DN 6021 as listed. In the example above (See
Figure 144) the number would be +1(919) 474-5551.

14. You will be prompted with the following menu choices:

For new orders press 1.

For questions regarding an existing order press 2.

For all other inquiries press 3.

15. Press either 1 , 2 or 3 on the telephone keypad to continue.

16. Because the only logged in agent, is currently in a state of talking, we expect to encounter the Queued execution branch of
the Select Resource script step. Our newly modified script will determine the value of the EWT CSQ statistic and if greater
than 0 seconds we should hear the following:

All representatives are currently assisting other callers. Please remain on the line and your call will be answered in
the order it was received.

Your expected wait time is.. <system generated prompt for the number of seconds> seconds.

17. Next, observe that the Music on Hold audio begins to play. This indicates the execution of the Call Hold script step. This will
continue for 30 seconds.

18. The same series of messages is repeated to the caller during each queue iteration until an agent answers the call. The EWT
will be re-calculated on each iteration thus providing an update.

19. When finished observing script behavior hang up the call.

20. Switch or maintain focus on the RDP session connected to wkst2.dcloud.cisco.com.

21. End the current call by clicking the End [ ] button on the Cisco Finesse Desktop.

22. Close the Mozilla Firefox Web Browser.

23. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

24. Close the Mozilla Firefox Web Browser.

Module 2 Conclusion
We have now successfully applied advanced scripting techniques to enhance the caller queuing experience by playing back the
Estimated Wait Time value. Through the completion of this activity, you analyzed and observed logical Call Workflow operations
and learned how tools available in the Unified CCX Editor make this functionality possible.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 81 of 182
Cisco dCloud

Module 3: Provisioning Finesse Agent Email and Unified CCX WebChat


ATTENTION: Students MUST complete the activities Connecting to Your Pod and Lab Orientation prior to working on this lab
module. This ensures an active Cisco AnyConnect VPN session to your assigned Lab Pod and active RDP connections to
wkst1.dcloud.cisco.com, wkst2.dcloud.cisco.com, and ad1.dcloud.cisco.com.

Module Overview
In the preceding lab modules, we have focused exclusively on exploring Cisco Unified Contact Center Express within the
context of voice contact workflows. Cisco Unified CCX is an incredibly robust and feature-rich customer collaboration solution
offering not only best in breed voice contact management, but also multi-channel support for Email, Web Chat, and Social Media
contact management.

In this Module, we will explore extending the capabilities of Unified CCX through the addition of both Agent Email and Web Chat
capabilities to an existing Unified CCX voice deployment. In tandem with the power of Cisco SocialMiner it has never been easier
to provision and deploy these capabilities for your customer.

What is Unified CCX WebChat?

Unified CCX WebChat allows Unified CCX agents to service customer chat requests using the agent Web Chat gadget in Cisco
Finesse. This feature requires a Cisco SocialMiner deployment to accept and relay the contact requests from a customer
website.

One typical deployment scenario would involve the placement of the customer web-server and Cisco SocialMiner in the customer
DMZ. Our lab topology most closely emulates this methodology.

Figure 145. Unified CCX WebChat Workflow

1. An End-User makes an http or https connection to the customer website.

2. Generated html code referencing the Unified Social miner is hosted on the website which relays the customer request to
the Cisco SocialMiner.

3. Cisco SocialMiner is configured (via Unified CCX) to accept the incoming request and relay it to the Cisco Unified CCX
server.

4. A ready agent receives the customer chat request in the WebChat gadget in Cisco Finesse.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 82 of 182
Cisco dCloud

What is Cisco Finesse Agent Email?

Unified CCX allows email contacts to be routed to agents based on the email addresses to which customers send them. The
Cisco Finesse Agent Email feature uses skill-based routing and last-agent email routing.

Like Unified CCX WebChat, Cisco Finesse Agent Email requires the deployment of Cisco SocialMiner to handle the email and
relay the contact requests from a mail server.
rd
The Cisco Finesse Agent Email feature requires the use of a 3 party mail server (Microsoft Exchange 2010 and 2013 are
supported). Cisco SocialMiner uses secure IMAP (for message retrieval) and secure SMTP (for message sending) on the
Exchange Server.

Separate CSQs are required for Email. You must associate each Email CSQ with a separate email account on the mail server.
This account must be dedicated to the Cisco Finesse Agent Email feature and may not be used for other purposes. Agent
association with Email CSQs is configured in the same manner as Voice CSQs by assigning skills and competency levels to the
CSQ.

Figure 146. Cisco Finesse Agent Email Workflow

1. An End-User sends an email message to CustomerService@dcloud.cisco.com.

2. The Microsoft Exchange server where the mailbox CustomerService@dcloud.cisco.com resides accepts the incoming
message.

3. Cisco SocialMiner is configured (via Unified CCX) to monitor the CustomerService@dcloud.cisco.com mailbox using
IMAP.

4. When a new message arrives this information is relayed to Cisco Unified CCX where it is routed based on the CSQ
configuration.

5. An agent in a Chat/Email ready state receives the customer email and may manage the contact in with the Cisco
Finesse Agent Email gadget.

Note: This is a lab environment without firewall security implemented. As such all hosts reside on the same LAN segment. In a
production scenario, firewall rules and IP routing must be configured to allow required communication between components.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 83 of 182
Cisco dCloud

Module Objectives
In this module, we will:

Review the requirements and pre-requisites for deploying Cisco Finesse Agent Email and Unified CCX WebChat.

Use the Cisco Unified CCX Administration interface to provision Cisco Finesse Agent Email and Unified CCX
WebChat.

Explore the use of Predefined Responses.

Use a Web Server to host the Unified CCX WebChat form.

Use the Cisco Finesse Desktop Administration interface to enable the Agent Email and WebChat gadgets.

Test and explore the functionality of Cisco Finesse Agent Email.

Test and explore the functionality of Cisco Unified CCX WebChat.

Topology Review and Pre-Configuration


In order to reduce the time required to complete this lab module some elements required to facilitate the deployment of the Cisco
Finesse Agent Email and Unified CCX WebChat features has been performed in advance. The following section provides
background on key solution components, their location in the topology and specific configuration in place.

Topology

Table 23. Cisco Finesse Agent Email and Unified CCX WebChat Components

Diagram Name Description Host Name (FQDN) IP Address Username Password


1 UCCX2 Unified Contact Center Express 11.0.1 uccx2.dcloud.cisco.com 198.18.133.20 administrator dCloud123!

2 CCX-SM1 Cisco Social Miner 11.0 ccx-sm1.dcloud.cisco.com 198.18.133.21 administrator dCloud123!

3 MAIL1 Exchange 2010 mail1.dcloud.cisco.com 198.18.133.2 administrator C1sco12345

4 AD1 Active Directory, DNS, IIS ad1.dcloud.cisco.com 198.18.133.1 administrator C1sco12345

Figure 147. Lab Topology

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 84 of 182
Cisco dCloud

Cisco Unified Contact Center Express 11.0(1)

Cisco Unified CCX has been installed and provisioned with an agent team and voice contact workflow as defined in the tables
below. The Customer Service team will serve as the Line of Business for which we will deploy Cisco Finesse Agent Email and
Cisco Unified CCX WebChat. Unified CCX 11.0(1) is running on uccx2.dcloud.cisco.com (198.18.133.20).

Table 24. Configured Teams

Name Primary Supervisor Agents Assigned CSQs Assigned

Customer Service Charles Holland Anita Perez, Charles Holland CustomerService_Voice

Table 25. Primary Demonstration Users

Name Use Case IPCC Ext Login ID Password

Charles Holland Acts as both a Supervisor and Agent for the 6018 cholland C1sco12345
Customer Service Team

Anita Perez Acts as the primary Agent for the Customer Service 6017 aperez C1sco12345
team

Table 26. Contact Service Queues (CSQs)

Name Use Case Skill Name Skill Level

CustomerService_Voice Voice Contact CSQ for CustomerService_Voice Minimum - 5


Customer Service Calls

Table 27. Voice Applications, Scripts, Trigger#

Application Name Description Script File Trigger DN

CS_Voice_Main Voice Contact CSQ for CCX_Enablement/icd.aef 6021


Customer Service Calls

Cisco SocialMiner 11

Cisco Social Miner is installed and is running in the environment in an un-provisioned state. You will configure the connection
between Cisco SocialMiner and Cisco Unified CCX as part of the activities in this lab. Cisco SocialMiner 11 is running on ccx-
sm1.dcloud.cisco.com (198.18.133.21).

Microsoft Exchange Server 2010

Microsoft Exchange Server has been installed with the following configuration to accommodate Cisco Finesse Agent Email:

Secure IMAP4 communications on port 993 using an SSL certificate signed by AD1.dcloud.cisco.com.
AD1.dcloud.cisco.com is a trusted CA on all hosts in the environment including Cisco SocialMiner and Cisco Unified
CCX.

Secure SMTP relay on port 587 using an SSL certificate signed by AD1.dcloud.cisco.com.

Mailbox and User account for CustomerService@dcloud.cisco.com created in order to accept incoming email contacts
on behalf of the CustomerService_Email Contact Service Queue (created later in the module).

Microsoft Exchange 2010 is running on mail1.dcloud.cisco.com (198.18.133.2).

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 85 of 182
Cisco dCloud

Microsoft Internet Information Services (IIS)

IIS will serve as the Web Server, which will host the Unified CCX WebChat form to accept incoming chat requests and relay to the
Cisco SocialMiner server. IIS is running on ad1.dcloud.cisco.com (198.18.133.1).

Certificate Management and DNS Resolution

All components of this Lab environment have been configured with SSL certificates signed by a Microsoft Windows Server 2008
Certificate Services running on ad1.dcloud.cisco.com. Workstations used for configuration and demonstration have been
provisioned to trust ad1.dcloud.cisco.com as a Trusted Certificate Authority (CA).

In addition, all Collaboration systems used in this demonstration are configured with Fully Qualified Domain Names and each is
resolvable via hostname lookup.

Note: All communications between components and hosts comprising the Cisco Finesse Agent Email and Cisco Unified CCX
WebChat features are secured using SSL. In a production environment, the installation of valid SSL certificates is required as a
pre-requisite to feature deployment. Certificate management for this lab topology has been performed using an internal Enterprise
rd
Certificate Authority (CA). In a production environment, it is recommended to use a trusted 3 party Certificate Authority to
secure communications.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 86 of 182
Cisco dCloud

Agent Email and WebChat Design Specifications


Let us explore our intended end-state configuration for the Cisco Finesse Agent Email and Cisco Unified CCX WebChat
features.

Chat and Email CSQs

Unique CSQs for the purpose of Chat and Email contact routing are required. These are Skill based CSQs and will require the
creation and assignment of particular skills which will in turn be assigned to agents in order to make them eligible to receive
incoming Chat and Email contacts.

Table 28. New CSQ for WebChat

Name Use Case Skill Name Skill Level

CustomerService_Chat Chat Contact CSQ for CustomerService_Chat Minimum - 5


Customer Service Chat
Requests

Table 29. New CSQ for Agent Email

Name Use Case Email Address Skill Name Skill Level

CustomerService_Email Email Contact CSQ for CustomerService@dcloud.cisco.com CustomerService_Email Minimum - 5


Customer Service Chat
Requests

Configure the Unified CCX Chat and Email Subsystem


In the following activity, we will configure the Chat and Email Subsystem to integrate Unified CCX with Cisco Social Miner.

1. Open the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Launch Mozilla Firefox by clicking on the shortcut in the task bar [ ].

3. From the homepage navigate to Collaboration Admin Links > Cisco Unified CCX 11.0.

Figure 148. Unified CCX Admin Web Link

4. Click the Cisco Unified Contact Center Express Administration hyperlink.

5. Log in to Unified CCX with the (administrator/dCloud123!) username/password combination.

6. Click Login.

Figure 149. Log In to Unified CCX Administration

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 87 of 182
Cisco dCloud

Create Skills for Email and WebChat

As specified earlier we will be using skill based routing for both Finesse Agent Email and WebChat contacts on this Unified CCX
System. Before configuring the Cisco Finesse Agent Email and Unified CCX WebChat features we will create the skills used to
determine agent eligibility to receive Email and Chat contacts.

To avoid confusion and best illustrate the Skill > CSQ relationship, we will create one skill for Email and one for Chat. These skills
will be named to match the CSQ to which they will be assigned. See the table below for details.

Table 30. Skill Name to CSQ relationship

Skill Name CSQ Name Purpose

CustomerService_Chat CustomerService_Chat Chat Contact CSQ for Customer Service Chat


Requests

CustomerService_Email CustomerService_Email Chat Contact CSQ for Customer Service Chat


Requests

1. From the menu choose Subsystems > RmCm > Skills.

Figure 150. Subsystems > RmCm > Skills

2. Click the Add New [ ] button.

3. In the Skill Name field type: CustomerService_Chat.

4. Click the Save button to add the new skill.

Figure 151. Add the CustomerService_Chat skill

5. Click the Add New [ ] button.

6. In the Skill Name field type: CustomerService_Email

7. Click the Save button to add the new skill.

8. Confirm that the list of Skills matches the graphic below.

Figure 152. New Chat and Email Skills

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 88 of 182
Cisco dCloud

Social Miner Configuration

The first step in provisioning both Cisco Finesse Agent Email and Cisco Unified CCX WebChat is to define the Cisco
SocialMiner server to which this Unified CCX application cluster will pair. All configuration will be performed from the Unified
CCX Administration web interface. Unified CCX will automatically perform the provisioning operations on Cisco SocialMiner
enabling it to handle and route incoming Chat and Email requests.

Note: There is a one to one relationship between Cisco SocialMiner and a Cisco Unified CCX Cluster. This is to say that a
single Cisco SocialMiner server may pair with only one Cisco Unified CCX Cluster and vice-versa.

1. From the menu choose Subsystems > Chat and Email > SocialMiner Configuration.

Figure 153. Subsystems > Chat and Email > SocialMiner Configuration

2. We will specify the details on this page to indicate the hostname and administrative username and password required to
enable Unified CCX to connect to the target Cisco SocialMiner instance.

3. Set the following values:

Table 31. SocialMiner Configuration Parameters

Setting Input

IP Address/Host Name ccx-sm1.dcloud.cisco.com

User Name administrator

Password dCloud123!

4. Click Save.

Figure 154. SocialMiner Configuration

5. Observe the status message indicating that SocialMiner has been configured and the data has been saved successfully.
This confirms that the Cisco SocialMiner server was joined to UCCX successfully and two-way communication established.

Note: After saving this data you should notice a green checkmark [ ] next to Campaigns. However, Feeds may take up to 2
minutes to transition from an alarm state. You may proceed to the next activity and check back later. Notifications will only
transition to green after having received one email and/or web chat request.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 89 of 182
Cisco dCloud

Mail Server Configuration

In order to provision elements of the Cisco Finesse Agent Email feature we must first specify the connection details for the
Microsoft Exchange email server where the mailboxes for Email CSQs will reside.

6. Use the menu to navigate to Subsystems > Chat and Email > Mail Server Configuration

Figure 155. Subsystems > Chat and Email > Mail Server Config

7. Enter the following values:

Table 32. Mail Server Configuration Parameters

Setting Input

Incoming (Secure IMAP) Hostname mail1.dcloud.cisco.com

Outgoing (Secure SMTP) Hostname mail1.dcloud.cisco.com

Description Primary Mail Server

8. Click Update.

Figure 156. Mail Server Configuration

Adding Chat and Email Contact Service Queues

As with voice contacts in Unified CCX, in order to accept and route incoming Chat and Email contacts, CSQs must be defined for
the purpose.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 90 of 182
Cisco dCloud

Recall: We created two skills CustomerService_Chat and CustomerService_Email earlier in this exercise. These will be used
to specify the assigned skill requirements to be eligible to receive contacts routed to our Chat and Email CSQs.

1. From the Unified CCX Administration menu navigate to Subsystems > Chat and Email > Contact Service Queues.

Figure 157. Subsystems > Chat and Emaili > Contact Service Queues

2. Click Add New.

3. To create the CustomerService_Chat Contact Service Queue enter the following values:

Table 33. Customer Service Chat CSQ Parameters

Setting Input

CSQ Name CustomerService_Chat

Resource Selection Criteria Most Skilled

CSQ Type: Chat

4. Click Next.

Figure 158. Chat CSQ Configuration Part 1

5. From the Available Skills list, select CustomerService_Chat.

6. Click Add.

Figure 159. Chat CSQ Skills Assignment

7. This operation assigns the CustomerService_Chat skill, with a required competency of 5. This means that agents must be
assigned this skill at a competency level of 5 or higher to be eligible to receive chat contacts.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 91 of 182
Cisco dCloud

8. Click Save.

9. From the Contact Service Queues (CSQs) page, click the Add New button.

10. Enter the following values:

Table 34. Email CSQ Configuration Parameters

Setting Input

CSQ Name CustomerService_Email

CSQ Type: Email

Resource Selection Criteria Most Skilled

Email username CustomerService@dcloud.cisco.com

Email password C1sco12345

Poll Interval 10

11. Click Next.

Note: The Poll Interval specifies the interval frequency in seconds that Cisco SocialMiner will attempt to fetch new mail for this
email account. Valid range is from 10-86400, we have configured this at the minimum value of 10 to ensure that email is retrieved
quickly during our testing and validation.

Figure 160. Email CSQ Configuration Part 1

12. From the Available Skills list, select CustomerService_Email.

13. Click Add.

Figure 161. Email CSQ Skills Assignment

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 92 of 182
Cisco dCloud

14. This operation assigns the CustomerService_Email skill, with a required competency of 5. This means that agents must be
assigned this skill at a competency level of 5 or higher to be eligible to receive email contacts.

15. Click Save.

16. Confirm that the list of CSQs matches the graphic below

Figure 162. Chat and Email CSQs

Assigning Chat and Email CSQs to the Customer Service Agent Team

In the next section, we will associate the newly created CustomerService_Chat and CustomerService_Email Contact Service
Queues with the Customer Service agent team. This affects whether queue data is presented in the various team reporting
interfaces and supervisor tools in the Cisco Finesse Supervisor Desktop.

17. From the Unified CCX Administration menu navigate to Subsystems > Chat and Email > Teams.

Figure 163. Subsystems > Chat and Email > Teams

18. Click the hyperlink for Customer Service, to edit the Customer Service team properties.

19. In the Available CSQs list click the entry for CustomerService_Chat.

20. Hold the Shift key and click the entry for CustomerService_Emal to select multiple items.

21. Click the left arrow [ ] to assign the selected CSQs to the Customer Service team.

Figure 164. Assign CSQs to Customer Service Team

22. Click Save.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 93 of 182
Cisco dCloud

Assigning Email and WebChat Skills to Agents

In order to make our agents eligible routing targets for both Chat and Email contacts within the CustomerService_Chat and
CustomerService_Email Contact Service Queues, we must assign these skills to agents with competency greater than or equal
to the minimum skill competency specified by our CSQ configuration.

We will use the Assign Skills wizard to assign both Charles Holland and Anita Perez the CustomerService_Chat and
CustomerService_Email skills at a competence of 5 (the default).

1. From the menu choose Subsystems > RmCm > Assign Skills.

Figure 165. Subsystems > RmCm > Assign Skills

2. Place a checkmark in the boxes to select Charles Holland and Anita Perez.

3. Click the Add Skill button.

Figure 166. Select Agents

4. In the Available Skills list click the entry for CustomerService_Chat.

5. Hold the Shift key and click the entry for CustomerService_Emal to select multiple items.

6. Click the left arrow [ ] to assign the selected Skills at the default Competence Level of 5.

7. Click the Update button to assign these skills to the selected agents.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 94 of 182
Cisco dCloud

Figure 167. Assign CustomerService_Chat and CustomerService_Email skills

8. Click OK to apply changes to the selected resources.

Figure 168. Apply Changes

9. With both the CustomerService_Chat and CustomerService_Email skills assigned with a Competence Level of 5, Charles
Holland and Anita Perez are considered to be active resources in the CustomerService_Chat and CustomerService_Email
Contact Service Queues.

Predefined Responses

Use the Predefined Responses page to configure and manage chat and email predefined responses. You can add a maximum of
500 chat and email predefined responses in total. These predefined responses are available in the Manage Chat and Email gadget
on the Finesse Agent Desktop.

You can configure the responses to be available either to all the agents or only to the agents that are associated with specific
CSQs. In this activity, we will create a pre-defined chat response for later observation.

1. From the menu select Subsystems > Chat and Email > Predefined Responses.

Figure 169. Subsystems > Chat and Email > Predefined Responses

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 95 of 182
Cisco dCloud

2. Click Add New.

3. Create a predefined Chat response to simplify the initial agent greeting. Use the table below to complete the form:

Table 35. Predefined Chat Response Configuration Parameters

Setting Input

Title Initial Greeting

Type Chat

Response Thank You for contacting us. How may I assist you today?

Tag Global for all CSQs

4. Click Save.

5. This predefined response will now be available from the Unified CCX WebChat gadget on the Cisco Finesse Desktop when
replying to incoming Chat requests.

Figure 170. Configured Response

Create a Chat Web Form and Social Minder Chat Widget

Next, we will create a Chat Web Form and Chat Widget combination. The Chat Web Form provides a mechanism for customers
to enter pertinent information regarding the reason (Problem Statement) for their contact along with contact details. This
information is then posted to the Chat Widget hosted on Cisco SocialMiner used to appropriately route the contact to an
assigned Chat CSQ. As part of the creation of a Chat Widget the wizard will generate html code for a matching Chat Web Form
to be hosted on a customer website accessible from the internet. For this lab we will use this generated code and host the
resulting Web Chat Form on the Web Server running on ad1.dcloud.cisco.com.

1. From the menu select Subsystems > Chat and Email > Chat Widget List.

Figure 171. Subsystems > Chat and Email > Chat Widget Llist

2. From the List Chat Web Forms configuration page, click the Add New button.

3. Lets analyze the available fields and their purpose:

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 96 of 182
Cisco dCloud

Table 36. Chat Web Form Configuration Parameters

Form Area Parameter Name Description

Widget Details Name Unique identifier of the chat widget.

Description Chat widget description.

Logo URL Location of the logo file that is displayed in the widget.

Widget Wait Message Message that is displayed to the customer when the customer starts a chat session.

Join Time-out Message Message that is displayed to the customer when a chat request is not handled within the set time.

Error Message Message that is displayed to the customer when Unified CCX or chat service is not available to handle
chat requests.

User Form Fields Customer Details A list of pre-defined field which a customer will be prompted to provide. This data will be available to an
answering agent in the Finesse WebChat gadger.

4. Create a WebChat Widget using the following parameters:

Table 37. WebChat Widget Configuration Parameters

Setting Input

Name Customer Service

Description Customer Service WebChat Widget

Logo URL http://ad1.dcloud.cisco.com/dcloud/images/Cisco.png

5. Under the User Form Fields heading from the Available Fields list click the entry for Name.

6. Hold the Ctrl key and click the entry for Email and the entry for PhoneNumber to select multiple items.

7. Click the right arrow [ ] to assign the selected Fields to the Web Form.

8. Click the Next button to continue.

Figure 172. WebChat Widget Configuration

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 97 of 182
Cisco dCloud

9. Next Create a Problem Statement that will be used by the WebChat Widget to route the request to a specified CSQ. Use
the parameters in the table below:

Table 38. Problem Statement Configuration Parameters

Setting Input

Problem Statement Product Order Support

CSQ List CustomerService_Chat

10. Click Next.

11. The next page displays a preview of the Web Form generated during the configuration process. Notice that the Name, Email,
and Phone Number fields are present. A single problem statement entitled Product Order Support is available via the drop-
down menu.

Figure 173. Web Form Preview

12. Click Finish to continue.

13. The final page of the Chat Web Form Configuration wizard displays the generated html code for the Web Form created
through the configuration process.

14. Use your mouse to select all text within the Generated Code window between the <html> and </html> tags.

Figure 174. Select Generated Code

15. With your mouse positioned anywhere over the highlighted text, Right-click and choose Copy from the context menu.

16. Open the Notepad application on wkst1.dcloud.cisco.com by clicking the icon [ ] in the windows taskbar.

17. Anywhere within the Notepad application window, right-click with your mouse and choose Paste from the context menu.

18. Minimize but do not close the Notepad application.

We will use the generated code in a later step to complete the process of hosting an html web form .

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 98 of 182
Cisco dCloud

19. Switch application focus back to the Mozilla Firefox browser and click the Done [ ] button.

Email and Chat Channel Parameters

The settings defined here allow administrators to customize the behavior of the Chat and Email contact channel parameters.
These are global values applied to ALL Chat and Email Contact Service Queues created. Let us take a moment to review the
channel configuration options.

1. Bring focus the Mozilla Firefox browser tab connected to the Cisco Unified CCX Administration web page.

2. From the menu choose Subsystems > Chat and Email > Channel Parameters.

Figure 175. Navigate to Channel Parameters

3. Review the parameters listed in the table below to understand their purpose.

Table 39. Chat and Email Global Channel Parameters

Channel Type Parameter Name Description

Chat No Answer Timeout (Seconds) The time allotted for an agent to respond to the chat request after which, the chat request is routed back to the
chat queue.

Chat Join Timeout (Minutes) The time after which the customer initiates a chat and, if an agent is not joined, the customer gets a message
indicating that chat is currently unavailable. An agent may still join the chat after this timeout expires.

Chat Inactivity Timeout (Minutes) The customer inactivity time after which, the system ends the chat. (Customer side only)

Chat Offer Chat Contact When On Choose Yes to allow agents to handle an incoming chat while on a voice call.
Voice Call

Chat Offer Voice Call When On Chat Choose Yes to allow agents to handle an incoming voice call while in an active chat session.

Chat Maximum Number of Chat A range of 1-5, specifying how many concurrent chat sessions an agent is allowed to handle.
Sessions Per Agent

Email Maximum Number of Email A range of 1-5, specifying how many concurrent email sessions and agent is allowed to handle.
Sessions Per Agent

Email Sticky Email Timeout (Hours) Specify the amount of time for which an email message waits for a reply from a specific agent. Sticky email
routing (Last-agent email routing) is a mechanism to route an email message to the agent who handled the last
leg of the email conversation. When an email message, which is part of an ongoing conversation comes in
and the agent who handled the last leg of the conversations is not available, the email will wait for the time
specified by this parameter. Valid ranges are 1-120 hours.

Note: These parameters should be reviewed and set based on the business case applicable to a particular contact center
environment. For example, the Sticky Email Timeout value would be much higher in cases where consistency of ownership of a
particular email contact (usually based on the nature of the contact) is of higher importance than the speed at which a reply is
generated to back to a customer. These values allow you to customize the behavior of the system to meet the business objectives
of your customer.

Chat and Email Provisioning Complete

All Chat and Email subsystem provisioning required to enable Cisco Finesse Agent Email and Cisco Unified CCX WebChat is
now complete.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 99 of 182
Cisco dCloud

Configure Cisco Finesse to Enable Agent Email and WebChat


With all Chat and Email subsystem provisioning complete we must now modify the default Cisco Finesse Desktop layout to
enable activation of the built-in gadgets for Agent Email and WebChat.

Configure Desktop Layout

1. From the Navigation menu of the Cisco Unified CCX Administration web page choose Cisco Finesse Administration.

2. Click Go.

Navigate to Cisco Finesse Administration

Finesse Administration may also be accessed using the following URI directly: https://uccx1.dcloud.cisco.com:8445/cfadmin

7. Log in to Cisco Finesse Administration with ID: administrator and Password: dCloud123!

8. Click Sign In.

Login to Cisco Finesse Administration

3. From the menu, select Desktop Layout.

4. The default Cisco Finesse Desktop layout includes code to enable the WebChat and Agent Email gadgets, however it is
commented out and therefore ignored by the rendering engine.

5. Observe that near the top of the current layout there is a commented section of code for the WebChat and Email gadget. The
beginning of a comment is denoted by a <!-- including all text until the comment end denoted by -->.

Figure 176. Finesse Desktop Layout Commented Portion

Removing the comment markers as well as the comment text leaving only the gadget delimitations enables the gadget. There are
six distinct commented areas within the layout file and two locations where the hostname of the Cisco SocialMiner server must be
inserted. To save time a pre-edited copy of the Finesse Desktop Layout file has been created for use in this activity.

6. Locate the pre-configured Finesse Desktop layout file by first double-clicking on the folder CCX-Enablement folder on the
windows desktop of wkst1.dcloud.cisco.com (Charles Holland).

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 100 of 182
Cisco dCloud

7. Browse to the folder Module3.

8. Double-click the file Chat_Email_Finesse_Layout.xml to open the file in Notepad.

Figure 177. Open Finesse Desktop Layout XML File

9. Use the Ctrl + A key combination to select the contents of the file.

10. Use the Ctrl + C key combination to copy the selection to the clipboard.

11. Close this Chat_Email_Finesse_Layout.xml file open in the notepad editor.

12. Switch application focus back to the Cisco Finesse Administration web page.

13. Place your mouse cursor within the Finesse Layout XML frame.

14. Use the Ctrl + A key combination to select all text within the frame.

Figure 178. Select all current XML

15. Use the Ctrl + V key combination to paste the code copied to the clipboard earlier.

16. Click the Save button.

17. Observe the status message indicating that the layout modification is saved successfully.

Figure 179. Modification Successful

18. Close the Cisco Finesse Administration tab in Mozilla Firefox.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 101 of 182
Cisco dCloud

Hosting the Chat Web Form Generated Code


In order to make use of the html Web Form code generated during the previous exercise we must save the code as an HTML file
and place it in a file directory on the Web Server that is part of the web-hosting configuration. Using a network drive mapped to
ad1.dcloud.cisco.com we will save the resulting html file to the default hosting directory of Internet Information Service (IIS):
C:\inetpub\wwwroot. Once the file has been saved to the appropriate directory on ad1.dcloud.cisco.com, all we need do is
restart the web server and it will automatically be available at the URL: http://ad1.dcloud.cisco.com/chat.html.

Save chat.html to ad1.dcloud.cisco.com

1. Switch focus to the Notepad application where the generated code was copied to in our earlier exercise.

2. From the Notepad menu select File > Save As.

Figure 180. Save As

3. In the Save As dialog, expand Computer and select the Mapped Network drive letter Z.

Figure 181. Browse to Mapped

4. Enter the following values to save the generated code as an html file.

Table 40. Save As Parameters

Setting Input

File Name chat.html

Save as type All Files (*.*)

Encoding ANSI

Figure 182. Save As Parameters

5. Click Save

6. Close the Notepad application.

Note: By saving the file to the mapped network drive, we have actually placed it in the IIS web root directory on
ad1.dcloud.cisco.com (C:\inetpub\wwwroot).

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 102 of 182
Cisco dCloud

Restart IIS

7. Switch to the RDP session connected to ad1.dcloud.cisco.com (Administrator).

8. Launch the IIS Manager application by clicking the icon [ ] in the windows taskbar.

9. In the Connections pane of the IIS Manager application window select the entry for AD1 (DCLOUD\administrator).

10. In the Actions pane, click Restart to restart the web server and make the chat.html file actively available.

Figure 183. Restart IIS

Verify Web Form

With the configuration to the Web Form chat.html complete we will test to ensure that the file is accessible in a web-browser
before moving on to the next configuration activity.

11. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

12. Bring focus back to Mozilla Firefox.

13. Click the + next to the current open tab to open a new tab.

Figure 184. New Tab

14. From the dCloud Homepage select Collaboration User and Test Links > UCCX 11.0.1 Agent Chat Widget. Alternatively,
you may type or paste the URL http://ad1.dcloud.cisco.com/chat.html into the new web browser tab to access the form
directly.

15. Observe the newly hosted Web Form displayed. It should match the graphic below.

Figure 185. Hosted Web Form

16. Leave this tab open as it will be used again.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 103 of 182
Cisco dCloud

Testing Unified CCX WebChat


With all configuration activities completed we will now log into the Finesse Agent Desktop with the updated layout and test our
configured WebChat implementation by answering customer chat requests as agent Anita Perez.

Log in to Cisco Finesse and Transition to Ready for Chat and Email

1. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

2. Launch Mozilla Firefox by clicking the icon [ ] in the Windows taskbar.

3. From the homepage navigate to Collaboration User and Test Links > UCCX 11.0.1 Finesse Desktop.

4. Enter the following to log into the Cisco Finesse Agent Desktop:

ID: aperez

Password: C1sco12345

Extension: 6017

Figure 186. Log In to Cisco Finesse

5. Click Sign In.

6. Notice that based on the changes made to the Finesse Desktop Layout a new tab named Manage Chat and Email is
present. Also, note the state change gadget for Chat and Email.

Figure 187. Changes to Desktop Layout

7. Transition to Ready for Chat and Email by clicking the down arrow to the right of the Not Ready for Chat and Email control.

Figure 188. Transition to Ready for Chat and Email

Note: It is important to understand that there are two distinct agent states, which are managed independently of one another. An
agent may be ready for either Voice or Chat and Email or both simultaneously. Remember that transitioning to a Ready state for
one has no effect on the other.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 104 of 182
Cisco dCloud

Test Unified CCX WebChat

1. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Switch focus to Mozilla Firefox and select the tab connect to the newly created Web Chat Form. If Firefox was closed
previously, you may navigate directly to the Web Form by browsing to the following URL:
http://ad1.dcloud.cisco.com/chat.html.

3. In the chat form enter the following values or appropriate text of your choice:

Table 41. Save As Parameters

Setting Input

Name Charles Holland

Email cholland@dcloud.cisco.com

Phone Number +14085556018

Problem Product Order Support

Figure 189. Web Form

4. Click Submit.

5. Observe that the browser is connected to the Chat Widget hosted on Cisco SocialMiner.

Figure 190. Chat Widget Welcome Message

6. The welcome message will continue to be presented until either the chat session is connected to an available agent, or the
timeout value specified in the Channel Parameters has been reached.

7. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

8. Notice that an incoming chat notification is displayed on the Home tab in Cisco Finesse.

9. Accept the incoming chat request by clicking the Accept button.

Figure 191. Incoming Chat Request

10. Observe that the Cisco Finesse Desktop switches application focus to the Manage Chat and Email tab.

11. Use the Select Predefined Response button [ ] at the far right of the chat response box.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 105 of 182
Cisco dCloud

12. Click Initial Greeting from the Predefined Response list to copy the predefined response text into the chat window.

13. Press the Enter key to paste this text into the chat.

Figure 192. Predefined Response

14. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

15. Into the chat window, type any response text of your choice. Press Enter to post the reply text into the chat session.

Figure 193. Customer Response

16. Switch to the RDP session connected to wkst2.dcloud.cisco.com.

17. Type another reply of your choice and press Enter to post the reply into the chat session.

Figure 194. Agent Reply Text

18. Feel free to continue replying back and forth. When finished choose End from the Finesse Desktop.

Figure 195. End Chat Session

19. Return to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

20. Observe the message to the customer that the chat session has been ended. The customer is offered the option to save the
chat transcript as a PDF file.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 106 of 182
Cisco dCloud

Figure 196. Save Chat Transcript

21. Click Yes to save the transcript.

22. In the Save As dialog click OK.

23. Close the Chat tab in the Mozilla Firefox browser.

24. Use the windows file explorer to browse to Desktop\CCX-Enablement\Downloads.

25. Double-click the saved PDF file to open and review it if desired.

Figure 197. Saved Chat Transcript

26. Close the Chat Transcript tab in the browser.

27. Close the Windows Explorer window.

Testing Cisco Finesse Agent Email


In the final section of this lab module, we will test the Finesse Agent Email feature to confirm operation.

Send An Email to Customer Service

1. Continuing from the RDP session connected to wkst1.dcloud.cisco.com launch Microsoft Outlook via the icon [ ] on the
Windows Taskbar.

2. Click the New Email icon [ ] located in the top left of the Microsoft Outlook application window.

3. Compose a message to the Customer Service email CSQ using the following parameters:

Table 42. Send email

Setting Input

To CustomerService@dcloud.cisco.com

Subject Order #11004

Message Body Hello. Id like to have the tracking number of my


recently shipped order. (Or text of your choice)

4. Click Send.

Reply to a Customer Email

5. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 107 of 182
Cisco dCloud

6. Because Anita Perez is already in a state of Ready for Chat and Email, when the incoming message is routed to her, the
Finesse Desktop will automatically switch focus to the Manage Chat and Email tab. The new message will be displayed
along with a space for the agent to reply to the message.

7. Type a suitable reply and click the Send button.

Figure 198. Reply to Customer Email

Confirm Receipt of Reply

8. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

9. Confirm that a reply message from CustomerService@dcloud.cisco.com is present in the email inbox. (It may take a
minute or two for the email response to arrive.

Last-Agent routing (Email Stickiness)

One of the impressive capabilities of Cisco Finesse Agent Email is the ability to ensure that the agent, who handles the initial
customer contact, is the preferred target for replies on that email thread. This is referred to as Last-agent routing or Email
Stickiness. The amount of time that Cisco Unified CCX waits until releasing these replies back into the queue is specified by the
Sticky Email Timeout value under Chat and Email > Channel Parameters, discussed earlier in the lab. This value can be
specified to a minimum of 1hr and up to 120 hours.

In our final test, we will have Charles Holland assigned to the CustomerService_Email CSQ, with a competence level equal to
that of the agent who replied to the initial customer contact, log into Cisco Finesse and transition to a Ready for Chat and Email
state. Meanwhile agent Anita Perez will then transition to a Not Ready for Chat and Email state. The customer will then reply to
the same email thread.

Based on your learning in this module, what do you expect the result to be?

1. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

2. Transition to Not Ready for Chat and Email by clicking the down arrow to the right of the Ready for Chat and Email control.

3. Return to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

4. If it is not already running, launch Mozilla Firefox by clicking the icon [ ] in the Windows taskbar. Otherwise open a new
tab.

5. From the dCloud homepage navigate to Collaboration User and Test Links > UCCX 11.0.1 Finesse Desktop.

6. Enter the following to log into the Cisco Finesse Supervisor Desktop:

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 108 of 182
Cisco dCloud

ID: cholland

Password: C1sco12345

Extension: 6018

7. Click Sign In.

8. Transition to Ready for Chat and Email by clicking the down arrow to the right of the Not Ready for Chat and Email control.

Figure 199. Transition to Ready for Chat and Email

9. From the Cisco Finesse Supervisor Desktop menu, click the Queue Data tab.

Figure 200. Queue Data Menu

10. Scroll to the bottom of the page to view the data presented by the Chat CSQ Summary Report live data gadget.

11. Confirm that there are 2 agents logged in and 1 in a Ready state.

Figure 201. Chat CSQ Summary Report

12. Switch application focus to the Microsoft Outlook application.

13. Locate the Email reply from CustomerService@dcloud.cisco.com generated through the previous exercise.

14. Click the Reply [ ] button.

15. Leaving the Subject and To fields intact, compose a brief reply of your choice.

16. When finished click the Send button.

Figure 202. Reply Email Thread

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 109 of 182
Cisco dCloud

17. Switch application focus to the Cisco Finesse Desktop.

18. Observe that the email is not routed to Charles Holland. This is because the system will hold this message in reserve for
Anita Perez until she becomes available to reply as long as its within the timeout value of 4 hours per the currently configured
Sticky Email Timeout of 4 hours.

19. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

20. From the Cisco Finesse Agent Desktop transition to a Ready for Chat and Email state.

21. Confirm that the reply email message is immediately presented to Anita Perez.

22. Feel free to reply if desired. When finished move on to the next step.

23. Close the Mozilla Firefox Web Browser.

24. Switch to the RDP Session connected to wkst1.dcloud.cisco.com (Charles Holland).

25. Close Mozilla Firefox.

26. Close Microsoft Outlook.

Module 3 Conclusion
Through the completion of this activity, we accomplished the following learning objectives:

Review the requirements and pre-requisites for deploying Cisco Finesse Agent Email and Unified CCX WebChat.

Use the Cisco Unified CCX Administration interface to provision Cisco Finesse Agent Email and Unified CCX
WebChat.

Explore the use of Predefined Responses.

Use a Web Server to host the Unified CCX WebChat form.

Use the Cisco Finesse Desktop Administration interface to enable the Agent Email and WebChat gadgets.

Test and explore the functionality of Cisco Finesse Agent Email.

Test and explore the functionality of Cisco Unified CCX WebChat.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 110 of 182
Cisco dCloud

Module 4: Finesse Gadget Creation and Customization Tutorial


ATTENTION: Students MUST complete the activities Connecting to Your Pod and Lab Orientation prior to working on this lab
module. This ensures an active Cisco AnyConnect VPN session to your assigned Lab Pod and active RDP connections to
wkst1.dcloud.cisco.com, wkst2.dcloud.cisco.com, and ad1.dcloud.cisco.com.

Module Overview
In this Module, we will learn how to add a custom Finesse Gadget to the Cisco Finesse Agent Desktop to meet a stated
business need. Cisco has made available certain Sample Gadgets on the Cisco Developer Network (DevNet) website. We will
be using the WebService Sample Gadget from this site, performing customization to make it suit our requirements. Through this
process we will explore how Cisco Finesse Gadgets operate and how to deploy one in our lab environment.

Note: For students wishing to skip the gadget development process or encountering difficulty following the exercise a working
version of the customized WebService Sample Gadget can be found in the Desktop\CCX-Enablement\Student-
Resources\Module4-Completed-Gadget folder of wkst1.dcloud.cisco.com.

What is Cisco Finesse?

Finesse is a browser based Customizable Desktop Interface for both Agents and Supervisors. The interface is a compilation of
customizable tables for various desktop layouts. It allows the Agent to change their state and interact with CRMs, 3rd Party tools,
Recording or reporting via customizable Gadgets.

Figure 203. Cisco Finesse Desktop

Cisco Finesse can use 3rd Party Gadgets to imbed applications into its interface or using the REST API imbed the Finesses API
into a customers own application.

Gadgets use existing web standards:

XML to define metadata

HTML for markup

JavaScript for interactivity

CSS for presentation and

Follow OpenSocial Gadget specification (Metadata storage and Content)

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 111 of 182
Cisco dCloud

Finesse Gadgets at a Glance

Cisco Finesse Gadgets are mini web pages (HTML JavaScript, Cascading Style Sheets) contained in an xml wrapper. In
essence, a containerized WebApp that is intended to perform a certain function and runs within Cisco Finesse. Cisco Finesse
Gadgets are architected using the OpenSocial specification.

The OpenSocial specification defines a component-hosting environment (container) and a set of common application
programming interfaces (APIs) for web-based applications. It has become widely adopted as a general use runtime environment
for allowing untrusted and partially trusted components from third parties to run in an existing web application.

Cisco provides Sample Gadgets and a JavaScript library for use in creating custom Gadgets. While Gadgets are quite simple, the
easiest way to get started is to download a sample, deploy it to your Finesse Server, and see it in action.

Ultimately, Cisco Finesse Gadgets are intended to provide the optimal set of tools, features, and data needed to effectively
handle customer collaboration from within a single user interface: Cisco Finesse Agent Desktop. The overall architecture of
Cisco Finesse enables partners to help customers quickly and efficiently realize benefits of Unified CCX by adding required
features as needed to Cisco Finesse in the form of gadgets.

Module Objectives
In this module, we will explore and work through the process of downloading, customizing, and implementing a new Cisco
Finesse Gadget, which solves for a potential business problem. We will use freely available editing tools and sample code to
demonstrate and work through this process.

Understand the modular architecture of Cisco Finesse.

Understand the fundamentals of the operation and components of Gadgets in Cisco Finesse.

Identify a theoretical business problem that can be solved using a custom gadget.

Download an example gadget from DevNet.

Customize gadget components to meet the use case.

Host the gadget in Cisco Finesse.

Modify the Finesse Desktop Layout to add the new gadget.

Test operation of the gadget.

Topology Review and Pre-Configuration


In order to reduce the time required to complete this lab module some elements required to facilitate the Finesse Gadget Tutorial
have been configured in advance. The following section provides background on key solution components, their location in the
topology and specific configuration in place.

Topology

Table 43. Cisco Finesse Agent Email and Unified CCX WebChat Components

Diagram Name Description Host Name (FQDN) IP Address Username Password


1 UCCX2 Unified Contact Center Express 11.0.1 uccx2.dcloud.cisco.com 198.18.133.20 administrator dCloud123!

2 WKST2 Windows 7 Workstation wkst2.dcloud.cisco.com 198.18.133.37 aperez C1sco12345

4 AD1 Active Directory, DNS, IIS ad1.dcloud.cisco.com 198.18.133.1 administrator C1sco12345

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 112 of 182
Cisco dCloud

Figure 204. Lab Topology

Cisco Unified Contact Center Express 11.0(1)

Cisco Unified CCX has been installed and provisioned with an agent team and voice contact workflow as defined in the tables
below. The Customer Service team will serve as the Line of Business for which we will customize and deploy a new Cisco
Finesse Gadget.

Table 44. Configured Teams

Name Primary Supervisor Agents Assigned CSQs Assigned

Customer Service Charles Holland Anita Perez, Charles Holland CustomerService_Voice

Table 45. Primary Demonstration Users

Name Use Case IPCC Ext Login ID Password

Charles Holland Acts as both a Supervisor and Agent for the 6018 cholland C1sco12345
Customer Service Team

Anita Perez Acts as the primary Agent for the Customer Service 6017 aperez C1sco12345
team

Table 46. Contact Service Queues (CSQs)

Name Use Case Skill Name Skill Level

CustomerService_Voice Voice Contact CSQ for CustomerService_Voice Minimum - 5


Customer Service Calls

Table 47. Voice Applications, Scripts, Trigger#

Application Name Description Script File Trigger DN

CS_Voice_Main Voice Contact CSQ for CCX_Enablement/icd.aef 6021


Customer Service Calls

Microsoft Internet Information Services (IIS)

IIS will serve as the Web Server, which will host an xml file that our custom gadget will be used to fetch. IIS is running on
ad1.dcloud.cisco.com (198.18.133.1).

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 113 of 182
Cisco dCloud

Certificate Management and DNS Resolution

All components of this lab environment have been configured with SSL certificates signed by a Microsoft Windows Server 2008
Certificate Services server running on ad1.dcloud.cisco.com. Workstations used for configuration and demonstration have
been provisioned to trust ad1.dcloud.cisco.com as a Trusted Certificate Authority (CA).

In addition, all Collaboration systems used in this demonstration are configured with Fully Qualified Domain Names and each is
resolvable via DNS hostname lookup.

An Overview of Gadget Operation


As mentioned previously, Cisco Finesse Gadgets make use of existing web standards:

XML to define metadata

HTML for markup

JavaScript for Interactivity (controls and interface logic)

CSS to define visual styles used when rendering HTML

OpenSocial specification.

Let us examine the process of Cisco Finesse Gadget operation:

The Cisco Finesse Desktop Layout instructs Cisco Finesse to render a gadget by providing the location of the XML file
associated with the gadget.
rd
Cisco Finesse will fetch the XML file specified (either hosted on a 3 party web server or directly within the Cisco
Finesse Web Server.

Finesse will then render the contents of the Gadget as HTML in a gadget container on the Cisco Finesse Desktop.

The Gadget includes a JavaScript file that references Web Services that will provide it with some data. The JavaScript
executes defined data collection processes.

Finally, the result of the data collection process is passed along to the Finesse Desktop in the Gadget container.

What is the WebService Sample Gadget


Basics of Operation

Quite simply, the WebService Sample Gadget demonstrates how to retrieve and render an Extensible Markup Language (XML)
rd
file hosted on any 3 party web server. By default this is an XML file containing the text Hello World. While simplistic in terms of
operation, this gadget will allow us to explore the anatomy of a Cisco Finesse Gadget and understand how we can use existing
code samples customized to meet the business needs of our customers.

How Will We Use It?

In our scenario, the Customer Service agent team provides ordering support for an Organization (unnamed) that manufactures
and markets high quality and innovative Widgets (undefined). Calls into the Customer Service team may be to place a New
Order or provide support for an Existing Order.

The marketing group for the Organization has conducted an analysis and determined that information regarding current product
promotions is not effectively being provided to the Customer Service representatives while speaking with customers. As a result,

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 114 of 182
Cisco dCloud

representatives taking new product orders are missing an opportunity to provide callers with promotional offers resulting in a loss of
potential revenue.

The highly agile and motivated marketing team posts an updated promotion sheet called CurrentPromotions.xml on a nightly
basis to the intranet web server.

We will customize the WebService Sample Gadget to retrieve the contents of the promotions list and render it in the Cisco
Finesse Desktop providing agents with the most recent promotional offering when fielding customer calls.

Download Gadget Code from Cisco DevNet


The Cisco Developer Network or DevNet is a tremendous resource for those looking to extend the functionality of any Cisco
Product or Solution set. In this lab we will use a publicly available code sample and through the process of implementation and
customization gain a fundamental understanding of the mechanics behind Cisco Finesse Gadgets.

In the following steps, we will access the DevNet site and download the code for our WebService Sample Gadget.

1. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Launch Mozilla Firefox by clicking the icon [ ] in the Windows taskbar.

3. To access the DevNet sample gadgets repository browse to https://developer.cisco.com/site/finesse/downloads/sample-


gadgets/.

Figure 205. Finesse Sample Gadgets URL

4. Click Log In at the top of the page and login with your CCO credentials.

Note: In order to download the WebService Sample Gadget, you will need to login to the DevNet website with your Cisco.com
credentials. In the event you do not have those, please use this link to the download the gadget:
https://cisco.box.com/WebServiceSampleGadget.

5. On the Finesse Sample Gadgets page, type Ctrl + F to open the Find window at the bottom of the browser.

6. Search for WebService. Doing so will bring you directly to the entry for the Sample Gadget WebService gadget.

7. Click the hyperlink for Download WebServiceSampleGadget-2.0.zip to initiate the download.

Figure 206. Download the Sample Gadget WebService

8. Click OK when prompted to Save File. This will begin the download to the default download directory located at
Desktop\CCX-Enablement\Downloads.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 115 of 182
Cisco dCloud

9. Logout of the DevNet site.

10. Use Windows File Explorer to navigate to the following directory > Desktop\CCX-Enablement\Downloads.

11. Right-click the file WebServiceSampleGadget-2.0.zip and from the context menu select 7-Zip > Extract to
WebServiceSampleGadget-2.0\.

12. This will extract the contents of the archive to a folder in the current directory named WebServiceSampleGadget-2.0.

Figure 207. Extract Files from the .zip file

The Anatomy of a Gadget


Next, we will examine the files that make up the WebService Sample Gadget and discuss the role and function of each.

1. In the File Explorer window currently open in the Desktop\CCX-Enablement\Downloads folder, browse to
WebServiceSampleGadget-2.0\WebService.

Figure 208. Browse to the WebService directory

2. Observe the files listed therein. A brief explanation of each file and its function is available in the following table.

Table 48. Gadget Files and Function

File Name Function

HelloWorld.xml Sample XML content file which comes as part of the Sample Gadget. We will be modifying the contents of this file as part of our
gadget customization process. We will create a file called Current Promotions.xml to meet our customer requirement.

WebService.xml Gadget definition file containing the HTML content the gadget and references to files containing business logic,jQuery and
Finesse JavaScript libraries and visual styles.

WebService.js A JavaScript file containing the business logic for the gadget. The JavaScript file provides the logic to run the HTTP request to
the Web Server, which hosts the content XML file to be retrieved. It then returns the result as HTML which is rendered on the
Finesse Desktop.

WebService.css This file defines the HTML styles used when the Gadget renders HTML content. The WebService.xml file references this
explicitly.

Note: The Unified CCX server ships with installed copies of both the jQuery and Finesse JavaScript libraries located in the
/opt/cisco/desktop/finesse/webapps/desktop/assets/js/ directory. The JavaScript file, which contains the business logic of the
gadget, will leverage these libraries. They are referred to in the WeService.xml file. When developing your custom gadgets, you will
also use these libraries. They are finesse.js and jquery.min.js.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 116 of 182
Cisco dCloud

Create the Current Promotion XML File


Ultimately, the control and update of this file would be the responsibility of our theoretical Marketing Team, for the purposes of this
lab we will take on that role and create the file that will contain the fictional information regarding current product promotions. We
will then host this file on a web server to make it accessible to our Agents via the Cisco Finesse Gadget.

We will use the Hello World.xml file as the starting point and edit it to suit our needs.

Create the New CurrentPromotion.xml File

1. From the File Explorer window viewing the Desktop\CCX-Enablement\Downloads\WebServicesSampleGadget-


2.0\WebService folder right-click the file HelloWorld.xml and select Edit with Notepad ++.

Figure 209. Edit with Notepad ++

Note: If presented with the notice of an update package being available click No.

2. Observe that the XML data structure and tags are not optimal for providing promotional data.

Figure 210. Contents of the HelloWorld.xml File

3. Clear the current data by highlighting all the text beneath the XML version reference tag <?xml version = 1.0?>.

4. Press the Backspace key to delete.

Figure 211. Highlight and Delete Existing Text

5. Type or paste the following to create an XML data structure with appropriate promotion data:
<promotions>
<productname>Super Deluxe Widget Bundle</productname>
<promotion>Buy 2 Get 1 Free</promotion>
</promotions>

Figure 212. Product Promotion Data

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 117 of 182
Cisco dCloud

Save the CurrentPromotion.xml File to the IIS Web Server

To simplify file transfer operations a mapped network drive (Z:) has been configured on wkst1.dcloud.cisco.com in advance.
This network share is actively connected to the Web Root directory on ad1.dcloud.cisco.com and path is C:\inetpub\wwwroot.
We will save our new CurrentPromotion.xml file directly to the Web Server.

6. From the Notepad ++ editor menu choose File > Save As.

7. In the Save As file dialog browse to Computer > wwwroot(ad1.dcloud.cisco.com\C$\inetpub)(Z)

8. In the File name field change the name from HelloWorld.xml to CurrentPromotion.xml.

9. Click Save.

Figure 213. Save As CurrentPromotion.xml

10. Close the CurrentPromotion.xml file before proceeding.

Restart IIS on ad1.dcloud.cisco.com

17. Switch to the RDP session connected to ad1.dcloud.cisco.com (Administrator).

18. Launch the IIS Manager application by clicking the icon [ ] in the Windows taskbar.

19. In the Connections pane of the IIS Manager Application window select the entry for AD1 (DCLOUD\administrator).

20. In the Actions pane click Restart to restart the web server and make the CurrentPromotion.xml file active.

Figure 214. Restart IIS

Verify Accessibility of CurrentPromotion.xml

With the configuration to the current promotion XML file complete we will test to ensure that the file is accessible in a web-browser
before moving on to the next configuration activity.

21. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

22. Return to the Mozilla Firefox browser.

23. Click the + next to the current open tab to open a new tab.

Figure 215. New Tab

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 118 of 182
Cisco dCloud

24. Type or paste the URL http://ad1.dcloud.cisco.com/CurrentPromotion.xml into the new web browser tab to access the
form directly.

25. The newly hosted CurrentPromotion.xml file should be displayed and match the graphic below.

Figure 216. Result of browsing to the .xml file

26. Close this browser tab.

Edit the WebService JavaScript File


With our source data successfully hosted on ad1.dcloud.cisco.com we must now modify the WebService.js JavaScript file to
point it to the CurrentPromotion.xml file to be the target for the XML data that will be returned.

1. From the File Explorer window viewing the Desktop\CCX-Enablement\Downloads\WebServicesSampleGadget-


2.0\WebService folder right-click the file WebService.js and select Edit with Notepad ++.

2. Use the Ctrl + F keystroke combination to open a Find window.

3. In the Find what: field type gadgets.io.makeRequest(encodeURI.

Figure 217. Find gadgets.io.makeRequest(encodeURI

4. Click Find Next.

5. This will bring you to the location in the file where the Uniform Resource Indication (URI), from which this gadget will fetch
data, is specified. This should be Line 90 of the WebService.js file.

6. Close the Find dialog window.

7. The method gadgets.io.makeRequest is defined in the finesse.js JavaScript library file. It expects to be passed a valid URI
to which it will attempt to make a connection. Observe the code and comments in the file directly before the
gadgets.io.makeRequest method is invoked.

8. Replace both occurrences of the string https://10.88.194.158:8080 with http://198.18.133.1:8080 (include the quotes).

Figure 218. Change IP Address of target server

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 119 of 182
Cisco dCloud

Note: Microsoft IIS on ad1.dcloud.cisco.com is configured to listen on port 8080 for incoming requests by IP Address.

9. By modifying the value of the IP address specified in the URI we have effectively instructed the gadgets business logic to use
ad1.dcloud.cisco.com as the web server host with which it is expected to connect with.

10. Next we will specify the actual file path relative to the webserver root directory (/).

11. Use the Ctrl + F keystroke combination to open the Find window.

12. In the Find what field type this.myrestRequest(.

13. Click Find Next.

Figure 219. Find this.myrestRequest

14. This will bring you to the location in the file where the file path to the relevant XML file is defined. This should be Line 56 of
the WebService.js file.

15. Close the Find dialog window.

16. Observe the code and comments in the file directly before the this.myrestRequest method is invoked.

Figure 220. this.myrestRequest

17. Replace the string /userContent/HelloWorld.xml with /CurrentPromotion.xml. In order to specify our target XML file for
rendering in the gadget.

18. Confirm that your file matches the graphic below.

Figure 221. Set the file path for myrestRequest

19. From the Notepad ++ Editor menu select File > Save. This will save modifications to the WebServices.js file.

20. Close this file before proceeding.

Edit the Gadget Definition File WebService.xml


As mentioned when identifying the components of the WebService Sample Gadget the WebService.xml file contains both the
HTML content of the gadget in addition to specifying the location of the business logic, required JavaScript libraries, and visual
styles.

1. From the File Explorer window viewing the Desktop\CCX-Enablement\Downloads\WebServicesSampleGadget-


2.0\WebService folder right-click the file WebService.xml and select Edit with Notepad ++.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 120 of 182
Cisco dCloud

2. Let us identify the three key sections of the file and their function with respect to the operation of any Cisco Finesse Gadget.
The Figure below provides a visual aid to the data provided in Table 49.

Table 49. WebService.xml

Image File Section Function


Tag

1 Gadget Header Controls the visual display of the Gadget Header such as Title

2 File Associations Contains a list of all pertinent reference files required for this Gaedget to operate (CSS Style Sheets, jQuery and
Finesse JavaScript libraries, Business Logic)

3 Gadget Body Layout Layout of the Gadget Body including the way in which data will be presented when returned in addition to any
controls (buttons, search boxes) to be displayed.

Figure 222. WebService.xml

Edit the Gadget Header

In this case the elements enclosed within the <moduleprefs></moduleprefs> tags specify the Title and Description of the
gadget. In the following steps, we will change the title to reflect our use case.

3. Within the <ModulePrefs> tag, locate the text Sample Gadget WebService and replace the two occurrences (title,
description) with the text Current Product Promotions.

Note: When editing values ensure that quotes () around the text are preserved. Omitting quotes for text fields will cause
erroneous output.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 121 of 182
Cisco dCloud

4. Ensure that your edits match the graphic below.

Figure 223. Replace Gadget Tile and Description

Edit the Gadget Body

Our next series of edits will modify cosmetic elements within the body of the Finesse Gadget. We will change the heading text of
the table and the button label to suit our use case.

5. Scroll down to the Body section (Section 2 in Figure 222)

6. Replace the current text between the <legend> and </legend> tags with the text Current Promotion.

7. Replace the current text between the <button onClick> and </button> tags with the text Get Data.

8. Confirm that your edits match the graphic below.

Figure 224. Replace legend and button caption

9. From the Notepad ++ Editor menus choose File > Save.

10. Close the file before proceeding.

Edit the Cascading Style Sheet (CSS) Associated with the Gadget
Finally, we will make changes to the style of text displayed when the gadget retrieves marketing updates from the
CurrentPromotions.xml file. This is done by editing the WebService.css file that is referenced in the gadget definition file
WebService.xml.

1. From the File Explorer window viewing the Desktop\CCX-Enablement\Downloads\WebServicesSampleGadget-


2.0\WebService folder right-click the file WebService.css and select Edit with Notepad ++.

2. Currently the there is only a single entry specifying the visual styles associated with the body element of the HTML document.

Figure 225. WebService.css

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 122 of 182
Cisco dCloud

To better understand the relationship between an HTML Document and an associated CSS let us examine an HTML code snippet
and a CSS directive intended to influence visual styles pertaining to it.

Table 50. HTML and CSS relationship

HTML CSS Applied

Referring to the table above observe the <body> and </body> tags. The entry in the linked CSS file specifies that a visual style will
be applied to all elements within the body tags of the associated HTML document.

Our goal is to provide some differentiation between the rest of the body and the result returned from our CurrentPromotions.xml
file. To do this we must add an entry that specifies the visual style elements to be associated and the HTML object that pertains to
this data.

Figure 226. WebService.xml HTML Snippet

Based on the graphic above we can see that the data returned when the Get Data button is clicked is displayed within a <span>
element specified by an id named result. We can therefore create a CSS entry pertaining to an HTML span object and specify the
styles to be applied to each occurrence of the object.

3. Using the Notepad ++ editor, copy or paste the following text directly beneath the current entry for body.
span {
background-color: #66CCFF;
color: red;
}

4. Confirm that your copy of WebService.css matches the graphic below.

Figure 227. Modified WebService.css

The hexadecimal code of #66CCFF specifies a shade of light blue. The background-color directive applies this color to the
background of the defined element.

The color directive refers to text displayed within the specified element. In this case, we simply use the value red.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 123 of 182
Cisco dCloud

We can therefore expect that data returned by our gadget will be displayed in red text on blue background.

5. From the Notepad ++ Editor Menu choose File > Save.

6. Close the Notepad ++ application.

Hosting the WebService Gadget in Finesse on Unified CCX


Up to this point, we have modified all of the pertinent Cisco Finesse Gadget files to render the data based on the requirements
developed by the marketing group. In order to make use of the gadget we must first upload it to the Gadget Container Directory on
the Unified CCX server uccx2.dcloud.cisco.com.

rd
Set the password for the Cisco Unified CCX 3 Party Gadget Directory

rd
The transfer process requires the use of an SFTP client and the built-in 3 Party Gadget SFTP account. This password must be
rd
configured before an SFTP connection can be made for file transfer into the 3 Party Gadget Directory.

1. Launch the PuTTY terminal emulator by clicking the [ ] icon in the Windows taskbar.

2. Highlight the entry for uccx2 and click Load.

Figure 228. Select Session and Load

3. Click Open.

4. Login with the username administrator and password dCloud123!.


rd
5. Using the Unified CCX OS Administration CLI we will issue the commands required to reset the 3 Party Gadget SFTP
rd
account. Type the following command followed by the Enter key to set the password for the 3 Party Gadget SFTP
account:

utils reset_3rdpartygadget_password

6. In the New Password field enter dCloud123!

7. In the Confirm New Password field type dCloud123!.

8. Confirm that a message saying Password updated successfully is displayed.


rd
Figure 229. Reset 3 Party Gadget SFTP Account

rd
The 3 Party Gadget SFTP account is now ready for use in uploading Cisco Finesse Gadget files.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 124 of 182
Cisco dCloud

9. Type exit followed by the Enter key to close the PuTTY session.

rd
Upload Gadget Files to the Cisco Finesse 3 Party Gadget Directory

rd
Note: Certain 3 party gadgets may cause an upload error indicating insufficient permissions. In order to work around this issue
the os secure mode may be set to permissive temporarily to allow for the upload. We have already set the os secure mode to
permissive as part of the pre-configuration of this lab environment.
rd
In the next activity, we will use an SFTP client, WinSCP, to transfer the WebService gadget files to the 3 Party Gadget
Directory.

1. Launch the WinSCP client by clicking the [ ] icon in the Windows taskbar.

2. Use the table below to fill in the Session details:

Table 51. WinSCP Session Details

Setting Input

File protocol SFTP

Host name uccx2.dcloud.cisco.com

Port number 22

User name 3rdpartygadget

Password dCloud123!

3. Refer to the graphic below to confirm the correct session configuration.

Figure 230. WinSCP Session Details

4. Click Login.

5. When challenged to accept the host key provided by uccx2.dcloud.cisco.com click Yes to continue connecting.

Figure 231. Trust RSA Key provided

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 125 of 182
Cisco dCloud

6. The WinSCP client interface is broken into two panes. The left pane represents local files, while the right provides a
visualization of the remote host file system.

Figure 232. File Browsing Layout

7. Click the Open Directory icon in the Local Filesystem pane to browse to the directory where the extracted WebService
Sample Gadget files reside.

Figure 233. Open Directory

8. In the Open Directory dialog, click the Browse button.

9. Select the folder Desktop\CCX-Enablement\Downloads\WebServicesSampleGadget-2.0\WebService.

10. Click OK.

Figure 234. Select the WebService Sample Gadget Folder

11. Click the OK button to complete the directory selection.

12. In the Remote Filesystem pane of the WinSCP application window, double-click the files directory.

13. In the local file system pane, select all the files excluding HelloWorld.xml. Consult the graphic below for reference.

Figure 235. Select Files for Transfer

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 126 of 182
Cisco dCloud

14. Click the [ ] icon or drag and drop the files to the remote destination to initiate the file transfer process.

15. In the Upload dialog, click OK to commence the file transfer.

16. Confirm that the three selected files have transferred and appear in the /files directory on the remote file system.

Figure 236. Confirm File Transfer

17. From the main menus navigate to Session > Disconnect.

18. Click Close in the Login window.

Observe the Finesse Agent Desktop Layout Prior to Gadget Deployment


Let us review the current layout and configuration of the Cisco Finesse Agent Desktop. Familiarity with this baseline will assist in
understanding the changes made through the deployment and configuration of our custom Gadget.

1. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

2. Launch Mozilla Firefox by clicking the icon [ ] in the Windows taskbar.

3. From the dCloud homepage navigate to Collaboration User and Test Links > UCCX 11.0.1 Finesse Desktop.

Figure 237. Cisco Finesse Desktop link

4. Enter the following to log into the Cisco Finesse Agent Desktop:

ID: aperez

Password: C1sco12345

Extension: 6017

Figure 238. Log In to Cisco Finesse

5. Click Sign In.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 127 of 182
Cisco dCloud

6. Observe the available Tabs in the default Cisco Finesse Agent Desktop layout Home, My Statistics, and Manage
Customer.

Note: Those students continuing on to this exercise after completing Module 3 will observe, that in addition to the Cisco Finesse
Agent Desktop tabs displayed in the figure below, a Manage Chat and Email tab are also visible.

Figure 239. Cisco Finesse Desktop Default Layout

7. Click the Sign Out button in the upper-right corner.

8. Select the End Of Shift reason code to complete the sign out process.

Figure 240. Sign Out of Cisco Finesse

9. Close the Mozilla Firefox browser before proceeding.

Add the Gadget to the Finesse Agent Desktop Layout


The final step in the deployment of the custom Cisco Finesse Gadget is to add it to the Cisco Finesse Agent Desktop layout. In
the next exercise, we will modify the current Cisco Finesse Desktop layout to add a new tab and place the WebServices Sample
Gadget in that new tab.

Configure Desktop Layout

1. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

1. Launch the Unified CCX Administration web page by opening a new tab in Mozilla Firefox.

2. From the dCloud homepage select Collaboration Admin Links > Cisco Unified CCX 11.0.

Figure 241. Unified CCX Administration Web Link

3. Click the hyperlink for Unified Contact Center Express Administration.

Figure 242. Unified Contact Center Express Administration

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 128 of 182
Cisco dCloud

2. From the Navigation menu of the Cisco Unified CCX Administration webpage choose Cisco Finesse Administration.

3. Click Go.

Navigate to Cisco Finesse Administration

Cisco Finesse Administration can be accessed directly at the following URL: https://uccx2.dcloud.cisco.com:8445/cfadmin

9. Log in to Cisco Finesse Administration with ID: administrator and Password: dCloud123!

10. Click Sign In.

Figure 243. Login to Cisco Finesse Administration

4. From the menus select Desktop Layout. The current Finesse Desktop Layout in xml format is displayed in an editable
format in the Manage Desktop Layout gadget.

Figure 244. Manage Desktop Layout gadget

5. To better illustrate the modification we intend to make, we will copy the current contents of the Desktop Layout XML file from
the Manage Desktop Layout gadget and perform edits in Notepad ++. Bring focus to the Manage Desktop Layout gadget
by clicking your mouse anywhere within the gadget body.

Note: It is perfectly appropriate and acceptable to make modifications to the Finesse Desktop Layout data structure by typing
and/or copying and pasting text into the appropriate section of the file directly within the gadget. However, unless highly familiar
with the document structure the rendering of the file within the gadget may lend itself to confusion.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 129 of 182
Cisco dCloud

6. Use the Ctrl +A keystroke combination to select all contents displayed within the Manage Desktop Layout gadget.

Figure 245. Select all text

7. Use the Ctrl + C keystroke combination to copy all selected text to the Windows clipboard.

8. Launch the Notepad ++ text editor application by clicking the icon [ ] in the Windows taskbar.

9. From the Notepad ++ menu choose File > New.

10. Use the Ctrl + V keystroke combination to paste the contents of the Windows clipboard into the editor window.

11. In order to instruct Notepad ++ to consider this an XML file we must first save it with the file extension .xml.

12. From the Notepad ++ menu choose File > Save As....

13. In the Save As file dialog navigate to the Desktop\CCX-Enablement\Module4 directory.

14. In the File name field type Module4FinesseLayout.xml.

15. Choose All Types (*) from the Save as type drop-down menu.

Figure 246. Save Layout as an XML file

16. Click Save.

17. Scroll so that Line 19 is at the top of the editor window. This section defines the Tabs and their gadget content for the Cisco
Finesse Agent Desktop Layout.

Note: If any previous Modules were completed you may need to start on Line 8. The tage <id>home</id> is what can be used to
ensure you are in the right place.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 130 of 182
Cisco dCloud

Figure 247. Finesse Agent Desktop Layout

18. We will insert a new tab along with configuration to display our WebService Sample Gadget between the Home and My
Statistics tabs of the current Finesse Agent Desktop Layout. Copy and paste the following between Lines 31 and 32, or
inbetween the closing tab for the home tab and the start of the myStatistics tab, of the current layout file.
<tab>
<id>MarketingUpdates</id>
<label>Marketing Updates</label>
<gadgets>
<gadget>https://uccx2.dcloud.cisco.com:8445/3rdpartygadget/files/WebService.xml</gadget>
</gadgets>
</tab>

19. Your layout should appear as below, with the new tab running from Lines 32-38 (or lines 21 to 27).

Figure 248. Add New tab and gadget

20. From the Notepad ++ editor menu select File > Save to save changes to the file.

21. Use the Ctrl + A keystroke combination to select the entire contents of the file.

22. Use the Ctrl + C keystroke combination to copy the file to the Windows clipboard.

23. Close the Notepad ++ editor application.

24. Return to the Mozilla Firefox browser tab connect to the Cisco Finesse Desktop Administration page.

25. Place your cursor anywhere within the body of the Manage Desktop Layout gadget and left-click.

26. Use the Ctrl + A keystroke combination to select and highlight all text within the gadget.

27. Use the Ctrl + V keystroke combination to replace the current layout text with your edited copy.

28. Scroll to the bottom of the web page and click the Save button to apply your changes.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 131 of 182
Cisco dCloud

Figure 249. Save Changes to Desktop Layout

29. Confirm that a message indicating that the save was successful is displayed in green text directly above the editor window.

Figure 250. Successfully saved settings

Congratulations! You have completed the final configuration step to make the new gadget available to our Customer Service
agent team.

Confirm Operation of the Custom Cisco Finesse Gadget


With our gadget fully customized and added to the default Cisco Finesse Desktop layout, we are ready to test its operation and
confirm that the marketing data contained in the CurrentPromotion.xml file is displayed on the Cisco Finesse Agent Desktop in
the new Marketing Updates tab.

1. Switch to the RDP session connection to wkst2.dcloud.cisco.com (Anita Perez).

2. Close any open Mozilla Firefox browser windows.

10. Re-launch Mozilla Firefox by clicking the icon [ ] in the Windows taskbar.

11. From the homepage navigate to Collaboration User and Test Links > UCCX 11.0.1 Finesse Desktop.

12. Log Anita Perez into the Cisco Finesse Agent Desktop as follows:

ID: aperez

Password: C1sco12345

Extension: 6017

13. Click Sign In.

14. Observe, based on our modifications, that the list of available Tabs is altered to include the new Marketing Updates tab.

Note: Those students continuing from having completing Module 3 will observe that in addition to the Cisco Finesse Agent
Desktop tabs displayed in the figure blow, a Manage Chat and Email tab will also be visible.

Figure 251. Cisco Finesse Desktop Layout with Marketing Updates

15. Click the Marketing Updates tab to view the gadget.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 132 of 182
Cisco dCloud

16. Let us correlate the gadget display components with the changes that we have made through our customization process.

Figure 252. Gadget UI Components

Table 52. Gadget Customization Reference

Image Tag UI Object Gadget File/Object Modified Configuration Changes to Render Object

1 Finesse Tab Desktop Layout.xml As part of the modification to the Finesse Desktop Layout used to add the gadget, we
added a new tab entitled Marketing Updates.

2 Gadget Title WebService.xml/<Module Prefs> Recall that we modified the WebService.xml file to set the title equal to Current Product
Promotions

3 Legend Text WebService.xml/<Legend> We modified the legend text to provide an appropriate description of the gadget.

4 Button Label WebService.xml/Button We finally modified the label of the button.

17. Click the Get Data button to retrieve the current product promotions specified in the CurrentPromotion.xml file.

18. Confirm that the current Super Deluxe Widget Bundle product promotion is displayed with the special visual customization
that we added: Red Text on Blue Background.

Figure 253. Current Product Promotion

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 133 of 182
Cisco dCloud

19. Feel free to continue exploring the Cisco Finesse Desktop and Gadget functionality. When finished move on to the next
step.

20. Close the Mozilla Firefox browser.

21. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

22. Close any active File Explorer, Notepad ++, Win SCP, and Mozilla Firefox application windows.

Module 4 Conclusion
Through a series of straightforward customizations to a freely available gadget available from Cisco DevNet weve delivered a
new capability to solve for a business problem. Agents now have access to current product promotion data at all times. Whether
on an active call or at a Ready state an agent can easily browse to the Marketing Updates tab and click the Get Data button to
retrieve the latest promotion detail.

We invite students to take the learning begun here to the next level. There is incredible power in the toolset offered for the creation
of Cisco Finesse Gadgets. The best way to explore these capabilities is to become familiar with HTML, JavaScript, and the
jQuery library, which offer multiple built-in functions for data manipulation and UI interaction capabilities.

We hope through the completion of this module that youve gained a basis for understanding the modular architecture of Cisco
Finesse and begin to think about how simple tools can in fact be incredible assets when solving for business challenges.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 134 of 182
Cisco dCloud

Module 5: Cisco Unified Intelligence Center (CUIC) Report Customization


and Creation
ATTENTION: Students MUST complete the activities Connecting to Your Pod and Lab Orientation prior to working on this lab
module. This ensures an active Cisco AnyConnect VPN session to your assigned Lab Pod and active RDP connections to
wkst1.dcloud.cisco.com, wkst2.dcloud.cisco.com, and ad1.dcloud.cisco.com.

Module Overview
Reporting is perhaps one of the most important features of a comprehensive customer collaboration platform. Unified CCX comes
with a robust reporting tool called the Cisco Unified Intelligence Center (CUIC). This is a co-resident version of a standalone
product, which had its genesis as a reporting tool for use with Cisco Unified Contact Center Enterprise. The co-resident version
of CUIC is referred to as CUIC Standard while the standalone tool is CUIC Premium.

What is Cisco Unified Intelligence Center Standard?

The version of CUIC packaged with Unified CCX is customized to interoperate with Unified Contact Center Express in a co-
resident server deployment and is referred to as CUIC Standard.

Cisco Unified Intelligence Center Standard is a co-resident tool running in tandem with Unified CCX and is a comprehensive,
end-to-end reporting solution for Unified CCX. It can be used to access Historical and Live Data reports.

With Unified Intelligence Center, you can complete the following tasks:

Generate and view reports.

Filter data in the reports by setting parameters.

View help for a report.

Pop out the report in a new browser.

Create and view dashboards.

View permalinks for reports and dashboards.

Configure thresholds for grid data cells.

What is Cisco Unified Intelligence Center Premium?

Cisco Unified Intelligence Center Premium is a standalone CUIC deployment licensed for Premium functionality. In addition to
the features and capabilities provided by CUIC Standard, CUIC Premium offers these capabilities:

Create or modify the underlying data structure of CUIC reports (Report Definition).

Create custom Value Lists for use in populating report filter options.

Customize data display and calculated fields for reports and package reports for use with CUIC Standard.

Note: Some understanding of Standard Query Language (SQL) is helpful for a deeper understanding of report writing concepts in
the custom report creation section of this module.

For students new to the Cisco Unified Intelligence Center and/or Custom Report Writing and those interested in furthering their
current knowledgebase the following reading is highly recommended:

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 135 of 182
Cisco dCloud

Cisco Unified Contact Center Express Report User Guide, Release 11.0(1)

http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/user/guide/UCCX_B
K_U36B58A5_00_uccx-report-user-guide-11.html

Cisco Unified Contact Center Express Historical Reporting Guide, Release 11.0(1)
http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/user/guide/UCCX_B
K_UA808DBF_00_uccx-historical-reporting-guide-11.html

Cisco Unified CCX Database Schema Guide, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/reference/guid
e/Unified_CCX_Database_Schema_Guide_Release_1101.pdf

Note: For students wishing to skip the custom report creation process or who encounter difficulty following the exercise, a fully
completed custom report package Call Summary By Inquiry Type.zip can be found in the Desktop\CCX-Enablement\Student-
Resources\Module5-Completed-Report folder.

Module Objectives
In this module, we will explore the interface and capabilities of the Cisco Unified Intelligence Center Standard tool to perform
initial provisioning and create Dashboards and customized versions of the stock report packages. We will then integrate a Cisco
Unified Intelligence Center Premium standalone application server with Unified CCX and deliver superior business outcomes by
designing and creating a custom report for use in CUIC Standard.

Explore the CUIC Standard interface layout.

Leverage available customizations using CUIC Standard

Examine the additional customization capability possible with CUIC Premium.

Identify cases where custom reporting is called for.

Gather customer requirements and design a report to meet those requirements.

Integrate CUIC Premium with Cisco Unified CCX.

Build a new Report Definition along with a custom Value List.

Build, test and package the new Custom Report.

Import the Custom Report for use by Unified CCX End-Users.

Unified CCX 11.0(1) Configuration Review


Unified Contact Center Express 11.0(1) has been installed and provisioned with active agents, teams and a Unified CCX Voice
application as a precursor to this lab exercise. In this section, we will identify key configuration elements pertinent to the reporting
needs of this lab environment. The following tables define the basic configuration of the system as part of the lab pre-configuration.

Table 53. Configured Teams

Name Primary Supervisor Agents Assigned CSQs Assigned

Customer Service Charles Holland Anita Perez, Charles Holland CustomerService_Voice

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 136 of 182
Cisco dCloud

Table 55. Primary Demonstration Users

Name Use Case IPCC Ext Login ID Password

Charles Holland Acts as both a Supervisor and Agent for the Customer Service Team, and 6018 cholland C1sco12345
carries the Reporting Role (Required for CUIC access/functionality)
Anita Perez Acts as the primary Agent for the Customer Service team 6017 Aperez C1sco12345

Table 56. Contact Service Queues (CSQs)

Name Use Case Skill Name Skill Level

CustomerService_Voice Voice Contact CSQ for Customer Service Minimum - 5


Customer Service Calls

Table 57. Voice Applications, Scripts, Trigger#

Application Name Description Script File Trigger DN

CS_Voice_Main Voice Contact CSQ for CCX_Enablement/icd.aef 6021


Customer Service Calls

Table 58. CustomCallVariables

Variable Name Data Type Expected Values

CallVariable1 String New Order, Existing


Order, Other Inquiry

CallVariable2 String Caller ANI

Note: Each call into the CS_Voice_Main script application collects data from the caller and sets the custom CallVariable1 based
on the type of call. This will be important because the report we will later construct will incorporate this information. For a detailed
analysis of the Unified CCX Application script used in this lab refer to Module 2 Advanced Unified CCX Scripting
Techniques.

Lab Module Preparation


In order to ensure that the live data reports dealt with in this module produce a result we will first log into the Cisco Finesse
Desktop as agent Anita Perez.

1. Switch to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

2. Close all open browsers if active from a previous module.

3. Launch Mozilla Firefox by clicking the icon [ ] in the Windows taskbar.

4. From the homepage navigate to Collaboration User and Test Links > UCCX 11.0.1 Finesse Desktop.

Figure 254. Cisco Finesse Web link

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 137 of 182
Cisco dCloud

5. Enter the following to log into the Cisco Finesse Agent Desktop:

ID: aperez

Password: C1sco12345

Extension: 6017

Figure 255. Log In to Cisco Finesse

6. Click Sign In.

7. In order to transition to a Ready state, click the Not Ready menu item at the top of the Cisco Finesse Agent Desktop page.

8. Select Ready.

Figure 256. Transition to Ready

CUIC Administration
Access to the functions in CUIC is controlled initially by the Application Administration User specified during the Unified CCX install
process. This control can later be assigned to one or more users by giving them the Security Administrator role. This role allows for
the:

Creation and maintenance of users

Assign User Roles

Assign users to User Groups

Creation and maintenance of User Groups

Assign Permissions User Roles are associated with people. Permissions are associated with Dashboards, Reports,
Report Definitions, Data Sources, Value Lists, and Collections.

Utilization of the Run As feature to verify other Users permissions.

CUIC Interface Layout


Here is a quick overview of the layout of CUIC interface:

The menus items on the left are referred to as Drawers. When clicked drawers reveal their contents on the right side of the screen.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 138 of 182
Cisco dCloud

Table 59. CUIC Drawers

Image Tag Item Name Description

1 Drawers Main navigation element of the CUIC interface

2 Dashboards Opens the Dashboards tab, which allows users to create custom dashboards with reports, widgets, sticky
notes, etc.

3 Reports Opens the Reports tab, which contains the Historical and Live Data reports. It also allows for custom sub-
categories and custom report creation

4 Data Sources Provides read-only access to the configured data sources. In CUIC Premium new data sources may be
configured.

5 Value Lists Defines pre-defined ID/Value combinations, used to simplify report filter criteria.

6 Security Opens the Security tab, which allows for the assignment of CUIC system privileges.

7 Scheduler Opens the Scheduler tab where scheduled report execution may be configured.

Figure 257. CUIC Interface

Configuring CUIC for an End User


By default, reporting system end users such as supervisors are not granted permission to modify or customize either dashboards
or reports that are present in the default system owned folders.

In the next activity, we will create a series of Dashboard and Report folders also referred to as Sub-category elements to which
our report system end users will have write access in order to create and customize these elements. These are the first steps
toward leveraging the power of the CUIC application in a customer environment.

Log In to CUIC Standard

1. Switch to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Launch Mozilla Firefox by clicking on the shortcut in the task bar.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 139 of 182
Cisco dCloud

3. From the homepage navigate to Collaboration User and Test Links > Cisco Unified CCX 11.0. Alternatively, you may
access the CUIC interface directly at the following URL: https://uccx2.dcloud.cisco.com:8444/cuic.

Caution: Do not navigate to Cisco Unified Intelligent Center! We are working from the co-resident CUIC platform accessible via
the UCCX splash screen.

Figure 258. Unified CCX Admin Web Link

4. Click on the Cisco Unified Contact Center Express Reporting link.

Figure 259. Navigate to UCCX CUIC

5. Login in as Username: administrator with Password: dCloud123!.

6. Click Log In.

Create a Dashboards Sub-Category for Customer Service

In the next activity, we will create a set of sub-categories (folders) to create a workspace where Unified CCX reporting system
users may create and modify dashboards and reports.

7. Click the Dashboards drawer [ ].

8. Under Available Dashboards, highlight the Dashboards folder and right-click to open the options menu.

9. Select Create Sub-category.

Figure 260. Right-Click to Create Sub-Category

10. In the Name field, type Customer Service.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 140 of 182
Cisco dCloud

11. Place a checkmark in all permission fields across the bottom.

Figure 261. Dashboard Sub-Category Configuration

12. Click OK to create the sub-category.

13. Click the Reports drawer [ .].

14. In the Right hand pane, under Available Reports highlight the Reports folder and right-click to open the options menu.

15. Select Create Sub-category.

16. In the Name field, type Customer Service.

17. Place a checkmark in all permission fields across the bottom.

18. Click OK to create the sub-category.

Figure 262. Reports Sub-Category Configuration

Figure 263. New Customer Service Folder

Grant Security Privileges to a System End User

As mentioned earlier, a user must be explicitly granted privileges to create or modify certain items and to leverage the full
customization capability present in CUIC. We will assign administrative privileges to Charles Holland in order to allow this user to
create dashboards and customize reports.

1. Click the Security drawer [ ].

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 141 of 182
Cisco dCloud

2. In the right pane, click the hyperlink for User List.

3. Click the radio button next to CCX\cholland and then click Edit.

Figure 264. Select User to Edit

4. Scroll down and from the list of available Roles, check System Configuration Administrator, Security Administrator,
Report Definition Designer, and Value List Collection Designer.

5. Check the boxes for Execute and Write under the My Group and All Users permissions headings.

Figure 265. General Tab Configuration Settings

6. Scroll back up and click the Groups tab.

7. Move all Available Groups to the Selected Groups box by clicking the >> button.

Figure 266. Assigned Groups

8. Click Save.

9. Click Logout in the upper right of the CUIC administration interface.

User Charles Holland has now been delegated permissions to create new reports and dashboards in the Customer Service
folders created for the purpose. In addition, the necessary permissions we assigned to allow Charles to perform customization and
supervisory management.

Create and Customize a Report


Through the next activity, we will learn how to run, customize, and save a customized report for later use.

Log in to CUIC as an End User

1. On the CUIC login page enter Username: cholland and Password: C1sco12345.

2. Click Log In.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 142 of 182
Cisco dCloud

Figure 267. Login to CUIC Standard

1. Click the Reports drawer in the left pane [ ]. This will open the Reports tab in the right pane.

2. In the right pane under Available Reports navigate to Reports > Stock > Unified CCX Live Data > Supervisor.

Figure 268. Navigate to the Supervisor Reports

3. Right click the Team State Report and select Save As.

Note: In order to modify the report in any way, a copy of the stock report must be saved. We will save this to the Customer Service
reports category created earlier.

4. Enter the following parameters to save an editable copy of the Team State Report.

Table 60. Report Parameters

Setting Input

Name Customer Service Team State

Description Customized Team State Report

Report Category Reports > Customer Service

Figure 269. Save As Configuration

5. Click OK to save the new report to the Reports > Customer Service Sub-category.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 143 of 182
Cisco dCloud

6. The configuration editor for the newly saved report is launched in a new tab.

Customize the Report by editing the data View

The View assigned to a report represents the logical instruction for which data collected during the SQL query underlying a report
is displayed and how. In addition, data thresholds can be defined within the View to provide alerts for when a threshold value is
met.

In the following section we will edit the view for our custom report to change the fields that are displayed when executed and finally
add a threshold which will dynamically change the color of certain data rows based on the thresholds defined.

1. Click Edit Views [ ]..

2. Click the radio button for the entry Team State Report to select it.

3. Click the Edit button to launch the editor.

Figure 270. Edit View

4. Observe that there are two panes. The left pane lists Available Fields or data points collected by the underlying SQL query
structure of the report (Defined in the Report Definition). The right pane lists Current field order in the grid. This specifies
not only the selected fields from those available but in what order they are presented.

Note: From an order of display perspective keep in mind that Top > Bottom in the Current field order in the grid pane is
rendered Left > Right in the data grid of the report when run.

Figure 271. View Editor Window

As you can see all five available fields are present in the current grid view and are displayed in order from left to right: Agent
Name, Agent ID, Login Duration, Current State, Duration (of the current state). We will customize the view to achieve the
following

Remove the Agent ID field as for preference we wish to see only the Agent Name field.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 144 of 182
Cisco dCloud

Modify the order of displayed fields by listing Current State directly after the Agent Name field.

Add a Threshold to the Agent State value to force data-grid background and foreground color to change dynamically
when the agent is in a Not Ready state. Giving the supervisor a quick-glance reference to a suboptimal situation.

5. To remove the Agent ID field, click the Agent ID entry in the Current field order in the grid window.

6. Click the Remove Selected button to remove this data field from the grid view.

Figure 272. Remove Agent ID

7. To change the display order such that Current State appears directly after the Agent Name field, select the Current State
data field entry in the Current field order in the grid window.

8. Use the up arrow [ ] to move the field so it is positioned directly under Agent Name.

Figure 273. Move Current State

9. Finally, to add a threshold, right click the entry for Current State in the Current field order in the grid window.

10. Select Thresholds from the context menu.

Figure 274. Select Thresholds

11. Click the Add button [ ] to define a new threshold.

12. Use the table below to set the parameters for this threshold.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 145 of 182
Cisco dCloud

Table 61. Current State Threshold Parameters

Setting Input

Type Equal to

Must be Equal To Not Ready

Bold Checked

Text Color Black

Background Color Red

Figure 275. Threshold Configuration

13. Click OK to save the threshold.

14. Click OK to save and close the Thresholds Of dialog.

15. Click Save to save changes to the Report View.

16. Close the Views of Customer Service Team State tab.

Customize the Report further by editing the Default Filter

In addition to modifying the data viewable when the report is run, we can modify the default report filter to automatically apply
report filters pertinent to our use case. In this case, we are interested in data for the Customer Service agent team exclusively.
We will modify the report view to specify that returned data should be for the Customer Service agent team only.

1. Click the tab for Customer Service Team State.

2. Click the Edit Default Filter button [ ].

3. In the Basic Filters tab, locate the Choose Collection list box.

4. Select Customer Service.

5. Observe that this filters the report to include only resources assigned to the Customer Service team (aperez, cholland).

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 146 of 182
Cisco dCloud

Figure 276. Edit Customer Service Team State Default Filter

6. Click Save to save changes and close the Default Filter editor dialog.

Run a Stock and Custom Report and Compare

Finally we will run both the stock and customized versions of the Agent Team State report to view the impact of our changes.
Recall that in an earlier step we logged into the Cisco Finesse Agent Desktop on wkst2.dcloud.cisco.com as agent Anita
Perez, we will therefore expect to see data related to her current state.

1. From the CUIC webpage, select the Reports tab.

2. To refresh the reports list and incorporate our changes click the Refresh button [ ].

3. Browse to Reports > Stock > Unified CCX Live Data > Supervisor.

4. Click the entry for Team State Report.

5. A new tab for the Team State Report is opened.

6. Notice that no filter criteria for the report are selected. From the Choose Collection list box select the entry for Customer
Service.

7. Click Run to execute the report.

Note: If you encounter an error indicating a failed connection to Live Data, refresh the browser page and re-run.

8. Observe that state data for Anita Perez is returned. The data is ordered as per the original grid design specified in the data
View.

Figure 277. Team State Stock Report

9. Click the Reports tab.

10. Browse to Reports > Customer Service.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 147 of 182
Cisco dCloud

11. Click the report entry for Customer Service Team State.

Figure 278. Customer Service Team State

12. A new tab for the Customer Service Team State report opens.

13. Observe that the Default Filter we created earlier is in effect and that the Customer Service team is already selected as the
filter criteria.

14. Click Run to execute the report.

15. Confirm that the report returns state data for Anita Perez. Observe that only 4 data fields are listed and their order differs
from that of the stock report: Agent Name, Current State, Login Duration, Duration.

Figure 279. Customer Service Team State

16. Switch back to the RDP session connected to wkst2.dcloud.cisco.com (Anita Perez).

17. From the Finesse Desktop transition to a Not Ready Break state.

Figure 280. Transition to Not Ready Break

18. Switch back to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

19. Observe that based on the configured threshold value for the Agent State field, the background color of the Agent State field
displayed in the report has changed to Red.

Figure 281. Agent State Threshold Met

Note: The Not Ready reason code has no effect on the behavior of the configured threshold, which simply checks for a state value
of Not Ready. Any Not Ready state will trigger this threshold to be met.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 148 of 182
Cisco dCloud

Create a Dashboard
A Dashboard in CUIC terminology is a collection of data elements that you view from a single page. You can create multiple
dashboards and choose whether they remain private or become available to other users/viewers using the permissions system.

Modify a Report for Use in a Dashboard

As part of the previous exercise, we created a custom version of the Agent Team State report. Recall that we modified the report
to include a default filter, which limits the report results to members of the Customer Service agent team. We will further modify
the report for use in a dashboard to enable a run without prompting the user with a filter dialog.

1. Click the Reports tab.

2. Browse to Reports > Customer Service.

3. Right-click the report entry for Customer Service Team State and select Edit.

Figure 282. Edit The Report

4. Place a checkmark in the Bypass Filter Dialog field.

5. Click Save.

Figure 283. Bypass Filter Dialog

Create a new Dashboard

6. Click the Dashboards drawer [ ] in the left pane. This will open the Dashboard tab in the right pane.

7. In the right pane under, Available Dashboards, click the + to the left of the Dashboards category to expand (if not already
expanded).

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 149 of 182
Cisco dCloud

8. Right click the entry for Customer Service and select Create Dashboard.

Click to Create Dashboard

9. In the Name field type Customer Service Supervisor Dashboard.

Figure 284. Create Customer_Service Dashboard

10. Click OK.

11. Click the newly created dashboard item named Customer Service Supervisor Dashboard.

12. A new tab titled Customer Service Supervisor Dashboard opens, presenting a blank canvas for dashboard customization.

Add items to a Dashboard

When first created, a dashboard is essentially a blank slate. In the next activity, we will add items to the dashboard to make it
usable.

13. Click the Add icon [ ] to add a new item to the dashboard.

14. In the Title field type Customer Service Team State

15. Leave Type as Report.

Figure 285. Dashboard Title

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 150 of 182
Cisco dCloud

16. Under the Dashboard Item Content section, browse using the arrows [ ] to browse to Reports > Customer Service.

17. Click the radio button next to Team State Report.

Figure 286. Dashboard Report selection

18. Click OK to create the dashboard item.

19. Click and hold the black box [ ] at the lower right of the dashboard item and resize until all contents of the item are visible.

Figure 287. Expand Item to Correct Size

20. Observe that because the customized Agent Team State report implements a pre-configured default filter and uses the
Bypass Filter Dialog parameter, there is no user intervention required to view the dashboard item.

Ideally, one would add multiple stock reports or even custom reports and create a Single Pane Of Glass for tracking critical real-
time metrics.

21. Feel free to continue adding items to the dashboard as you explore the Dashboard feature.

22. Click Log Out when finished exploring.

This module continues on the next page.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 151 of 182
Cisco dCloud

Getting Started with Unified Intelligence Center Premium


While it is clear that the co-resident version of Cisco Unified Intelligence Center that ships with Unified Contact Center
Express offers a wide variety of visual customizations, we are limited in terms of modifications to the underlying Report
Definition. Cisco Unified Intelligence Center Premium allows report writers to modify existing Report Definitions and create
new ones.

The Report Definition specifies the data source such as a SQL query, Anonymous Block query, or even a Stored Procedure. The
data source specifies filter parameters as well as the data fields returned. In addition, the formatting of returned data and the
addition of footer rows are controlled from within the Report Definition.

A single Cisco Unified Intelligence Center server may be installed to supplement a Unified CCX deployment by providing a
comprehensive platform for administrators and report writers to create new or fully customize existing reports. These reports may
then be packaged and imported for use on the co-resident Unified CCX server.

In the following activity, we will integrate a standalone instance of CUIC Premium with our Unified CCX server. We will use this
CUIC instance to create an entirely new report that solves for a particular business objective. We will save this new report and re-
import it into the CUIC Standard on Unified CCX for use there.

Integrating CUIC Premium with Unified CCX


The integration between a standalone CUIC and Cisco Unified CCX is achieved by specifying the Unified CCX historical reports
database db_cra as an available data source. This connection uses the Unified CCX Historical Reports user account
(uccxhruser) to authenticate and permit read-only access. We will set the password for this user and then integrate Unified CCX
as a data source available to CUIC Premium..

1. Launch the Unified CCX Administration web page by opening a new tab in Mozilla Firefox.

2. From the dCloud homepage select Collaboration Admin Links > Cisco Unified CCX 11.0.

Figure 288. Unified CCX Administration Web Link

3. Click the hyperlink for Unified Contact Center Express Administration.

Figure 289. Unified Contact Center Express Administration

4. Login with Username: administrator and Password: dCloud123!

5. Click Login.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 152 of 182
Cisco dCloud

6. From the main menus navigate to Tools > Password Management.

Figure 290. Tools > Password Management

7. Locate the entry for Historical Reporting User.

8. In the New Password field type dCloud123!.

9. In the Confirm Password field type dCloud123!.

Figure 291. Set the Historical Reporting User Password

10. Click Save.

Note: In a Unified CCX High Availability deployment, this operation must be performed on both servers before proceeding. The
password information is NOT automatically synchronized between Unified CCX nodes.

11. Open a new tab in Mozilla Firefox.

Figure 292. Open a new browser tab

12. From the dCloud homepage select Collaboration Admin Links > Cisco Unified Intelligence Center Premium 11.0.
Alternatively you may navigate to the following URL: https://cuic1.dcloud.cisco.com:8444/cuic

Figure 293. CUIC Premium Webpage Link

13. Login with Username: administrator and Password: dCloud123!

14. Click Login.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 153 of 182
Cisco dCloud

15. Select the Data Sources drawer. This will launch the Data Sources tab in the right pane.

Figure 294. Create a New Data Source

16. Click Create.

Note: In order to validate SQL queries for new or modified reports and access value lists, CUIC Premium must be able to use
Unified CCX as a Data Source. This capability is necessary in order to create custom reports for Unified CCX.

17. Configure the fields per the table below to configure Unified CCX as an accessible Data Source. Bear in mind that we are
actually setting up a SQL connection between Unified Intelligence Center Premium and Unified CCX.

Table 62. Data Sources > Create

Setting Input Description

Name Unified CCX Unique name by which the new Data Source will be referenced within CUIC Premium.

Description Unified CCX HR Database A brief description of the Data Source.

Type Informix Database Type to which the CUIC premium instance will communicate (MS SQL or Informix)

Data Source Host uccx2.dcloud.cisco.com Hostname or IP address of the host on which the database resides. In this case Unified CCX.

Port 1504 TCP Port on which the SQL data connection will be made. 1504 for Informix on Unified CCX.

Database Name db_cra Target database name. db_cra is the name of the Historical Reports database on Unified CCX.

Instance uccx2_uccx Unique database instance name this is determined using the following formula. [uccxHostname]+_uccx.
Because our Unified CCX hostname is uccx2 the db_cra instance name is uccx2_uccx. If the Unified CCX
hostname contains dashes -, these are converted to underscores during database installation. For Example if
the hostname were uccx-2, the instance name would be uccx_2_uccx.

Timezone Leave Blank Not Required as both cuic1.dcloud.cisco.com and uccx2.dcloud.cisco.com are provisioned in the same timezone
UTC. By default CUIC will assume that will use its timezone when running reports specifying date and time
ranges

Database User ID uccxhruser This is the built-in user id of the Historical Reporting User.

Password dCloud123! Password assigned to the Unified CCX Historical Reporting User.

Confirm Password dCloud123! Password assigned to the Unified CCX Historical Reporting User.

Charset UTF-8 Character set used in the Unified CCX Informix database.

Permissions Check All Boxes Permission assignments for this datasource.

Note: Those interested in becoming more familiar with the schema of the db_cra instance in order to view tables, fields and data
within the Unified CCX Historical Reports database, the fields defined above can be used to create a SQL connection to the db-
cra from a database visualization tool of your choice. We recommend that you use a lab environment for any such access, but a
deep understanding of the data structures contained therein will allow you to become adept at creating new or customized reports

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 154 of 182
Cisco dCloud

for your customers. In addition the Stored Procedures referenced by the stock report definitions can be viewed and used as a
baseline for report creation where a simpler single return query cannot achieve the reporting objective.

18. Confirm your input matches the graphic below.

Figure 295. Create Unified CCX Data Source

19. Click the Test Connection button.

20. Confirm the test returns a result of Online [ ].

21. Click the Save button to add the new Data Source.

22. Verify that the Unified CCX data source should be listed in the Data Sources tab with a green checkmark in the Connected
Node status field.

Figure 296. Connected Data Source

This concludes the integration of Unified CCX with CUIC Premium as an available data source. In the next exercise, we will
discuss use cases for custom reporting and use the CUIC Premium toolset to create a completely new report.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 155 of 182
Cisco dCloud

Identify Reporting Requirements and Design a CUIC Report


The need to create a new report arises when a requirement to view a particular data set presents as fields in the Unified CCX
historical reports database, and this data set cannot be effectively collected using a Unified CCX stock report. In some cases,
stock reports do gather the data but perhaps do not present it in a consumable form without manual summarization etc.

Customer Report Requirements and Existing Capabilities

The Unified Contact Center Express instance configured for this lab is designed around support for a Customer Service line of
business. As part of the voice contact workflow, every customer that calls the CS_Voice_Main application is presented with a 3-
choice menu to specify the reason for his or her call. As part of the configured icd.aef script file the menu option that the caller
selects is saved to CustomCallVariable1. This is one of 10 reserved call variables for which data is written to the Unified CCX
Historical Reporting database along with call contact detail.

CustomCallVariable1 is a variable of type String and possible values are:

New Order

Existing Order

Other Inquiry

Note: For students wishing to review the icd.aef script, Module 2 of this lab guide provides in depth coverage of both the designed
workflow and programmatic elements of the script.

Because we are recording caller selections and saving the derived data into the customVariable1 field of the ContactCallDetail
table (using a Set Enterprise Data script step), we know that data is available for each call record and we can perform reporting
operations against it.

The operations manager of the Customer Service Line of Business has asked you to provide a report which summarizes all calls
placed to the Contact Center during a given time interval and broken out by Inquiry Type.

In analyzing the stock report definitions available within Unified CCX, to find a ready-made solution, we discover one option for
reporting on data stored in Custom Call Variables, a report titled Call Custom Variables.

The Call Custom Variables report accepts filter parameters such as Time Range and even a particular Call Variable value.
However, the report returns a unique report row for each row of data matching the report filter. Report output as displayed in the
figure below.

Figure 297. Call Custom Variable Report Output

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 156 of 182
Cisco dCloud

This output would be ideal if we wished to drill down into the specifics of each call specified by the customer inquiry type as stored
in the database as CustomCallVariable1. Unfortunately, this report, while useful, does not provide the capability to summarize
call data by custom call variable type. A possible course might be manually exporting the data to CSV format and parse it using a
spreadsheet or similar tool. This method would be cumbersome and time consuming and a better solution by far is to harness the
power of CUIC Premium to write a simple but effective report to deliver the required results.

Expanding on and Clarifying Reporting Requirements

The problem statement as supplied by the Customer Service operations manager in the section above gives us a start but now
that we have identified the need to create a new report, lets expand on those requirements to arrive at a true report definition.

Provide a report which summarizes all calls placed to the Contact Center during a given time interval and broken out by
Inquiry Type. Call Totals, Inquiry Type, and Average Handle Time (AHT) for calls grouped per Inquiry Type should be provided
as part of the report output. In addition to being filtered by time interval, the report should have the ability to be filtered by Unified
CCX Application Name in case additional voice applications are deployed in the future.

Based on the requirements specified our report data set should include the following viewable data:

Table 63. Call Summary By Inquiry Type Data Fields

Field Description Data Format Unified CCX db_cra Table and Field Name[tableName.FieldName]

Application Name Specifies the Line Of Business for which the report STRING ContactCallDetail.applicationname
is being run.

Inquiry Type Loosely the Call Reason, can be one of (New STRING ContactCallDetail.customVariable1
Order, Existing Order, Other Inquiry)

Total Calls The number of calls for each distinct Inquiry Type DECIMAL Count of all records meeting the filter criteria
over a specified time range

Average Talk Time Average of talk time for all calls specified by a Hh:mm:ss Average of the values in the ContactCallDetail.connecttime field.
particular inquiry type

Based on the requirements specified our report should allow for the following filter criteria:

Table 64. Call Summary By Inquiry Type Filter Fields

Filter Description CUIC Data Type Unified CCX db_cra Table and Field Name[tableName.FieldName]

Begin Specifies the beginning of the time range for which data DATETIME Filter is tested against the ContactCallDetail.startdatetime
Date/Time will be collected

End Date/Time Specifies the end of the time range for which data will be DATETIME Filter is tested against the ContactCallDetail.startdatetime
collected.
Application Unified CCX Voice Application String Filter tested against the ContactCallDetial.applicationname field
Name

Visual Presentation

Let us review our intended design by creating an example of the data displayed when our report is run.

Figure 298. Mock-Up of intended report

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 157 of 182
Cisco dCloud

Identifying SQL Programming to Create a Report Data Source

Note: All custom reporting solutions require an understanding of the logical layout and location of data fields within the database.
This is referred to as a schema. The activities in this lab make use of schema definitions documented in the Cisco Unified CCX
Database Schema Guide, Release 11.0(1) . Refer back to the beginning of this module for a link to the documentation.

While it is far beyond the scope of this lab document to teach Standard Query Language (SQL) programming we will review in
brief the required SQL SELECT statement needed to gather the required data fields, and sort results based on filters specified.

As indicated earlier, all of the data required to provide this report output resides in the ContactCallDetail table of the db_cra
database on Unified CCX. In addition, we identified the following database field (column id) values that specify return data and will
provide the basis of our SELECT statement: applicationname, customVariable1, connecttime.

Also, recall that we are providing filtering capability to limit the result set based on the value of the startedatetime field being
greater than or equal to the interval start time and less than or equal to the interval end time. In addition, we will check to ensure
that the applicationname field matches that specified in the report filter.

Finally, we wish to group results by Inquiry Type, which is the value present in the customVariable1 field.

The following SQL statement will satisfy the requirements gathered:


SELECT ccdr.applicationname AS VoiceApplication, ccdr.customVariable1 AS InquiryType, COUNT(*) AS
TotalCalls, AVG(ccdr.connecttime) As AverageTalkTime
FROM ContactCallDetail AS ccdr
WHERE ccdr.startdatetime BETWEEN :StartTime AND :EndTime AND
ccdr.contactDisposition = 2 AND ccdr.applicationname = :VoiceApplicationName
AND (ccdr.customVariable1 = 'New Order' OR ccdr.customVariable1 = 'Existing Order' OR ccdr.customVariable1 =
'Other Inquiry')
GROUP BY VoiceApplication, InquiryType
ORDER BY InquiryType;

Observe that in the WHERE clause of this statement there are 3 elements preceded by a colon :. These represent Parameters
supplied by the end user when executing the report in CUIC. CUIC parses the SQL syntax and recognizes that this information
must be provided by the end user. When the parameters are configured and the report is Run, CUIC will dynamically replace
these Parameter tags with the actual value provided by the user.

This is a function of an Anonymous Block SQL query, which we will use as our data source value for the Report Definition.

For Example, :StartTime will be replaced with a Data/Time value based on that which is selected using a calendar control on the
report filter screen. :VoiceApplicationName will be replaced by a string containing a valid voice application name chosen by the
user.

Note: Caution should be exercised when constructing SQL statements for new reports. Database performance can be severely
impacted if an improperly written query is executed against the Unified CCX database. This is especially true when creating more
complex iterative queries using Stored Procedures.

Create a Report Definition and Parameter Value List


Create the Report Definition

With requirements gathered and defined and SQL logic compiled to retrieve our data set, we are ready to begin the report creation
process. A Report Definition in CUIC contains the data source for the report (SQL, Anonymous Block, Stored Procedure). It
allows us to set the expected format of return (field data), and to configure parameter data types and formats. Some visual
formatting may be done here, but the vast majority of aesthetic modification can be done later when Editing Report Views.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 158 of 182
Cisco dCloud

1. In the browser tab connected to the CUIC Premium instance on cuic1.dcloud.cisco.com click on the Report Definition

drawer [ ] in the left pane.

2. In the Report Definition tab, right-click on the Report Definitions category.

3. From the context menu, select Create Sub-category.

Figure 299. Create Sub-category

4. In the Name field, type Custom Report Definitions.

5. Place a checkmark in all permission fields across the bottom.

Figure 300. Report Definitions Sub-Category Configuration

6. Click OK to create the sub-category.

7. Left-click the Custom Report Definitions Sub-category, select Create Report Definition.

Figure 301. Create Report Definition

8. Configure the Report Definition using the parameters listed in the table below.

Table 65. Create Report Definition Parameters

Setting Input

Name Call Summary By Inquiry Type

Description Call Summary By Inquiry Type

Permissions Check all boxes

9. Click OK.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 159 of 182
Cisco dCloud

10. A new tab titled Call Summary By Inquiry Type is opened in the right pane.

11. Use Windows File Explorer to browse to the folder Desktop\CCX-Enablement\Module5.

12. Double-click the file name Call_Summary_By_Inquiry_SQL.txt file to open in Notepad. This file contains a copy/paste
version of the SQL statement developed earlier in the lab.

Figure 302. Open Call_Summary_By_Inquiry_SQL.txt

13. Use the Ctrl + A keystroke combination to select all contents of the file.

14. Use the Ctrl + C keystroke combination to copy the selection to the Windows clipboard.

15. Close the Notepad application.

16. Switch focus back to the Call Summary By Inquiry Type tab in CUIC.

17. On the [ ] tab, enter the values specified in the table below.

Table 66. Data Source Parameters

Setting Input

Query Type Anonymous Block

Data Source Unified CCX

Data Source Type Informix (automatically filled)

18. Confirm that the Data Source Status is [ ].

19. Place your cursor in the Anonymous Block editor window, use the Ctrl + V keystroke combination to paste the SQL text.

Figure 303. Call Summary By Inquiry

20. Click Create Parameters.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 160 of 182
Cisco dCloud

The Create Parameters function instructs CUIC to parse the entered SQL statement and search for any specified parameters. In
our case the values :StartTime, :EndTime, and :VoiceApplicationName are identified and displayed below the Anonymous
Block editor window. This is the first SQL query validation step performed by CUIC during Report Definition creation.

21. Scroll to the bottom of the page and configure the detected parameters using the table below.

Table 67. Anonymous Block Parameter Setup

Parameter Name Data Type

@StartTime DATETIME

@EndTime DATETIME

@VoiceApplicationName STRING (Default)

Figure 304. Anonymous Block SQL Parameters

22. Click the Create Fields button.

23. Confirm that a success message is displayed to the right of the Create Fields button.

Figure 305. Create Fields Query Validation

The Create Fields function performs a SQL validation test against the data source Unified CCX to ensure that the query is
executable as written based on the Unified CCX database schema.

24. Scroll up and click the [ ] tab.

25. Click the radio button for the totalcalls field.

26. Click the Edit Formatting button.

27. Use the drop-down menu to set the Footer value to Sum. This will automatically create a calculated footer column totaling the
values for all returned data rows.

Figure 306. Add Footer

28. Click Update Field.

29. Click the radio button for the averagetalktime field.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 161 of 182
Cisco dCloud

30. Click the Edit Formatting button.

31. In the Format field use the drop-down menu to select Minutes and Seconds (hh:mm:ss).

32. Use the drop-down menu to set the Footer value to Avg. This will automatically create a calculated footer returning the
average for the ATT values for all returned data rows.

33. Click Update Field.

34. Click the [ ] tab.

35. Select the entry for @StartTime and click the Edit button.

Figure 307. Select and Edit Parameter

36. Use the table below to configure the @StartTime parameter.

Table 68. @StartTime Parameter Setup

Setting Input

Relative Date Range Start Date

Display Name Interval

Figure 308. @StartTime Parameter Configuration

37. Click Update Field.

38. Select the entry for @EndTime and click the Edit button.

39. Use the table below to configure the @EndTime parameter.

Table 69. @EndTime Parameter Setup

Setting Input

Relative Date Range End Date

Display Name Interval

40. Click Update Field.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 162 of 182
Cisco dCloud

41. Select the entry for @VoiceApplicationName and click the Edit button.

Observe: that there is an option to assign a Value List to this parameter. A value list displays a list of available valid choices from
which the report end-user may choose. Value Lists are generated by running a simple SQL query to identify valid values present in
particular database fields. Because we have not yet defined a value list we will leave the parameter as is and return to finish the
configuration after the creating a value list.

42. Click Save to save the report definition configured so far.

Create a Value List for the @VoiceApplicationName Parameter

As specified in the previous step we want to provide the end-user a list of valid options wherever possible for use with report filter
parameters. This ensures consistency of results and delivers a superior end-user experience by making the report filter interface
more intuitive.

Value lists use simple SQL queries to return data selections pertinent as filter choices for a particular report. In this case because
all of the data for our report is being derived from the db_cra.ContactCallDetail table, we want to determine the list of valid Unified
CCX Application names, by issuing a simple query to select unique instances of application names which occur in records in the
db_cra.ContactCallDetail table. Rather than simply listing every application configured within Unified CCX, we are presenting
only the names of those applications, which have generated call traffic based on records stored in the db_cra.ContactCallDetail
table.

The SQL Query used to generate the Value list is as follows:


SELECT first 30000 DISTINCT applicationname as ID, applicationname as Value
FROM ContactCallDetail
WHERE applicationname<>''

This query will seek through the first 30000 rows of data and identify distinct values for the applicationname field where the value
is something other than an empty string. It will then return this list of distinct Application Names. This list will in turn be used by
CUIC in the Run report interface to populate the available selections from which the end-user may choose.

1. Use the Windows File Explorer to browse to the folder Desktop\CCX-Enablement\Module5.

2. Double-click the file named Value_List_SQL.txt file to open in Notepad. This file contains a copy/paste version of the SQL
statement developed earlier in the lab.

Figure 309. Open Value_List_SQL.txt

3. Use the Ctrl + A keystroke combination to select all contents of the file.

4. Use the Ctrl + C keystroke combination to copy the selection to the Windows clipboard.

5. Close the Notepad application.

6. Switch focus back to browser window actively connected to CUIC.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 163 of 182
Cisco dCloud

8. Click the [ ] drawer.

9. Click the Create button.

Figure 310. Create Value List

10. In the Value List > Create dialog, enter the values specified in the table below.

Table 70. Value List Parameters

Setting Input

Value List Name Voice Application Name

Version 1.0

Data Source Unified CCX

Description Unified CCX Application Names

11. Clear all text from the Value List Query field.

12. Place your cursor in the empty Value List Query field and copy SQL command using the Ctrl + V keystroke combination.

13. Click the Validate button.

14. Confirm that the validation is successful.

Figure 311. Validation Successful

15. Click OK.

16. Clear all text from the Collection Query field.

17. Scroll down and place a checkmark in all available Permissions fields.

18. Confirm that your configuration matches the graphic below

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 164 of 182
Cisco dCloud

Figure 312. Value List > Create Configuration

19. Click Save.

20. Close the Value Lists tab.

Complete Parameter Configuration using a Value List

Complete the report configuration by assigning the Voice Application Name Value List to the @VoiceApplicationName
parameter in the Call Summary By Inquiry Type Report Definition.

1. Click the [ ] tab.

2. To synchronize the newly added Value List click the Refresh button [ ].

3. Select the [ ] tab.

4. Select the entry for @VoiceApplicationName.

5. Click Edit.

6. Use the table below to configure the @VoiceApplicationName parameter.

Table 71. @VoiceApplicationName Parameter Setup

Setting Input

Display Name Voice Application Name

Value List Voice Application Name

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 165 of 182
Cisco dCloud

Figure 313. @VoiceApplicationName Parameter Configuration

7. Click Update Field.

8. Click the [ ] button at the top of the tab.

9. Close the Call Summary By Inquiry Type tab.

Create a Report using the new Report Definition


To complete the report creation process we must create a new report, which uses the Report Definition created in the previous
activity. Recall that the Report allows us to:

Create and Customize Data Views

Set Values for the Default Report Filter or Even Bypass the filter dialog altogether

1. Click the Reports drawer [ ] in the left pane to open the Reports tab.

2. Under Available Reports highlight the Reports folder and right-click to open the options menu.

3. Select Create Sub-category.

Figure 314. Create Sub-category

4. In the Name field, type Custom Reports.

5. Place a checkmark in all permission fields across the bottom.

6. Click OK to create the sub-category.

Figure 315. Create Custom Reports Sub-category

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 166 of 182
Cisco dCloud

7. Right-click on the newly create Custom Reports Sub-category and select Create Report from the menu.

8. Enter the following parameters to create the new report.

Table 72. Save As Parameters

Setting Input

Name Call Summary By Inquiry Type

Description Call Summary By Inquiry Type

Report Definition Report Definitions > Custom Report Definitions > Call
Summary By Inquiry Type

Permissions All boxes checked

Figure 316. Create Call Summary By Inquiry Type Report

9. Click OK. An editor tab titled Call Summary By Inquiry Type will launch in the right pane.

Customize Data Grid View of the New Report

Recall that in an earlier activity we developed a proposed visual layout for the Call Summary By Inquiry Type report which
specified the order in which columns would be displayed. We will now customize the default report data view using the mock-
design developed.

Figure 317. Mock-Up of intended report

1. With application focus on the Call Summary By Inquiry Type report editor tab, click the Edit Views [ ] button.

2. Click the radio button for the view item named Call Summary By Inquiry Type grid data view.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 167 of 182
Cisco dCloud

3. Click the Edit button.

Figure 318. Edit View

4. Use the Up and Down arrows to re-order the fields displayed in the Current field order in the grid pane from top to bottom
as follows:

voiceapplication

inquirytype

totalcalls

averagetalktime

5. Ensure that your data field grid order matches the graphic below.

Figure 319. Re-order Data Fields

6. Next, we will edit the Grid Display Name property of all fields presented in the data grid.

7. Right-click the voiceapplication field in the Current field order in the grid pane. Choose Properties.

8. In the Grid Display Name field, type Application Name.

9. Click OK.

Figure 320. Update Grid Display Name

10. Right-click the inquirytype field in the Current field order in the grid pane. Choose Properties.

11. In the Grid Display Name field, type Inquiry Type.

12. Click OK.

13. Right-click the totalcalls field in the Current field order in the grid pane. Choose Properties.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 168 of 182
Cisco dCloud

14. In the Grid Display Name field, type Total Calls.

15. Click OK.

16. Right-click the averagetalktime field in the Current field order in the grid pane. Choose Properties.

17. In the Grid Display Name field, type Average Talk Time.

18. Click OK.

19. Confirm that data fields have been modified such that your configuration matches the graphic below.

Figure 321. Updated Grid Display Names and Order

20. Click Save.

Note: The operation above affects only the cosmetic display of data when the report is run, making it easier for a viewer to
understand by assigning a standard text representation of the field name.

Create a Pie Chart Data View

Finally, we take our reporting package to the next level and provide an At a Glance Pie Chart view, which will display the
Percentage By Volume based on Inquiry Type. This view will then become an optional data view when the report is run.

1. From the Views of Call Summary By Inquiry Type tab. Click Create.

2. Select Chart from the drop down menu.

Figure 322. Create New Chart Data View

3. Use the table below to configure General Settings.

Table 73. Chart Data View General Settings

Setting Input

Chart Type Pie Chart

Chart Name Call Percentage By Inquiry Type

Chart Description Call Percentage By Inquiry Type

4. Scroll down and click Next to continue.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 169 of 182
Cisco dCloud

5. Use the table below to configure Series Settings.

Table 74. Chart Data View Series Settings

Setting Input

Data Field totalcalls (totalcalls)

Label Field inquirytype (inquirytype)

Label Position Inside Wedges

Label Format Percent with Value Inside Parentheses

6. Confirm that your configuration matches the graphic below.

Figure 323. Chart Data View Series Configuration

7. Click Next.

8. Scroll down and click Save and Exit to save changes.

9. Click OK when prompted to Save and Exit the Chart Editor.

10. Observe that both configured views are now associated with the Call Summary By Inquiry Type report.

Figure 324. Call Summary By Inquiry Type Views

11. Close the Views of Call Summary By Inquiry Type tab.

Test Report Execution


With Report creation and data view customization complete it is time to run the report and evaluate the return results.

Note: As this is a lab system with Call Volume generated for testing purposes and on specific dates we will always use the
Relative Date Range of Year to Date when running the report to ensure that a dataset is returned. You may wish to generate test
traffic and sample the report results based on your testing.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 170 of 182
Cisco dCloud

1. Click the Reports tab.

2. Click the Refresh icon [ ] to incorporate changes to the Call Summary By Inquiry Type report (made during the
previous exercise).

3. Expand the Custom Reports sub-category by clicking the + directly to the right of the item.

4. Left-click the Call Summary By Inquiry Type report to launch the report filter.

5. For Interval set the Relative Date Range field to Year to Date using the drop-down menu.

6. Observe that the Voice Application Name parameter displays a single available item in the Available pane.

7. Select CS_Voice_Main and use the [ ] to bring this item into the Selected pane.

Recall: The available items for the Voice Application Name filter are being rendered based on the Value List we defined in the
earlier exercise.

Figure 325. Call Summary By Inquiry Type Filter

8. Click Run.

9. Observe that the report runs successfully and returns data similar to the following:

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 171 of 182
Cisco dCloud

Table 75. Call Summary By Inquiry Type Grid View

Image Tag Item Comment

1 Column Headers and Order Column Header Names Configured based on the Grid Display Name value. Columns are presented in
the desired order from left to right.

2 Average Talk Time Format Formatting value specified for the averagetalktime field is correct (hh:mm:ss)

3 Footer Columns A Footer with Total Calls and Average Talk Time is displayed at the bottom of the report page.

Test the Chart Data View

We have confirmed that the output of the report data grid view aligns with our design. Let us observe the output of the chart data
view.

10. Locate the Data View selection menu at the top right of the Call Summary By Inquiry Type report window. (You may need

to click [ ] to view the drop down list.

Figure 326. Data View Selection Menu

11. Use the drop-down menu to choose Call Percentage By Inquiry Type.

12. Confirm that the pie chart data view presents total call volume sorted by inquiry type.

Figure 327. Call Percentage By Inquiry Type Chart

13. Observe that based on our configuration settings the values are displayed inside the chart wedges.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 172 of 182
Cisco dCloud

Export the Packaged Report and Import to CUIC Standard


With a fully functional multi-view report created and tested with Unified Intelligence Center Premium we are ready to package
the report and then make it available to end-users from within CUIC Standard running on the Unified CCX server.

This is a relatively straightforward process, which involves exporting the created report from CUIC Premium and then importing
the report to a target category in CUIC Standard.

1. Click the Reports tab if already open, or Click the Reports drawer to launch the tab.

2. Right-click the Call Summary By Inquiry Type report item. Select Export from the menu.

Figure 328. Export Call Summary By Inquiry Type

3. Leave the default name for the archived report Call Summary By Inquiry Type.zip.

4. Click OK.

Figure 329. Export Report Dialog

5. When prompted in the Opening File dialog, click the Save File radio button and then click OK.

Figure 330. Opening File Dialog

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 173 of 182
Cisco dCloud

6. The file Call Summary By Inquiry Type.zip file will be automatically save to Desktop\CCX-Enablement\Downloads.

7. Switch to the Mozilla Firefox browser tab connected to CUIC Standard on uccx2.dcloud.cisco.com. If prompted to login,
do so with the credentials (Username: cholland, Password: C1sco12345).

8. Click the Reports drawer to launch the Reports tab.

9. Click Import Report from the menu.

Figure 331. Import Report

10. In the Fiile Name field click the Browse button.

11. In the File Upload dialog browse to Desktop\CCX-Enablement\Downloads and select the file Call Summary By Inquiry
Type.zip.

Figure 332. Browse to Report Location

12. Click Open.

13. In the Save To field, use the arrow to expand the Reports category. Click the radio button for Customer Service.

Figure 333. Import Settings

14. Click Import.

15. CUIC then opens the archive file and examines the report components. It will detect that it does not have an installed Report
Definition that matches the one referenced by this report. You will see what appears to be an error message but is actually
informational and a new dialog opens to allow the user to select the data source associated with this report..

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 174 of 182
Cisco dCloud

16. From the Data Source for Report Definition drop-down menu, select UCCX.

17. From the Data Source for Value List drop-down menu, select UCCX.

18. The Save To field preserves or selection from the previous dialog which was Reports > Customer Service. Verify this is the
case.

Figure 334. Import Settings

19. Click Import.

20. A message indicating that import was successful is displayed in the upper left corner of the import dialog. You will
automatically be re-directed back to the Reports tab once complete.

21. The Call Summary By Inquiry Type report should now be available in the Customer Service reports Sub-category.

Figure 335. Customer Service > Call Summary By Inquiry Type

Test Imported Call Summary By Inquiry Type Report

Run the newly imported report to ensure that report filters and return data render as expected.

1. Left-click the Call Summary By Inquiry Type report item in the Reports tab.

2. For Interval set the Relative Date Range field to Year to Date using the drop-down menu.

3. Observe that the Voice Application Name parameter displays a single available item in the Available pane.

4. Select CS_Voice_Main and use the [ ] to bring this item into the Selected pane.

5. Click Run.

6. Confirm that both the data grid and pie chart views are accessible and display identically as with the previous report execution
on CUIC Premium.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 175 of 182
Cisco dCloud

Module 5 Conclusion
Through the completion of this module, you have become familiar with the features and capabilities of CUIC Standard and CUIC
Premium. You have explored reporting requirements and identified situations where cosmetic customization is not sufficient to
meet customer needs. You have translated requirements into a report design and then harnessed the capability of CUIC
Premium as a platform to create custom reporting for Unified CCX end users and to package and deliver this functionality so that
it is readily available from within CUIC Standard and available to end-users.

While this concludes the lab module, we invite you to take your learning to the next level and explore the creation of additional
reports using the baseline custom report example provided.

Lab Conclusion
This concludes our lab learning exercises. We invite students with additional time to re-visit modules of interest or to complete
those that may have been skipped and further explore the capabilities of Unified Contact Center Express 11.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 176 of 182
Cisco dCloud

Appendix A: CAD to Finesse Migration Tool


The CAD to Finesse Migration utility automates the migration of some Cisco Agent Desktop (CAD) configuration data to Cisco
Finesse. The utility is run from a client with connectivity to the CAD and Finesse servers and allows for multi-stage migration of
configuration data. Reason Codes, Wrapup Codes, Phone Books and Contacts and some workflow actions are migrated.

Note: The CAD to Finesse migration utility can be used with any version of UCCX supported for direct upgrade to 11.0(1). Check
the Compatibility Matrix for versions supported for direct upgrade to 11.0(1).

What is Migrated?

The utility migrates the following configuration:

Global & Workflow Group Not Ready Reason Codes

Global & Workflow Group Logout Reason Codes

Global & Workflow Group Wrapup Codes

Global & Workflow Group Phone Book Contacts

Global & Workflow Group Phone Books

Workflow Group Start Recording Actions

Workflow Group HTTP Actions

Workflow Group HTTP Actions associated with non-Default Workflow Lists are not migrated. Only actions associated with the
Default Workflow List are migrated by this utility.

The Workflow Group configuration is migrated to the Finesse Team ONLY if the Finesse Team name matches the Workflow Group
name.

If the Workflow Group name matches the Finesse Team name, the Workflow Group specific configuration will be associated with
the Finesse team. If the Workflow Group name does not match the Finesse Team name, the configuration will be migrated to
Finesse, but will have to be assigned manually to the Finesse Team.

If the Finesse Team has configuration associated with it, the utility will append newly migrated configuration to the Finesse Teams
configuration.

Download the Utility

The Tool is downloaded from the Cisco DevNet website.

1. Open or bring focus to the RDP session connected to wkst1.dcloud.cisco.com (Charles Holland).

2. Launch Mozilla Firefox by clicking on the shortcut in the task bar [ ].

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 177 of 182
Cisco dCloud

3. Browse to: https://developer.cisco.com/site/finesse/downloads/cad-to-finesse/index.gsp and click on Download the utility.

Figure 336. Download utility.

4. Press OK in the dialog box which shows up and save the tool to C:\Users\cholland\Desktop\CCX-
Enablement\Downloads.

Figure 337. Save the tool.

Export the CAD configuration using the Utility

1. Open the folder on Workstation 1 where the utility was downloaded, C:\Users\cholland\Desktop\CCX-
Enablement\Downloads.

2. Using 7zip, extract the .zip file to a folder as shown below.

Figure 338. Extract file.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 178 of 182
Cisco dCloud

3. After extracting the utility, navigate to C:\Users\cholland\Desktop\CCX-Enablement\Downloads\cadtofinesse_1.6\dist

4. Double click convert.exe to launch the utility.

Figure 339. Launch convert.exe.

5. Give consent for the utility to run by typing Yes and shown below.

Figure 340. Give consent.

Next, we need to select the phase to run. Export allows us to extract the CAD LDAP and serialize it on the disk where the utility is
being run. Import phase uses the previously serialized information to configure Finesse.

Note: The import phase must be run by the utility in the same location (PC, folder etc.) as the export phase.

6. We will first export the configuration from UCCX1. At the Select the phase to run (export/import): type export.

7. When prompted to enter the IP address of the CAD server > 198.18.133.19.

Figure 341. Begin the export.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 179 of 182
Cisco dCloud

8. When prompted to Begin export? (Yes/No) type Yes. This action will close the utility and create the extracted CAD
configuration. The resulting file can be found at C:\Users\cholland\Desktop\CCX-
Enablement\Downloads\cadtofinesse_1.6\dist\backup.

Figure 342. Export file location.

Importing the CAD configuration to Finesse using the Utility

We must now import the earlier extracted CAD information to UCCX2 so that it can be added to the Finesse configuration.

1. Open the folder location C:\Users\cholland\Desktop\CCX-Enablement\Downloads\cadtofinesse_1.6\dist.

2. Re-launch the utility by double clicking convert.exe.

3. When prompted to Select the phase to run (export/import): enter Import.

4. When prompted with This script send anonymous data back to Cisco. Do you concent? (Yes/No) enter Yes.

5. When prompted with Enter Finesse FQDN in hostname.domain.suffix for: enter uccx2.dcloud.cisco.com.

6. When prompted with Finesse administrator username: enter administrator.

7. When prompted with Finesse administrator password: enter dCloud123!.

8. Press enter to initiate the import.

Figure 343. Import phase.

This concludes Appendix A.

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 180 of 182
Cisco dCloud

Appendix B Technical Reference Documents


CAD to Finesse Migration
Cisco Unified Contact Center Express Design Guide, Release 10.6(1)

http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_10_6/design/guide/UCCX
_BK_CBB99111_00_cisco-unified-contact-center-express/UCCX_BK_CBB99111_00_cisco-unified-contact-center-
express_appendix_0111.html

Scripting with Unified Contact Center Express 11


Cisco Unified Contact Center Express Getting Started with Scripts, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/programming/g
uide/EditorSeriesVol1.pdf

Cisco Unified Contact Center Express Editor Step Reference Guide, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/programming/g
uide/EditorSeriesVol2.pdf

Cisco Unified Contact Center Express Expression Language Reference Guide, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/programming/g
uide/EditorSeriesVol3.pdf

Provisioning the Chat and Email Subsystem


Cisco Unified CCX Administration Guide, Release 11.0(1): Subsystems Menu

http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/config/guide/UCCX_
BK_U2F148AE_00_unified-ccx-administration-guide/UCCX_BK_U2F148AE_00_unified-ccx-administration-
guide_chapter_010000.html

Reporting System Technical Reference


Cisco Unified Contact Center Express Report User Guide, Release 11.0(1)

http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/user/guide/UCCX_B
K_U36B58A5_00_uccx-report-user-guide-11.html

Cisco Unified Contact Center Express Historical Reporting Guide, Release 11.0(1)
http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/user/guide/UCCX_B
K_UA808DBF_00_uccx-historical-reporting-guide-11.html

Cisco Unified CCX Database Schema Guide, Release 11.0(1)

http://www.cisco.com/c/dam/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/crs/express_11_0/reference/guid
e/Unified_CCX_Database_Schema_Guide_Release_1101.pdf

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 181 of 182
Cisco dCloud

2015 Cisco and/or its affiliates. All rights reserved. This document is intended for Cisco Partner Training. Page 182 of 182