Historical Reporting Administrator and Developer Guide ...

242
Americas Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA http://www.cisco.com Tel: 408 526-4000 800 553-NETS (6387) Fax: 408 527-0883 Cisco Unified Contact Center Express 7.0(1) Historical Reporting Administrator and Developer Guide Cisco Unified Contact Center Express and Cisco Unified IP IVR August 2008

Transcript of Historical Reporting Administrator and Developer Guide ...

Page 1: Historical Reporting Administrator and Developer Guide ...

Americas HeadquartersCisco Systems, Inc.170 West Tasman DriveSan Jose, CA 95134-1706USAhttp://www.cisco.comTel: 408 526-4000

800 553-NETS (6387)Fax: 408 527-0883

Cisco Unified Contact Center Express 7.0(1) Historical Reporting Administrator and Developer GuideCisco Unified Contact Center Express and Cisco Unified IP IVR August 2008

Page 2: Historical Reporting Administrator and Developer Guide ...

THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS.

THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY.

The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB’s public domain version of the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California.

NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED “AS IS” WITH ALL FAULTS. CISCO AND THE ABOVE-NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE.

IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

CCDE, CCENT, Cisco Eos, Cisco Lumin, Cisco Nexus, Cisco StadiumVision, Cisco TelePresence, the Cisco logo, DCE, and Welcome to the Human Network are trademarks; Changing the Way We Work, Live, Play, and Learn and Cisco Store are service marks; and Access Registrar, Aironet, AsyncOS, Bringing the Meeting To You, Catalyst, CCDA, CCDP, CCIE, CCIP, CCNA, CCNP, CCSP, CCVP, Cisco, the Cisco Certified Internetwork Expert logo, Cisco IOS, Cisco Press, Cisco Systems, Cisco Systems Capital, the Cisco Systems logo, Cisco Unity, Collaboration Without Limitation, EtherFast, EtherSwitch, Event Center, Fast Step, Follow Me Browsing, FormShare, GigaDrive, HomeLink, Internet Quotient, IOS, iPhone, iQ Expertise, the iQ logo, iQ Net Readiness Scorecard, iQuick Study, IronPort, the IronPort logo, LightStream, Linksys, MediaTone, MeetingPlace, MeetingPlace Chime Sound, MGX, Networkers, Networking Academy, Network Registrar, PCNow, PIX, PowerPanels, ProConnect, ScriptShare, SenderBase, SMARTnet, Spectrum Expert, StackWise, The Fastest Way to Increase Your Internet Quotient, TransPath, WebEx, and the WebEx logo are registered trademarks of Cisco Systems, Inc. and/or its affiliates in the United States and certain other countries.

All other trademarks mentioned in this document or Website are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (0807R)

Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1) Copyright © 2008 Cisco Systems, Inc. All rights reserved.

Page 3: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Histor

C O N T E N T S

Preface i

Overview i

Audience i

Organization ii

Related Documentation iii

Obtaining Documentation, Obtaining Support, and Security Guidelines iii

Documentation Feedback iii

C H A P T E R 1 Overview of Historical Reports 1-1

C H A P T E R 2 Historical Reports Query Designs 2-1

Conventions Used in this Chapter 2-3

Abandoned Call Detail Activity Report 2-4

Aborted and Rejected Call Detail Report 2-6

Agent Call Summary Report 2-9

Agent Detail Report 2-16

Agent Login Logout Activity Report 2-21

Agent Not Ready Reason Code Summary Report 2-24

Agent State Detail Report 2-30

Agent State Summary Report (by Agent) and Agent State Summary Report (by Interval) 2-34

Agent Summary Report 2-43

iical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 4: Historical Reporting Administrator and Developer Guide ...

Contents

Agent Wrap-Up Data Detail Report 2-50

Agent Wrap-Up Data Summary Report 2-54

Application Performance Analysis Report 2-55

Application Summary Report 2-56

Call Custom Variables Report 2-59

Called Number Summary Activity Report 2-64

Common Skill Contact Service Queue Activity Report (by Interval) 2-65

Contact Service Queue Activity Report 2-68

Contact Service Queue Activity Report (by CSQ) and Contact Service Queue Activity Report (by Interval) 2-75

Contact Service Queue Call Distribution Summary Report 2-79

Contact Service Queue Priority Summary Report 2-85

Contact Service Queue Service Level Priority Summary Report 2-87

CSQ-Agent Summary Report 2-89

Detailed Call by Call CCDR Report 2-92

Detailed Call, CSQ, Agent Report 2-96

Multichannel Agent Contact Summary Report 2-100

Multichannel Agent Login Logout Activity Report 2-101

Multichannel CSQ Activity Report 2-101

Outbound Agent Detail Performance Report 2-102

Outbound Campaign Summary Report 2-105

Priority Summary Activity Report 2-108

Remote Monitoring Detail Report 2-110

Traffic Analysis Report 2-113

Email Agent Activity Report 2-114

Email Contact Service Queue Activity Report 2-116

Email Contact Service Queue Agent Activity Report 2-118

iiCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 5: Historical Reporting Administrator and Developer Guide ...

Contents

Email Inbox Traffic Analysis Report 2-120

Email Response Detail Report 2-121

C H A P T E R 3 Writing Database Records 3-1

Flow of Call-Related Detail Records 3-2

Call Scenarios 3-2

Basic ACD Call Scenario—Call Queues for One CSQ 3-3

Basic ACD Call Scenario—Call Queues for Two CSQs 3-4

Basic ACD Call Scenario—Wrap Up 3-5

Basic Agent Based Routing Call Scenario 3-6

Transfer to Route Point Scenario 3-7

Conference to Agent Scenario 3-8

Workflow Redirect to Route Point Scenario 3-9

ACD Call Unanswered Scenario 3-10

Agent to Agent Non-ACD Call Scenario 3-11

Agent to Agent Non-ACD Call Transfer Scenario 3-12

Agent to Agent Non-ACD Call Conference Scenario 3-13

ACD Call Blind Transfer Scenario 3-14

Agent Places Consult Call then Resumes Call Scenario 3-15

Agent Consults Agent then Resumes Call Scenario 3-16

Basic Outbound Call Scenario—Call Accepted 3-18

Basic Outbound Call Scenario—Call Rejected then Accepted 3-18

Basic Outbound Call Scenario—Call Accepted and Transferred to Other Agent 3-19

Basic Outbound Call Scenario—Call Accepted and Transferred to Route Point 3-20

Flow of Email-Related Detail Records 3-22

Email Scenarios 3-23

Basic Incoming Email with a Response Sent 3-23

Email Re-queued 3-24

iiiCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 6: Historical Reporting Administrator and Developer Guide ...

Contents

Email Transferred to Different CSQ 3-25

C H A P T E R 4 Sharing Cisco Unified CCX Historical Reports on the Web 4-1

C H A P T E R 5 Exporting Historical Data to a Data Warehouse 5-1

Exporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000 5-2

Exporting Data when the Cisco Unified CCX Database uses MSDE 5-8

Exporting Data when the Data Warehouse does not use Microsoft SQL Server 2000 5-10

Exporting Data when Cisco Unified CCX Data Exists in the Data Warehouse 5-11

C H A P T E R 6 Creating Custom Historical Reports for Cisco Unified CCX 6-1

Creating a Report 6-2

Before you Begin 6-2

Creating a Report using Crystal Reports Version 11 6-3

Creating a Report Definition File 6-10

Updating the Reports Catalog File 6-17

Troubleshooting 6-18

New Report Does Not Appear on the Report Type Drop-Down List 6-18

Generating a Custom Report Fails with "Invalid name" Error 6-19

C H A P T E R 7 Frequently Asked Questions 7-1

Abandoned Call Detail Activity Report 7-2

Agent Call Summary Report 7-4

Agent Detail Report 7-4

Agent Login Logout Activity Report 7-5

Agent Summary Report 7-5

ivCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 7: Historical Reporting Administrator and Developer Guide ...

Contents

Application Performance Analysis Report 7-7

Call Custom Variables Report 7-7

Common Skill Contact Service Queue Activity Report 7-8

Contact Service Queue Activity Report 7-9

Contact Service Queue Activity Report (by CSQ) 7-10

Detailed Call by Call CCDR Report 7-12

Traffic Analysis Report 7-13

Data Reconciliation Among Reports 7-14

Availability of Reporting Data 7-18

General 7-22

I N D E X

vCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 8: Historical Reporting Administrator and Developer Guide ...

Contents

viCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 9: Historical Reporting Administrator and Developer Guide ...

Preface

OverviewCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1) explains how the queries are designed for the Cisco Unified Contact Center Express1 (Cisco Unified CCX) historical reports. It also describes how database records are written for various call scenarios, how to share historical reports on the web, how to export data to a data warehouse, and how to create custom reports. In addition, this manual provides answers to a variety of frequently asked questions.

The information in this manual is designed to help you best understand the Cisco Unified CCX historical reports and to assist you if you want to create your own custom reports.

AudienceThis guide is intended for readers who are familiar with database design, operation, and terminology.

1. Cisco Customer Response Solutions (Cisco CRS) will be known as Cisco Unified Contact Center Express (Cisco Unified CCX), effective Cisco Unified CCX 7.0(1) and later. This name is applicable to all Cisco CRS products, platforms, engines, and solutions. For example, Cisco CRS Engine will be known as Cisco Unified CCX Engine.

iCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 10: Historical Reporting Administrator and Developer Guide ...

PrefaceOrganization

OrganizationThis manual is organized as follows:

Chapter 1, “Overview of Historical Reports”

Lists the basic historical reports and the 277 report types that you can create

Chapter 2, “Historical Reports Query Designs”

Explains how the information in each field in each Cisco Unified CCX historical report is obtained or calculated and explains how the filter parameters for a report obtain data

Chapter 3, “Writing Database Records”

Explains how database records are written for sample call flows

Chapter 4, “Sharing Cisco Unified CCX Historical Reports on the Web”

Explains how you can make Cisco Unified CCX historical reports available to users over the web

Chapter 5, “Exporting Historical Data to a Data Warehouse”

Explains how to export Cisco Unified CCX historical reports data to your own data warehouse

Chapter 6, “Creating Custom Historical Reports for Cisco Unified CCX”

Describes how to create your own Cisco Unified CCX historical reports and add them to the Report Type drop-down list on the Cisco Unified CCX Historical Reports main window

Chapter 7, “Frequently Asked Questions”

Provides answers to frequently asked questions about historical reports and the data in reports

iiCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 11: Historical Reporting Administrator and Developer Guide ...

PrefaceRelated Documentation

Related DocumentationFor additional information related to Cisco Unified CCX historical reporting, refer to the following documents, which are available at this URL:

http://www.cisco.com/en/US/products/sw/custcosw/ps1846/tsd_products_ support_series_home.html

• Cisco Unified Contact Center Express Historical Reports User Guide

• Cisco Unified Contact Center Express Database Schema

Obtaining Documentation, Obtaining Support, and Security Guidelines

For information on obtaining documentation, obtaining support, security guidelines, and also recommended aliases and general Cisco documents, see the monthly What’s New in Cisco Product Documentation, which also lists all new and revised Cisco technical documentation, at:

http://www.cisco.com/en/US/docs/general/whatsnew/whatsnew.html

Documentation FeedbackYou can provide comments about this document by sending email to the following address:

[email protected]

We appreciate your comments.

iiiCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 12: Historical Reporting Administrator and Developer Guide ...

PrefaceDocumentation Feedback

ivCisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 13: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

C H A P T E R 1

Overview of Historical Reports

The Cisco Unified CCX Historical Reports system provides you with complete and comprehensive information about the call activities of your Cisco Unified CCX system.

Historical reports are designed with the flexibility to let you obtain the specific information that you need. Using filters provided with most of the basic historical reports, you can create up to 150 reports that contain relevant and detailed information. By adding charts, you can create up to 211 separate reports.

Table 1-1 shows the various report types that you can create from the basic reports. It also shows the charts that you can include, which further expand the reporting capabilities of the system. For information about creating these historical reports, refer to Cisco Unified Contact Center Express Historical Reports User Guide.

1-1and Developer Guide, Release 7.0(1)

Page 14: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Table 1-1 Cisco Unified CCX Historical Reports

Basic Report Report Types Charts

Abandoned Call Detail Activity Report

• Abandoned Call Detail Activity • Calls Abandoned Each Day by Final Call Priority

Aborted and Rejected Call Detail Report

• Both Aborted Calls and Rejected Calls

• Aborted Calls Only

• Rejected Calls Only

• Total Calls by Contact Disposition

Agent Call Summary Report

• All Agents or Selected Agent(s)

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Total Inbound, Outbound Calls by Agent

• Average Talk, Hold, Work Time for Inbound ACD

• Average, Maximum Call Time for Outbound Calls

Agent Detail Report • All Agents or Selected Agent(s)

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Selected Call Type(s)

• Total Talk Time, Hold Time, Work Time by Agent

Agent Login Logout Activity Report

• All Agents or Selected Agent(s)

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Total Logged-in Time for Each Agent

1-2Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 15: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Agent Not Ready Reason Code Summary Report

• All Agents or Selected Agent(s)

• All/Selected Agents Half-Hourly

• All/Selected Agents Hourly

• Selected Resource Group(s)

• Selected Resource Group(s) Half-Hourly

• Selected Resource Group(s) Hourly

• Selected Skill

• Selected Skill(s) Half-Hourly

• Selected Skill(s) Hourly

• Selected Team(s)

• Selected Team(s) Half-Hourly

• Selected Team(s) Hourly

• Selected Reason Code(s)

• Selected Reason Code(s) Half-Hourly

• Selected Reason Code(s) Hourly

• Total Not Ready Time by Agent and Reason Code

Agent State Detail Report

• All Agents or Selected Agent(s)

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Agent State Duration by Agent

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-3Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 16: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Agent State Summary Report (by Agent)

• All Agents or Selected Agent(s)

• All/Selected Agents Half-Hourly

• All/Selected Agents Hourly

• Selected Resource Group(s)

• Selected Resource Group(s) Half-Hourly

• Selected Resource Group(s) Hourly

• Selected Skill(s)

• Selected Skill(s) Half-Hourly

• Selected Skill(s) Hourly

• Selected Team(s)

• Selected Team(s) Half-Hourly

• Selected Team(s) Hourly

• Time Spent in Agent State by Agent

Agent State Summary Report (by Interval)

• All Agents or Selected Agent(s)

• All/Selected Agents Half-Hourly

• All/Selected Agents Hourly

• Selected Resource Group(s)

• Selected Resource Group(s) Half-Hourly

• Selected Resource Group(s) Hourly

• Selected Skill(s)

• Selected Skill(s) Half-Hourly

• Selected Skill(s) Hourly

• Selected Team(s)

• Selected Team(s) Half-Hourly

• Selected Team(s) Hourly

• Time Spent in Agent State by Interval

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-4Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 17: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Agent Summary Report • All Agents or Selected Agent(s)

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Top N Agents Ranked by Call Handle Ratio

• Bottom N Agents Ranked by Call Handle Ratio

• Top N Agents Ranked by Average Hold Time

• Bottom N Agents Ranked by Average Hold Time

• Top N Agents Ranked by Average Talk Time

• Bottom N Agents Ranked by Average Talk Time

• Top N Agents Ranked by Average Work Time

• Bottom N Agents Ranked by Average Work Time

• Top N Agents Ranked by Average Handle Time

• Bottom N Agents Ranked by Average Handle Time

• Call Handle Ratio by Agent

• Total Calls Handled by Agent

• Average Talk Time, Hold Time, Work Time by Agent

Agent Wrap-Up Data Detail Report

• All Agents or Selected Agent(s)

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Total Calls by Agent and Wrap-up Data

Agent Wrap-Up Data Summary Report

• Wrap-Up Data • Total ACD Calls by Wrap-up Data

• Average Handle, Talk, Work Time by Wrap-up Data

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-5Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 18: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Application Performance Analysis Report

• Application Performance Analysis • Total Incoming Calls by Application

• Calls Handled vs. Calls Abandoned by Application

• Average Call Duration by Application

Application Summary Report

• Application Summary • Calls Presented by Application

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-6Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 19: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Call Custom Variables Report

• All

• Selected Original Called Number(s)

• Selected Called Number(s)

• Selected Calling Number(s)

• Selected Application Name(s)

• Selected Contact Type(s)

• Selected Originator Type(s)

• Selected Destination Type(s)

• Call Duration >= T Seconds

• Call Duration <= T Seconds

• Custom Variable 1 Containing Specified String(s) or Substring(s)

• Custom Variable 2 Containing Specified String(s) or Substring(s)

• Custom Variable 3 Containing Specified String(s) or Substring(s)

• Custom Variable 4 Containing Specified String(s) or Substring(s)

• Custom Variable 5 Containing Specified String(s) or Substring(s)

• Custom Variable 6 Containing Specified String(s) or Substring(s)

• Custom Variable 7 Containing Specified String(s) or Substring(s)

• Custom Variable 8 Containing Specified String(s) or Substring(s)

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-7Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 20: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Call Custom Variables Report (continued)

• Custom Variable 9 Containing Specified String(s) or Substring(s)

• Custom Variable 10 Containing Specified String(s) or Substring(s)

• Any Custom Variable Containing Specified String(s) or Substring(s)

Called Number Summary Activity Report

• Called Number Summary Activity • Total Calls by Called Number

• Average Call Duration by Called Number

Common Skill Contact Service Queue Activity Report (by Interval)

• All CSQs or Selected CSQ(s)

• Half-Hourly

• Hourly

• Calls Handled and Calls Abandoned by Interval

Contact Service Queue Activity Report

• All CSQs or Selected CSQ(s)

• Resource Group(s) (CSQs configured based on resources)

• Skill Group(s) (CSQs configured based on skills)

• Max Queue Time for Calls Presented by CSQ

• Average Speed of Answer by CSQ

• Average Handle Time by CSQ

• Average Time to Abandon by CSQ

• Average Time to Dequeue by CSQ

Contact Service Queue Activity Report (by CSQ)

• All CSQs or Selected CSQ(s)

• Half-Hourly

• Hourly

• Calls Handled, Abandoned, and Dequeued by CSQ

• Total Calls that Met Service Level by CSQ

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-8Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 21: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Contact Service Queue Activity Report (by Interval)

• All CSQs or Selected CSQ(s)

• Half-Hourly

• Hourly

• Calls Handled, Abandoned, and Dequeued by Interval

• Total Calls that Met Service Level by Interval

Contact Service Queue Call Distribution Summary Report

• All CSQs or Selected CSQ(s) • Total Calls Handled by Time Interval and CSQ

• Total Calls Abandoned by Time Interval and CSQ

Contact Service Queue Priority Summary Report

• Contact Service Queue Priority Summary • Total Calls Presented by CSQ and Call Priority

Contact Service Queue Service Level Priority Summary Report

• Contact Service Queue Service Level Priority Summary

• Total Calls that Met Service Level

• Percentage of Calls that Met Service Level

CSQ–Agent Summary Report

• All CSQs or Selected CSQ(s) • Calls Handled by CSQ and Agent

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-9Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 22: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Detailed Call by Call CCDR Report

• All

• Selected Original Called Number(s)

• Selected Called Number(s)

• Selected Calling Number(s)

• Selected Application Name(s)

• Selected Contact Type(s)

• Selected Originator Type(s)

• Selected Destination Type(s)

• Call Duration >= T Seconds

• Call Duration <= T Seconds

• Number of Calls by Contact Disposition

• Number of Calls by Originator Type

Detailed Call, CSQ, Agent Report

• All

• Selected Called Number(s)

• Selected Calling Number(s)

• Selected Application Name(s)

• Selected Contact Type(s)

• Selected Originator Type(s)

• Selected Destination Type(s)

• Call Duration >= T Seconds

• Call Duration <= T Seconds

• Selected Agent(s)

• Selected CSQ(s)

• Total Calls by Called Number

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-10Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 23: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Multichannel Agent Contact Summary Report, page 2-93

• All

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Total Inbound Calls by Agent

• Average Talk, Hole, Work Time for Inbound ACD

• Average, Maximum Call Time for Outbound Calls

Multichannel Agent Login Logout Activity Report, page 2-93

• All

• Selected Resource Group(s)

• Selected Agent(s)

• Selected Skill(s)

• Selected Team(s)

• Total Logged-In Time for Each Agent

Multichannel CSQ Activity Report, page 2-93

• All

• Selected CSQ(s)

• Total Calls Presented

• Max Queue Time for Contacts Presented by CSQ

• Max Queue Time for Emails Presented by CSQ

• Max Queue Time for Chats Presented by CSQ

• Average Speed of Answer by CSQ

• Average Handle Time by CSQ

• Average Time to Abandon by CSQ

• Average Time to Dequeue by CSQ

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-11Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 24: Historical Reporting Administrator and Developer Guide ...

Chapter 1 Overview of Historical Reports

Outbound Agent Detail Performance Report

• Selected Campaigns

• All Agents or Selected Agent(s)

• Selected Resource Group(s)

• Selected Skill(s)

• Selected Team(s)

• Calls Accepted by Campaign and Agent

Outbound Campaign Summary Report

• Campaign Name • Calls Accepted, Rejected, Closed by Campaign

Priority Summary Activity Report

• All or Selected Call Priority Level(s) • Total Calls by Call Priority

Remote Monitoring Detail Report

• Remote Monitoring Detail • Total Duration by User ID

• Average Wait Time by User ID

Traffic Analysis Report • Traffic Analysis • Total Incoming Calls by Date

• Peak Calls by Date

• Average Call Duration by Date

Email Agent Activity Report

• All Agents or Selected Agent(s) -

Email Contact Service Queue Activity Report

• All CSQs or Selected CSQ(s) -

Email Contact Service Queue Agent Activity Report

• All CSQs or Selected CSQ(s) -

Email Inbox Traffic Analysis Report

• All email addresses or Selected email address(es)

-

Email Response Detail Report

• All CSQs or Selected CSQ(s)

• All Agents or Selected Agent(s)

-

Table 1-1 Cisco Unified CCX Historical Reports (continued)

Basic Report Report Types Charts

1-12Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 25: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

C H A P T E R 2

Historical Reports Query Designs

This chapter explains how the information in each field in each Cisco Unified CCX historical report is obtained or calculated. It also describes how the filter parameters for a report obtain data.

This chapter includes the following topics:

• Conventions Used in this Chapter, page 2-3

• Abandoned Call Detail Activity Report, page 2-4

• Aborted and Rejected Call Detail Report, page 2-6

• Agent Call Summary Report, page 2-9

• Agent Detail Report, page 2-16

• Agent Login Logout Activity Report, page 2-21

• Agent Not Ready Reason Code Summary Report, page 2-24

• Agent State Detail Report, page 2-30

• Agent State Summary Report (by Agent) and Agent State Summary Report (by Interval), page 2-34

• Agent Summary Report, page 2-43

• Agent Wrap-Up Data Detail Report, page 2-50

• Agent Wrap-Up Data Summary Report, page 2-54

• Application Performance Analysis Report, page 2-55

• Application Summary Report, page 2-56

• Call Custom Variables Report, page 2-59

2-1and Developer Guide, Release 7.0(1)

Page 26: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query Designs

• Called Number Summary Activity Report, page 2-64

• Common Skill Contact Service Queue Activity Report (by Interval), page 2-65

• Contact Service Queue Activity Report, page 2-68

• Contact Service Queue Activity Report (by CSQ) and Contact Service Queue Activity Report (by Interval), page 2-75

• Contact Service Queue Call Distribution Summary Report, page 2-79

• Contact Service Queue Priority Summary Report, page 2-85

• Contact Service Queue Service Level Priority Summary Report, page 2-87

• CSQ-Agent Summary Report, page 2-89

• Detailed Call by Call CCDR Report, page 2-92

• Detailed Call, CSQ, Agent Report, page 2-96

• Multichannel Agent Contact Summary Report, page 2-100

• Multichannel Agent Login Logout Activity Report, page 2-101

• Multichannel CSQ Activity Report, page 2-101

• Outbound Agent Detail Performance Report, page 2-102

• Outbound Campaign Summary Report, page 2-105

• Priority Summary Activity Report, page 2-108

• Remote Monitoring Detail Report, page 2-110

• Traffic Analysis Report, page 2-113

• Email Agent Activity Report, page 2-114

• Email Contact Service Queue Activity Report, page 2-116

• Email Contact Service Queue Agent Activity Report, page 2-118

• Email Inbox Traffic Analysis Report, page 2-120

• Email Response Detail Report, page 2-121

2-2Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 27: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsConventions Used in this Chapter

Conventions Used in this ChapterThe following conventions are used in this chapter.

• Database table names—Explanations of report fields in this chapter refer to various Cisco Unified CCX database tables. In some cases, these explanations use abbreviations for database table names. Table 2-1 lists the database tables that this chapter refers to and shows the abbreviations that are used.

For detailed information about the Cisco Unified CCX database tables, refer to Cisco Unified Contact Center Express Database Schema.

Table 2-1 Cisco Unified CCX Database Tables

Database Table Name Abbreviation Used in this Chapter

AgentConnectionDetail ACD

AgentStateDetail ASD

Campaign —

ContactCallDetail CCD

ContactQueueDetail CQD

ContactRoutingDetail CRD

ContactServiceQueue CSQU

DialingList —

MonitoredResourceDetail MRD

RemoteMonitoringDetail RMD

Resource —

ResourceGroup RG

ResourceSkillMapping RSM

Skill —

SkillGroup SG

EEMContactEmailDetail EEMCED

EEMQueueAgentDetail EEMQAD

EEMEmailAgentStateDetail EEMEASD

2-3Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 28: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAbandoned Call Detail Activity Report

• Database table fields—Explanations in this chapter specify fields in the Cisco Unified CCX database tables as follows:

table.field

where table is the name or abbreviation of the database table (see Table 2-1) and field is the name of the field. For example,

– CSQU.skillGroupID means the skillGroupID field in the ContactServiceQueue table

– Resource.resourceID means the resourceID field in the Resource table

• Report field names—In an explanation of a report field, a report field name in bold type indicates that field in the same report.

Abandoned Call Detail Activity Report The Abandoned Call Detail Activity Report contains one row per abandoned call. An abandoned call is a call for which CCD.contactDisposition is set to 1 (abandoned).

Table 2-2 shows how the information in the Abandoned Call Detail Activity Report is obtained or calculated.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-2 Abandoned Call Detail Activity Report Query Design

Field Explanation

Call Start Time Obtained from CCD.startDateTime.

Called Number Obtained from CCD.calledNumber.

Call ANI For ACD calls, obtained from CCD.originatorDN.

For IVR calls, this field is set to the extension of the originating agent as follows: join CCD.originatorID with Resource.resourceID, and CCD.profileID with Resource.profileID to obtain Resource.extension.

2-4Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 29: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAbandoned Call Detail Activity Report

Initial Call Priority Join CCD and CRD on sessionID, sessionSeqNum, nodeID, and profileID.

Note A call may be abandoned without being assigned a call priority. In this case, CRD.origPriority will be blank and this Initial Call Priority field will show “n/a.”

Call Routed CSQ Join CCD and CQD on sessionID, sessionSeqNum, nodeID, and profileID. Additional search criteria are CCD.contactDisposition is 1 (abandoned), CQD.disposition is 1 (abandoned) or 3 (dequeued), and CQD.targetType is 0 (CSQ type). The CSQ information is stored in CQD.targetID. Join CQD.targetID with CSQ.recordID, and join CQD.profileID with CSQ.profileID to obtain CSQ name, which is stored in CSQ.csqName.

Note A call may be abandoned without being presented to any CSQ. In this case, this Call Routed CSQ field will be blank.

Agent Name Join CCD and ACD on sessionID, sessionSeqNum, nodeID and profileID to include only calls with CCD.contactDisposition set to 1 (abandoned). Join ACD and Resource on resourceID and profileID to obtain the name of the agent who was presented with the call, which is stored in Resource.resourceName.

Note A call may be abandoned without being presented to any agent. In this case, this Agent Name field will be blank.

Call Skills This field shows the list of skills that belong to the CSQ shown in Call Routed CSQ.

Join CQD.targetID with CSQU.recordID, and CQD.profileID with CSQU.profileID to obtain CSQU.skillGroupID. Join CSQU.skillGroupID with SG.skillGroupID to obtain SG.skillID. Join SG.skillID with Skill.skillID to obtain the list of call skills, which is stored in Skill.skillName.

Note This Call Skills field will be blank for a call that is abandoned without being presented to a CSQ and for a call that is abandoned after it is presented a resource-based CSQ.

Final Call Priority Join CCD and CRD on sessionID, sessionSeqNum, nodeID, and profileID.

Note A call may be abandoned without being assigned a call priority. In this case, CRD.finalPriority will be blank and this Final Call Priority field will show “n/a.”

Call Abandon Time Obtained from CCD.endDateTime.

Table 2-2 Abandoned Call Detail Activity Report Query Design (continued)

Field Explanation

2-5Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 30: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAborted and Rejected Call Detail Report

Aborted and Rejected Call Detail ReportThe Aborted and Rejected Call Detail Report provides detailed information about each call that is aborted or rejected by the system. A call is aborted if an exception occurs in the workflow that is processing a call. A call is rejected if system resources reach maximum capacity (for example, the maximum number of CTI ports is reached).

Table 2-3 shows how the information in the Aborted and Rejected Call Detail Report is obtained or calculated.

Table 2-4 explains how the Aborted and Rejected Call Detail Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-3 Aborted and Rejected Call Detail Report Query Design

Field Explanation

Node ID Obtained from CCD.nodeID.

Session ID Obtained from CCD.sessionID.

Sequence No Obtained from CCD.sessionSeqNum.

Call Start Time Obtained from CCD.startDateTime.

Call End Time Obtained from CCD.endDateTime.

Contact Type Obtained from CCD.contactType.

Contact Disposition Obtained from CCD.contactDisposition.

If CCD.contactDisposition is 4, this field displays Aborted. If CCD.contactDisposition is 5 or greater, this field displays Rejected.

2-6Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 31: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAborted and Rejected Call Detail Report

Abort/Reject Reason

For aborted calls, CCD.contactDisposition is 4, and this field displays the value stored in CCD.dispositionReason.

For rejected calls, CCD.contactDisposition is 5 or greater, and this field displays the text according to the following mapping:

5—Reject: No Trigger

6—Reject: Channels Not Ready

7—Reject: Trigger Timeout

8—Reject: Channels Busy

9—Reject: No Channel License

10—Reject: Remote Timeout

11—Reject: Software Error

12—Reject: Trigger Max Session

13—Reject: Trigger Failed

14—Reject: Setup Timeout

15—Reject: Setup Failed

16—Reject: Resource Invalid

17—Reject: Resource Not Acknowledging

18—Reject: Resource Busy

19—Reject: Contact Not Offered

20—Reject: Internal Error

21—Reject: Contact Rejected in Script

22—Reject: Agent reject Outbound call

23—Reject: Agent Skipped Outbound Call

Table 2-3 Aborted and Rejected Call Detail Report Query Design (continued)

Field (continued) Explanation

2-7Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 32: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAborted and Rejected Call Detail Report

24—Reject: Agent clicked Cancel Reservation for Outbound call.

Note The event occurred when the campaign got disabled, deleted or when the associated CSQ got deleted before the agent clicked Cancel Reservation. This is because CCDR will be written only when the call is disconnected.

25-98—Reserved.

Originator DN1 Obtained from CCD.originatorDN.

If CCD.originatorType is 1 (agent type), this field contains the extension of the originating agent, and is calculated as follows: Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain the agent extension, which is stored in Resource.extension.

Destination DN Obtained from CCD.destinationDN.

If CCD.destinationType is 1 (agent type), this field contains the extension of the destination agent, and is calculated as follows: Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain the agent extension, which is stored in Resource.extension.

Called Number Obtained from CCD.calledNumber.

Original Called No. Obtained from CCD.origCalledNumber.

Application Name Obtained from CCD.applicationName.

Call Routed CSQ Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to determine CQD records with a CCD.startDateTime value that is within the report period. Join CQD and CRD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex to obtain CQD.targetID, and join CQD.profileID with CQD.targetType = 0 (CSQ type). CQD.targetID contains the recordID of the CSQ that handled the call. Join CQD.targetID with CSQ.recordID, and join CQD.profileID with CSQ.profileID to obtain the CSQ name, which is stored in CSQ.csqName.

1. DN = directory number

Table 2-3 Aborted and Rejected Call Detail Report Query Design (continued)

Field (continued) Explanation

2-8Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 33: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Call Summary Report

Agent Call Summary ReportThe Agent Call Summary Report shows, for each agent specified, summary information about each call that was received (an inbound call) and each call that was made (an outbound call) by the agent. This report also shows the number of calls transferred to the agent and transferred out (to another route point or another agent) by the agent, and the number of conference calls in which the agent participated.

Table 2-5 shows how the information in the Agent Call Summary Report is obtained or calculated.

Table 2-6 explains how the Agent Call Summary Report filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-4 Aborted and Rejected Call Detail Report Filter Parameter

Filter Parameter Explanation

Contact Disposition To report on aborted calls only, obtain CCD records with CCD.contactDisposition = 4.

To report on rejected calls only, obtain CCD records with CCD.contactDisposition >= 5.

To report on both aborted and rejected calls, obtain CCD records with CCD.contactDisposition >= 4.

2-9Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 34: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Call Summary Report

Table 2-5 Agent Call Summary Report Query Design

Field Explanation

Agent Name For the agents specified, obtain the Resource.resourceID and Resource.profileID as described in Table 2-6 on page 2-15. Agent Name is stored in Resource.resourceName.

Note When an attribute of an agent changes (for example, extension or resource group), the agent will have multiple entries in the Resource table. In this case, each entry will have a different resource ID, so several resource IDs can belong to one agent, and Resource.resourceID will not uniquely identify an agent. Also, one agent may belong to different application profiles, and will have different Resource.profileID entries. Therefore, the combination of Resource.resourceID and Resource.profileID is not sufficient to uniquely identify an agent. The combination of Resource.resourceName and Resource.resourceLoginID is used to uniquely identify an agent. Resource.resourceName itself is not sufficient to do so because different agents may have the same first and last names, but have different resource login IDs. Resource.resourceLoginID by itself does not uniquely identify an agent because a generic resource login ID (for example, supportAgent003) may be used for different agents in different times. The combination of two uniquely identifies an agent.

Extension For agents who have not had their extension changed, obtained from Resource.extension.

For agents who have had their extension changed at some time, the extension that is assigned to the agent during the report period.

Total Inbound Calculated as follows:

Total inbound ACD calls + Total inbound IVR calls.

Inbound ACD— Total

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to find ACD records within the report period. (For such records, the corresponding CCD.startDateTime value is within the report period). Join ACD.resourceID with Resource.resourceID and ACD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, count the number of ACD records to determine the total number of inbound ACD calls received by each agent.

2-10Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 35: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Call Summary Report

Inbound ACD—Avg Talk

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to find ACD records within the report period. (For such records, the corresponding CCD.startDateTime value is within the report period). Join ACD.resourceID with Resource.resourceID and ACD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, calculate the sum of the values in ACD.talkTime, then divide by the number of ACD records for that agent.

Inbound ACD—Avg Hold

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to find ACD records within the report period. (For such records, the corresponding CCD.startDateTime value is within the report period). Join ACD.resourceID with Resource.resourceID and ACD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, calculate the sum of the values in ACD.holdTime, then divide by the number of ACD records for that agent.

Inbound ACD—Avg Work

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to find ACD records within the report period. (For such records, the corresponding CCD.startDateTime value is within the report period). Join ACD.resourceID with Resource.resourceID and ACD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, calculate the sum of the values in ACD.workTime, then divide by the number of ACD records for that agent.

Table 2-5 Agent Call Summary Report Query Design (continued)

Field (continued) Explanation

2-11Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 36: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Call Summary Report

Inbound Non-ACD—Total

Search CCD for records for which the value of startDateTime is within the report period and destinationType is 1 (agent). Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

Compare sessionID, sessionSeqNum, profileID, nodeID, and resourceID in this result set with the results for these fields obtained from Inbound ACD—Total. Eliminate all entries that are already counted in the calculation of total inbound ACD calls. The remaining value is the number of IVR calls.

For each agent, count the number of CCD records to determine the number of total inbound IVR calls.

Inbound Non-ACD— Avg Talk Time

Talk time of an IVR call is stored in CCD.connectTime.

Search CCD for records in which the value of startDateTime is within the report period and destinationType is 1 (agent). Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

Compare sessionID, sessionSeqNum, profileID, nodeID, and resourceID in this result set with the result obtained from Inbound ACD—Total. Eliminate all entries that are already counted in the calculation of total inbound ACD calls. The remaining value is the number of IVR calls.

For each agent, calculate the sum of the values stored in CCD.connectTime, then divide by the number of CCD records for that agent.

Table 2-5 Agent Call Summary Report Query Design (continued)

Field (continued) Explanation

2-12Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 37: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Call Summary Report

Inbound Non-ACD— Max Talk Time

Talk time of an IVR call is stored in CCD.connectTime.

Search CCD for records for which the value of startDateTime is within the report period and destinationType is 1 (agent). Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

Compare sessionID, sessionSeqNum, profileID, nodeID, and resourceID in this result set with the result obtained from Inbound ACD—Total. Eliminate all entries that are already counted in the calculation of total inbound ACD calls. The remaining value is the number of IVR calls.

For each agent, determine the maximum value stored in CCD.connectTime.

Outbound—Total Search CCD for records in which the startDateTime is within the report period, and originatorType is 1 (agent). Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, count the number of CCD records.

Outbound—Avg Call Time

Search CCD for records in which the startDateTime is within the report period, and originatorType is 1 (agent). Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, calculate the sum of the values stored in CCD.connectTime, then divide by the number of CCD records for that agent.

Outbound—Max Call Time

Search CCD for records in which the startDateTime is within the report period, and originatorType is 1 (agent). Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, determine the maximum value stored in CCD.connectTime.

Table 2-5 Agent Call Summary Report Query Design (continued)

Field (continued) Explanation

2-13Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 38: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Call Summary Report

ACD Transfer-In For ACD calls that are transferred in, CCD.contactType = 5 (transfer-in), and an ACD record is present.

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to find ACD records within the report period. (For such records, the corresponding CCD.startDateTime value is within the report period). Join ACD.resourceID with Resource.resourceID and ACD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, count the number of ACD records for which the corresponding CCD records have contactType = 5 (transfer-in).

ACD Transfer-Out For ACD calls that are transferred out, CCD.transfer = 1, and an ACD record is present.

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to find ACD records within the report period. (For such records, the corresponding CCD.startDateTime value is within the report period). Join ACD.resourceID with Resource.resourceID and ACD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, count the number of ACD records for which the corresponding CCD records have transfer = 1.

ACD Conference For ACD conference calls, CCD.conference = 1, and an ACD record is present.

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to find ACD records within the report period. (For such records, the corresponding CCD.startDateTime value is within the report period). Join ACD.resourceID with Resource.resourceID and ACD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

For each agent, count the number of ACD records for which the corresponding CCD records have conference = 1.

Table 2-5 Agent Call Summary Report Query Design (continued)

Field (continued) Explanation

2-14Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 39: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Call Summary Report

Table 2-6 Agent Call Summary Report Filter Parameters

Filter Parameter Explanation

All Agents (default, no filter parameter)

To report on all agents, obtain the list of resource IDs and profile IDs as follows:

Search the Resource table for agents who are active (Resource.active is 1) or who are deleted after report start time (Resource.dateInactive is later than the report start time). In this way, the report does not include agents who are deleted before the report start time.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of resource group names from the user selection for this parameter. Search the ResourceGroup table to find records for which RG.resourceGroupName contains values found in the list. Join RG and Resource on resourceGroupID and profileID to find the list of agents that belong to the selected resource group or groups. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

2-15Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 40: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Detail Report

Agent Detail ReportThe Agent Detail Report contains detailed information for calls received and calls made by an agent. The report contains one row per call and includes Cisco Unified CCX and Cisco Unified IP IVR calls.

For ACD calls, the ACD table records all the calls handled by an agent.

For IVR calls, the CCD table records all the calls made by or received by an agent. If an agent makes an IVR call, the agent’s resource ID appears in CCD.originatorID. If the agent receives an IVR call, the agent’s resource ID appears in CCD.destinationID.

Table 2-7 shows how the information in the Agent Detail Report is obtained or calculated.

Table 2-8 explains how the Agent Detail Report filter parameters obtain data.

Skill Names To report on agents with a specific skill or skills, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Search the Skill table to find records for which Skill.skillName contains values found in the list. Join Skill and RSM on skillID and profileID to find resourceSkillMapID. Join RSM and Resource on resourceSkillMapID and profileID to find the list of agents that have the selected skill or skills. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

Team Names To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records whose Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Table 2-6 Agent Call Summary Report Filter Parameters (continued)

Filter Parameter Explanation

2-16Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 41: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Detail Report

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-7 Agent Detail Report Query Design

Field Explanation

Agent Name For ACD calls, an agent is identified by the combination of ACD.resourceID and ACD.profileID. Join ACD.resourceID with Resource.resourceID, and join ACD.profileID with Resource.profileID to obtain the agent name, which is stored in Resource.resourceName.

For IVR calls, if an agent is the originator of the call, the agent is identified by CCD.originatorID and CCD.profileID, when CCD.originatorType = 1 (Agent type). Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName.

If an agent is the destination of an IVR call, the agent is identified by CCD.destinationID and CCD.profileID, when CCD.destinationType = 1 (Agent type). Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName.

Extension For ACD calls, an agent is identified by the combination of ACD.resourceID and ACD.profileID. Join ACD.resourceID with Resource.resourceID, and join ACD.profileID with Resource.profileID to obtain the agent name, which is stored in Resource.resourceName.

For IVR calls, if an agent is the originator of the call, the agent is identified by CCD.originatorID and CCD.profileID, when CCD.originatorType = 1 (Agent type). Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName.

If an agent is the destination of an IVR call, the agent is identified by CCD.destinationID and CCD.profileID, when CCD.destinationType = 1 (Agent type). Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.extension.

Call Start Time For ACD calls, obtained from ACD.startDateTime.

For IVR calls, obtained from CCD.startDateTime.

Call End Time For ACD calls, obtained from ACD.endDateTime.

For IVR calls, obtained from CCD.startDateTime.

2-17Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 42: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Detail Report

Duration Calculated as follows:

Call End Time – Call Star Time

Displayed as hh:mm:ss.

Called Number For ACD calls, agent identification is stored in ACD (see Agent Name earlier in this table). Join ACD and CCD on sessionID, sessionSeqNum, nodeID, and profileID. The value of this field is obtained from CCD.calledNumber.

For IVR calls, agent identification is stored in CCD (see Agent Name earlier in this table). The value of this field is obtained directly from CCD.calledNumber.

Call ANI For ACD calls, agent identification is stored in ACD (see Agent Name earlier in this table). Join ACD and CCD on sessionID, sessionSeqNum, nodeID, and profileID. The value of this field is obtained from CCD.originatorDN.

For IVR calls, agent identification is stored in CCD (see Agent Name earlier in this table). The value of this field is obtained directly from CCD.originatorDN.

For internal calls (CCD.contactType = 3), but the CCD.orignatorDN field is blank. This field is set to the extension of the agent who originates the call, as follows:

Join CCD.originatorID with Resource.resourceID, join and CCD.profileID with Resource.profileID to obtain the extension of the originating agent, which is stored in Resource.extension.

Call Routed CSQ Join ACD and CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type), and CQD.disposition = 2 (handled). The combination of CQD.targetID and CQD.profileID uniquely identifies a CSQ. Join CQD.targetID with CSQ.recordID, and join CQD.profileID with CSQ.profileID to obtain the CSQ name, which is stored in CSQ.csqName.

Other CSQs Join ACD and CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type), and CQD.disposition is not 2 (not handled) to obtain the CSQ for which the call was queued but not handled. The combination of CQD.targetID and CQD.profileID uniquely identifies a CSQ. Join CQD.targetID with CSQ.recordID, and join CQD.profileID with CSQ.profileID to obtain the CSQ name, which is stored in CSQ.csqName. Multiple CSQ names are represented by “…”.

Table 2-7 Agent Detail Report Query Design (continued)

Field Explanation

2-18Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 43: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Detail Report

Call Skills Join ACD and CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type), and CQD.disposition = 2 (handled) to obtain a skill group ID, which is stored in CSQ.skillGroupID. Join CSQ.skillGroupID with SG.skillGroupID to get SG.skillID. Join SG.skillID with Skill.skillID to get the list of skill names, stored in Skill.skillName. Multiple skill names are concatenated by commas.

Talk Time For ACD calls, obtained from ACD.talkTime.

For IVR calls, shows the value of Duration if CCD.contactDispostion = 2 (handled). Shows zero if CCD.contactDisposition = 1 (abandoned).

Hold Time For ACD calls, obtained from ACD.holdTime.

Blank for IVR calls.

Work Time For ACD calls, obtained from ACD.workTime.

Blank for IVR calls.

Call Type • Inbound ACD—Call has an ACD record present.

• Inbound Non-ACD—CCD.destinationType = 1 (Agent type), CCD.destinationID is a resource ID, and there is no corresponding ACD record. (A corresponding ACD record has the same sessionID, sessionSeqNum, nodeID, and profileID).

• Outbound—CCD.originatorType = 1 (Agent type), and CCD.originatorID is a resource ID.

• Transfer-In—CCD.contactType = 5 (transfer-in), and there is a corresponding ACD record.

• Transfer-Out—CCD.transfer = 1, and there is a corresponding ACD record.

• Conference—CCD.conference = 1, and there is a corresponding ACD record.

Table 2-7 Agent Detail Report Query Design (continued)

Field Explanation

2-19Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 44: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Detail Report

Table 2-8 Agent Detail Report Filter Parameters

Filter Parameter Explanation

All Agents (default, no filter parameter)

To report on all agents, obtain the list of resource IDs and profile IDs from the Resource table.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of resource group names from the user selection for this parameter. Search the ResourceGroup table to find records for which RG.resourceGroupName contains values found in the list. Join RG and Resource on resourceGroupID and profileID to find the list of agents that belong to the selected resource group or groups. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

Skill Names To report on agents with a specific skill or skills, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Search the Skill table to find records for which Skill.skillName contains values found in the list. Join Skill and RSM on skillID and profileID to find resourceSkillMapID. Join RSM and Resource on resourceSkillMapID and profileID to find the list of agents that have the selected skill or skills. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

2-20Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 45: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Login Logout Activity Report

Agent Login Logout Activity ReportThe Agent Login Logout Activity Report contains detailed information about the login and logout activities of agents. The login and logout information is stored in the ASD table.

Table 2-9 shows how the information in the Agent Login Logout Activity Report is obtained or calculated.

Table 2-10 explains how the Agent Login Logout Activity Report filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Team Names To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records whose Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Call Type To report on a specific call type or types, obtain the call types from the user selection for this parameter. (Up to 6 call types can be selected.) Call types =not selected will be eliminated before the final result set is displayed. The elimination process is based on the classification criteria described in the Call Type field in Table 2-7.

Table 2-8 Agent Detail Report Filter Parameters (continued)

Filter Parameter Explanation

2-21Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 46: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Login Logout Activity Report

Table 2-9 Agent Login Logout Activity Report Query Design

Field Explanation

Agent Name Join ASD.agentID with Resource.resourceID to obtain the agent name, which is stored in Resource.resourceName.

Extension For agents who have not had their extension changed, obtained from Resource.extension.

For agents who have had their extension changed at some time, the extension that is assigned to the agent during the report period.

Login Time Join ASD.agentID with Resource.resourceID, and join ASD.profileID with Resource.profileID to obtain state transition records for each agent, identified by Resource.resourceName and Resource.resourceLoginID. (See Agent Name for the relationship between resourceID/profileID and resourceName/ resourceLoginID). Login Time is stored in ASD.eventDateTime where ASD.eventType = 1. If the agent logged in before the report start time, this field is displayed as < report start time.

Logout Time Join ASD.agentID with Resource.resourceID, and join ASD.profileID with Resource.profileID to obtain state transition records for each agent, identified by Resource.resourceName and Resource.resourceLoginID. (See Agent Name for the relationship between resourceID/profileID and resourceName/ resourceLoginID). Login Time is stored in ASD.eventDateTime where ASD.eventType = 7. If the agent logged out after the report end time, this field is displayed as: > report end time.

Logout Reason Code

This field is obtained from ASD.reasonCode when ASD.eventType = 7 (logout).

Logged-In Duration • If the agent logged in before the report start time and logged out after the report end time—Logged-In Duration = report end time – report start time

• If the agent logged in before the report start time and logged out during the report period—Logged-In Duration = Logout Time – report start time

• If the agent logged in during the report period and logged out after the report end time—Logged-In Duration = report end time – Login Time

• If the agent logged in and out during the report period—Logged-In Duration = Logout Time – Login Time

2-22Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 47: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Login Logout Activity Report

Table 2-10 Agent Login Logout Activity Report Filter Parameters

Filter Parameter Explanation

All Agents (default, no filter parameter)

To report on all agents, obtain the list of resource IDs as follows:

Search the Resource table for records with resourceType set to 1 (agent). Resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs as follows:

Obtain the list of resource group name(s) from the user selection for this parameter. Find the corresponding RG.resourceGroupID(s). Join RG.resourceGroupID with Resource.resourceGroupID to find agents belonging to the selected resource group(s). The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs as follows:

Obtain the list of agent names from the user selection for this parameter. Find the corresponding Resource.resourceID(s).

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

2-23Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 48: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Not Ready Reason Code Summary Report

Agent Not Ready Reason Code Summary ReportThe Agent Not Ready Reason Code Summary Report provides information about the length of time each agent spent in Not Ready state during the report period. This report also shows the length of time that agents spent in Not Ready state for the reasons indicated by the reason codes that agents entered when going to Not Ready state. The report shows detailed information for each of up to eight reason codes, and displays consolidated information for other reason codes. By default, the report shows information for eight predefined reason codes. However, you can specify the eight reason codes for which the report shows detailed information.

Table 2-11 shows how the information in the Agent Not Ready Reason Code Summary Report is obtained or calculated.

Table 2-12 explains how the Agent Not Ready Reason Code Summary Report filter parameter obtains data.

Skill Names To report on agents who possess a specific skill or skills, obtain the list of resource IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Find the corresponding Skill.skillID(s). Join Skill.skillID with RSM.skillID, RSM.resourceSkillMapID with Resource.resourceSkillMapID to find the agents who possess the selected skill(s). The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

Team Names To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records in which Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and join Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. The Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Table 2-10 Agent Login Logout Activity Report Filter Parameters (continued)

Filter Parameter Explanation

2-24Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 49: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Not Ready Reason Code Summary Report

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-11 Agent Not Ready Reason Code Summary Report Query Design

Field Explanation

Agent Name For the agents specified, obtain the Resource.resourceID and Resource.profileID as described in Table 2-12 on page 2-29. Agent Name is stored in Resource.resourceName.

Note When an attribute of an agent changes (for example, extension or resource group), the agent will have multiple entries in the Resource table. In this case, each entry will have a different resource ID, so several resource IDs can belong to one agent, and Resource.resourceID will not uniquely identify an agent. Also, one agent may belong to different application profiles, and will have different Resource.profileID entries. Therefore, the combination of Resource.resourceID and Resource.profileID is not sufficient to uniquely identify an agent. The combination of Resource.resourceName and Resource.resourceLoginID is used to uniquely identify an agent. Resource.resourceName itself is not sufficient to do so because different agents may have the same first and last names, but have different resource login IDs. Resource.resourceLoginID by itself does not uniquely identify an agent because a generic resource login ID (for example, supportAgent003) may be used for different agents in different times. The combination of two uniquely identifies an agent.

Extension For agents who have not had their extension changed, obtained from Resource.extension.

For agents who have had their extension changed at some time, the extension that is assigned to the agent during the report period.

Interval Start Time Beginning of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

Interval End Time End of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

2-25Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 50: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Not Ready Reason Code Summary Report

Total Logged-in Login time is stored in ASD.eventDateTime with eventType set to 1 (log in). Logout time is stored in ASD.eventDateTime with eventType set to 7 (log out).

The calculation of the logged-in time for a single session depends on the agent activity, as follows:

• An agent logs in and logs out during the interval:

Total Logged-in Time = logout time – login time

• An agent logs in before the interval and logs out after the interval:

Total Logged-in Time = Interval End Time – Interval Start Time

• An agent logs in before the interval and logs out during the interval:

Total Logged-in Time = logout time – Interval Start Time

• An agent logs in during the interval and logs out after the interval:

Total Logged-in Time = Interval End Time – login time

If an agent has multiple login sessions during the interval, this field displays the sum of the time spent in each login session.

Table 2-11 Agent Not Ready Reason Code Summary Report Query Design (continued)

Field (continued) Explanation

2-26Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 51: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Not Ready Reason Code Summary Report

Total Not Ready Join ASD.agentID with Resource.resourceID, and join ASD.profileID with Resource.profileID to obtain state transition records for each agent, identified by Resource.resourceName and Resource.resourceLoginID. (See Agent Name in this table for the relationship between resourceID/profileID and resourceName/resourceLoginID). Not Ready state is identified by ASD.eventType = 2.

The time spent in Not Ready state depends on the agent activity, as follows:

• An agent goes in to and out of Not Ready state during the interval:

Total Not Ready Time = time out of Not Ready state – time in to Not Ready state

• An agent goes in to Not Ready state before the interval and goes out of Not Ready state after the interval:

Total Not Ready Time = Interval End Time – Interval Start Time

• An agent goes in to Not Ready state before the interval and goes out of Not Ready state during the interval:

Total Not Ready Time = time out of Not Ready state – Interval Start Time

• An agent goes in to Not Ready state during the interval and goes out of Not Ready state after the interval:

Total Not Ready Time = Interval End Time – time in to Not Ready state

If an agent goes to Not Ready state multiple times during the interval, this field displays the sum of the time spent in each Not Ready state.

Table 2-11 Agent Not Ready Reason Code Summary Report Query Design (continued)

Field (continued) Explanation

2-27Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 52: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Not Ready Reason Code Summary Report

Time in RC n1

Time in RC n2

Time in RC n3

Time in RC n4

Time in RC n5

Time in RC n6

Time in RC n7

Time in RC n8

Join ASD.agentID with Resource.resourceID, and join ASD.profileID with Resource.profileID to obtain state transition records for each agent, identified by Resource.resourceName and Resource.resourceLoginID. (See Agent Name in this table for the relationship between resourceID/profileID and resourceName/resourceLoginID). Not Ready state is identified by ASD.eventType = 2. The reason code is stored in ASD.reasonCode.

By default, this report sorts the predefined Not Ready reason codes in numerical order and displays the first eight reason codes.

You can specify other reason codes to report by selecting Filter Parameter Reason Code.

Time in Other RCs Sum of the duration spent in Not Ready reason codes that are not shown in the Time in RC n1 through Time in RC n8 fields. The total time spent in different reason codes adds up to Total Not Ready Time (Time in Reason Code 1 + Time in Reason Code 2 + … + Time in Reason Code 8 = Total Not Ready Time).

Join ASD.agentID with Resource.resourceID, and join ASD.profileID with Resource.profileID to obtain state transition records for each agent, identified by Resource.resourceName and Resource.resourceLoginID. (See Agent Name in this table for the relationship between resourceID/profileID and resourceName/resourceLoginID). Not Ready state is identified by ASD.eventType = 2. The reason code is stored in ASD.reasonCode. For this calculation, do not consider values that have been listed in the previous 8 fields.

Table 2-11 Agent Not Ready Reason Code Summary Report Query Design (continued)

Field (continued) Explanation

2-28Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 53: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Not Ready Reason Code Summary Report

Table 2-12 Agent Not Ready Reason Code Summary Report Filter Parameter

Filter Parameter Explanation

All Agents (default, no filter parameter)

To report on all agents, obtain the list of resource IDs and profile IDs as follows:

Search and display the Resource table for agents who are active (Resource.active is 1) or who are deleted after report start time (Resource.dateInactive is later than the report start time). In this way, the report does not include agents who are deleted before the report start time.

Interval Length Entire report range—Displays information from the report start time through the report end time, but does not display information for specific intervals within the report period.

Thirty (30) minute intervals—Displays information for 30-minute intervals within the report period. The first interval begins at the report start time, the next interval begins 30 minutes after the report start time, and so on.

Sixty (60) minute intervals—Displays information for 60-minute intervals within the report period. The first interval begins at the report start time, the next interval begins 60 minutes after the report start time, and so on.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of resource group names from the user selection for this parameter. Search the ResourceGroup table to find records for which RG.resourceGroupName contains values found in the list. Join RG and Resource on resourceGroupID and profileID to find the list of agents that belong to the selected resource group or groups. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

2-29Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 54: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Detail Report

Agent State Detail ReportThe Agent State Detail Report shows detailed information about when an agent changed from one state to another.

Table 2-13 shows how the information in the Agent State Detail Report is obtained or calculated.

Table 2-14 explains how the Agent State Detail Report filter parameters obtain data.

Skill Names To report on agents with a specific skill or skills, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Search the Skill table to find records for which Skill.skillName contains values found in the list. Join Skill and RSM on skillID and profileID to find resourceSkillMapID. Join RSM and Resource on resourceSkillMapID and profileID to find the list of agents that have the selected skill or skills. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

Team Names To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records whose Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Reason Code To report on a specific reason code or codes, obtain the list of reason codes from the user selection for this parameter. Find ASD records for which the ASD.eventType is 2 (Not Ready) and for which the value stored ASD.reasonCode is found in the selected list.

Table 2-12 Agent Not Ready Reason Code Summary Report Filter Parameter (continued)

Filter Parameter Explanation

2-30Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 55: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Detail Report

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-13 Agent State Detail Report Query Design

Field Explanation

Agent Name For the agents specified, obtain the Resource.resourceID and Resource.profileID as described in Table 2-14 on page 2-33. Agent Name is stored in Resource.resourceName.

Note When an attribute of an agent changes (for example, extension or resource group), the agent will have multiple entries in the Resource table. In this case, each entry will have a different resource ID, so several resource IDs can belong to one agent, and Resource.resourceID will not uniquely identify an agent. Also, one agent may belong to different application profiles, and will have different Resource.profileID entries. Therefore, the combination of Resource.resourceID and Resource.profileID is not sufficient to uniquely identify an agent. The combination of Resource.resourceName and Resource.resourceLoginID is used to uniquely identify an agent. Resource.resourceName itself is not sufficient to do so because different agents may have the same first and last names, but have different resource login IDs. Resource.resourceLoginID by itself does not uniquely identify an agent because a generic resource login ID (for example, supportAgent003) may be used for different agents in different times. The combination of two uniquely identifies an agent.

Extension For agents who have not had their extension changed, obtained from Resource.extension.

For agents who have had their extension changed at some time, the extension that is assigned to the agent during the report period.

State Transition Time

Obtained from ASD.eventDateTime.

For agent identification, join ASD.agentID with Resource.resourceID, and join ASD.profileID with Resource.profileID to obtain Resource.resourceName and Resource.resourceLoginID, the combination of which uniquely identifies an agent.

2-31Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 56: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Detail Report

Agent State Obtained from ASD.eventType. The mapping between the numeric ASD.eventType and the displayed text is as follows:

1—Logged-in

2—Not Ready

3—Ready

4—Reserved

5—Talking

6—Work

7—Logout

Reason Code Obtained from ASD.reasonCode.

Duration Time agent goes out of the state specified in the Agent State field – Time agent goes to Agent State

The calculation of the duration depends on the agent activity, as follows:

• An agent goes to Agent State before the report start time and goes out of that state after the report end time:

Duration = report end time – report start time

• An agent goes to Agent State before the report start time and goes out of that state during the report period:

Duration = time agent goes out of Agent State – report start time

• An agent goes to Agent State during the report period and goes out that state after the report end time:

Duration = report end time – Transition Time

• An agent goes to Agent State and out of Agent State during the report period:

Duration = time agent goes out of Agent State – Transition Time

Table 2-13 Agent State Detail Report Query Design (continued)

Field (continued) Explanation

2-32Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 57: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Detail Report

Table 2-14 Agent State Detail Report Filter Parameters

Filter Parameter Explanation

All Agents (default, no filter parameter)

To report on all agents, obtain the list of resource IDs and profile IDs as follows:

Search and display the Resource table for agents who are active (Resource.active is 1) or who are deleted after report start time (Resource.dateInactive is later than the report start time). In this way, the report does not include agents who are deleted before the report start time.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of resource group names from the user selection for this parameter. Search the ResourceGroup table to find records for which RG.resourceGroupName contains values found in the list. Join RG and Resource on resourceGroupID and profileID to find the list of agents that belong to the selected resource group or groups. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

2-33Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 58: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Agent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

The Agent State Summary Report (by Agent) and the Agent State Summary Report (by Interval) show the length and percentage of time that each agent spent in each of the following agent states: Not Ready, Ready, Reserved, Talk and Work. These reports also show the total length of time that each agent was logged in.

In the Agent State Summary Report (by Agent), information presented is sorted first by agent, then by interval.

In the Agent State Summary Report (by Interval), information presented is sorted first by interval, then by agent.

Table 2-15 shows how the information in the Agent State Summary Reports is obtained or calculated.

Skill Names To report on agents with a specific skill or skills, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Search the Skill table to find records for which Skill.skillName contains values found in the list. Join Skill and RSM on skillID and profileID to find resourceSkillMapID. Join RSM and Resource on resourceSkillMapID and profileID to find the list of agents that have the selected skill or skills. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

Team Name To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records whose Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Table 2-14 Agent State Detail Report Filter Parameters (continued)

Filter Parameter Explanation

2-34Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 59: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Table 2-16 explains how the Agent State Summary Reports filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-15 Agent State Summary Reports Query Design

Field Explanation

Agent Name Join ASD.agentID with Resource.resourceID to obtain the agent name, which is stored in Resource.resourceName.

Extension For agents who have not had their extension changed, obtained from Resource.extension.

For agents who have had their extension changed at some time, the extension that is assigned to the agent during the report period.

Interval Start Time Beginning of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

Interval End Time End of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

2-35Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 60: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Total Logged-in Time

Login time is stored in ASD.eventDateTime with eventType set to 1 (log in). Logout time is stored in ASD.eventDateTime with eventType set to 7 (log out).

The calculation of the logged-in time for a single session depends on the agent activity, as follows:

• An agent logs in and logs out during the interval:

Total Logged-in Time = logout time – login time

• An agent logs in before the interval and logs out after the interval:

Total Logged-in Time = Interval End Time – Interval Start Time

• An agent logs in before the interval and logs out during the interval:

Total Logged-in Time = logout time – Interval Start Time

• An agent logs in during the interval and logs out after the interval:

Total Logged-in Time = Interval End Time – login time

If an agent has multiple login sessions during the interval, this field displays the sum of the time spent in each login session.

Table 2-15 Agent State Summary Reports Query Design

Field Explanation

2-36Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 61: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Not Ready Time Total time that an agent spent in Not Ready state during the interval, and the percentage of total logged-in time that an agent spent in Not Ready state.

The time that an agent goes to Not Ready state is stored in ASD.eventDateTime with eventType set to 2. The time spent in Not Ready state depends on the agent activity, as follows:

• An agent goes in to and out of Not Ready state during the interval:

Total Not Ready Time = time out of Not Ready state – time in to Not Ready state

• An agent goes in to Not Ready state before the interval and goes out of Not Ready state after the interval:

Total Not Ready Time = Interval End Time – Interval Start Time

• An agent goes in to Not Ready state before the interval and goes out of Not Ready state during the interval:

Total Not Ready Time = time out of Not Ready state – Interval Start Time

• An agent goes in to Not Ready state during the interval and goes out of Not Ready state after the interval:

Total Not Ready Time = Interval End Time – time in to Not Ready state

If an agent goes to Not Ready state multiple times during the interval, this field displays the sum of the time spent in each Not Ready state.

The percentage is calculated as:

(Not Ready Time / Total Logged-in Time) * 100%

Table 2-15 Agent State Summary Reports Query Design

Field Explanation

2-37Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 62: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Ready Time Total time that an agent spent in Ready state during the interval, and the percentage of total logged-in time that an agent spent in Ready state.

The time that an agent goes to the Ready state is stored in ASD.eventDateTime with eventType set to 3. The time spent in Ready state depends on the agent activity, as follows:

• An agent goes in to and out of Ready state during the interval:

Total Ready Time = time out of Ready state – time in to Ready state

• An agent goes in to Ready state before the interval and goes out of Ready state after the interval:

Total Ready Time = Interval End Time – Interval Start Time

• An agent goes in to Ready state before the interval and goes out of Ready state during the interval:

Total Ready Time = time out of Ready state – Interval Start Time

• An agent goes in to Ready state during the interval and goes out of Ready state after the interval:

Total Ready Time = Interval End Time – time in to Ready state

If an agent goes to Ready state multiple times during the interval, this field displays the sum of the time spent in each Ready state.

The percentage is calculated as:

(Ready Time / Total Logged-in Time) * 100%

Table 2-15 Agent State Summary Reports Query Design

Field Explanation

2-38Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 63: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Reserved Time Total time an agent spent in the Reserved state during the interval, and the percentage total logged-in time that an agent spent in Reserved state.

The time that an agent goes to the Reserved state is stored in ASD.eventDateTime with eventType set to 4. The time spent in Reserved state depends on the agent activity, as follows:

• An agent goes in to and out of Reserved state during the interval:

Total Reserved Time = time out of Reserved state – time in to Reserved state

• An agent goes in to Reserved state before the interval and goes out of Reserved state after the interval:

Total Reserved Time = Interval End Time – Interval Start Time

• An agent goes in to Reserved state before the interval and goes out of Reserved state during the interval:

Total Reserved Time = time out of Reserved state – Interval Start Time

• An agent goes in to Reserved state during the interval and goes out of Reserved state after the interval:

Total Reserved Time = Interval End Time – time in to Reserved state

If an agent goes to the Reserved state multiple times during the interval, this field displays the sum of the time spent in each Reserved state.

The percentage is calculated as:

(Reserved Time / Total Logged-in Time) * 100%

Table 2-15 Agent State Summary Reports Query Design

Field Explanation

2-39Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 64: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Talk Time Total time an agent spent in the Talk state during the interval, and the percentage of total logged-in time that an agent spent in Talk state.

The time that an agent goes to the Talk state is stored in ASD.eventDateTime with eventType set to 5. The time spent in Talk state depends on the agent activity, as follows:

• An agent goes in to and out of Talk state during the interval:

Total Talk Time = time out of Talk state – time in to Talk state

• An agent goes in to Talk state before the interval and goes out of Talk state after the interval:

Total Talk Time = Interval End Time – Interval Start Time

• An agent goes in to Talk state before the interval and goes out of Talk state during the interval:

Total Talk Time = time out of Talk state – Interval Start Time

• An agent goes in to Talk state during the interval and goes out of Talk state after the interval:

Total Talk Time = Interval End Time – time in to Talk state

If an agent goes to the Talk state multiple times during the interval, this field displays the sum of the time spent in each Talk state.

The percentage is calculated as:

(Talk Time / Total Logged-in Time) * 100%

Table 2-15 Agent State Summary Reports Query Design

Field Explanation

2-40Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 65: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Work Time Total time an agent spent in the Work state during the interval, and the percentage of total logged-in time that an agent spent in Work state.

The time that an agent goes to the Work state is stored in ASD.eventDateTime with eventType set to 6. The time spent in Work state depends on the agent activity, as follows:

• An agent goes in to and out of Work state during the interval:

Total Work Time = time out of Work state – time in to Work state

• An agent goes in to Work state before the interval and goes out of Work state after the interval:

Total Work Time = Interval End Time – Interval Start Time

• An agent goes in to Work state before the interval and goes out of Work state during the interval:

Total Work Time = time out of Work state – Interval Start Time

• An agent goes in to Work state during the interval and goes out of Work state after the interval:

Total Work Time = Interval End Time – time in to Work state

If an agent goes to the Work state multiple times during the interval, this field displays the sum of the time spent in each Work state.

The percentage is calculated as:

(Work Time / Total Logged-in Time) * 100%

Summary For the gent State Summary Report (by Agent): Summation of data in each report field across all intervals.

For the Agent State Summary Report (by Interval): Summation of data in each report field during each interval.

Grand Total Summation of data in all report fields for all intervals.

Table 2-15 Agent State Summary Reports Query Design

Field Explanation

2-41Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 66: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent State Summary Report (by Agent) and Agent State Summary Report (by Interval)

Table 2-16 Agent State Summary Reports Filter Parameters

Filter Parameter Explanation

All Agents (default, no filter parameter)

To report on all agents, obtain the list of resource IDs as follows:

Search the Resource table for records with resourceType set to 1 (agent). Resource ID is stored in the Resource.resourceID field.

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

Interval Length Options are entire report period (default), 30 minutes, 60 minutes.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs as follows:

Obtain the list of resource group name(s) from the user selection for this parameter.Find the corresponding RG.resourceGroupID(s). Join RG.resourceGroupID with Resource.resourceGroupID to find agents belonging to the selected resource group(s). The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs as follows:

Obtain the list of agent names from the user selection for this parameter. Find the corresponding Resource.resourceID(s).

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

2-42Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 67: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Summary Report

Agent Summary ReportThe Agent Summary Report contains one row per agent. Each row contains a summary of the activities of an agent.

The ACD table contains information of the agents who handled ACD calls. This table provides the basic data for the Agent Summary Report.

Table 2-17 shows how the information in the Agent Summary Report is obtained or calculated.

Table 2-18 explains how the Agent Summary Report filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Skill Names To report on agents who possess a specific skill or skills, obtain the list of resource IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Find the corresponding Skill.skillID(s). Join Skill.skillID with RSM.skillID and join RSM.resourceSkillMapID with Resource.resourceSkillMapID to find the agents who possess the selected skill(s). The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ASD.resourceID to obtain other call related data.

Team Names To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records in which Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and join Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. The Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Table 2-16 Agent State Summary Reports Filter Parameters (continued)

Filter Parameter Explanation

2-43Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 68: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Summary Report

Table 2-17 Agent Summary Report Query Design

Field Explanation

Agent Name Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to get ACD.resourceID and ACD.profileID. ACD.resourceID contains the resource ID of the agent who handled the call. Join ACD.resourceID with Resource.resourceID, and ACD.profileID with Resource.profileID to OBTAIN the agent name, which is stored in Resource.resourceName.

Extension For agents who have not had their extension changed, obtained from Resource.extension.

For agents who have had their extension changed at some time, the extension that is assigned to the agent during the report period.

Avg Logged-In Time

The ASD provides the times that each agent logs in and logs out. The length of time between log in and log out is the agent logged-in time. Login time is stored in ASD.eventDateTime with eventType set to 1 (log in). Logout time is stored in ASD.eventDateTime with eventType set to 7 (log out).

The calculation of the average logged-in time depends on the agent activity, as follows. In these calculations, t1 is the report start time and t2 is the report end time.

• An agent logs in before t1 and logs out between t1 and t2:

Logged-in duration = logout time – t1

• An agent logs in between t1 and t2 and logs out after t2:

Logged-in duration = t2 – login time

• An agent logs in between t1 and t2 and logs out between t1 and t2:

Logged-in duration = logout time – login time

• An agent logs in before t1 and logs out after t2:

Logged-in duration = t2 – t1

The average logged-in time for an agent is calculated as follows:

Calculate the total logged-in time for an agent during the report period and divide by the number of logged-in sessions.

2-44Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 69: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Summary Report

Calls Handled Join ACD and CCD on sessionID, sessionSeqNum, profileID, and nodeID. For each agent, count the number of unique CCD.sessionID that meet the following criteria:

• CCD.startDateTime is in the report period

• CCD.contactDisposition is 2 (handled)

• ACD.talkTime is greater than zero

Calls Presented Join ACD and CCD on sessionID and sessionSeqNum, profileID, and nodeID. For each agent, count the number of unique CCD.sessionID with CCD.startDateTime falling within the report period.

Handle Ratio Call Handled divided by Calls Presented.

Handle Time—Avg Each call handled by an agent has an ACD record. The handle time of a call is calculated as follows:

ACD.talkTime + ACD.holdTime + ACD.workTime

The average handle time is the sum of the handle times of all the calls handled by the agent within the report period divided by the number of calls handled within the report period.

Handle Time—Max Each call handled by an agent has an ACD record. The handle time of a call is calculated as follows

ACD.talkTime + ACD.holdTime + ACD.workTime

The maximum handle time for an agent is the longest handle time of all calls handled by the agent within the report period.

Talk Time—Avg Talk time of a call is obtained from ACD.talkTime.

The average talk time for an agent is the sum of talk times of all calls handled by the agent within the report period divided by the number of calls handled within the report period.

Talk Time—Max Talk time of a call is obtained from ACD.talkTime.

Maximum talk time for an agent is the longest talk time of all the calls handled by the agent within the report period.

Table 2-17 Agent Summary Report Query Design (continued)

Field Explanation

2-45Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 70: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Summary Report

Hold Time—Avg Hold time of a call is obtained from ACD.holdTime.

Average hold time for an agent is the sum of the hold times of all calls handled by the agent within the report period divided by the number of calls handled calls within the report period.

Hold Time—Max Hold time of a call is obtained from ACD.holdTime.

The maximum hold time for an agent is the longest hold time of all calls handled by the agent within the report period.

Work Time—Avg Work time of a call is obtained from ACD.workTime.

The average work time for an agent is the sum of work times of all calls handled by the agent within the report period divided by the number of calls handled within the report period.

Work Time—Max Work time of a call is obtained from ACD.workTime.

The maximum work time for an agent is the longest work time of all the calls handled by the agent within the report period.

Idle Time—Avg The ASD records the date and time that an agent goes to a specific state. Idle time is the time spent in the Not Ready state (2). While in the Not Ready state (2), an agent can go to Ready state (3), Reserved state (4), or Logout state (7).

An idle session begins when an agent goes to Not Ready state and ends when the agent goes to the next state (Ready, Reserved, or Logout). The length of time that the agent spends in Not Ready state is the duration of an idle session.

The average idle time for an agent is the sum of the durations of all of an agent’s idle sessions within the report period divided by the number of idle sessions within the report period.

Idle Time—Max The ASD records the date and time that an agent goes to a specific state. Idle time is the time spent in the Not Ready state (2). While in the Not Ready state (2), an agent can go to Ready state (3), Reserved state (4), or Logout state (7).

An idle session begins when an agent goes to Not Ready state and ends when the agent goes to the next state (Ready, Reserved, or Logout). The length of time that the agent spends in Not Ready state is the duration of an idle session.

The maximum idle time for an agent is the longest duration of the idle sessions within the report period.

Table 2-17 Agent Summary Report Query Design (continued)

Field Explanation

2-46Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 71: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Summary Report

Table 2-18 Agent Summary Report Filter Parameters

Filter Parameter Explanation

All agents (default, no filtering parameters)

To report on all agents, obtain the list of resource IDs and profile IDs as follows:

Search and display the Resource table for agents who are active (Resource.active = 1) or who are deleted after the report start time (Resource.dateInactive later than the report start time, which means that the agent is still active during the report period). In this way, the report does not include agents who are deleted before the report start time.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of resource group names from the user selection for this parameter. Search the ResourceGroup table to find records for which RG.resourceGroupName contains values found in the list. Join RG and Resource on resourceGroupID and profileID to find the list of agents who belong to the selected resource group(s). Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are found in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

Skill Names To report on agents with a specific skill or skills, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Search the Skill table to find records whose Skill.skillName contains values found in the list. Join Skill and RSM on skillID and profileID to find resourceSkillMapID. Join RSM and Resource on resourceSkillMapID and profileID to find the list of agents who have the selected skill(s). Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

2-47Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 72: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Summary Report

Team Names To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records in which Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and join Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. The Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

This report displays only the active agents and the agents who are deleted after the report start time.

Top N Calls Handled/Presented Ratio

To report on N agents who rank highest in the calls handled/presented ratio, obtain the list of resource IDs as follows:

Rank the agents by the calls handled/presented ratio in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the top N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Bottom N Calls Handled/Presented Ratio

To report on N agents who rank lowest in the calls handled/presented ratio, obtain the list of resource IDs as follows:

Rank the agents by the calls handled/presented ratio in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the bottom N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Top N Avg Hold Time

To report on N agents who rank highest in average hold time, obtain the list of resource IDs as follows:

Rank the agents by average hold time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the top N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Table 2-18 Agent Summary Report Filter Parameters (continued)

Filter Parameter Explanation

2-48Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 73: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Summary Report

Bottom N Avg Hold Time

To report on N agents who rank lowest in average hold time, obtain the list of resource IDs as follows:

Rank the agents by average hold time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the bottom N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Top N Avg Talk Time

To report on N agents who rank highest in average talk time, obtain the list of resource IDs as follows:

Rank the agents by average talk time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the top N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Bottom N Avg Talk Time

To report on N agents who rank lowest in average talk time, obtain the list of resource IDs as follows:

Rank the agents by average talk time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the bottom N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Top N Avg Work Time

To report on N agents who rank highest in average work time, obtain the list of resource IDs as follows:

Rank the agents by average work time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the top N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Table 2-18 Agent Summary Report Filter Parameters (continued)

Filter Parameter Explanation

2-49Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 74: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Wrap-Up Data Detail Report

Agent Wrap-Up Data Detail ReportThe Agent Wrap-Up Data Detail Report shows the details entered by an agent when entering the work state after attending an ACD. This report is available with the agent wrap-up feature.

Table 2-19 shows how the information in the Agent Wrap-Up Data Detail Report is obtained or calculated.

Table 2-20 explains how the Agent Wrap-Up Data Detail Report filter parameters obtain data.

Bottom N Avg Work Time

To report on N agents who rank lowest in average work time, obtain the list of resource IDs as follows:

Rank the agents by average work time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the bottom N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Top N Avg Handle Time

To report on N agents who rank highest in average handle time, obtain the list of resource IDs as follows:

Rank the agents by average handle time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the top N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Bottom N Avg Handle Time

To report on N agents who rank lowest in average handle time, obtain the list of resource IDs as follows:

Rank the agents by average handle time in descending order. In case of a tie, order the agents alphabetically by Resource.resourceLoginID. Select the bottom N agents. The value of resource ID is stored in Resource.resourceID.

Join Resource.resourceID with ACD.resourceID and ACD.profileID to obtain other call related data.

Table 2-18 Agent Summary Report Filter Parameters (continued)

Filter Parameter Explanation

2-50Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 75: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Wrap-Up Data Detail Report

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-19 Agent Wrap-Up Data Detail Report Query Design

Field Explanation

Agent Name For ACD calls, an agent is identified by the combination of ACD.resourceID and ACD.profileID. Join ACD.resourceID with Resource.resourceID, and join ACD.profileID with Resource.profileID to obtain the agent name, which is stored in Resource.resourceName.

For IVR calls, if an agent is the originator of the call, the agent is identified by CCD.originatorID and CCD.profileID, when CCD.originatorType = 1 (Agent type). Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName.

If an agent is the destination of an IVR call, the agent is identified by CCD.destinationID and CCD.profileID, when CCD.destinationType = 1 (Agent type). Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName.

Extension For ACD calls, an agent is identified by the combination of ACD.resourceID and ACD.profileID. Join ACD.resourceID with Resource.resourceID, and join ACD.profileID with Resource.profileID to obtain the agent name, which is stored in Resource.resourceName.

For IVR calls, if an agent is the originator of the call, the agent is identified by CCD.originatorID and CCD.profileID, when CCD.originatorType = 1 (Agent type). Join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.resourceName.

If an agent is the destination of an IVR call, the agent is identified by CCD.destinationID and CCD.profileID, when CCD.destinationType = 1 (Agent type). Join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.extension.

Node ID Obtained from CCD.nodeID.

Session ID Obtained from CCD.sessionID.

Sequence No. Obtained from CCD.sessionSeqNum.

Call Start Time Obtained from ACD.startDateTime.

Call End Time Obtained from ACD.endDateTime.

2-51Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 76: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Wrap-Up Data Detail Report

Call ANI Agent identification is stored in ACD (see Agent Name earlier in this table). Join ACD and CCD on sessionID, sessionSeqNum, nodeID, and profileID. The value of this field is obtained from CCD.originatorDN.

Called Number Agent identification is stored in ACD (see Agent Name earlier in this table). Join ACD and CCD on sessionID, sessionSeqNum, nodeID, and profileID. The value of this field is obtained from CCD.calledNumber.

Call Routed CSQ Join ACD and CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type), and CQD.disposition = 2 (handled). The combination of CQD.targetID and CQD.profileID uniquely identifies a CSQ. Join CQD.targetID with CSQ.recordID, and join CQD.profileID with CSQ.profileID to obtain the CSQ name, which is stored in CSQ.csqName.

Talk Time Obtained from ACD.talkTime.

Hold Time Obtained from ACD.holdTime.

Work Time Obtained from ACD.workTime.

Wrap-Up Data Obtained from ACD.callWrapupData.

Table 2-19 Agent Wrap-Up Data Detail Report Query Design (continued)

Field (continued) Explanation

2-52Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 77: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Wrap-Up Data Detail Report

Table 2-20 Agent Wrap-Up Data Detail Report Filter Parameters

Filter Parameter Explanation

Agent Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of resource group names from the user selection for this parameter. Search the ResourceGroup table to find records for which RG.resourceGroupName contains values found in the list. Join RG and Resource on resourceGroupID and profileID to find the list of agents that belong to the selected resource group or groups. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

Skill Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

Team Names To report on agents with a specific skill or skills, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Search the Skill table to find records for which Skill.skillName contains values found in the list. Join Skill and RSM on skillID and profileID to find resourceSkillMapID. Join RSM and Resource on resourceSkillMapID and profileID to find the list of agents that have the selected skill or skills. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

2-53Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 78: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsAgent Wrap-Up Data Summary Report

Agent Wrap-Up Data Summary ReportThe Agent Wrap-up Data Summary Report displays shows detailed information about wrap-up data. This report is available with the agent wrap-up feature.

Table 2-21 shows how the information in the Agent Wrap-up Data Summary Report is obtained or calculated.

Table 2-22 explains how the Agent Wrap-up Data Summary Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-21 Agent Wrap-up Data Summary Report Query Design

Field Explanation

Wrap-Up Data Obtained from ACD.callWrapupData.

Total ACD Calls For the selected wrap-up data, count the number of ACD records.

Total Handle Time For the selected wrap-up data, for all ACD records, calculate (ACD.talkTime + ACD.holdTime + ACD.workTime)

Average Handle Time

Total Handle Time / Total ACD Calls.

Max Handle Time For the selected wrap-up data, for all ACD records, find the one with maximum (talkTime + holdTime + workTime).

Total Talk Time For the selected wrap-up data, for all ACD records, determine the total ACD.talkTime.

Average Talk Time Total Talk Time / Total ACD Calls.

Max Talk Time For the selected wrap-up data, for all ACD records, find the one with the maximum ACD.talkTime.

Total Talk Time as % of Total Handle Time

(Total Talk Time / Total Handle Time) * 100%

Total Work Time For the selected wrap-up data, for all ACD records, determine the total ACD.workTime.

Average Work Time Total Work Time / Total ACD Calls.

2-54Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 79: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsApplication Performance Analysis Report

Application Performance Analysis ReportThe Application Performance Analysis Report shows information about calls received by each Cisco Unified CCX or Cisco Unified IP IVR application. It contains one row per call application. The information is stored in the CCD table.

Table 2-23 shows how the information in the Application Performance Analysis Report is obtained or calculated.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Max Work Time For the selected wrap-up data, for all ACD records, find the one with the maximum ACD.workTime.

Total Work Time as % of Total Handle Time

(Total Work Time / Total Handle Time) * 100%

Table 2-22 Agent Wrap-up Data Summary Report Filter Parameter

Filter Parameter Explanation

Wrap-Up Data To report on a specific wrap-up data, obtain the list of data from the user selection for this parameter. Look up these selections in the ACD table, and include the corresponding ACD records.

Table 2-21 Agent Wrap-up Data Summary Report Query Design (continued)

Field (continued) Explanation

Table 2-23 Application Performance Analysis Report Query Design

Field Explanation

Application ID Obtained from CCD.applicationID.

Application Name Obtained from CCD.applicationName.

Call Presented Each application is identified by the combination of CCD.applicationID and CCD.applicationName. For each application, count the number of CCD records to determine the total number of calls presented to the application.

2-55Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 80: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsApplication Summary Report

Application Summary ReportThe Application Summary Report provides summary call statistics for each Cisco Unified CCX or Cisco Unified IP IVR application.

Table 2-24 shows how the information in the Application Summary Report is obtained or calculated.

Table 2-25 explains how the Application Summary Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Calls Handled Each application is identified by the combination of CCD.applicationID and CCD.applicationName. For each application, count the number of CCD records with CCD.contactDisposition = 2 (handled) to determine the total number of calls presented to the application.

Calls Abandoned Each application is identified by the combination of CCD.applicationID and CCD.applicationName. For each application, count the number of CCD records with CCD.contactDisposition = 1 (abandoned) or 4 (aborted) to determine the total number of calls presented to the application.

Abandon Rate (per hour)

Calculated as follows:

Calls Abandoned / number of hours within the report period

Avg Call Duration Call duration is stored in CCD.connectTime. Average call duration of an application is calculated as the sum of CCD.connectTime for all calls in that application, divided by the number of calls.

Table 2-23 Application Performance Analysis Report Query Design (continued)

Field Explanation

Table 2-24 Application Summary Report Query Design

Field Explanation

Application Name Obtained from CCD.applicationName.

Called Number Obtained from CCD.origCalledNumber.

2-56Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 81: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsApplication Summary Report

Calls Presented The combination of CCD.applicationName and CCD.origCalledNumber uniquely identifies an application.

For each application, count the number of CCD records to obtain the number of calls presented to the application.

Flow-In The combination of CCD.applicationName and CCD.origCalledNumber uniquely identifies an application.

For each application, count the number of CCD records in which CCD.contactType is 4 (redirect in).

Flow-Out The combination of CCD.applicationName and CCD.origCalledNumber uniquely identifies an application.

For each application, count the number of CCD records in which CCD.flowout is 1.

Calls Handled The combination of CCD.applicationName and CCD.origCalledNumber uniquely identifies an application.

For each application, count the number of CCD records in which CCD.contactDisposition is 2 (handled).

Avg Speed Answer This field includes only calls connected to agents.

Join CCD, CQD, and ACD on sessionID, sessionSeqNum, profileID, and nodeID. Find ACD records with ACD.talkTime greater than zero (so that RNAs are excluded).

To calculate total queue time, add the values stored in CQD.queueTime.

To obtain total ring time, add the values stored in ACD.ringTime.

To obtain the number of calls connected to agents, count the number of ACD records in the result set from the join.

Average speed to answer is calculated as:

(total queue time + total ring time) / number of calls connected to agents.

If number of calls connected to agents is zero for this application, this field is zero.

Table 2-24 Application Summary Report Query Design (continued)

Field (continued) Explanation

2-57Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 82: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsApplication Summary Report

Avg Talk Time Join CCD, CQD, and ACD on sessionID, sessionSeqNum, profileID, and nodeID. Find ACD records with ACD.talkTime greater than zero (so that RNAs are excluded).

To obtain total talk time, add up the values stored in ACD.talkTime.

To obtain the number of calls connected to agents, count the number of ACD records in the result set from the join.

Average talk time is calculated as:

Total talk time / number of calls connected to agents.

If number of calls connected to agents is zero for this application, this field is zero.

Avg Work Time Join CCD, CQD, and ACD on sessionID, sessionSeqNum, profileID, and nodeID. Find ACD records with ACD.talkTime greater than zero (so that RNAs are excluded).

To obtain total work time, add up the values stored in ACD.workTime.

To obtain the number of calls connected to agents, count the number of ACD records in the result set from the join.

Average work time is calculated as:

Total work time / number of calls connected to agents.

If number of calls connected to agents is zero for this application, this field is zero.

Table 2-24 Application Summary Report Query Design (continued)

Field (continued) Explanation

2-58Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 83: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCall Custom Variables Report

Call Custom Variables ReportThe Call Custom Variables Report shows information about custom variables that are set by the Set Enterprise Call step in the workflow that the Cisco Unified CCX or Cisco Unified IP IVR application associated with a call invoked. This information comes from the CCD table.

Table 2-26 shows how the information in the Call Custom Variables Report is obtained or calculated.

Table 2-27 explains how the Call Custom Variables Report filter parameters obtain data.

Calls Abandoned The combination of CCD.applicationName and CCD.origCalledNumber uniquely identifies an application.

For each application, count the number of CCD records in which CCD.contactDisposition is 1 (abandoned), 4 (aborted), or 5 or greater (rejected).

Avg Abandon Time The combination of CCD.applicationName and CCD.origCalledNumber uniquely identifies an application.

For each application, calculate the sum of the values in CCD.connectTime to obtain the total abandon time.

If Calls Abandoned is not zero, this field is calculated as:

Total abandon time / Calls Abandoned.

If Calls Abandoned is zero, this field is zero.

Table 2-25 Aborted and Rejected Call Detail Report Filter Parameter

Filter Parameter Explanation

Application Name To report on a specific application or applications, obtain the list of application names from the user selection for this parameter. Find CCD records for which values stored in CCD.applicationName are found in the selected list.

Table 2-24 Application Summary Report Query Design (continued)

Field (continued) Explanation

2-59Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 84: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCall Custom Variables Report

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-26 Call Custom Variables Report Query Design

Field Explanation

Node ID Obtained from CCD.nodeID

Session ID Obtained from CCD.sessionID.

Sequence No. Obtained from CCD.sessionSeqNum.

Start Time Obtained from CCD.startDateTime.

End Time Obtained from CCD.endDateTime.

Contact Disposition Obtained from CCD.contactDisposition.

Agent Name Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to obtain ACD.resourceID and ACD.profileID. ACD.resourceID contains the resource ID of the agent who handled the call. Join ACD.resourceID with Resource.resourceID, and join ACD.profileID with Resource.profileID to obtain the agent name, which is stored in Resource.resourceName.

Blank for ACD calls that were not handled by any agent and for IVR calls.

Application Name Obtained from CCD.applicationName.

Custom Variable 1 Obtained from CCD.customVariable1.

Custom Variable 2 Obtained from CCD.customVariable2.

Custom Variable 3 Obtained from CCD.customVariable3.

Custom Variable 4 Obtained from CCD.customVariable4.

Custom Variable 5 Obtained from CCD.customVariable5.

Custom Variable 6 Obtained from CCD.customVariable6.

Custom Variable 7 Obtained from CCD.customVariable7.

Custom Variable 8 Obtained from CCD.customVariable8.

Custom Variable 9 Obtained from CCD.customVariable9.

Custom Variable 10 Obtained from CCD.customVariable10.

2-60Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 85: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCall Custom Variables Report

Table 2-27 Call Custom Variables Report Filter Parameters

Filter Parameter Result

Original Called Number

To report on a specific original called number or numbers, obtain the list of original called numbers from the user selection for this parameter. Find CCD records whose value stored in CCD.origCalledNumber is in the selected list.

Called Number To report on a specific called number or numbers, obtain the list of called numbers from the user selection for this parameter. Find CCD records whose value stored in CCD.calledNumber is in the selected list.

Calling Number To report on a specific calling number or numbers, obtain the list of calling numbers from the user selection for this parameter. Find at CCD records whose value stored in CCD.originatorDN is in the selected list.

Application Name To report on a specific application name or names, obtain the list of application names from the user selection for this parameter. Find CCD records whose value stored in CCD.applicationName is in the selected list.

Contact Type To report on a specific contact type or types, obtain the list of contact type names from the user selection for this parameter. The numeric ID is mapped to contact type name as follows:

1—incoming

2—outgoing

3—internal

4—redirect-in

5—transfer-in

6—outbound preview

Find CCD records for which the value stored in CCD.contactType is in the selected list.

2-61Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 86: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCall Custom Variables Report

Originator Type To report on a specific originator types, obtain the list of originator types from the user selection for this parameter. The numeric ID is mapped to originator type name as follows:

1—agent

2—device

3—unknown

Find CCD records for which the value stored in CCD.originatorType is in the selected list.

Destination Type To report on a specific destination type, obtain the list of destination type from the user selection for this parameter. The numeric ID is mapped to destination type name is as follows:

1—agent

2—device

3—unknown

Find at CCD records for which the value stored in CCD.destinationType is in the selected list.

Duration Greater Than or Equal to T seconds

To report on calls with duration greater than or equal to T seconds, obtain the value of T from the user input for this parameter. The call duration is calculated as CCD.endDateTime minus CCD.startDateTime, in number of seconds. Find CCD records with call duration greater than or equal to T.

Duration Less Than or Equal to T seconds

To report on calls with duration less than or equal to T seconds, obtain the value of T from the user input for this parameter. The call duration is calculated as CCD.endDateTime minus CCD.startDateTime, in number of seconds. Find CCD records with call duration less than or equal to T.

Custom Variable 1 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable1 matches the user input either partially or wholly.

Custom Variable 2 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable2 matches the user input either partially or wholly.

Table 2-27 Call Custom Variables Report Filter Parameters (continued)

Filter Parameter Result (continued)

2-62Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 87: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCall Custom Variables Report

Custom Variable 3 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable3 matches the user input either partially or wholly.

Custom Variable 4 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable4 matches the user input either partially or wholly.

Custom Variable 5 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable5 matches the user input either partially or wholly.

Custom Variable 6 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable6 matches the user input either partially or wholly.

Custom Variable 7 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable7 matches the user input either partially or wholly.

Custom Variable 8 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable8 matches the user input either partially or wholly.

Custom Variable 9 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable9 matches the user input either partially or wholly.

Custom Variable 10 Obtain the string from the user input for this parameter. Find CCD records for which the value stored in CCD.customVariable10 matches the user input either partially or wholly.

Any Custom Variable

Obtain the string from the user input for this parameter. Find CCD records for which the value stored in any of the 10 custom variables matches the user input either partially or wholly. The value of custom variable is stored in CCD.customVariablen, where n = 1 to 10.

Table 2-27 Call Custom Variables Report Filter Parameters (continued)

Filter Parameter Result (continued)

2-63Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 88: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCalled Number Summary Activity Report

Called Number Summary Activity ReportThe Called Number Summary Activity Report contains one row per called number. The called number is stored in CCD.origCalledNumber.

Outgoing calls are not included in this report.

Table 2-28 shows how the information in the Called Number Summary Activity Report is obtained or calculated.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-28 Called Number Summary Activity Report Query Design

Field Explanation

Called Number Obtained from CCD.calledNumber

Call Type Obtained from CCD.destinationType. The value 1 (agent) indicates an IVR call. The value 2 (device) indicates an ACD call. The value 3 (unknown) indicates an outgoing call or a call to an unmonitored device, and is not reported.

Total Calls For each unique CCD.calledNumber, count the number of CCD records.

Avg Calls (per day) Total calls divided by the number of days in the report period.

The number of days in the report period is calculated as follows. This information is displayed in units of days, rounded up to the next integer.

report end time – report start time

For example, if the report start time and the report end time are on the same day, the number of days is 1.

Avg Call Duration Duration of a call is obtained from CCD.connectTime. Average call duration of a called number is calculated by the sum of CCD.connectTime of all calls for that called number, divided by the number of calls to that number.

2-64Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 89: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCommon Skill Contact Service Queue Activity Report (by Interval)

Common Skill Contact Service Queue Activity Report (by Interval)

The Common Skill Contact Service Queue Activity Report (by Interval) shows summary information about calls presented, calls handled, and calls abandoned for each group of contact service queues (CSQs). (Such a group consists of CSQs that are configured with the same skill or skills and with difference competence levels.).

Table 2-29 shows how the information in the Common Skill Contact Service Queue Activity Report (by Interval) is obtained or calculated.

Table 2-30 explains how the Common Skill Contact Service Queue Activity Report (by Interval) filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-29 Common Skill Contact Service Queue Activity Report (by Interval) Query Design

Field Explanation

Interval Start Time Beginning of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

Interval End Time End of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

CSQ Name The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-30 on page 2-68. CSQ name is stored in CSQ.csqName.

Skills (Competence Level)

Join CRD.primaryCSD with CSQU.recordID to obtain CSQU.skillGroupID. Join CSQU.skillGroupID with SG.skillGroupID to obtain SG.skillID. Join SG.skillID with Skill.skillID to obtain the list of skill names, which is stored in Skill.skillName. Competence level is obtained from SG.competenceLevel.

2-65Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 90: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCommon Skill Contact Service Queue Activity Report (by Interval)

Calls Presented— Total

If a call is presented to one CSQ, the record ID of the CSQ is stored in CRD.csd1. If a call is presented to two CSQs, the record IDs of the CSQs are stored in CRD.csd1 and in CRD.csd2. If a call is presented to three CSQs, the record IDs of the CSQs are stored in CRD.csd1, in CRD.csd2, and in CRD.csd3.

To calculate the number of calls presented to each CSQ, count the number of CRD records with unique sessionIDs that contain the record ID of the CSQ in csd1, csd2, or csd3.

Calls Presented— Queue Time Avg

Queue Time is stored in CQD.queueTime. Determine the sum of CQD.queueTime values for all calls presented to this CSQ, then divide by Calls Presented—Total, if calls presented is not zero. If it is zero, this field is set to zero.

Calls Presented— Queue Time Max

Maximum value stored in CQD.queueTime, for all calls presented to this CSQ.

Calls Handled— Total

To calculate calls handled by each CSQ, count the number of CRD records with unique sessionID that contain the record ID of the CSQ in the primaryCSD field. In addition, join CRD and ACD on sessionID and sessionSeqNum to only include calls with non-zero ACD.talkTime. Then join CRD and CCD on sessionID and sessionSeqNum to only include calls with CCD.contactDisposition set to 2 (handled).

Calls Handled— Handle Time Avg

Handle time of a call is calculated as (ACD.talkTime + ACD.holdTime + ACD.workTime). Determine the sum of handle times for all calls handled by this CSQ, then divide by Calls Handled—Total, if calls handled is not zero. If it is zero, this field is set to zero.

Calls Handled— Handle Time Max

Handle time of a call is calculated as (ACD.talkTime + ACD.holdTime + ACD.workTime). This field is set to the maximum value of handle time for all calls handled by this CSQ.

Calls Abandoned— Total

When a call is queued for a CSQ and then abandoned, CRD.csd1 (or CRD.csd2, or CRD.csd3, depending on the order in which the call was queued) stores the record ID of the CSQ. In addition, CRD.primaryCSD is –1.

To calculate the total number of calls abandoned from a CSQ, count the number of CRD records with a unique sessionID that contain the record ID of the CSQ in csd1, csd2, or csd3. Only include the CRD records with primaryCSD set to –1. In addition, join CRD with CCD on sessionID and sessionSeqNum to only include the records with CCD.contactDisposition set to 1 (abandoned).

Table 2-29 Common Skill Contact Service Queue Activity Report (by Interval) Query Design

Field (continued) Explanation

2-66Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 91: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCommon Skill Contact Service Queue Activity Report (by Interval)

Calls Abandoned— Queue Time Avg

Queue Time is stored in CQD.queueTime. Determine the sum of CQD.queueTime values for all calls abandoned from this CSQ, then divide by Calls Abandoned—Total, if calls abandoned is not zero. If it is zero, this field is set to zero.

Calls Abandoned— Queue Time Max

Maximum value stored in CQD.queueTime, for all calls abandoned from this CSQ.

Service Level— Percentage SL Met

Join CQD and ACD on sessionID, sessionSeqNum, nodeID, profileID, and qIndex. Additional search criteria is CQD.targetType is 0 (CSQ type) and CQD.metServiceLevel is 1.

For each CSQ identified by the combination of CQD.targetID and CQD.profileID, determine the number of CQD records, which is the number of Calls Handled Within Service Level.

This field is calculated as follows, if Calls Presented—Total is not zero:

(Calls Handled Within Service Level / Calls Presented) * 100%

If Calls Presented—Total is zero, this field is set to zero.

Summary for Skills Summation of statistics for all CSQs within the same logical CSQ group.

Table 2-30 Common Skill Contact Service Queue Activity Report (by Interval) Filter Parameters

Filter Parameter Explanation

Interval Length Options are entire report period (default), 30 minutes, 60 minutes.

CSQ Names To report on a specific CSQ or CSQs, obtain the list of the CSQ names from the user selection for this parameter. Join CSQ.recordID with CQD.targetID, and join CSQ.profileID with CQD.profileID to obtain the CQD records for the specified CSQs. For these CQD records, CQD.targetType should be 0 (CSQ type). Join CQD and CCD on sessionID, sessionSeqNum, nodeID, and profileID to obtain other information stored in the CCD table.

Table 2-29 Common Skill Contact Service Queue Activity Report (by Interval) Query Design

Field (continued) Explanation

2-67Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 92: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report

Contact Service Queue Activity ReportThe Contact Service Queue Activity Report shows one line for each CSQ that is configured in Cisco Unified CCX. A CSQ can be configured based on resource group or based on resource skill.

Table 2-31 shows how the information in the Contact Service Queue Activity Report is obtained or calculated.

Table 2-32 explains how the Contact Service Queue Activity Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-31 Contact Service Queue Activity Report Query Design

Field Explanation

CSQ Name The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-32 on page 2-75. CSQ name is stored in CSQ.csqName.

Call Skills The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-32 on page 2-75. Join CSQ.skillGroupID with SG.skillGroupID to obtain SG.skillID. Join SG.skillID with Skill.skillID to obtain the list of skill names, which are stored in Skill.skillName. Multiple skill names are separated by commas.

Calls Presented Join CCD and CQD on sessionID, sessionSeqNum, proilfeID, and nodeID to find CQD records during the report period. (For these records, the values of the corresponding CCD.startDateTime is within the report period). Additional search criterion: CQD.targetType is 0 (type CSQ).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls presented to that CSQ.

2-68Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 93: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report

Average Queue Time

Calculated as total queue time / Calls Presented.

To obtain total queue time, Join CCD and CQD on sessionID, sessionSeqNum, proilfeID, and nodeID to find CQD records during the report period. (For these records, the values of the corresponding CCD.startDateTime is within the report period). Additional search criterion: CQD.targetType is 0 (type CSQ).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, calculate the sum of the values stored in CQD.queueTime.

Max Queue Time Join CCD and CQD on sessionID, sessionSeqNum, proilfeID, and nodeID to find CQD records during the report period. (For these records, the values of the corresponding CCD.startDateTime is within the report period). Additional search criterion: CQD.targetType is 0 (type CSQ).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, determine the maximum value stored in CQD.queueTime.

Calls Handled Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls handled by the CSQ.

Table 2-31 Contact Service Queue Activity Report Query Design (continued)

Field Explanation

2-69Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 94: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report

Avg Speed of Answer

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, calculate the sum of the values stored in ACD.ringTime to obtain total ring time, and calculate the sum of the values stored in CQD.queueTime to obtain total queue time.

If Calls Handled is not zero, this field is calculated as:

(total ring time + total queue time) / Calls Handled

If Calls Handled is zero, this field is zero.

Avg Handle Time Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, calculate the sum of the values stored in ACD.talkTime, ACD.holdTime, and ACD.workTime to obtain the total handle time for all calls handled. Handle time for a call is defined as talk time + hold time + work time.

If Calls Handled is not zero, this field is calculated as:

total handle time / Calls Handled

If Calls Handled is zero, this field is zero.

Table 2-31 Contact Service Queue Activity Report Query Design (continued)

Field Explanation

2-70Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 95: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report

Max Handle Time Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, calculate the handle time for each call as follows:

ACD.talkTime + ACD.holdTime + ACD.workTime

This field shows the maximum handle time for all calls handled by this CSQ.

Calls Abandoned Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls abandoned from the CSQ.

Table 2-31 Contact Service Queue Activity Report Query Design (continued)

Field Explanation

2-71Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 96: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report

Avg Time to Abandon

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, calculate the sum of the values stored in CQD.queueTime to obtain total queue time for abandoned calls.

If Calls Abandoned is not zero, this field is:

total queue time / Calls Abandoned

If Calls Abandoned is zero, this field is zero.

Max Time to Abandon

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, find the maximum value stored in CQD.queueTime.

Avg Abandon Per Day

Calculated as Calls Abandoned / number of days during report period.

The number of days is calculated as follows. This information is displayed in units of days, rounded up to the next integer.

report end time – report start time

For example, if the report start time and the report end time are on the same day, the number of days is 1.

Table 2-31 Contact Service Queue Activity Report Query Design (continued)

Field Explanation

2-72Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 97: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report

Max Abandon Per Day

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ and each day during the report period, count the number of CQD records to determine the number of calls abandoned from the CSQ. CCD.startDateTime is used to determine on which day a call is abandoned.

For each CSQ, find the maximum number of calls abandoned on a particular day during the report period.

Calls Dequeued Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values within the report period.) Additional search criteria are CQD.targetType is 0 (CSQ type), and CQD.disposition is 3 (dequeued).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls dequeued from the CSQ.

Avg Time to Dequeue

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values within the report period.) Additional search criteria are CQD.targetType is 0 (CSQ type), and CQD.disposition is 3 (dequeued).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, calculate the sum of the values stored in CQD.queueTime to get determine queue time.

If Calls Dequeued is not zero, this field is calculated as:

total queue time / Calls Dequeued

If Calls Dequeued is zero, this field is zero.

Table 2-31 Contact Service Queue Activity Report Query Design (continued)

Field Explanation

2-73Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 98: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report

Max Time to Dequeue

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values within the report period.) Additional search criteria are CQD.targetType is 0 (CSQ type), and CQD.disposition is 3 (dequeued).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, determine the maximum value stored in CQD.queueTime.

Calls Handled by Other

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values within the report period). Additional search criteria are: CQD.targetType is 0 (CSQ type), and CQD.disposition is 4 (handled by script) or 5 (handled by another CSQ).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls handled by script or another CSQ.

Table 2-32 Contact Service Queue Activity Report Filter Parameter

Filter Parameter Explanation

All CSQs (default, no filter parameter)

Search the CSQ table to find CSQ.recordID and CSQ.profileID for CSQs with CSQ.dateInactive set to null or set to a date/time later than the report start time. This action determines the active CSQs and CSQs that are deleted after the report start time (they are still active during the report period).

Table 2-31 Contact Service Queue Activity Report Query Design (continued)

Field Explanation

2-74Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 99: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report (by CSQ) and Contact Service Queue Activity Report (by Interval)

Contact Service Queue Activity Report (by CSQ) and Contact Service Queue Activity Report (by Interval)

The Contact Service Queue Activity Report (by CSQ) and the Contact Service Queue Activity Report (by Interval) show information about service levels, and about the number and percentage of calls presented, handled, abandoned, and dequeued.

In the Contact Service Queue Activity Report (by CSQ), information presented is sorted first by CSQ, then by interval.

In the Contact Service Queue Activity Report (by Interval), information presented is sorted first by interval, then by CSQ.

Table 2-33 shows how the information in the Contact Service Queue Activity Reports is obtained or calculated.

Table 2-34 explains how the Contact Service Queue Activity Reports filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

CSQ Names Obtain the list of CSQ names from the user selection for this parameter. Search the CSQ table to find records for which CSQ.csqName contains values that are in the list. Obtain the corresponding CSQ.recordID and CSQ.profileID.

CSQ Types To report on a specific CSQ type or types, obtain the list of CSQ.recordID and CSQ.profileID from the user selection for this parameter as follows:

• If user selects Resource Group, search the CSQ table for records with CSQ.resourcePoolType = 1 (resource group type).

• If user selects Skill Group, search the CSQ table for records with CSQ.resourcePoolType = 2 (skill group type).

• If user selects both Resource Group and Skill Group, search the CSQ table to find records for which CSQ.csqName contains values that are in the list. Obtain the corresponding CSQ.recordID and CSQ.profileID.

Table 2-32 Contact Service Queue Activity Report Filter Parameter (continued)

Filter Parameter Explanation

2-75Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 100: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report (by CSQ) and Contact Service Queue Activity Report (by Interval)

Table 2-33 Contact Service Queue Activity Reports Query Design

Field Explanation

CSQ Name The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-34 on page 2-79. CSQ name is stored in CSQ.csqName.

Call Skills The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-34 on page 2-79. Join CSQ.skillGroupID with SG.skillGroupID to get SG.skillID. Join SG.skillID with Skill.skillID to obtain the list of skill names, which is stored in Skill.skillName. Multiple skill names are concatenated with commas.

Interval Start Time Beginning of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

Interval End Time End of an interval.

End-users can divide the report period into 30- or 60-minute intervals. (The default interval length is the entire report period.)

Service Level (sec) Obtained from CSQU.serviceLevel.

Calls Hand < SL Join ACD and CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex. Additional search criteria are CQD.targetType is 0 (CSQ type), and CQD.metServiceLevel is 1. For each CSQ identified by the combination of CQD.targetID and CQD.profileID, count the number of CQD records.

Calls Aband < SL Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to determine CQD records during the report period. (Corresponding CCD records have CCD.startDateTime during the report period.) Additional search criteria are CQD.disposition is 1 (abandoned), and CQD.targetType is 0 (CSQ type). For each CSQ identified by the combination of CQD.targetID and CQD.profileID, count the number of CQD records with CQD.metServiceLevel = 1.

Percentage of Service Level Met— Only Handled

Considers calls handled only, regardless of whether they were handled within the service level. This value does not consider calls abandoned.

This value is calculated as follows:

(number of calls handled within service level / number of calls handled) * 100%

2-76Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 101: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report (by CSQ) and Contact Service Queue Activity Report (by Interval)

Percentage of Service Level Met— Without Abandon

Does not include information for calls that were abandoned within the service level.

This value is calculated as follows:

(number of calls handled within service level / (number of calls presented – number of calls abandoned within service level)) * 100%

Percentage of Service Level Met— Positive Abandon

Considers calls abandoned within the service level as meeting the service level.

This value is calculated as follows:

((number of calls handled within service level + number of calls abandoned within service level) / number of calls presented) * 100%

Percentage of Service Level Met— Negative Abandon

Considers calls abandoned within the service level as not meeting the service level.

This value is calculated as follows:

(number of calls handled within service level / number of calls presented) * 100%

Calls Presented Join CCD and CQD on sessionID, sessionSeqNum, proilfeID, and nodeID to determine CQD records during the report period. (For these records, the corresponding CCD.startDateTime is during the report period). The additional search criterion is CQD.targetType is 0 (type CSQ).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. CSQ record ID and profile ID are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls presented to that CSQ.

Table 2-33 Contact Service Queue Activity Reports Query Design (continued)

Field Explanation

2-77Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 102: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Activity Report (by CSQ) and Contact Service Queue Activity Report (by Interval)

Calls Handled Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition = 2 (handled) and ACD.talkTime greater than zero. This process determines the calls handled by agents. To obtain the CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. CSQ record ID and profile ID are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls handled by the CSQ.

The percentage is calculated as follows:

(calls handled / calls presented) * 100%

Calls Abandoned Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to determine CQD records during the report period. (Corresponding CCD records have CCD.startDateTime during the report period.) Additional search criteria are CQD.disposition is 1 (abandoned), and CQD.targetType is 0 (CSQ type). For each CSQ identified by the combination of CQD.targetID and CQD.profileID, count the number of CQD records.

The percentage is calculated as follows:

(calls abandoned / calls presented) * 100%

Calls Dequeued Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to determine CQD records during the report period. (Corresponding CCD records have CCD.startDateTime during the report period.) Additional search criteria are CQD.targetType is 0 (CSQ type), and CQD.disposition is 3 (dequeued via Dequeue step), 4 (call handled by workflow script and therefore dequeued from this CSQ), or 5 (handled by another CSQ and therefore dequeued from this CSQ). For each CSQ identified by the combination of CQD.targetID and CQD.profileID, count the number of CQD records.

The percentage is calculated as follows:

(calls dequeued / calls presented) * 100%

Table 2-33 Contact Service Queue Activity Reports Query Design (continued)

Field Explanation

2-78Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 103: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Call Distribution Summary Report

Contact Service Queue Call Distribution Summary Report

The Contact Service Queue Call Distribution Summary Report shows the number and percentage of calls handled and dequeued in four different time intervals. The time interval lengths can be configured by users.

Table 2-35 shows how the information in the Contact Service Queue Call Distribution Summary Report is obtained or calculated.

Table 2-36 explains how the Contact Service Queue Call Distribution Summary Report filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-34 Contact Service Queue Activity Reports Filter Parameters

Filter Parameter Explanation

All CSQs (default, no filter)

To report on all agents, obtain the list of resource IDs and profile IDs as follows:

Search and display the Resource table for agents who are active (Resource.active = 1) or who are deleted after report start time (Resource.dateInactive is later than report start time, which means that agent is still active during the report period). In this way, the report does not include agents who are deleted before the report start time.

Interval Length Options are entire report period (default), 30 minutes, 60 minutes.

CSQ Name To report on a specific CSQ or CSQs, obtain the list of the CSQ names from the user selection for this parameter. Join CSQ.recordID with CQD.targetID, and join CSQ.profileID with CQD.profileID to obtain the CQD records for the specified CSQs. For these CQD records, CQD.targetType should be 0 (CSQ type). Join CQD and CCD on sessionID, sessionSeqNum, nodeID, and profileID to obtain other information stored in the CCD table.

2-79Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 104: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Call Distribution Summary Report

Table 2-35 Contact Service Queue Call Distribution Summary Report Query Design

Field Explanation

CSQ Name The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-36 on page 2-84. CSQ name is stored in CSQ.csqName.

Call Skills The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-36 on page 2-84. Join CSQ.skillGroupID with SG.skillGroupID to obtain SG.skillID. Join SG.skillID with Skill.skillID to obtain the list of skill names, which are stored in Skill.skillName. Multiple skill names are separated by commas.

Calls Handled Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls handled by the CSQ.

Total Calls Handled With Queue Time 0–T sec

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to T seconds.

Percentage Calls Handled With Queue Time 0–T sec

If Calls Handled is not zero, this field is calculated as

(Total Calls Handled with Queue Time in 0–T seconds / Calls Handled) * 100%

If Calls Handled is zero, this field is zero.

2-80Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 105: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Call Distribution Summary Report

Total Calls Handled With Queue Time 0–2T sec

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to 2T seconds.

Percentage Calls Handled With Queue Time 0–2T sec

If Calls Handled is not zero, this field is calculated as:

(Total Calls Handled with Queue Time in 0–2T seconds / Calls Handled) * 100%

If Calls Handled is zero, this field is zero.

Total Calls Handled With Queue Time 0–3T sec

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to 3T seconds.

Percentage Calls Handled With Queue Time 0–3T sec

If Calls Handled is not zero, this field is calculated as:

(Total Calls Handled with Queue Time in 0–3T seconds / Calls Handled) * 100%

If Calls Handled is zero, this field is zero.

Table 2-35 Contact Service Queue Call Distribution Summary Report Query Design (continued)

Field (continued) Explanation

2-81Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 106: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Call Distribution Summary Report

Total Calls Handled With Queue Time 0–4T sec

Join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID with CCD.contactDisposition is 2 (handled), and ACD.talkTime greater than zero. This process provides the calls handled by agents. To obtain CSQ information, join ACD with CQD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex, with CQD.targetType = 0 (CSQ type) and CQD.disposition = 2 (handled).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to 4T seconds.

Percentage Calls Handled With Queue Time 0–4T sec

If Calls Handled is not zero, this field is calculated as:

(Total Calls Handled with Queue Time in 0–4T seconds / Calls Handled) * 100%

If Calls Handled is zero, this field is zero.

Calls Abandoned Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records to determine the number of calls abandoned from the CSQ.

Total Calls Abandoned With Queue Time 0–T

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to T seconds.

Table 2-35 Contact Service Queue Call Distribution Summary Report Query Design (continued)

Field (continued) Explanation

2-82Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 107: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Call Distribution Summary Report

Percentage Calls Abandoned With Queue Time 0–T

If Calls Abandoned is not zero, this field is calculated as:

(Total Calls Abandoned with Queue Time 0–T seconds / Calls Abandoned) * 100%

If Calls Abandoned is zero, this field is zero.

Total Calls Abandoned With Queue Time 0–2T sec

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to 2T seconds.

Percentage Calls Abandoned With Queue Time 0–2T sec

If Calls Abandoned is not zero, this field is calculated as:

(Total Calls Abandoned with Queue Time 0–2T seconds / Calls Abandoned) * 100%

If Calls Abandoned is zero, this field is zero.

Total Calls Abandoned With Queue Time 0–3T sec

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to 3T seconds.

Percentage Calls Abandoned With Queue Time 0–3T sec

If Calls Abandoned is not zero, this field is calculated as:

(Total Calls Abandoned with Queue Time 0–3T seconds / Calls Abandoned) * 100%

If Calls Abandoned is zero, this field is zero.

Table 2-35 Contact Service Queue Call Distribution Summary Report Query Design (continued)

Field (continued) Explanation

2-83Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 108: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Call Distribution Summary Report

Total Calls Abandoned With Queue Time 0–4T sec

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (These records have corresponding CCD.startDateTime values that are within the report period) Additional search criteria are CQD.targetType is 0 (CSQ type) and CQD.disposition is 1 (abandoned).

The combination of CSQ record ID and profile ID uniquely identifies a CSQ. These values are stored in CQD.targetID and CQD.profileID, respectively.

For each CSQ, count the number of CQD records in which the value stored in CQD.queueTime is less than or equal to 4T seconds.

Percentage Calls Abandoned With Queue Time 0–4T sec

If Calls Abandoned is not zero, this field is calculated as:

(Total Calls Abandoned with Queue Time 0–4T seconds / Calls Abandoned) * 100%

If Calls Abandoned is zero, this field is zero.

Table 2-36 Contact Service Queue Call Distribution Summary Report Filter Parameters

Filter Parameter Explanation

All CSQs (default, no filter parameter)

Search the CSQ table to find CSQ.recordID and CSQ.profileID for CSQs with CSQ.dateInactive set to null or set to a date/time later than the report start time. This action determines the active CSQs and CSQs that are deleted after the report start time (they are still active during the report period).

CSQ Names Obtain the list of CSQ names from the user selection for this parameter. Search the CSQ table to find records for which CSQ.csqName contains values that are in the list. Obtain the corresponding CSQ.recordID and CSQ.profileID.

Time Interval (sec) T

Obtained from user input for this parameter. Indicates the length of the time interval, in number of seconds.

Table 2-35 Contact Service Queue Call Distribution Summary Report Query Design (continued)

Field (continued) Explanation

2-84Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 109: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Priority Summary Report

Contact Service Queue Priority Summary ReportThe Contact Service Queue Priority Summary Report shows the total number of calls presented to each CSQ selected. It also shows the total number of calls by priority and the average number of calls per day, by priority, that were presented to each CSQ.

Table 2-37 shows how the information in the Contact Service Queue Priority Summary Report is obtained or calculated.

Table 2-38 explains how the Contact Service Queue Priority Summary Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-37 Contact Service Queue Priority Summary Report Query Design

Field Explanation

CSQ Name The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-38 on page 2-86. CSQ name is stored in CSQ.csqName.

Call Skills The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-38 on page 2-86. Join CSQ.skillGroupID with SG.skillGroupID to get SG.skillID. Join SG.skillID with Skill.skillID to get the list of skill names, stored in Skill.skillName. Multiple skill names are concatenated with commas.

Total Calls Presented

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (The corresponding CCD records have CCD.startDateTime during the report period). Additional search criterion is CQD.targetType is 0 (CSQ type). For each CSQ, which is uniquely identified by the combination of CQD.targetID and CQD.profileID, count the number of CQD records to determine the number of calls presented to each CSQ.

2-85Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 110: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Priority Summary Report

Total Number of Calls by Priority (Priority 1 through Priority 10)

Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (The corresponding CCD records have CCD.startDateTime during the report period). Join CQD and CRD on sessionID, sessionSeqNum, profileID, nodeID, and qIndex. Additional search criterion is CQD.targetType is 0 (CSQ type).

For each CSQ (identified by CQD.targetID and CQD.profileID), and each call priority (identified by CRD.finalPriority), count the number of CQD records to determine the number of calls presented to each CSQ for each call priority.

Average Number of Calls by Priority (Priority 1 through Priority 10)

If the number of days within the report period is not zero, this field is calculated as follows:

(Total Calls Presented by Call Priority / number of days within report period) * 100%

If the number of days within the report period is zero, this field is zero.

Number of days within report period is the maximum value stored in CQD.queueTime for all calls abandoned from this CSQ.

Table 2-38 Contact Service Queue Priority Summary Report Filter Parameter

Filter Parameter Explanation

All CSQs (default, no filter parameter)

Search the CSQ table to find CSQ.recordID and CSQ.profileID for CSQs with CSQ.dateInactive set to null or set to a date/time later than the report start time. This action determines the active CSQs and CSQs that are deleted after the report start time (they are still active during the report period).

CSQ Name Obtain the list of CSQ names from the user selection for this parameter. Search the CSQ table to find records for which CSQ.csqName contains values that are in the list. Obtain the corresponding CSQ.recordID and CSQ.profileID.

Table 2-37 Contact Service Queue Priority Summary Report Query Design (continued)

Field (continued) Explanation

2-86Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 111: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Service Level Priority Summary Report

Contact Service Queue Service Level Priority Summary Report

The Contact Service Queue Service Level Priority Summary Report contains information about the total number and percentage of calls that are handled within service level, and the number and percentage of calls that are handled within service level for each call priority.

Table 2-39 shows how the information in the Contact Service Queue Service Level Priority Summary Report is obtained or calculated.

Table 2-40 explains how the Contact Service Queue Service Level Priority Summary Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-39 Contact Service Queue Service Level Priority Summary Report Query Design

Field Explanation

CSQ Name (Call Skills)

The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-40 on page 2-89. CSQ name is stored in CSQ.csqName.

Service Level (sec) Obtained from CSQ.serviceLevel

Calls Presented Join CCD and CQD on sessionID, sessionSeqNum, profileID, and nodeID to find CQD records during the report period. (The corresponding CCD records have CCD.startDateTime during the report period). Additional search criterion is CQD.targetType is 0 (CSQ type).

For each CSQ, which is uniquely identified by the combination of CQD.targetID and CQD.profileID, count the number of CQD records to determine the number of calls presented to each CSQ.

2-87Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 112: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsContact Service Queue Service Level Priority Summary Report

Total Service Level Met

Join CCD, CQD, and ACD on sessionID, sessionSeqNum, nodeID, and profileID. Join CQD and ACD also on qIndex. Additional search criteria are: CCD.contactDisposition is 2 (handled), CQD.targetType is 0 (CSQ type), CQD.disposition is 2 (handled), and ACD.talkTime is greater than zero.

For each CSQ identified by the combination of CQD.targetID and CQD.profileID, count the number of CQD records whose value in CQD.metServiceLevel is 1. This is the number of calls handled by each CSQ which met the specified service level.

Percent SL Met If Calls Presented is not zero, this field is calculated as:

(Total Service Level Met / Calls Presented) * 100%

If Calls Presented is zero, this field is zero.

Number of Calls that Met Service Level for Each Call Priority (Priority 1 through Priority 10)

Join CCD, CQD, and ACD on sessionID, sessionSeqNum, nodeID, and profileID. Join CQD and ACD also on qIndex. Join CRD also on sessionID, sessionSeqNum, nodeID, profileID, and qIndex. The call priority is stored in CRD.finalPriority. Additional search criteria is, CCD.contactDisposition is 2 (handled), CQD.targetType is 0 (CSQ type), CQD.disposition is 2 (handled), and ACD.talkTime is grater than 0.

For each CSQ (identified by CQD.targetID and CQD.profileID), and each call priority (identified by CRD.finalPriority), count the number of CQD records for which the value of CQD.metServiceLevel is 1. This total is the number of calls handled by each CSQ for each call priority which met the specified service level.

Percentage of Calls that Met Service Level for Each Call Priority (Priority 1 through Priority 10)

If total calls presented for each call priority is not zero, this field is calculated as follows:

(number of calls that met SL for each call priority / total calls presented for each call priority) * 100%

If total calls presented for each call priority is zero, this field is zero.

Total calls presented for each call priority is calculated as follows:

For each CSQ (identified by CQD.targetID and CQD.profileID), and each call priority (identified by CRD.finalPriority), count the number of CQD records. This total is the number of calls handled by each CSQ for each call priority which met the specified service level.

Table 2-39 Contact Service Queue Service Level Priority Summary Report Query Design

Field (continued) Explanation

2-88Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 113: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCSQ-Agent Summary Report

CSQ-Agent Summary ReportAn agent can handle calls for multiple CSQs. The CSQ-Agent Summary Report shows, for each agent, information about calls handled in each CSQ.

Table 2-41 shows how the information in the CSQ-Agent Summary Report is obtained or calculated.

Table 2-42 explains how the CSQ-Agent Summary Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-40 Contact Service Queue Service Level Priority Summary Report Filter Parameter

Filter Parameter Explanation

All CSQs (default, no filter parameter)

Search the CSQ table to find CSQ.recordID and CSQ.profileID for CSQs with CSQ.dateInactive set to null or set to a date/time later than the report start time. This action determines the active CSQs and CSQs that are deleted after the report start time (they are still active during the report period).

CSQ Names Obtain the list of CSQ names from the user selection for this parameter. Search the CSQ table to find records for which CSQ.csqName contains values that are in the list. Obtain the corresponding CSQ.recordID and CSQ.profileID.

2-89Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 114: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCSQ-Agent Summary Report

Table 2-41 CSQ-Agent Summary Report Query Design

Field Explanation

CSQ Name The combination of CSQ.recordID and CSQ.profileID uniquely identifies a CSQ. Obtain these two values as described in Table 2-42 on page 2-92. CSQ name is stored in CSQ.csqName.

Agent Name Call record tables (ACD and ASD) refer to agent by resource ID and profile ID. Given Resource.resourceID and Resource.profileID, search the Resource table for corresponding Resource.resourceName and Resource.resourceLoginID. These two fields uniquely identify an agent. The agent name is stored in Resource.resourceName.

Note Note: One resourceName/resourceLoginID combination may have multiple resourceID/profileID combinations because when an agent has a certain attribute changed (for example, extension or resource group), a resource ID is created and the old one is set to deactivated.

Extension Given Resource.resourceName and Resource.resourceLoginID, search the Resource table for the corresponding Resource.extension.

If an agent extension changed, display the most recent extension assigned to the agent.

2-90Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 115: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsCSQ-Agent Summary Report

Calls Handled A handled call has a CCD record, a CQD record for the CSQ that the call is routed to, and an ACD record for the agent who handles the call. The talk time in ACD should be greater than zero.

Join CCD and CQD on sessionID, sessionSeqNum, nodeID, and profileID to find the CQD record for the CSQ to which the call is routed. Join CQD and ACD on sessionID, sessionSeqNum nodeID, profileID, and qIndex to find the agent who handles the call. Additional search criteria are CQD.disposition is 2 (handled), CQD.targetType is 0 (CSQ type), and ACD.talkTime is greater than zero.

To uniquely identify a CSQ, the CSQ record ID and profile ID are stored in CQD.targetID and CQD.profileID.

To uniquely identify an agent, obtain resource ID and resource login ID as follows: join ACD.resourceID with Resource.resourceID, and join ACD.profileID with Resource.profileID to find Resource.resourceName and Resource.resourceLoginID.

For each CSQ-Agent combination (CSQ is identified by CSQ.recordID/CSQ.profileID, and agent is identified by Resource.resourceName/Resource.resourceLoginID), count the number of ACD records to determine the number of calls handled by the specified CSQ-Agent combination.

Talk Time Avg If Calls Handled is not zero, this field is calculated as Total Talk Time / Calls Handled.

If Calls Handled is zero, this field is zero.

Talk Time Total Same calculation as for Calls Handled, but instead of counting the number of ACD records, calculate the sum of the values stored in ACD.talkTime.

Work Time Avg If Calls Handled is not zero, this field is calculated as Total Work Time / Calls Handled.

If Calls Handled is zero, this field is zero.

Work Time Total Same calculation as for Calls Handled, but instead of counting the number of ACD records, calculate the sum of the values stored in ACD.workTime.

Total Ring Time Same calculation as for Calls Handled, but instead of counting the number of ACD records, calculate the sum of the values stored in ACD.ringTime.

Table 2-41 CSQ-Agent Summary Report Query Design (continued)

Field (continued) Explanation

2-91Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 116: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call by Call CCDR Report

Detailed Call by Call CCDR ReportThe Detailed Call by Call CCDR Report shows most of the information that is contained in the CCD table. This report also includes information from the CRD and the ACD tables. The report contains one row per call leg (a call transfer or redirect initiates a new call leg).

Calls On Hold Same calculation as for Calls Handled. An additional search criterion is ACD.holdTime is greater than zero.

For each CSQ-Agent combination, count the number of ACD records. The result is the number of calls put on hold by the specified CSQ-Agent combination.

Hold Time Avg If Calls on Hold is not zero, this field is calculated as Total Hold Time / Calls on Hold.

If Calls on Hold is zero, this field is zero.

Hold Time Total Same calculation as for Calls on Hold, but instead of counting the number of ACD records, add up the values stored in ACD.holdTime.

RNA Same calculation as for Calls Handled, but the search criteria should be: ACD.talkTime is zero, and ACD.ringTime is greater than zero.

For each CSQ-Agent combination, count the number of ACD records. This result is the number of calls that go ring no answer (RNA).

Table 2-42 CSQ-Agent Summary Report Filter Parameter

Filter Parameter Explanation

All CSQs (default, no filter parameter)

Search the CSQ table to find CSQ.recordID and CSQ.profileID for CSQs with CSQ.dateInactive set to null or set to a date/time later than the report start time. This action determines the active CSQs and CSQs that are deleted after the report start time (they are still active during the report period).

CSQ Names Obtain the list of CSQ names from the user selection for this parameter. Search the CSQ table to find records for which CSQ.csqName contains values that are in the list. Obtain the corresponding CSQ.recordID and CSQ.profileID.

Table 2-41 CSQ-Agent Summary Report Query Design (continued)

Field (continued) Explanation

2-92Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 117: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call by Call CCDR Report

Table 2-43 shows how the information in the Detailed Call by Call CCDR Report is obtained or calculated.

Table 2-44 explains how the Detailed Call by Call CCDR Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-43 Detailed Call by Call CCDR Report Query Design

Field Explanation

Node ID Obtained from CCD.nodeID.

Session ID Obtained from CCD.sessionID.

Sequence No. Obtained from CCD.sessionSeqNum.

Start Time Obtained from CCD.startDateTime.

End Time Obtained from CCD.endDateTime.

Contact T Obtained from CCD.contactType.

Contact D Obtained from CCD.contactDisposition.

Originator T Obtained from CCD.originatorType.

Originator ID Obtained from CCD.originatorID.

If originator type is 1 (agent), CCD.originatorID is a resource ID. join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to display the agent login ID, which is stored in Resource.resourceLoginID.

Originator DN1 If CCD.originatorType is Device (2) or Unknown (3), obtained from CCD.originatorDN.

If CCD.originatorType is Agent (1), join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.extension.

Destination T Obtained from CCD.destinationType.

2-93Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 118: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call by Call CCDR Report

Destination ID Obtained from CCD.destinationID.

If destination type is 1 (agent), CCD.destinationID is a resource ID.join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to display the agent login ID, which is stored in Resource.resourceLoginID.

Destination DN If CCD.destinationType is Device (2) or Unknown (3), obtained from CCD.destinationDN.

If CCD.destinationType is Agent (1), jCCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID and obtain Resource.extension.

Called Number Obtained from CCD.calledNumber.

Original Called No. Obtained from CCD.origCalledNumber.

Application Name Obtained from CCD.applicationName.

Queue Time Join CCD and CRD on sessionID, sessionSeqNum, nodeID, and profileID to obtain value stored in CRD.queueTime.

Blank for IVR calls.

Talk Time For ACD calls, join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to obtain the value in ACD.talkTime.

For IVR calls, there is no ACD record. Talk time of handled IVR calls (where CCD.contactDisposition set to 2) is calculated as (CCD.endDateTime – CCD.startDateTime). For abandoned IVR calls (where CCD.contactDisposition set to 1), talk time is zero.

Hold Time For ACD calls, join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to obtain the value in ACD.holdTime.

Blank for IVR calls.

Work Time For ACD calls, join CCD and ACD on sessionID, sessionSeqNum, profileID, and nodeID to obtain the value in ACD.workTime.

Blank for IVR calls.sessionID, sessionSeqNum, nodeID, and profileID to obtain value stored in CRD.queueTime.

1. DN = directory number

Table 2-43 Detailed Call by Call CCDR Report Query Design (continued)

Field Explanation

2-94Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 119: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call by Call CCDR Report

Table 2-44 Detailed Call by Call CCDR Report Filter Parameter

Filter Parameter Explanation

Original Called Number

To report on a specific original called number or numbers, obtain the list of original called number(s) from the user selection for this parameter. Find each CCD record for which the value stored in CCD.origCalledNumber is in the selected list.

Called Number To report on a specific called number or numbers, obtain the list of called number(s) from the user selection for this parameter. Find each CCD record for which the value stored in CCD.calledNumber is in the selected list.

Calling Number To report on a specific calling number or numbers, obtain the list of calling number(s) from the user selection for this parameter. Find each CCD record for which the value stored in CCD.originatorDN is in the selected list.

Application Name To report on a specific application name or names, obtain the list of application name(s) from the user selection for this parameter. Find each CCD record for which the value stored in CCD.applicationName is in the selected list.

Contact Type To report on a specific contact type or types, obtain the list of contact type name or names from the user selection for this parameter. The mapping between numeric ID and contact type name is as follows:

1—incoming

2—outgoing

3—internal

4—redirect-in

5—transfer-in

6—outbound preview

Find each CCD record for which the value stored in CCD.contactType is in the selected list.

2-95Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 120: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call, CSQ, Agent Report

Detailed Call, CSQ, Agent ReportThe Detailed Call, CSQ, Agent Report shows detailed call information about the CSQ that a call was routed to and the agent that handled the call.

Originator Type To report on a specific originator type or types, obtain the list of originator type or types from the user selection for this parameter. The mapping between numeric ID and originator type name is as follows:

1—agent

2—device

3—unknown

Find each CCD record for which the value stored in CCD.originatorType is in the selected list.

Destination Type To report on a specific destination type or types, obtain the list of destination type or types from the user selection for this parameter. The mapping between numeric ID and destination type name is as follows:

1—agent

2—device

3—unknown

Find each CCD records for which the value stored in CCD.destinationType is in the selected list.

Duration Greater Than or Equal to T seconds

To report on calls with durations greater than or equal to T seconds, obtain the value of T from the user input for this parameter. Call duration is calculated as CCD.endDateTime minus CCD.startDateTime, in number of seconds. Find CCD records with call duration greater than or equal to T.

Duration Less Than or Equal to T seconds

To report on calls with durations less than or equal to T seconds, obtain the value of T from the user input for this parameter. The call duration is calculated as CCD.endDateTime minus CCD.startDateTime, in number of seconds. Find at CCD records with call duration less than or equal to T.

Table 2-44 Detailed Call by Call CCDR Report Filter Parameter (continued)

Filter Parameter Explanation

2-96Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 121: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call, CSQ, Agent Report

Table 2-45 shows how the information in the Detailed Call, CSQ, Agent Report is obtained or calculated.

Table 2-46 explains how the Detailed Call, CSQ, Agent Report filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-45 Detailed Call, CSQ, Agent Report Query Design

Field Explanation

Node ID Obtained from CCD.nodeID.

Session ID Obtained from CCD.sessionID.

Sequence No. Obtained from CCD.sessionSeqNum.

Call Start Time Obtained from CCD.startDateTime.

Call End Time Obtained from CCD.endDateTime.

Contact Disp Obtained from CCD.contactDisposition.

Originator DN (Calling Number)

Obtained from CCD.originatorDN.

If originator is an agent (CCD.originatorType = 1), this field shows the extension of the agent, and is determined as follows: join CCD.originatorID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.extension.

Destination DN Obtained from CCD.destinationDN.

If destination is an agent (CCD.destinationType = 1), this field shows the extension of the agent, and is determined as follows: join CCD.destinationID with Resource.resourceID, and join CCD.profileID with Resource.profileID to obtain Resource.extension.

Called Number Obtained from CCD.calledNumber.

App. Name Obtained from CCD.applicationName.

CSQ Names Join CCD and CQD on sessionID, sessionSeqNum, nodeID, and profileID. Find CQD records with targetType = 0 (CSQ type). The CSQ information is stored in CQD.targetID and CQD.profileID. Join CQD.targetID with CSQ.recordID, and join CQD.profileID with CSQ.profileID. The CSQ name is stored in CSQ.csqName. Multiple CSQ names are separated by commas.

2-97Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 122: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call, CSQ, Agent Report

Queue Time Join CCD and CQD on sessionID, sessionSeqNum, nodeID, and profileID. Queue Time is stored in CQD.queueTime.

Agent Name Join CCD and ACD on sessionID, sessionSeqNum, nodeID, and profileID to obtain ACD.resourceID and ACD.profileID. Join ACD.resourceID with Resource.resourceID, and join ACD.profileID with Resource.profileID to obtain agent name, which is stored in Resource.resourceName.

Ring Time Join CCD and ACD on nodeID, sessionID, sessionSeqNum, and profileID. The value is stored in ACD.ringTime.

Talk Time For ACD calls, join CCD and ACD on nodeID, sessionID, sessionSeqNum, and profileID. The value is stored in ACD.talkTime.

For IVR calls, there is no ACD record for the call. If the call is handled (CCD.contactDisposition = 2), this field is calculated as (Call End Time – Call Star Time), and shows the result in hh:mm:ss. Otherwise, this field shows zero.

Work Time Join CCD and ACD on nodeID, sessionID, sessionSeqNum, and profileID. The value is stored in ACD.workTime.

Table 2-46 Detailed Call, CSQ, Agent Report Filter Parameters

Filter Parameter Explanation

Called Number To report on a specific called number or numbers, obtain the list of called numbers from the user selection for this parameter. Find CCD records for which the value stored in CCD.calledNumber is in the selected list.

Calling Number To report on a specific calling number or numbers, obtain the list of calling numbers from the user selection for this parameter. Find CCD records for which the value stored in CCD.originatorDN is in the selected list.

Application Name To report on a specific application name or names, obtain the list of application names from the user selection for this parameter. Find CCD records for which the value stored in CCD.applicationName is in the selected list.

Table 2-45 Detailed Call, CSQ, Agent Report Query Design (continued)

Field (continued) Explanation

2-98Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 123: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsDetailed Call, CSQ, Agent Report

Contact Type To report on a specific contact type or types, obtain the list of contact type names from the user selection for this parameter. The mapping between numeric ID and contact type name is as follows:

1—incoming

2—outgoing

3—internal

4—redirect-in

5—transfer-in

6—outbound preview

Find CCD records for which the value stored in CCD.contactType is in the selected list.

Originator Type To report on a specific originator type or types, obtain the list of originator types from the user selection for this parameter. The mapping between numeric ID and originator type name is as follows:

1—agent

2—device

3—unknown

Find CCD records for which the value stored in CCD.originatorType is in the selected list.

Destination Type To report on a specific destination type or types, obtain the list of destination types from the user selection for this parameter. The mapping between numeric ID and destination type name is as follows:

1—agent

2—device

3—unknown

Find CCD records for which the value stored in CCD.destinationType is in the selected list.

Table 2-46 Detailed Call, CSQ, Agent Report Filter Parameters (continued)

Filter Parameter Explanation

2-99Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 124: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsMultichannel Agent Contact Summary Report

Multichannel Agent Contact Summary ReportThe Multichannel Agent Contact Summary Report is specific to the Cisco Unified E-Mail Interaction Manager (Cisco Unified EIM) and the Cisco Unified Web Interaction Manager (Cisco Unified WIM). It shows summary information about each call, e-mail, and chat that was received and made by each agent specified.

Note This report uses the MS SQL 2000 database (installed in a mixed mode authentication). To generate combined historical reports, Cisco Unified CCX requires access details for the Cisco Unified EIM/Cisco Unified WIM database

Agent Name To report on a specific agent or agents, find Resource records in which values in resourceName match the user input for this parameter. Join Resource.resourceID with ACD.resourceID, join and Resource.profileID with ACD.profileID to obtain the corresponding ACD records for the specified agents. Join ACD and CCD on sessionID, sessionSeqNum, nodeID, and profileID to obtain other information stored in the CCD table.

CSQ Name To report on a specific CSQ or CSQs, find for CSQ records in which values in csqName match the user input for this parameter. Join CSQ.recordID with CQD.targetID, and join CSQ.profileID with CQD.profileID to obtain the CQD records for the specified CSQs. For these CQD records, CQD.targetType should be 0 (CSQ type). Join CQD and CCD on sessionID, sessionSeqNum, nodeID, and profileID to obtain other information stored in the CCD table.

Duration Greater Than or Equal to T seconds

To report on calls with durations greater than or equal to T seconds, obtain the value of T from the user input for this parameter. The call duration is calculated as CCD.endDateTime minus CCD.startDateTime, in number of seconds. Find CCD records with call duration greater than or equal to T.

Duration Less Than or Equal to T seconds

To report on calls with durations less than or equal to T seconds, obtain the value of T from the user input for this parameter. The call duration is calculated as CCD.endDateTime minus CCD.startDateTime, in number of seconds. Find CCD records with call duration less than or equal to T.

Table 2-46 Detailed Call, CSQ, Agent Report Filter Parameters (continued)

Filter Parameter Explanation

2-100Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 125: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsMultichannel Agent Login Logout Activity Report

(host name or IP address of the server, database name, database user, and database password). Refer to Cisco Unified Contact Center Express Administration Guide for detailed configuration information.

For information about the query designs for this report, refer to the Cisco Unified EIM/Cisco Unified WIM database stored procedure that is associated with this report. The stored procedure name is sp_eg_agent_Contact_summary.

Multichannel Agent Login Logout Activity ReportThe Multichannel Agent Login Logout Activity Report is specific to the Cisco Unified EIM and the Cisco Unified WIM. It provides information about the login and logout activities of agents.

Note This report uses the MS SQL 2000 database (installed in a mixed mode authentication). To generate combined historical reports, Cisco Unified CCX requires access details for the Cisco Unified EIM/Cisco Unified WIM database (host name or IP address of the server, database name, database user, and database password). Refer to Cisco Unified Contact Center Express Administration Guide for detailed configuration information.

For information about the query designs for this report, refer to the Cisco Unified EIM/Cisco Unified WIM database stored procedures that are associated with this report. The store procedure name is sp_eg_agent_log_activity.

Multichannel CSQ Activity ReportThe Multichannel CSQ Activity Report is specific to the Cisco Unified EIM and the Cisco Unified WIM. It shows a summary of calls, e-mails, and chats presented to, handled by, abandoned from, and dequeued from each CSQ. It also shows calls handled by workflows in other CSQs, and average and maximum time information for calls handled, calls handled, calls abandoned, and calls dequeued.

2-101Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 126: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsOutbound Agent Detail Performance Report

Note This report uses the MS SQL 2000 database (installed in a mixed mode authentication). To generate combined historical reports, Cisco Unified CCX requires access details for the Cisco Unified EIM/Cisco Unified WIM database (host name or IP address of the server, database name, database user, and database password). Refer to Cisco Unified Contact Center Express Administration Guide for detailed configuration information.

For information about the query designs for this report, refer to the Cisco Unified EIM/Cisco Unified WIM database stored procedures that are associated with this report. The stored procedure name is sp_eg_csq_activity.

Outbound Agent Detail Performance ReportThe Outbound Agent Detail Performance Report shows detailed statistics for each agent by campaign. It also shows the total call details and campaign call details. This report is available with the Cisco Unified Outbound Dialer (Cisco Unified OUTD) feature.

Table 2-47 shows how the information in the Outbound Agent Detail Performance Report is obtained or calculated.

Table 2-48 explains how the Outbound Agent Detail Performance Report filter parameters obtain data.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-47 Outbound Agent Detail Performance Report Query Design

Field Explanation

Agent Name For a given campaignID, determine from the CCD1 table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. The agent that dials for the campaign is recorded in ACD.resourceID. Join ACD.resourceID with Resource.resourceID to obtain Resource.resourceName.

Campaign Name For a given campaignID, look up the campaign name in the Campaign table.

Offered Calculated as (Accepted + Rejected + Closed)

2-102Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 127: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsOutbound Agent Detail Performance Report

Accepted For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records for this agent (as identified in ACD.resourceID) where callResult is not 9 (agent reject) or 10 (agent close).

Rejected For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records for this agent (as identified in ACD.resourceID) where callResult = 9 (agent reject).

Closed For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records for this agent (as identified in ACD.resourceID) where callResult = 10 (agent close).

RNA For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records for this agent (as identified in ACD.resourceID) where callResult is not 12 (transfer).

Transfer For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records for this agent (as identified in ACD.resourceID) where callResult is not 13 (ring no answer).

Average Talk Time For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records with callResult = 1 (voice) and resourceID for this agent. For these records, calculate the average talk time using ACD.talkTime.

Minimum Talk Time For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records with callResult = 1 (voice) and resourceID for this agent. For these records, obtain the maximum ACD.talkTime.

Table 2-47 Outbound Agent Detail Performance Report Query Design (continued)

Field (continued) Explanation

2-103Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 128: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsOutbound Agent Detail Performance Report

Table 2-48 Outbound Agent Detail Performance Report Filter Parameters

Filter Parameter Explanation

Campaign Name Obtain the list of campaign names from the user selection for this parameter. Look up the corresponding campaignID in the Campaign table, and only use these campaignIDs for report generation.

Agent Names To report on a specific agent or agents, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceID and Resource.profileID.

Resource Group Names

To report on a specific resource group or groups, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of resource group names from the user selection for this parameter. Search the ResourceGroup table to find records for which RG.resourceGroupName contains values found in the list. Join RG and Resource on resourceGroupID and profileID to find the list of agents that belong to the selected resource group or groups. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

2-104Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 129: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsOutbound Campaign Summary Report

Outbound Campaign Summary ReportThe Outbound Campaign Summary Report provides summary statistics for each campaign over a specified time period. This report is available with the Cisco Unified OUTD feature.

Table 2-49 shows how the information in the Outbound Campaign Summary Report is obtained or calculated.

Table 2-50 explains how the Outbound Campaign Summary Report filter parameter obtains data.

For information about the database table names and field names that are shown in this section, see the Conventions Used in this Chapter, page 2-3.

Skill Names To report on agents with a specific skill or skills, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of skill names from the user selection for this parameter. Search the Skill table to find records for which Skill.skillName contains values found in the list. Join Skill and RSM on skillID and profileID to find resourceSkillMapID. Join RSM and Resource on resourceSkillMapID and profileID to find the list of agents that have the selected skill or skills. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively. This report displays only agents who are active and agents who are deleted after the report start time.

Team Names To report on a specific team or teams, obtain the list of resource IDs and profile IDs as follows:

Obtain the list of team names from the user selection for this parameter. Search the Team table to find records whose Team.teamName contains values found in the list. Join Team.teamID with Resource.assignedTeamID, and Team.profileID with Resource.profileID to find the list of agents who belong to the selected team or teams. Resource ID and profile ID of agents are stored in Resource.resourceID and Resource.profileID, respectively.

Table 2-48 Outbound Agent Detail Performance Report Filter Parameters (continued)

Filter Parameter Explanation

2-105Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 130: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsOutbound Campaign Summary Report

Table 2-49 Outbound Campaign Summary Report Query Design

Field Explanation

Campaign Name For each outbound call, campaignID is recorded in CCDR. Campaign Name is obtained from the Campaign table, given the campaignID. The mapping between campaignName and campaignID is one-to-one.

Total Records For a given campaignID, total number of DailingList records with a unique dialingListID and that have the specified campaignID. Active and inactive records are included in the calculation. Records are marked inactive when callStatus becomes 3 (closed) or 5 (max calls)

Available For a given campaignID, total number of DialingList records with a unique dialingListID and that have the specified campaignID. Also, DailingList.callStatus must be one of the following values (it cannot be 3 (closed) or 5 (max calls):

1 = pending

2 = active

4 = callback

6 = retry

7 = unknown

Attempted For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records in which callResult is not 9 (agent skip) or 10 (agent close). This number is the same as Accepted. From this number, deduct duplicate records with the same dialingListID so that a given dialingListID occurs only once in the final result.

Attempted % (Attempted / Total Records) * 100%

Accepted For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult not equal to 9 (agent reject) or 10 (agent close).

Rejected For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 9 (agent reject).

2-106Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 131: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsOutbound Campaign Summary Report

Closed For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 10 (agent close).

Voice For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 1 (voice).

Answering Machine For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 3 (answering machine).

Fax/Modem For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 2 (fax/modem).

Invalid For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 4 (invalid).

Requested Callback For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 8 (requested callback).

Customer Not Home For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 7 (customer not home).

Wrong Number For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 6 (wrong number).

Table 2-49 Outbound Campaign Summary Report Query Design (continued)

Field (continued) Explanation

2-107Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 132: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsPriority Summary Activity Report

Priority Summary Activity ReportThe Priority Summary Activity Report contains one row per call priority.

Table 2-51 shows how the information in the Priority Summary Activity Report is obtained or calculated.

Table 2-52 explains how the Priority Summary Activity Report filter parameter obtains data.

Do Not Call For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 5 (do not call).

Busy For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records. Count the number of ACD records with ACD.callResult = 11 (busy).

Average Talk Time For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records with callResult = 1 (voice). For these records, calculate the average talk time using ACD.talkTime.

Maximum Talk Time

For a given campaignID, determine from the CCD table the sessionID, sessionSeqNum, profileID, and nodeID values. Use these values to look up the associated ACD records with callResult = 1 (voice). For these records, obtain the maximum ACD.talkTime.

Table 2-50 Outbound Campaign Summary Report Filter Parameter

Filter Parameter Explanation

Campaign Name Obtain the list of campaign names from the user selection for this parameter. Look up the corresponding campaignID in the Campaign table, and only use these campaignIDs for report generation.

Table 2-49 Outbound Campaign Summary Report Query Design (continued)

Field (continued) Explanation

2-108Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 133: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsPriority Summary Activity Report

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-51 Priority Summary Activity Report Query Design

Field Explanation

Call Priority Obtained from CRD.finalPriority. It is a value from 1 through 10.

Total Calls Join CCD and CRD on sessionID, sessionSeqNum, nodeID, and profileID to find CRD records during the report period. (Corresponding CCD records have startDateTime during the report period.) For each call priority identified by CRD.finalPriority, count the number of CRD records.

Avg Calls Total calls divided by the number of days in the report period.

The number of days is calculated as follows. This information is displayed in units of days, rounded up to the next integer.

report end time – report start time

For example, if the report start time and the report end time are on the same day, the number of days is 1.

Total Number of Calls (Per Day) with Different Original and Final Priorities

Original call priority is stored in CRD.origPriority and final call priority in CRD.finalPriority. Count the number of CRD records with CRD.finalPriority different than CRD.origPriority in the report period.

Average Number of Calls (Per Day) with Different Original and Final Priorities

Total number of calls with different original and final call priorities divided by the number of days in the report period.

The number of days is calculated as follows. This information is displayed in units of days, rounded up to the next integer.

report end time – report start time

For example, if the report start time and the report end time are on the same day, the number of days is 1.

2-109Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 134: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsRemote Monitoring Detail Report

Remote Monitoring Detail ReportThe Remote Monitoring Detail Report shows information about the agent monitoring activities of supervisors.

Table 2-53 shows how the information in the Remote Monitoring Detail Report is obtained or calculated.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Maximum Difference Between Original and Final Priorities Experienced by All Calls

Original call priority is stored in CRD.origPriority and final call priority in CRD.finalPriority. For a single call, the difference between original and final priorities is calculated as the absolute value of (CRD.finalPriority – CRD.origPriority)

This field shows the largest number of all calls in the report period.

Average Difference (Per Call) Between Original and Final Priorities Experienced by All Calls

Original call priority is stored in CRD.origPriority and final call priority in CRD.finalPriority. For a single call, the difference between original and final priorities is calculated as the absolute value of (CRD.finalPriority – CRD.origPriority).

This field is calculated as sum of the difference (absolute value) for all calls in the report period, divided by the number of calls.

Table 2-52 Priority Summary Activity Report Filter Parameter

Filter Parameter Explanation

Call Priority Levels To report on a specific call priority or priorities, obtain the list of call priorities from the user selection for this parameter. Query the CRD table to only include the selected call priority or priorities.

Table 2-51 Priority Summary Activity Report Query Design (continued)

Field Explanation

2-110Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 135: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsRemote Monitoring Detail Report

Table 2-53 Remote Monitoring Detail Report Query Design

Field Explanation

User ID Join CCD and RMD on sessionID, sessionSeqNum, profileID, and nodeID to determine RMD records with a CCD.startDateTime value that is within the report period. Join RMD.rmonID with RmonUser.rmonID and join RMD.profileID with RmonUser.profileID. User ID is stored in RmonUser.name.

Start Time Join CCD and RMD on sessionID, sessionSeqNum, profileID, and nodeID to determine RMD records with a CCD.startDateTime value that is within the report period. Start Time is stored in RMD.startMonitoringReqTime.

Original Monitored Party

Join CCD and RMD on sessionID, sessionSeqNum, profileID, and nodeID to obtain RMD records with a CCD.startDateTime value that is within the report period.

If RMD.origMonitoredIDType is 1 (Agent Type), the value of this field is an agent extension. It is stored in RMD.origMonitoredID.

If RMD.origMonitoredIDType is 2 (CSQ Type), this field is a CSQ name. Join RMD.origMonitoredID with CSQ.contactServiceQueueID, and join RMD.profileID with CSQ.profileID to obtain the CSQ name, which is stored in CSQ.csqName.

Monitored Extension(s)

Join CCD and RMD on sessionID, sessionSeqNum, profileID, and nodeID to determine RMD records with a CCD.startDateTime value that is within the report period. Join RMD.sessionID with MRD.sessionID, and join RMD.startMonitoringReqTime with MRD.startMonitoringReqTime to obtain MRD.monitoredRsrcID and MRD.profileID. Join MRD.monitoredRsrcID with Resource.resourceID, and MRD.profileID with Resource.profileID, to get the agent extension, which is stored in Resource.extension.

If the session has multiple extensions monitored, there are multiple MRD records, and the values in Resource.extension are separated by commas.

Duration Join CCD and RMD on sessionID, sessionSeqNum, profileID, and nodeID to determine RMD records with a CCD.startDateTime value that is within the report period. The value of this field is the difference between RMD.startMonitoringReqTime and RMD.endMonitoringTime, in number of seconds.

2-111Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 136: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsRemote Monitoring Detail Report

Wait Time Join CCD and RMD on sessionID, sessionSeqNum, profileID, and nodeID to determine RMD records with a CCD.startDateTime value that is within the report period. Join RMD.sessionID with MRD.sessionID, and jon RMD.startMonitoringReqTime with MRD.startMonitoringReqTime. The value of this field is MRD.startMonitoringCallTime minus MRD.startMonitoringReqTime, in number of seconds.

If the supervisor waited on the call but did not monitor it, MRD table will not have a record for this call. In this case, this field is set to the value of Duration.

Status Join CCDR with RMD on sessionID, sessionSeqNum, profileID, and nodeID to determine RMD records with a CCD.startDateTime value that is within the report period. The numeric value of the status is stored in RMD.cause. The textual display is based on the cause as follows:

Normal – Monitored: cause = 3

Normal – Agent RNA: cause = 100

Error – Unable to Stop Monitoring: cause = –9

Error – Unable to Monitor New Call: cause = –8

Error – Agent Logged Off: cause = –7

Error – Network Problem: cause = –6

Error – VoIP Server Unable to Communicate: cause = –5

Error – Monitoring Not Allowed: cause = –4

Error – Agent Not Logged In: cause = –3

Error – Invalid Input: cause = –2

Error – Other: cause = 0 or –1

Table 2-53 Remote Monitoring Detail Report Query Design (continued)

Field (continued) Explanation

2-112Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 137: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsTraffic Analysis Report

Traffic Analysis ReportThe Traffic Analysis Report shows information about incoming calls to the Cisco Unified CCX system.

Table 2-54 shows how the information in the Traffic Analysis Report is obtained or calculated.

For information about the database table names and field names that are shown in this section, see the “Conventions Used in this Chapter” section on page 2-3.

Table 2-54 Traffic Analysis Report Query Design

Field Explanation

Date Date of each day in the report period.

Total Incoming Calls

For each day, count the number of CCD records with the unique sessionID with the Contact Type field set to the value of 1 (incoming call).

Avg Calls (per hour) Calculated as total incoming calls divided by the number of hours in the day.

The first day or the last day of the report period may be a partial day, depending on the start time and the end time selected by the user. Any other day within the report period has 24 hours.

Peak Calls (per hour)

Divide each day into one-hour intervals. The number of incoming calls within each interval is determined by counting the number of CCD records with unique sessionIDs in the interval. The peak hour is the interval with the largest number of incoming calls. This field displays the number of calls in the peak hour.

Peak Hour Start Divide each day into one-hour intervals. The number of incoming calls within each interval is determined by counting the number of CCD records with unique sessionIDs in the interval. The peak hour is the interval with the largest number of incoming calls. This field displays the start time of the peak hour.

Peak Hour End Divide each day into one-hour intervals. The number of incoming calls within each interval is determined by counting the number of CCD records with unique sessionIDs in the interval. The peak hour is the interval with the largest number of incoming calls. This field displays the end time of the peak hour.

Call Duration Avg A call may have multiple call legs. The call duration for a call is calculated as sum of CCD.connectTime for all the call legs.

Average call duration for a day is calculated as the sum of call durations for all incoming calls on that day divided by the number of incoming calls on that day.

2-113Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 138: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Agent Activity Report

Email Agent Activity ReportThe Email Agent Activity Report shows, for each agent, information about Emails handled.

Table 2-55 shows how the information in the Email Agent Activity Report is obtained or calculated.

Table 2-56 explains how the Email Agent Activity Report filter parameter obtains data.

For Information about the database table names and field names that are shown in this section, see the Conventions Used in this Chapter, page 2-3.

Call Duration Min A call may have multiple call legs. The call duration for a call is calculated as sum of CCD.connectTime for all the call legs.

Minimum call duration for a day is the shortest call duration of all incoming calls for that day.

Call Duration Max A call may have multiple call legs. The call duration for a call is calculated as sum of CCD.connectTime for all the call legs.

Maximum call duration for a day is the longest call duration of all incoming calls for that day.

Table 2-54 Traffic Analysis Report Query Design (continued)

Field (continued) Explanation

Table 2-55 Email Agent Activity Report

Field Explanation

Agent Name Resource.resourceName.

Join on Resource.resourceLoginID, EEMEASD.agent, and EEMQAD.agent to obtain the name of the Agent that was presented emails.

Date This is the date of the day interval.

This is a Union of EEMEASD.eventStartDateTime, EEMEASD.eventEndDateTime, EEMQAD.getEmailDateTime, and EEMQAD.endEmailDateTime truncated to be just the date portion of the DateTime.

2-114Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 139: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Agent Activity Report

Login Time Sum of Email Not Ready, Ready, and Processing times.

Not Ready Difference between eventStartDateTime and eventEndDateTime in EEMEASD where stateId = 2 (Not Ready)

Joined with Resource.resourceName and Date both determined above.

Ready Difference between eventStartDateTime and eventEndDateTime in EEMEASD where stateId = 3 (Ready)

Joined with Resource.resourceName and Date both determined above.

Processing Difference between eventStartDateTime and eventEndDateTime in EEMEASD where stateId = 4 (Processing)

Joined with Resource.resourceName and Date both determined above.

Retrieved Count of EEMQAD.getEmailDateTime truncated to just the date

Requeued Count of EEMQAD.endEmailDateTime truncated to just the date where endTypeFK = 8

Trans Out Count of EEMQAD.endEmailDateTime truncated to just the date where endTypeFK = 7

Sent Count of EEMQAD.endEmailDateTime truncated to just the date where endTypeFK = 5

Deleted Count of EEMQAD.endEmailDateTime truncated to just the date where endTypeFK = 6

Total in process time sent

Join EEMQAD.agent with Resource.resourceLoginID and total is sum of EEMQAD.inProcessTimeSeconds where endTypeFK = 5.

Note: This will count all In Process time for each email sent during the selected time period, even any In Process time that occurred before the report start time.

Avg. In Process Total In Process Time Sent divided by the number Sent for each agent/date (see above Sent column)

Avg. On Desk Join EEMQAD.agent with Resource.resourceLoginID. The total On Desk Time for each Email is the difference between EEMQAD.getEmailDateTime and EEMQAD.endEmailDateTime. These are then summed up by agent and date and the average is computed by dividing by the number of Sent Emails (see above Sent column)

Table 2-55 Email Agent Activity Report

Field (continued) Explanation

2-115Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 140: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Contact Service Queue Activity Report

Email Contact Service Queue Activity ReportThe Email Contact Service Queue Activity Report shows, for each CSQ, information about Emails handled.

Table 2-57 shows how the information in the Email Contact Service Queue Activity Report is obtained or calculated.

Table 2-58 explains how the Email Contact Service Queue Activity Report filter parameter obtains data.

For Information about the database table names and field names that are shown in this section, see the Conventions Used in this Chapter, page 2-3.

Table 2-56 Email Agent Activity Report Filter Parameter

Filter Parameter Explanation

All Agents To report on all agents, obtain the list of resourceLoginIDs as follows:

Search the Resource table for agents who are active (Resource.active is 1).

Agent Names To report on a specific agent or agents, obtain the list of resourceLoginIDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceLoginID

Table 2-57 Email Contact Service Queue Activity Report

Field Explanation

CSQ Name Join on CSQ.csqID and EEMQAD.EEMQueueId, where the name is CSQ.csqName

Date This is the date of the day interval.

This is a Union of EEMQAD.queueDateTime, and EEMQAD.endEmailDateTime truncated to be just the date portion of the DateTime.

Routed In Count of EEMQAD.receivedReasonFK where receivedReasonFK = 1 grouped by CSQ and date.

2-116Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 141: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Contact Service Queue Activity Report

Trans In Count of EEMQAD.receivedReasonFK where receivedReasonFK = 7 grouped by CSQ and date.

Requeued Count of EEMQAD.receivedReasonFK where receivedReasonFK = 8 grouped by CSQ and date.

Trans Out Count of EEMQAD.receivedReasonFK where receivedReasonFK = 7 grouped by CSQ and date.

Sent Count of EEMQAD.receivedReasonFK where receivedReasonFK = 5 grouped by CSQ and date.

Deleted Count of EEMQAD.receivedReasonFK where receivedReasonFK = 6 grouped by CSQ and date.

Total in process time sent

Join EEMQAD.EEMQueueId with CSQ.csqId and total is sum of EEMQAD.inProcessTimeSeconds where endTypeFK = 5.

Note: This will count all In Process time for each email sent during the selected time period, even any In Process time that occurred before the report start time.

Avg. In Process Total In Process Time Sent divided by the number Sent for each agent/date (see above Sent column)

Avg. On Desk Join EEMQAD.EEMQueueId with CSQ.csqID. The total On Desk Time for each Email is the difference between EEMQAD.getEmailDateTime and EEMQAD.endEmailDateTime. These are then summed up by CSQ and date and the average is computed by dividing by the number of Sent Emails (see above Sent column)

Avg. Response Join EEMQAD.EEMQueueId with CSQ.csqId. The total Response Time for each Email is the difference between EEMQAD.queueDateTime and EEMQAD.endEmailDateTime. These are then summed up by CSQ and date and the average is computed by dividing by the number of Sent Emails (see above Sent column)

Table 2-57 Email Contact Service Queue Activity Report

Field (continued) Explanation

2-117Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 142: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Contact Service Queue Agent Activity Report

Email Contact Service Queue Agent Activity ReportAn agent can handle Emails for multiple CSQs. The Email Contact Service Queue Agent Activity Report shows, for each agent, information about Emails handled in each CSQ.

Table 2-59 shows how the information in the Email Contact Service Queue Agent Activity Report is obtained or calculated.

Table 2-60 explains how the Email Contact Service Queue Agent Activity Report filter parameter obtains data.

For Information about the database table names and field names that are shown in this section, see the Conventions Used in this Chapter, page 2-3.

Table 2-58 Email Contact Service Queue Activity Report Filter Parameter

Filter Parameter Explanation

All CSQs To report on all CSQs, obtain the list of CSQ names as follows:

Search the CSQ table for CSQs that are active (CSQ.active is 1).

CSQ Names To report on a specific CSQ or CSQs, obtain the list of csqIDs as follows:

Obtain the list of CSQ names from the user selection for this parameter. These values are in CSQ.csqName. Obtain the corresponding CSQ.csqID.

Table 2-59 Email Contact Service Queue Agent Activity Report

Field Explanation

CSQ Name Join on CSQ.csqID and EEMQAD.EEMQueueId, where the name is CSQ.csqName

Date This is the date of the day interval.

This is a Union of EEMQAD.queueDateTime, and EEMQAD.endEmailDateTime truncated to be just the date portion of the DateTime.

Agent Name Resource.resourceName.

Join on Resource.resourceLoginID and EEMQAD.agent to obtain the name of the Agent that was presented emails.

2-118Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 143: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Contact Service Queue Agent Activity Report

Routed In Count of EEMQAD.receivedReasonFK where receivedReasonFK = 1 grouped by CSQ and date.

Trans In Count of EEMQAD.receivedReasonFK where receivedReasonFK = 7 grouped by CSQ and date.

Requeued Count of EEMQAD.receivedReasonFK where receivedReasonFK = 8 grouped by CSQ and date.

Trans Out Count of EEMQAD.receivedReasonFK where receivedReasonFK = 7 grouped by CSQ and date.

Sent Count of EEMQAD.receivedReasonFK where receivedReasonFK = 5 grouped by CSQ and date.

Deleted Count of EEMQAD.receivedReasonFK where receivedReasonFK = 6 grouped by CSQ and date.

Total in process time sent

Join EEMQAD.EEMQueueId with CSQ.csqId and total is sum of EEMQAD.inProcessTimeSeconds where endTypeFK = 5.

Note: This will count all In Process time for each email sent during the selected time period, even any In Process time that occurred before the report start time.

Avg. In Process Total In Process Time Sent divided by the number Sent for each agent/date (see above Sent column)

Avg. On Desk Join EEMQAD.EEMQueueId with CSQ.csqID. The total On Desk Time for each Email is the difference between EEMQAD.getEmailDateTime and EEMQAD.endEmailDateTime. These are then summed up by CSQ and date and the average is computed by dividing by the number of Sent Emails (see above Sent column)

Table 2-59 Email Contact Service Queue Agent Activity Report

Field (continued) Explanation

2-119Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 144: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Inbox Traffic Analysis Report

Email Inbox Traffic Analysis ReportThe Email Inbox Traffic Analysis Report shows information about incoming Emails to the Cisco Unified CCX system.

Table 2-61 shows how the information in the Email Inbox Traffic Analysis Report is obtained or calculated.

Table 2-62 explains how the Email Inbox Traffic Analysis Report filter parameter obtains data.

For Information about the database table names and field names that are shown in this section, see the Conventions Used in this Chapter, page 2-3.

Table 2-60 Email Contact Service Queue Agent Activity Report Filter Parameter

Filter Parameter Explanation

All CSQs To report on all CSQs, obtain the list of CSQ names as follows:

Search the CSQ table for CSQs that are active (CSQ.active is 1).

CSQ Names To report on a specific CSQ or CSQs, obtain the list of csqIDs as follows:

Obtain the list of CSQ names from the user selection for this parameter. These values are in CSQ.csqName. Obtain the corresponding CSQ.csqID.

Table 2-61 Email Inbox Traffic Analysis Report

Field Explanation

Email Address Obtained from EEMCED.toAddress.

Incoming Email Date

Obtained from EEMCED.receivedDateTime.

Email Count Count of EEMCED.toAddress where receivedReasonFK = 1 (Routed in).

Table 2-62 Email Inbox Traffic Analysis Report Filter Parameter

Filter Parameter Explanation

Email Address Obtain the list of addresses from EEMCED.toAddress.

2-120Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 145: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Response Detail Report

Email Response Detail ReportThe Email Response Detail Report contains one row per Email response sent.

Table 2-63 shows how the information in the Email Response Detail Report is obtained or calculated.

Table 2-64 explains how the Email Response Detail Report filter parameter obtains data.

For Information about the database table names and field names that are shown in this section, see the Conventions Used in this Chapter, page 2-3.

Table 2-63 Email Response Detail Report

Field Explanation

CSQ Name Join on CSQ.csqID and EEMCED.EEMQueueId, where the name is CSQ.csqName

Sent Date EEMCED.finalDispositionDateTime where finalDispositionTypeFK = 5 (Sent)

Agent Name Resource.resourceName.

Join on Resource.resourceLoginID and EEMCED.agent to obtain the name of the Agent that was presented emails.

Date Received Obtained from EEMCED.receivedDateTime.

Date Retrieved Join on EEMCED.ContactEmailDetailId and EEMQAD.ContactEmailDetailFK. Obtained from EEMQAD.getEmailDateTime.

To Address Obtained from EEMCED.toAddress.

From Address Obtained from EEMCED.fromAddress.

Email Subject Obtained from EEMCED.emailSubject.

2-121Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 146: Historical Reporting Administrator and Developer Guide ...

Chapter 2 Historical Reports Query DesignsEmail Response Detail Report

Table 2-64 Email Response Detail Report Filter Parameter

Filter Parameter Explanation

All Agents To report on all agents, obtain the list of resourceLoginIDs as follows:

Search the Resource table for agents who are active (Resource.active is 1).

Agent Names To report on a specific agent or agents, obtain the list of resourceLoginIDs as follows:

Obtain the list of agent names from the user selection for this parameter. These values are in Resource.resourceName. Obtain the corresponding Resource.resourceLoginID

All CSQs To report on all CSQs, obtain the list of CSQ names as follows:

Search the CSQ table for CSQs that are active (CSQ.active is 1).

CSQ Names To report on a specific CSQ or CSQs, obtain the list of csqIDs as follows:

Obtain the list of CSQ names from the user selection for this parameter. These values are in CSQ.csqName. Obtain the corresponding CSQ.csqID.

2-122Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 147: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

C H A P T E R 3

Writing Database Records

This chapter explains how call-related detail records and agent state change records are generated for various call flows and scenarios.

The explanations throughout this chapter use the following abbreviations for database records:

• ACDR—AgentConnectionDetail record in the AgentConnectionDetail table

• ASDR—AgentStateDetail record in the AgentStateDetail table

• CCDR—ContactCallDetail record in the ContactCallDetail table

• CQDR—ContactQueueDetail record in the ContactQueueDetail table

• CRDR—ContactRoutingDetail record in the ContactRoutingDetail table

• EEMCEDR—EEMContactEmailDetail record in the EEMContactEmailDetail

• EEMQADR—EEMQueueAgentDetail record in the EEMQueueAgentDetail table

• EEMEASD—EEMEmailAgentStateDetail record in the EMEmailAgentStateDetail table

This chapter includes the following topics:

• Flow of Call-Related Detail Records, page 3-2

• Call Scenarios, page 3-2

• Flow of Email-Related Detail Records, page 3-22

• Email Scenarios, page 3-23

3-1and Developer Guide, Release 7.0(1)

Page 148: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsFlow of Call-Related Detail Records

Flow of Call-Related Detail RecordsTable 3-1 provides an example of the general flow of detail records for incoming ACD calls. This example assumes that the CSQ is configured for auto-work and that the agent is configured for auto-available.

If the agent does not enter Work state after the call, the system writes the ACDR and the ASDR (Ready) when the call disconnects. If the agent is not configured for auto-available, the ASDR pertains to Not Ready state.

Call ScenariosThe following sections describe various call scenarios. Each example assumes that auto-work is disabled for incoming ACD calls and that all agents have auto-available enabled.

• Basic ACD Call Scenario—Call Queues for One CSQ, page 3-3

• Basic ACD Call Scenario—Call Queues for Two CSQs, page 3-4

• Basic ACD Call Scenario—Wrap Up, page 3-5

• Basic Agent Based Routing Call Scenario, page 3-6

• Transfer to Route Point Scenario, page 3-7

Table 3-1 General Flow of Detail Records for Incoming ICD Calls

System Activity Detail Record Activity

Call reaches CTI Port Allocate Session

Begin CCDR in memory

Call executes first Select Resource step

Begin CRDR and CQDR in memory

System selects agent and rings phone

Begin ACDR in memory, write ASDR for state change to Reserved

Agent answers Write ASDR (Talking)

Call disconnects Write CRDR, CQDR(s), ASDR (Work)

Agent leaves Work state Write ACDR, CCDR, ASDR (Ready)

3-2Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 149: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

• Conference to Agent Scenario, page 3-8

• Workflow Redirect to Route Point Scenario, page 3-9

• ACD Call Unanswered Scenario, page 3-10

• Agent to Agent Non-ACD Call Scenario, page 3-11

• Agent to Agent Non-ACD Call Transfer Scenario, page 3-12

• Agent to Agent Non-ACD Call Conference Scenario, page 3-13

• ACD Call Blind Transfer Scenario, page 3-14

• Agent Places Consult Call then Resumes Call Scenario, page 3-15

• Agent Consults Agent then Resumes Call Scenario, page 3-16

• Basic Outbound Call Scenario—Call Rejected then Accepted, page 3-18

• Basic Outbound Call Scenario—Call Accepted and Transferred to Other Agent, page 3-19

• Basic Outbound Call Scenario—Call Accepted and Transferred to Route Point, page 3-20

Basic ACD Call Scenario—Call Queues for One CSQIn this Basic ACD Call scenario, a call reaches a Cisco Unified CCX route point, executes a script, and queues for one CSQ. The system allocates agent A for the call, rings agent A’s phone, and agent A answers the call.

Table 3-2 shows the call-related detail records that are generated by this scenario. Table 3-3 shows the agent state change records that are generated by this scenario.

Table 3-2 Basic ACD Call—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — —

CRDR1 100 0 1 Overall queue information

3-3Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 150: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Basic ACD Call Scenario—Call Queues for Two CSQsIn this Basic ACD Call scenario, a call reaches a Cisco Unified CCX route point, executes a script, and queues for two CSQs. The system allocates agent A for the call, rings agent A’s phone, and agent A answers the call.

Table 3-2 shows the call-related detail records that are generated by this scenario. Table 3-3 shows the agent state change records that are generated by this scenario.

CQDR1 100 0 1 Detailed queue information for CSQ1 (targetType = 0 indicates CSQ-based routing)

ACDR1 100 0 1 Agent A and original call

Table 3-3 Basic ACD Call—Agent State Change Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A selected for call

ASDR2 5 (Talking) Agent A answers call

ASDR3 3 (Ready) Call ends

Table 3-2 Basic ACD Call—Call-Related Detail Records (continued)

RecordSession ID

Session Sequence Number qIndex Remarks

Table 3-4 Basic ACD Call—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — —

CRDR1 100 0 1 Overall queue information

3-4Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 151: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Basic ACD Call Scenario—Wrap UpIn this Basic ACD Call scenario, a call reaches a Cisco Unified CCX route point, executes a script, and queues for one CSQ. The system allocates agent A for the call, rings agent A’s phone, and agent A answers the call. After completing the call, agent A goes to Work state and chooses a wrap up code.

Table 3-5 shows the call-related detail records that are generated by this scenario. Table 3-6 shows the agent state change records that are generated by this scenario.

CQDR1 100 0 1 Overall queue information for CSQ1, targetType = 0, targetID = ID of CSQ1

CQDR2 100 0 1 Overall queue information for CSQ2, targetType = 0, targetID = ID of CSQ2

ACDR1 100 0 1 Agent A and original call

Table 3-4 Basic ACD Call—Call-Related Detail Records (continued)

RecordSession ID

Session Sequence Number qIndex Remarks

Table 3-5 Basic ACD Call—Wrap Up Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — —

CRDR1 100 0 1 Overall queue information

3-5Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 152: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Basic Agent Based Routing Call Scenario

In the Basic Agent Based Routing call scenario, a call reaches a Cisco Unified CCX route point, executes a script, and selects Agent A. The system allocates agent A for the call, rings agent A’s phone, and agent A answers the call.

Table 3-2 shows the call-related detail records that are generated by this scenario. Table 3-3 shows the agent state change records that are generated by this scenario.

CQDR1 100 0 1 Detailed queue information for CSQ1 (targetType = 0 indicates CSQ-based routing)

ACDR1 100 0 1 Agent A and original call with wrap-up code

Table 3-6 Basic ACD Call—Wrap Up Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A selected for call

ASDR2 5 (Talking) Agent A answers call

ASDR3 6 (Work) Call ends

ASDR4 3 (Ready) Agent A goes to Ready state

Table 3-7 Basic ACD Call—Agent State Change Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A selected for call

ASDR2 5 (Talking) Agent A answers call

ASDR3 3 (Ready) Call ends

Table 3-5 Basic ACD Call—Wrap Up Records (continued)

RecordSession ID

Session Sequence Number qIndex Remarks

3-6Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 153: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Transfer to Route Point ScenarioAfter the basic ACD scenario (see the “Basic ACD Call Scenario—Call Queues for One CSQ” section on page 3-3), agent A transfers the call to a Cisco Unified CCX route point. The call executes a script, queues for one or more CSQs, and connects to agent B. The server begins a new session and CCDR as soon as agent A starts the consult call. The server writes the CCDR for the consult call when agent A completes the transfer or when agent A or the script terminates that call.

Table 3-10 shows the call-related detail records that are generated by this scenario.

Table 3-8 Basic Agent Based Routing Call—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — —

CRDR1 100 0 1 Overall queue information

CQDR1 100 0 1 Detailed information for the routing attempt (targetType = 1 indicates agent based routing)

ACDR1 100 0 1 Agent A and original call

Table 3-9 Basic Agent Based Routing Call—Agent State Change Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A selected for call

ASDR2 5 (Talking) Agent A answers call

ASDR3 3 (Ready) Call ends

3-7Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 154: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Conference to Agent ScenarioAfter the basic ACD scenario (see the “Basic ACD Call Scenario—Call Queues for One CSQ” section on page 3-3), agent A calls another logged-in agent, agent B, and conferences agent B into the original call. The server begins a new session and CCDR as soon as agent A starts the consult call. The server writes the CCDR for the consult call when agent A completes the conference or when agent A or agent B terminates the consult call.

Table 3-10 Transfer to Route Point—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — Transfer field will be 1

CRDR1 100 0 1 Overall queue info for the first segment of the call (before the transfer

ACDR1 100 0 1 Agent A and original call

CQDR1 100 0 1 Detailed queue info for the CSQ selected by the first route point’s script

CCDR2 101 0 — Consult call from agent A to route point

CCDR3 100 1 — Second leg of original call to new route point

CRDR3 100 1 — Overall queue info for the second segment of the call (after the transfer)

CQDR3 100 1 1 Queue information of second leg of call

ACDR3 100 1 1 Agent B and original call

3-8Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 155: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Note The server does not create a new CCDR or CRDR after the conference is completed.

Table 3-11 shows the call-related detail records that are generated by this scenario. An asterisk (*) indicates a record that has the same name as another record but that is for a different agent.

Workflow Redirect to Route Point ScenarioIn the Workflow Redirect to Route Point scenario, an incoming call reaches a Cisco Unified CCX route point. That workflow for that route point redirects the call to a second route point.

Table 3-12 shows the call-related detail records that are generated by this scenario.

Table 3-11 Conference to Agent—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — Conference field will be 1

CRDR1 100 0 1 Overall queue information

ACDR1 100 0 1 Agent A and original call

CQDR1 100 0 1 Detailed queue information for CSQ1 (targetType = 0 indicates CSQ-based routing)

CCDR2 101 0 — Consult call from agent A to agent B

ACDR1* 100 0 0 Agent B and original call

3-9Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 156: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

ACD Call Unanswered ScenarioIn the ACD Call Unanswered scenario, a call reaches a Cisco Unified CCX route point, executes a script, and queues for one or more CSQs. The system allocates agent A for the call, rings agent A’s phone, but agent A does not answer the call within the timeout specified in the Select Resource or Connect step. Then the call goes into queue and is presented to agent B, who answers the call.

Table 3-13 shows the call-related detail records that are generated by this scenario. An asterisk (*) indicates a record that has the same name as another record but that is for a different agent.

Table 3-14 shows the agent state change records that are generated by this scenario.

Table 3-12 Workflow Redirect to Route Point—Call-Related Detail Records

Record Session ID

Session Sequence Number Remarks

CCDR1 100 0 Caller to first route point (redirect field will be 1)

CCDR2 100 1 Caller to second route point

Table 3-13 ACD Call Unanswered Scenario—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — —

CRDR1 100 0 1 Overall queue information

CQDR1 100 0 1 Detailed queue info for the CSQ selected by the route point's script

ACDR1 100 0 1 Agent A, ring time > 0 and talk time = 0

ACDR1* 100 0 1 Agent B, talk time > 0

3-10Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 157: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Agent to Agent Non-ACD Call ScenarioIn the Agent to Agent Non-ACD Call scenario, agent A goes offhook and calls agent B. Agent B answers, the two agents talk for a while, then agent B hangs up.

Table 3-15 shows the call-related detail records that are generated by this scenario. Table 3-16 shows the agent state change records that are generated by this scenario.

Table 3-14 ACD Call Unanswered Scenario—Agent State Change Records

Record Agent State Reason Code Remarks

ASDR1 A 4 (Reserved) — Agent A selected for call

ASDR2 A 2 (Not Ready)

32763 Server retrieves call from agent's phone

ASDR3 B 4 (Reserved) — Agent B selected for call

ASDR4 B 5 (Talking) — Agent B answers call

Table 3-15 Agent to Agent Non ACD Call—Call-Related Detail Records

Record Session ID

Session Sequence Number Remarks

CCDR1 100 0 Agent A to agent B

Table 3-16 Agent to Agent Non ACD Call—Agent State Change Records

Record Agent State Reason Code Remarks

ASDR1 A 2 (Not Ready)

32762 Agent A goes offhook

ASDR2 B 2 (Not Ready)

32761 Call rings at agent B’s phone

ASDR3 B 3 (Ready) — Agent B hangs up

ASDR4 A 3 (Ready) — —

3-11Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 158: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Agent to Agent Non-ACD Call Transfer ScenarioIn the Agent to Agent Non-ACD Call Transfer scenario, Agent A receives a non-ACD call from an unknown party. Agent A places a consult call to agent B, agent B answers the call, and agent A completes the transfer. Agent B then hangs up.

Table 3-17 shows the call-related detail records that are generated by this scenario. Table 3-18 shows the agent state change records that are generated by this scenario.

Table 3-17 Agent to Agent Non ACD Call Transfer—Call-Related Detail

Records

Record Session ID

Session Sequence Number Remarks

CCDR1 100 0 Unknown party to agent A (transfer field will be 1)

CCDR2 101 0 Agent A to agent B

CCDR3 100 1 Unknown party to agent B

Table 3-18 Agent to Agent Non ACD Call Transfer—Agent State Change

Records

Record Agent State Reason Code Remarks

ASDR1 A 2 (Not Ready)

32761 First call rings at agent A’s phone

ASDR2 B 2 (Not Ready)

32761 Consult call rings at agent B’s phone

ASDR3 A 3 (Ready) — Agent A completes transfer

ASDR4 B 3 (Ready) — Agent B hangs up

3-12Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 159: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Agent to Agent Non-ACD Call Conference ScenarioIn the Agent to Agent Non-ACD Call Conference scenario, agent A receives a non-ACD call from an unknown party. Agent A places a consult call to agent B, and agent B answers the call. Then agent A establishes a conference, and agent A, agent B, and the caller are now in conversation. Agent A hangs up. Then Agent B hangs up.

Table 3-19 shows the call-related detail records that are generated by this scenario. Table 3-20 shows the agent state change records that are generated by this scenario.

Table 3-19 Agent to Agent Non-ACD Call Conference—Call-Related Detail

Records

RecordSession ID

Session Sequence Number Remarks

CCDR1 100 0 Unknown party to agent A (conference field will be 1)

CCDR2 101 0 Agent A to agent B

Table 3-20 Agent to Agent Non-ACD Call Conference—Agent State

Change Records

Record Agent State Reason Code Remarks

ASDR1 A 2 (Not Ready)

32761 First call rings at agent A's phone

ASDR2 B 2 (Not Ready)

32761 Consult call rings at agent B's phone

ASDR3 A 3 (Ready) — Agent A hangs up

ASDR4 B 3 (Ready) — Agent B hangs up

3-13Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 160: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

ACD Call Blind Transfer ScenarioIn the ACD Call Blind Transfer Scenario, agent A is connected and talking to an incoming ACD call. Agent A puts that call on hold and places a consultative transfer to agent B. Agent A completes the transfer and then agent B answers.

Table 3-21 shows the call-related detail records that are generated by this scenario. Table 3-22 shows the agent state change records that are generated by this scenario.

Table 3-21 ACD Call Blind Transfer—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — Original call and agent A (transfer field will be 1)

CRDR1 100 0 1 Overall queue information

ACDR1 100 0 1 Agent A

CQDR1 100 0 1 Queue information

CCDR2 101 0 — Agent A and agent B

CCDR3 100 1 — Original call and agent B

ACDR3 100 1 0 Agent B

Table 3-22 ACD Call Blind Transfer—Agent State Change Records

Record Agent Reason Remarks

ASDR1 A 4 (Reserved) Agent A selected for original call

ASDR2 A 5 (Talking) Agent A answers

ASDR3 B 4 (Reserved) Agent A calls agent B, agent B’s phone rings

ASDR4 A 3 (Ready) Agent A competes the transfer

ASDR5 B 5 (Talking) Agent B answers

ASDR6 B 3 (Ready) Caller hangs up

3-14Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 161: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Agent Places Consult Call then Resumes Call ScenarioIn the Agent Places Consult Call then Resumes Call scenario, agent A is connected to an incoming ACD call. Agent A presses the Transfer button on the phone to initiate a consult call with agent B. Agent A receives a dial tone, drops the consult call, and resumes the incoming call.

Table 3-23 shows the call-related detail records that are generated by this scenario. Table 3-24 shows the agent state change records that are generated by this scenario.

Table 3-23 Agent Places Consult Call then Resumes Call—Call-Related

Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — Original call and agent A

CRDR1 100 0 1 Overall queue information

CQDR1 100 0 1 Detailed queue information for CSQ1 (targetType = 0 indicates CSQ-based routing)

ACDR1 100 0 1 Includes talk time both before and after the cancelled consult call, and contains hold time for the duration of the cancelled consult call

CCDR2 101 0 — Agent A, no called party info

Table 3-24 Agent Places Consult Call then Resumes Call—Agent State

Change Records

Record Agent Reason Remarks

ASDR1 A 4 (Reserved) Agent A selected for original call

ASDR2 A 5 (Talking) Agent A answers

ASDR3 A 3 (Ready) Caller hangs up

3-15Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 162: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Agent Consults Agent then Resumes Call ScenarioIn the Agent Consults Agent then Resumes Call scenario, agent A is connected to an incoming ACD call. Agent A puts that call on hold and initiates a consultative transfer to agent B. Agent B answers, talks to A for some time, then hangs up without agent A completing the transfer. Agent A resumes the original call.

Table 3-25 shows the call-related detail records that are generated by this scenario. Table 3-26 shows the agent state change records that are generated by this scenario.

Table 3-25 Agent Consults Agent then Resumes Call—Call-Related Detail

Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — Original call and agent A

CRDR1 100 0 1 Overall queue information

CQDR1 100 0 1 Detailed queue information for CSQ1 (targetType = 0 indicates CSQ-based routing)

CCDR2 101 0 — Agent A to agent B

ACDR1 100 0 1 Includes talk time both before and after the consult call, and contains hold time for the duration of the cancelled consult call

Table 3-26 Agent Consults Agent then Resumes Call—Agent State Change

Records

Record Agent Reason Remarks

ASDR1 A 4 (Reserved) Agent A selected for original call

ASDR2 A 5 (Talking) Agent A answers

3-16Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 163: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Basic Outbound Call Scenario—Call AcceptedIn this Basic Outbound Call scenario, a call is presented to Agent A and the agent accepts the call. Then the system places the call from the Agent A to the customer.

Table 3-27 shows the call-related detail records that are generated by this scenario. Table 3-28 shows the agent state change records that are generated by this scenario.

ASDR3 B 4 (Reserved) Agent A calls agent B, agent B’s phone rings

ASDR4 B 5 (Talking) Agent B answers

ASDR5 B 3 (Ready) Agent B disconnects from consult call

ASDR6 A 3 (Ready) Caller disconnects original call

Table 3-26 Agent Consults Agent then Resumes Call—Agent State Change

Records (continued)

Record Agent Reason Remarks

Table 3-27 Basic Outbound Call—Call-Related Detail Records

RecordSession ID

Session Sequence Number Remarks

CCDR1 100 0 —

ACDR1 100 0 Call result is 1 (voice)

Table 3-28 Basic Outbound Call—Agent State Change Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A is presented with outbound call

ASDR2 5 (Talking) Agent A accepts call

ASDR3 3 (Ready) Call ends

3-17Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 164: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Basic Outbound Call Scenario—Call Rejected then AcceptedIn this Basic Outbound Call scenario, a call is presented to Agent A and Agent A rejects the call. The call is then presented to Agent B and Agent B accepts the call. Then the system places the call from Agent B to the customer.

Table 3-29 shows the call-related detail records that are generated by this scenario. Table 3-30 shows the agent state change records that are generated by this scenario.

Table 3-29 Basic Outbound Call—Call-Related Detail Records

RecordSession ID

Session Sequence Number Remarks

CCDR1 100 0 —

ACDR1 100 0 Call result is 9 (reject)

ACDR2 100 0 Call result is 1 (voice)

Table 3-30 Basic Outbound Call—Agent State Change Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A is presented with outbound call

ASDR1 3 (Ready) Agent A rejects call

ASDR1 4 (Reserved) Agent B is presented with outbound call

ASDR2 5 (Talking) Agent B accepts call

ASDR3 3 (Ready) Call ends

3-18Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 165: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Basic Outbound Call Scenario—Call Accepted and Transferred to Other Agent

In this Basic Outbound Call scenario, a call is presented to Agent A and the agent accepts the call. Then the system places the call from the Agent A to the customer. Agent A then transfers the call to Agent B.

Table 3-31 shows the call-related detail records that are generated by this scenario. Table 3-32 shows the agent state change records that are generated by this scenario.

Table 3-31 Basic Outbound Call—Call-Related Detail Records

RecordSession ID

Session Sequence Number Remarks

CCDR1 100 0 —

ACDR1 100 0 Call result is 1 (voice)

CCDR2 200 0 Consult call from Agent A to Agent B

CCDR3 100 1 Outbound call at Agent B

ACDR2 100 1 Call result is 20 (transfer)

Table 3-32 Basic Outbound Call—Agent State Change Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A is presented with outbound call

ASDR2 5 (Talking) Agent A accepts call

ASDR3 3 (Ready) Call transfers to Agent B

ASDR1 4 (Reserved) Agent B is presented with outbound call

ASDR2 5 (Talking) Agent B on outbound call

ASDR3 3 (Ready) Call ends

3-19Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 166: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsCall Scenarios

Basic Outbound Call Scenario—Call Accepted and Transferred to Route Point

In this Basic Outbound Call scenario, a call is presented to Agent A and the agent accepts the call. Then the system places the call from the Agent A to the customer. Agent A then transfers the call to a route point. The call reaches a Cisco Unified CCX route point, executes a script, and queues for one CSQ. The system allocates agent B for the call, rings agent B’s phone, and agent B answers the call.

Table 3-33 shows the call-related detail records that are generated by this scenario. Table 3-34 shows the agent state change records that are generated by this scenario.

Table 3-33 Basic Outbound Call—Call-Related Detail Records

RecordSession ID

Session Sequence Number qIndex Remarks

CCDR1 100 0 — —

ACDR1 100 0 — Call result is 1 (voice)

CCDR2 200 0 — Consult call from Agent A to route point

CCDR3 100 1 — Outbound call is queued

CRDR1 100 1 1 Overall queue information

CQDR1 100 1 1 Detailed queue information for CSQ1 (targetType = 0 indicates CSQ-based routing)

ACDR1 100 1 1 Agent B and original call

Table 3-34 Basic Outbound Call—Agent State Change Records

Record Reason Remarks

ASDR1 4 (Reserved) Agent A is presented with outbound call

ASDR2 5 (Talking) Agent A accepts call

3-20Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 167: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsFlow of Email-Related Detail Records

Flow of Email-Related Detail RecordsBelow is an example of the general flow of detail records for incoming Emails. This example shows an agent log in, receive an Email, send a response, and then log out. This only contains details relating to Email records.

ASDR3 3 (Ready) Call transfers to route point

ASDR1 4 (Reserved) Agent B selected for call

ASDR2 5 (Talking) Agent B answers call

ASDR3 3 (Ready) Call ends

Table 3-34 Basic Outbound Call—Agent State Change Records (continued)

Record Reason Remarks

Table 3-35 General Flow of Detail Records for Incoming ICD Emails

System Activity Detail Record Activity

Agent logs in EEMEASDR created for login with start and end time equal

EEMEASDR created for initial Email Not Ready state start

Agent goes Email Ready EEMEASDR for Email Not Ready updated to include ending time of the state

EEMEASDR created for start time of Email Ready

Email reaches CSQ inbox EEMCEDR created for the Email

EEMQADR created for the Email and the CSQ it is initially routed to

3-21Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 168: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsEmail Scenarios

Email ScenariosThe following sections describe various email scenarios.

• Basic Incoming Email with a Response Sent, page 3-23

• Email Re-queued, page 3-24

• Email Transferred to Different CSQ, page 3-25

System selects agent and assigns the Email

EEMQADR updated to reflect agent and time it was assigned

EEMEASDR for Email Ready updated to include ending time of state

EEMEASDR created for Email Processing

Agent sends response EEMQADR updated to include final disposition of the Email

EEMCEDR updated to include final disposition of the Email

EEMEASDR for Email Processing updated to include ending time of state

EEMEASDR created for Email Ready

Agent goes Email Not Ready EEMEASDR for Email Ready updated to include ending time of state

EEMEASDR created for Email Not Ready

Agent logs out EEMEASDR updated for Email Not Ready to include ending time of state

EEMEASDR created for Email Logout that has an equal start and end time

Table 3-35 General Flow of Detail Records for Incoming ICD Emails

System Activity Detail Record Activity

3-22Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 169: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsEmail Scenarios

Basic Incoming Email with a Response SentIn this scenario, an email arrives in the Inbox associated with a CSQ and is then moved and assigned to that CSQ. The system allocates agent A for the email, it appears on agent A's desktop, and agent A writes and sends a response.

Email Re-queuedIn this scenario, an email arrives in the Inbox associated with a CSQ and is then moved and assigned to that CSQ. The system allocates agent A for the email and it appears on agent A's desktop. Agent A decides they do not want any more emails and goes Email Not Ready and re-queues the email. The email is then allocated to agent B and agent B sends a response.

Table 3-36 Basic Incoming Email - Email-Related Detail Records

Record CED ID

QAD Sequence Number Remarks

EEMCEDR1 100 - Email information including incomingand final disposition information

EEMQADR1 100 210 Email information relating to the one appearance in the queue

Table 3-37 Basic Incoming Email - Email-Related State Change Records

Record Reason Remarks

EEMEASDR1 4 (Email Processing) Agent receives Email

EEMEASDR2 3 (Email Ready) Agent sent Email

3-23Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 170: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsEmail Scenarios

Email Transferred to Different CSQIn this scenario, an email arrives in the Inbox associated with CSQ1 and is then moved and assigned to that CSQ. The system allocates agent A for the email and it appears on agent A's desktop. Agent A decides it does not belong in that CSQ and transfers it to CSQ2. The email is then allocated to agent B and agent B deletes the email.

Table 3-38 Email Re-queued - Email-Related Detail Records

Record CED ID

QAD Sequence Number Remarks

EEMCEDR1 100 - Email information including incoming and final disposition information. FinalDispositionTypeFK will be 5 for Sent

EEMQADR1 100 210 Email information relating to the first appearance in the queue. EndTypeFK will be 8 (Re-queued)

EEMQADR2 100 211 Email information relating to the first appearance in the queue. ReceivedReasonFK will be 8 for re-queued and EndTypeFK will be 5 for sent

Table 3-39 Email Re-queued - Email-Related State Change Records

Record Agent Reason Remarks

EEMEASDR1 A 4 (Email Processing) Agent A receives Email

EEMEASDR2 A 2 (Email Not Ready) Agent A selected Not Ready before re-queuing Email

EEMEASDR3 B 4 (Email Processing) Agent B receives Email

EEMEASDR4 B 3 (Email Ready) Agent B sent Email

3-24Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 171: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsEmail Scenarios

Table 3-40 Email Transferred to Different CSQ - Email-Related Detail

Records

Record CED ID

QAD Sequence Number CSQ ID Remarks

EEMCEDR1 100 - 2 Email information including incoming and final disposition information. FinalDispositionTypeFK will be 6 for Deleted. The CSQ ID will initially be 1 but will be updated to 2 when transferred.

EEMQADR1 100 210 1 Email information relating to the first appearance in the queue. EndTypeFK will be 7 (Transferred)

EEMQADR2 100 211 2 Email information relating to the first appearance in the queue. ReceivedReasonFK will be 7 for transferred and EndTypeFK will be 6 for deleted.

Table 3-41 Email Transferred to Different CSQ - Email-Related State

Change Records

Record Agent Reason Remarks

EEMEASDR1 A 4 (Email Processing) Agent A receives Email

EEMEASDR2 A 2 (Email Ready) Agent A receives Email

EEMEASDR3 B 4 (Email Processing) Agent Breceives Email

EEMEASDR4 B 3 (Email Ready) Agent Breceives Email

3-25Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 172: Historical Reporting Administrator and Developer Guide ...

Chapter 3 Writing Database RecordsEmail Scenarios

3-26Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 173: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

C H A P T E R 4

Sharing Cisco Unified CCX Historical Reports on the Web

This chapter explains how you can make Cisco Unified CCX historical reports available to users over the web. Because historical reports can contain proprietary information, you may want to make them available through your company intranet (rather than the public Internet) so that you can control access to them.

To provide web access to historical reports, perform the following procedure. This procedure creates a folder on the web server in which historical reports are stored. It also sets up the Cisco Unified CCX Historical Reports client computer to export reports to the web server for sharing. The web server must be running the Windows 2000 Server operating system.

Note Do not use a Cisco Unified CCX server as the web server to avoid affecting the performance of that server.

Procedure

Step 1 On the web server, make sure that the following services are running:

• IIS Admin service

• World Wide Web Publisher service

Step 2 On the web server, create a folder in which to store historical reports.

For example, create a folder on the C:\ drive and name it Reports.

Step 3 Locate and right-click the new folder you created and choose Sharing.

4-1and Developer Guide, Release 7.0(1)

Page 174: Historical Reporting Administrator and Developer Guide ...

Chapter 4 Sharing Cisco Unified CCX Historical Reports on the Web

Step 4 In the Properties dialog box, click the Web Sharing tab.

Step 5 In the Web Sharing area:

a. Choose Default Web Site from the Share on drop-down list.

b. Click the Share this folder radio button.

c. Highlight the alias for the folder you created and click Edit Properties.

Step 6 In the Edit Alias dialog box:

a. Check the Read check box.

b. Check the Directory browsing check box.

c. Uncheck any other check boxes if they are checked.

d. Click the None radio button.

e. Click OK.

Step 7 In the Properties dialog box, click OK.

The new folder you created can now be accessed by entering the following URL is a web browser, where server is the name or the IP address of the web server and folder is the alias of the new folder:

http://server/folder/

Step 8 On the Cisco Unified CCX Historical Reports client computer, map a network drive to the folder on the web server that you set up for sharing historical reports.

Set up mapping to reconnect at logon.

For example, if you created a folder on the web server called Reports, map the network drive to the Reports folder on the web server.

Refer to your Windows documentation for information about mapping a network drive.

Step 9 When you schedule or export reports from the Cisco Unified CCX Historical Reports client, use the drive letter from the mapping process when you specify the export location.

For example, if the drive letter from the mapping process is F and if you are exporting a report called myreport.pdf, specify F:\myreport.pdf as export location.

4-2Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 175: Historical Reporting Administrator and Developer Guide ...

Chapter 4 Sharing Cisco Unified CCX Historical Reports on the Web

The report you export will be available at the following URL, where server is the name or the IP address of the web server, folder is the alias of the web server folder in which reports are stored, and report is the name of the report:

http://server/folder/report.pdf.

Note In addition, refer to Cisco Unified Contact Center Express Historical Reports User Guide for information about scheduling and exporting historical reports.

4-3Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 176: Historical Reporting Administrator and Developer Guide ...

Chapter 4 Sharing Cisco Unified CCX Historical Reports on the Web

4-4Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 177: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

C H A P T E R 5

Exporting Historical Data to a Data Warehouse

This chapter explains how to export Cisco Unified CCX historical data to your own data warehouse. You can then access this data for further analysis.

This chapter does not describe how to merge multiple Cisco Unified CCX databases into one data warehouse. Each Cisco Unified CCX database generates unique IDs for database records and merging independent Cisco Unified CCX databases will cause data collision.

To export data, see the appropriate section for your situation:

• Exporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000, page 5-2

• Exporting Data when the Cisco Unified CCX Database uses MSDE, page 5-8

• Exporting Data when the Data Warehouse does not use Microsoft SQL Server 2000, page 5-10

• Exporting Data when Cisco Unified CCX Data Exists in the Data Warehouse, page 5-11

5-1and Developer Guide, Release 7.0(1)

Page 178: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000

Exporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000

If you are using Microsoft SQL Server 2000 for the Cisco Unified CCX database and for your data warehouse, perform the following steps to export Cisco Unified CCX historical data to the data warehouse. Perform these steps on the server which the Cisco Unified CCX data is stored.

Before you begin

Before you begin, log in to the data warehouse server using same ID and password that you use to log in to the server on which the Cisco Unified CCX data is stored.

Caution Before you perform the following steps, make sure that the data warehouse does not contain any Cisco Unified CCX data. If it does contain Cisco Unified CCX data, see the “Exporting Data when Cisco Unified CCX Data Exists in the Data Warehouse” section on page 5-11.

Procedure

Step 1 On the server on the server on which the Cisco Unified CCX data is stored, start the SQL Server Enterprise Manager by choosing Start > Programs > Microsoft SQL Server > Enterprise Manager.

Step 2 In the SQL Server Enterprise Manager window, expand the Console Root tree as follows, where Cisco Unified CCX Server is the IP address or the host name of the Cisco Unified CCX server:

Microsoft SQL Servers > SQL Server Group > Cisco Unified CCX Server > Databases.

See Figure 5-1.

5-2Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 179: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000

Figure 5-1 Expanding the Console Root Tree

Step 3 Right-click the db_cra database name and choose All Tasks > Export Data....

See Figure 5-2.

5-3Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 180: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000

Figure 5-2 Exporting Data

Step 4 In the Data Transformation Services Import/Export window, click Next.

Step 5 In the Choose a Data Source window:

a. Click the Use Windows Authentication radio button.

b. Click Next.

See Figure 5-3.

5-4Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 181: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000

Figure 5-3 Choose a Data Source Window

Step 6 In the Choose a Destination window:

a. Enter the IP address or the host name of the data warehouse in the Server field, appended with the named instance string \CRSSQL.

b. Click Use Windows Authentication radio button.

c. Choose the destination database name from the Database drop-down list.

d. Click Next.

See Figure 5-4.

The Specify Table to Copy or Query window appears.

5-5Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 182: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000

Figure 5-4 Choose a Destination Window

Step 7 In the Specify Table to Copy or Query window, click Next.

The Select Source Tables and Views window appears, as shown in Figure 5-5.

5-6Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 183: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000

Figure 5-5 Select Source Tables and Views window

Step 8 In the Select Source Tables and Views window:

a. Choose the tables from the db_cra database by checking the check box next to each of the following table names:

– AgentConnectionDetail

– AgentStateDetail

– ContactCallDetail

– ContactQueueDetail

– ContactRoutingDetail

– ContactServiceQueue

– Resource

– ResourceGroup

– ResourceSkillMapping

– Skill

– SkillGroup

5-7Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 184: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database uses MSDE

– Supervisor

– Team

b. Click Next.

Step 9 In the Save, schedule, and replicate package window, click Next.

Step 10 In the Completing the DTS Import/Export Wizard window, click Finish.

The export process starts.

When the process completes, you see the following message:

Successfully copied 13 table(s) from Microsoft SQL Server to Microsoft SQL Server.

Exporting Data when the Cisco Unified CCX Database uses MSDE

Microsoft Database Engine (MSDE) does not provide the SQL Server Enterprise Manager tool for importing and exporting data. If you are using MSDE for the Cisco Unified CCX database, follow these steps to register the database before you export it:

Procedure

Step 1 On the server on which Cisco Unified Communications Manager (Cisco Unified CM) is installed, start the SQL Server Enterprise Manager by choosing Start > Programs > Microsoft SQL Server > Enterprise Manager.

Step 2 In the SQL Server Enterprise Manager window, right-click SQL Server Group and choose New SQL Server Registration....

See Figure 5-6.

5-8Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 185: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Cisco Unified CCX Database uses MSDE

Figure 5-6 New SQL Server Registration

Step 3 In the Register SQL Server Wizard window:

a. Check the From now on, I want to perform this task without using a wizard check box.

b. Click Next.

Step 4 In the Registered SQL Server Properties window:

a. Enter the IP address or the host name of the Cisco Unified CCX database server in the Server field, appended with the named instance string \CRSSQL.

b. Click the Use User Windows Authentication radio button.

c. Click OK.

See Figure 5-7.

5-9Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 186: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when the Data Warehouse does not use Microsoft SQL Server 2000

Figure 5-7 Registered SQL Server Properties Window

Step 5 Perform the procedure in the “Exporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000” section on page 5-2 to export Cisco Unified CCX historical data to the data warehouse.

Exporting Data when the Data Warehouse does not use Microsoft SQL Server 2000

If your data warehouse is not Microsoft SQL Server 2000, perform the procedure in the “Exporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000” section on page 5-2 to export Cisco Unified CCX historical data to the data warehouse

However, in Step 6, choose the appropriate destination database from the Destination drop-down list.

5-10Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 187: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when Cisco Unified CCX Data Exists in the Data Warehouse

Exporting Data when Cisco Unified CCX Data Exists in the Data Warehouse

If some Cisco Unified CCX data already exists in the your data warehouse, exporting the data from the Cisco Unified CCX server may result in data collision. To avoid this issue, you can either:

• Delete all of the Cisco Unified CCX data from the data warehouse and then import all data from the Cisco Unified CCX server, or

• Import only new Cisco Unified CCX data that was generated after a certain date.

To import new data, performing the following procedure.

Step 2 through Step 8 in this procedure describe how to export new data for the Cisco Unified CCX call detail tables.

In the Cisco Unified CCX configuration tables, existing data is modified and new data is added, so it can be difficult to identify the data that has changed. When you export data, it is easiest to first delete all configuration data from the data warehouse and then export data from the Cisco Unified CCX database. Step 9 through Step 11 in this procedure describe this process.

Step 1 If you are using MSDE, register the database by performing the procedure in the “Exporting Data when the Cisco Unified CCX Database uses MSDE” section on page 5-8.

Step 2 Perform Step 1 through Step 6 in the “Exporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000” section.

After Step 6, the DTS Import/Export Wizard Specify Table to Copy or Query window appears.

Step 3 In the DTS Import/Export Wizard Specify Table to Copy or Query window:

a. Click the Use a query to specify the data to transfer radio button.

b. Click Next.

See Figure 5-8.

5-11Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 188: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when Cisco Unified CCX Data Exists in the Data Warehouse

Figure 5-8 Specify Table to Copy or Query Window

Step 4 In the DTS Import/Export Wizard Type SQL Statement window, enter a SQL query to export a specific portion of data from a specific Cisco Unified CCX database table, and then click Next.

You can export data from only one table at a time. For example, to export data later than March 1, 2004, from the ContactRoutingDetail table, enter the query as shown in Figure 5-9.

You will repeat this procedure to export data for additional tables.

5-12Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 189: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when Cisco Unified CCX Data Exists in the Data Warehouse

Figure 5-9 Specifying a Query

The following sample queries export data later than March 1, 2004, for the five call detail tables:

select * from AgentConnectionDetail where startdatetime >= '03/01/2004 12am';

select * from AgentStateDetail where eventdatetime >= '03/01/2004 12am';

select * from ContactCallDetail where startdatetime >= '03/01/2004 12am';

select * from ContactQueueDetail where startdatetime >= '03/01/2004 12am';

select * from ContactRoutingDetail where startdatetime >= '03/01/2004 12am';

Step 5 In the DTS Import/Export Wizard Select Source Tables and Views window:

a. From the Results drop-down list, choose the destination table that corresponds to the query that you specified in Step 4.

b. Click Next.

See Figure 5-10.

5-13Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 190: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when Cisco Unified CCX Data Exists in the Data Warehouse

Figure 5-10 Selecting a Destination Table

Step 6 In the The Save, schedule and replicate package window, click Next.

Step 7 In the Completing the DTS Import/Export Wizard window, click Finish.

Step 8 Repeat Step 2 through Step 7 for until you have imported data from each of the following Cisco Unified CCX call detail database tables:

• AgentConnectionDetail

• AgentStateDetail

• ContactCallDetail

• ContactQueueDetail

• ContactRoutingDetail

Step 9 Delete one of the following Cisco Unified CCX configuration tables from the data warehouse:

• ContactServiceQueue

• Resource

• ResourceGroup

5-14Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 191: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when Cisco Unified CCX Data Exists in the Data Warehouse

• ResourceSkillMapping

• Skill

• SkillGroup

• Supervisor

• Team

Step 10 Perform Step 1 through Step 10 in the “Exporting Data when the Cisco Unified CCX Database and the Data Warehouse use Microsoft SQL Server 2000” section.

In Step 8 of that procedure, select only the database table that you just deleted in Step 9 above.

Step 11 Repeat Step 9 and Step 10 above for each of the Cisco Unified CCX configuration tables.

5-15Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 192: Historical Reporting Administrator and Developer Guide ...

Chapter 5 Exporting Historical Data to a Data WarehouseExporting Data when Cisco Unified CCX Data Exists in the Data Warehouse

5-16Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 193: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

C H A P T E R 6

Creating Custom Historical Reports for Cisco Unified CCX

You can create your own Cisco Unified CCX historical reports and add them to the Report Type drop-down list on the Cisco Unified CCX Historical Reports main window.

When you create a custom report, you follow these general steps:

1. Use Crystal Reports, a generally available third-party application, to create and save the report.

2. Create an XML report definition file for the report.

3. Make sure that the report generates properly.

You must use Crystal Reports version XI (Professional or Developer Edition) to create custom historical reports.

This chapter includes these topics:

• Creating a Report, page 6-2

• Creating a Report Definition File, page 6-10

• Updating the Reports Catalog File, page 6-17

• Troubleshooting, page 6-18

6-1and Developer Guide, Release 7.0(1)

Page 194: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

Creating a ReportThe following sections describe how to create a custom report:

• Before you Begin, page 6-2

• Creating a Report using Crystal Reports Version 11, page 6-3

Before you BeginBefore you create a new report, perform these steps:

• Write a SQL stored procedure to join database tables and calculate the data that the report requires. Refer to Cisco Unified CCX Database Schema for information about the Cisco Unified CCX database tables.

• Copy the following files from the Cisco Unified CCX Historical Reports folder on the Cisco Unified CCX Historical Reports client system to the C:\Program Files\Business Objects\Crystal Reports 11 folder:

– Cal.dll

– Cal.ini

– CiscoAppsReports_*.dll

– hrcConfig.ini

– launchHRC.exe

Note Before you copy the specified files from the Cisco Unified CCX Historical Reports folder on the Cisco Unified CCX Historical Reports client system to the C:\Program Files\Business Objects\Crystal Reports 11 folder, make sure that the Cisco Unified CCX Historical Reporting client is installed on the same PC as Crystal Report version XI.

• Create a shortcut to crw32.exe. The crw32.exe file resides in the same folder to which you copied the files above. Then right-click the shortcut, choose Properties, and enter the following text in the Target field. (Make sure to include the quotation marks.)

“C:\Program Files\Business Objects\Crystal Reports 11\ launchHRC.exe” crw32.exe

6-2Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 195: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

You must use this shortcut when you start Crystal Reports as described in the “Creating a Report using Crystal Reports Version 11” section on page 6-3.

Creating a Report using Crystal Reports Version 11To create a new report, use Crystal Reports version XI (Professional or Developer Edition), a generally available third-party application, to create two versions of the report. The versions should be identical, except that one version should contain charts.

Tip Build the report with charts first and save it with the appropriate name for a report with charts as explained in Step 9. Then, delete the charts and save the modified report with the appropriate name for a report without charts as explained in Step 9.

For more information about creating reports with Crystal Reports, refer to your Crystal Reports documentation. For information about the tables and records in the Cisco Unified CCX database, refer Cisco Unified CCX Database Schema.

Procedure

Step 1 Start Crystal Reports and choose File > New > Standard Report.

The Standard Report Creation Wizard Data window appears, as shown in Figure 6-1.

6-3Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 196: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

Figure 6-1 Standard Report Creation Data Wizard Window

Step 2 In the Standard Report Creation Data Wizard window, expand Create New Connection and then expand OLE DB (ADO).

The OLE DB Provider window appears, as shown in Figure 6-2.

6-4Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 197: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

Figure 6-2 OLE DB Provider Window

Step 3 In the OLE DB Provider window, highlight Microsoft OLE DB Provider for SQL Server in the Provider list, click Next.

The Connection Information window appears, as shown in Figure 6-3.

6-5Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 198: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

Figure 6-3 Connection Information Window

Step 4 In the Connection Information window:

a. In the Server field, enter the IP address or the host name of the server that stores the reporting data and the reporting stored procedures.

You must append the named instance to the IP address or the host name that you enter. For example, if the server name is CRAHRSRV, and the named instance is \CRSSQL, enter CRAHRSRV\CRSSQL, 4433 in this field.

b. Check the Integrated Security check box.

c. From the Database drop-down list, choose the database that contains the reporting stored procedures.

d. Click Next.

See Figure 6-4.

6-6Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 199: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

Figure 6-4 OLE DB (ADO) Window for Providing Advanced Information

Step 5 Click Finish.

The Standard Report Creation Data window appears again.

Step 6 In the Standard Report Creation Data window for choosing data:

a. In the Available Data Sources pane, navigate to and expand the database that you specified in Step 4c.

b. Expand Stored Procedures

c. In the Available Data Sources area, highlight the stored procedure that you want to use.

d. Click > to move the stored procedure to the Selected Tables area.

The Enter Values window appears, as shown in Figure 6-5. This example shows the Enter Values window for the sp_ccdr stored procedure.

6-7Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 200: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

Figure 6-5 Enter Values Window

Step 7 In the Enter Values window, enter the appropriate values for your stored procedure and click OK.

Step 8 Follow the directions provided by the Crystal Reports wizard to complete setting up the report.

Refer to your Crystal Reports documentation for more information.

Step 9 Save the report in the following directory under the directory in which you installed the client system. (By default, the client system installs in the Program Files directory.) Replace Language with the name of the appropriate language directory.

Cisco Unified CCX Historical Reports\ Report Templates\Language

Name the report as follows:

Category_ReportDisplayName_ReportFormat_Locale.rpt

Replace Category, ReportDisplayName, ReportFormat, and Locale with appropriate values as explained in Table 6-1.

6-8Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 201: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report

Table 6-1 File Name Components

Component Explanation Valid Values

Category Cisco Unified CCX application package with which to associate this report. Users with access to this package will be able to generate this report.

CCR—Cisco Unified CCX Enhanced or Cisco Unified CCX Premium

ICD—Cisco Unified CCX Standard

IVR—Cisco Unified IP IVR

ReportDisplayName You can use any name. This name will be replaced with the name specified by vFileName in the reports catalog file line that you add for this report.

If a name has more than one word, separate each word with an underscore.

ReportFormat Whether the report includes charts. Chart—Report includes charts

Table—Report does not include charts

Locale Locale ISO string. Specifies the language in which you created the field names, headings, and other static items in the report. Consists of an ISO language code followed by an underscore (_) and then an ISO country code.

Languages installed on the Cisco Unified CCX Historical Reports client system. For example:

en_US—English

de_DE—German

es_ES—Spanish

fr_FR—French

it_IT—Italian

ja_JP—Japanese

zh_CN—Simplified Chinese

To see the languages installed on the client system, look at the folder names in the Cisco Unified CCX Historical Reports\ Report Templates directory.

6-9Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 202: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report Definition File

The following is an example of a report name:

CCR_My_New_Report_Chart_en_us.rpt

In this example:

• Users who have access to the Cisco Unified CCX Enhanced application package will be able to generate this report.

• The report will appear as My New Report in the Report Type drop-down list on the Cisco Unified CCX Historical Reports main window.

• The report includes one or more charts.

• The report is designed to run on a system with a system locale of English.

• The extension .rpt indicates that this file is a report file.

Now you are ready to create a report definition file as described the “Creating a Report Definition File” section on page 6-10.

Creating a Report Definition FileA report definition file is in XML format and contains information that the Cisco Unified CCX Historical Reports client system needs to generate a report.

As the following steps show, when you create a report definition file for a custom report, you begin with an existing Cisco Unified CCX Historical Reports definition file. You save the existing file under a new name, and then you modify the new file as needed. You may find it convenient to begin with the CCR_Agent_Summary_en_us.xml file because this file contains examples of most of the XML tags.

6-10Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 203: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report Definition File

To create a report definition file, follow these steps:

Procedure

Step 1 Use a Windows text editor to open an existing report definition file.

Report definition files are located in the Cisco Unified CCX Historical Reports\ Report Templates\Language directory under the directory in which you installed the client system. (By default, the client system installs in the Program Files directory.) Language is the name of the directory in which you saved the report as described in the “Creating a Report” section on page 6-2.

Step 2 Before you make any changes, choose File > Save As to save the file under a new name. Save the file in the directory that contains the original file, and give the new file the following name:

Category_ReportDisplayName_Locale.xml

Replace Category, ReportDisplayName and Locale with the same values that you used when you created the report as described in the “Creating a Report” section on page 6-2.

Step 3 Edit the new file by changing the appropriate XML tag attributes or tag values as explained in Table 6-2. Make sure to surround all XML attribute values with quotation marks (“).

There are other values in this file. Do not change these values.

Table 6-2 Report Definition XML Attributes and Tags

XML Tag or Attribute Explanation

Report Defines the report by describing its SQL command, parameter filters, and sort criteria. Includes these attributes:

• ReportName

• ReportCategory

• BasetemplateFile

ReportName Name of the report as it will appear in the Report Type drop-down list on the Cisco Unified CCX Historical Reports main window.

In Cisco CRS release 3.0(2) and later, you can specify any name for the report.

6-11Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 204: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report Definition File

BasetemplateFile This value should be the same as the value that you specified for ReportDisplayName when you created the report file as explained in the “Creating a Report” section on page 6-2.

ReportCategory Cisco Unified CCX application package with which to associate this report. This value should be the same as the value that you specified for Category when you created the report file as explained in the “Creating a Report” section on page 6-2. Users with access to this package will be able to generate this report.

Valid values:

CCR—Cisco Unified CCX Enhanced or Cisco Unified CCX Premium

ICD—Cisco Unified CCX Standard

IVR—Cisco Unified IP IVR

ReportDescription Brief description of the report. This description will appear on the Cisco Unified CCX Historical Reports main window when the report is selected from the Report Type drop-down list.

Table 6-2 Report Definition XML Attributes and Tags (continued)

XML Tag or Attribute Explanation

6-12Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 205: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report Definition File

ReportSQLCommand SQL command (query or stored procedure) upon which the report is based. You can follow this name with any number of parameters. When this report is generated, the Cisco Unified CCX Historical Reports client will replace each parameter with its value.

Each parameter must follow these conventions:

• A parameter must begin with a dollar sign ($)

• A parameter may contain only alphabetic characters and underscores (_)

At a minimum, the SQL command requires the following parameters:

$StartDate—First date of the date range for which to generate information in the report, as specified by a user

$EndDate—Last date of the date range for which to generate information in the report, as specified by a user

$SortBy—Sort method that a user specifies for the report

If the command includes characters that the XML processor might interpret as markup characters, use the standard XML entity references for the characters or use hexadecimal character references. Refer to your XML documentation for more information.

ReportParameterList Defines each parameter that is specified in the SQL command (see the ReportSQLCommand tag), except for $StartDate, $EndDate, and $SortBy.

MutualExclusive Defines whether the filter parameters specified in the ReportParameterList field are mutually exclusive. If the parameters are mutually exclusive, the filter parameter that appears in the Filter Parameter field on the Cisco Unified CCX Historical Reports Detailed Report Settings window will be used in the SQL command when the report generates. Other parameters will be set to their default values as specified by the ParamDefaultValue attribute. If the parameters are not mutually exclusive, all filter parameters that are set will be used in the SQL command when the report generates.

Valid values:

True—Parameters are mutually exclusive

False—Parameters are not mutually exclusive

Table 6-2 Report Definition XML Attributes and Tags (continued)

XML Tag or Attribute Explanation

6-13Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 206: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report Definition File

SQLParameter Defines a SQL parameter that is specified in the ReportSQLCommand tag. There must be one SQLParameter tag for each parameter that is defined in the ReportSQLCommand tag, except for $StartDate, $EndDate, and $SortBy. (See the ReportSQLCommand tag for information about the $StartDate, $EndDate, and $SortBy parameters.) Includes these attributes:

• ParamName

• ParamDefaultValue

Includes these XML tags:

• ParamNameText

• ParamHelpText

• Either DBListToList or TextBox

ParamName Defines the name of the parameter as specified in the ReportSQLCommand tag. Must match the parameter name exactly, including the leading dollar sign ($).

ParamDefaultValue Default value of the parameter specified in the SQLParameter field. Used if a value is not specified when setting are made for the report. Also used if the MutualExclusive attribute is set to true and this parameter does not appear in the Filter Parameter field on the Cisco Unified CCX Historical Reports Detailed Report Settings window when the report generates.

ParamNameText Name of the filter parameter that appears on the Filter Parameter drop-down list on the Cisco Unified CCX Historical Reports Detailed Report Settings window.

ParamHelpText Brief description of the parameter. This description appears as a tool tip when you place the cursor over a filter parameter name in the Filter Parameter field on the Cisco Unified CCX Historical Reports Detailed Report Settings window.

Table 6-2 Report Definition XML Attributes and Tags (continued)

XML Tag or Attribute Explanation

6-14Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 207: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report Definition File

DBListToList Specifies that filter parameters can be selected using the Available or the Selected list on the Cisco Unified CCX Historical Reports Detailed Report Settings window. Filter parameters in the Available list come from the SQL tag or from the SourceListValues tag. Contains these attributes:

• GUIComponentName

• SingleSelection

Contains these tags:

• Either SQL or SourceListValues

• selectedListOperations

GUIComponentName Defines the name of the parameter selection interface. You must specify a name, but this attribute is reserved for future use.

SingleSelection Specifies whether the DBListToList tag allows a single selection or multiple selections from a drop-down list of values.

Valid values:

1—DBListToList allows a single selection from a list of values

0—DBListToList allows multiple selections from a list of values

SQL Defines the SQL command used to generate values that appear in the Available list on the Cisco Unified CCX Historical Reports Detailed Report Settings window.

SourceListValues Defines values that appear in the Available list on the Cisco Unified CCX Historical Reports Detailed Report Settings window. Contains one or more ListOption tags. Refer to the CCR_Priority_Summary_Activity_en_us.xml file for an example of how this tag is used.

selectedListOperations Specifies the operation that is included with the values in the Selected list on the Cisco Unified CCX Historical Reports Detailed Report Settings window when the report is generated. Valid operations are AND and OR.

When the report is generated, the value of the SQL parameter containing a DBListToList tag will be Operation|Value1, Value2, Value3, . . . , where Operation is AND or OR, and Value1, Value2, Value3, and so on are the values in the Selected list.

Table 6-2 Report Definition XML Attributes and Tags (continued)

XML Tag or Attribute Explanation

6-15Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 208: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXCreating a Report Definition File

Step 4 Save the file and exit the editor.

Now update the Reports Catalog File as described in the “Updating the Reports Catalog File” section on page 6-17.

TextBox Specifies that filter parameters can be selected in the Enter Parameter Value field on the Cisco Unified CCX Historical Reports Detailed Report Settings window. Contains these attributes:

• GUIComponentName

• Type

Type Specifies whether the value entered in the Enter Parameter Value field is a number or text.

Valid values:

INT—Positive integer value

STRING—Text value

ReportSortBy Defines a list of fields by which a user can sort the report. This list will appear in the Sort Report By drop-down list on the Cisco Unified CCX Historical Reports Detailed Report Settings window. Contains one or more ListOption tags.

ListOption Defines a list of options. Contains these attributes:

• OptionsSelected

• OptionValue

OptionsSelected Specifies the value that is selected by default from the list of options specified by the ListOption tag. The last ListOption tag with an OptionsSelected value of True will be displayed.

ListOption tags are included in SourceListValues and ReportSortBy.

OptionValue Specifies the value of this list option. This value is used when the SQL command executes.

Table 6-2 Report Definition XML Attributes and Tags (continued)

XML Tag or Attribute Explanation

6-16Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 209: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXUpdating the Reports Catalog File

Updating the Reports Catalog FileThe reports catalog file is in XML format and maps each report definition file to the associated report name that appears on the Report Type drop-down list. If you create a new report definition file, you must update the reports catalog file.

The reports catalog file is located in the Cisco Unified CCX Historical Reports\ Report Templates\Language directory under the directory in which you installed the client system. (By default, the client system installs in the Program Files directory.) Language is the name of the directory in which you saved the report as described in the “Creating a Report” section on page 6-2.

The reports catalog file is named as follows:

hrcReportCatalog_Locale.xml

For an explanation of Locale, see Table 6-1 on page 6-9.

To update the reports catalog file for a new report definition file, follow these steps:

Procedure

Step 1 Use a Windows text editor to open the reports catalog file.

Step 2 Add a line in the reports catalog file for the new report definition file. Enter the line in the following format, and place it immediately before the line </ReportCatalog>, which appears at the end of the file. There must be a space before pFileName and a space before vFileName.

<ReportFileName pFileName=“Category_ReportDisplayName_Locale.xml” vFileName=“ReportName”/>

Replace Category, ReportDisplayName and Locale with same values that you used when you created the report and the report definition file. See Table 6-1 for an explanation of these values.

Replace ReportName with the same name that you specified with the ReportName XML attribute in the Report Definition file. See the explanation of the ReportName attribute in Table 6-2.

6-17Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 210: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXTroubleshooting

Here is an example of a line in the reports catalog file for a report that will appear on the Report Type drop-down list in a US English locals as My New Report:

<ReportFileName pFileName=“CCR_My_New_Report_en_us.xml” vFileName=“My New Report”/>

Step 3 Save the file and exit the editor.

Your new report should appear on the Report Type drop-down list the next time you start the Cisco Unified CCX Historical Reports client. If the report does not appear on this list or if the report does not generate properly, see the “Troubleshooting” section on page 6-18.

TroubleshootingThe following sections provide information that can help you troubleshoot custom reports:

• New Report Does Not Appear on the Report Type Drop-Down List, page 6-18

• Generating a Custom Report Fails with "Invalid name" Error, page 6-19

New Report Does Not Appear on the Report Type Drop-Down ListAfter you create a report and create a report definition file, the following files should exist in the Cisco Unified CCX Historical Reports\ Report Templates\Language directory under the directory in which you installed the client system. (By default, the client system installs in the Program Files directory.) These files must follow these naming conventions exactly or the report will not generate. For an explanation of Language, Category, ReportName, and Locale, see Table 6-1 on page 6-9.

Category_ReportName_Chart_Locale.rpt

Category_ReportName_Table_Locale.rpt

Category_ReportName_Locale.xml

In addition, an entry for the report should exist in the reports catalog file.

6-18Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 211: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXTroubleshooting

If the report does not appear on the Report Type drop-down list on the Cisco Unified CCX Historical Reports main window or if the report does not generate,

• Make sure that the entry for the report in the reports catalog file is in the correct format and that this file is located in the correct directory.

• Make sure that the report files and the XML report definition file have the correct names and are located in the correct directory.

If the report files and the XML report definition file have the correct names and are located in the correct directory but the report does not generate or you receive an error message when you select the report from the Report Type drop-down list, perform the following steps to locate the problem. You perform these steps on the computer on which you are trying to generate the report.

Procedure

Step 1 Edit the hrcConfig.ini configuration file and set the logLevel parameter to 3.

For information about the hrcConfig.ini file and how to edit it, refer to Cisco Unified Contact Center Express Historical Reports User Guide.

Step 2 Stop and restart the Cisco Unified CCX Historical Reports client so that your change to the hrcConfig.ini file takes effect.

Step 3 Try again to generate the new report.

Step 4 Open the Historical Reports log file and find the SQL command used to generate the report. Check the command for errors, and make necessary corrections in the XML report definition file.

For information about the Historical Reports log file, refer to Cisco Unified Contact Center Express Historical Reports User Guide.

Generating a Custom Report Fails with "Invalid name" ErrorAttempting to generate a scheduled custom report fails with the error “Invalid name” when the showUserNameOnReport parameter is set to 1 in the Historical Reports hrcConfig.ini file. To work around this problem, add the label

6-19Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 212: Historical Reporting Administrator and Developer Guide ...

Chapter 6 Creating Custom Historical Reports for Cisco Unified CCXTroubleshooting

@$UserName to the .rpt report file that you create with Crystal Reports. To determine where to place this attribute, look at the definition file for any of the Cisco-provided historical reports.

6-20Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 213: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

C H A P T E R 7

Frequently Asked Questions

This chapter contains frequently asked questions (FAQs) and answers to those questions.

The questions and answers throughout this chapter use the following abbreviations for database records:

• ACDR—AgentConnectionDetail record in the AgentConnectionDetail table

• ASDR—AgentStateDetail record in the AgentStateDetail table

• CCDR—ContactCallDetail record in the ContactCallDetail table

• CQDR—ContactQueueDetail record in the ContactQueueDetail table

• CRDR—ContactRoutingDetail record in the ContactRoutingDetail table

The FAQs in this chapter are arranged in the following sections:

• Abandoned Call Detail Activity Report, page 7-2

• Agent Call Summary Report, page 7-4

• Agent Detail Report, page 7-4

• Agent Login Logout Activity Report, page 7-5

• Agent Summary Report, page 7-5

• Application Performance Analysis Report, page 7-7

• Call Custom Variables Report, page 7-7

• Common Skill Contact Service Queue Activity Report, page 7-8

• Contact Service Queue Activity Report, page 7-9

• Contact Service Queue Activity Report (by CSQ), page 7-10

7-1and Developer Guide, Release 7.0(1)

Page 214: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAbandoned Call Detail Activity Report

• Detailed Call by Call CCDR Report, page 7-12

• Traffic Analysis Report, page 7-13

• Data Reconciliation Among Reports, page 7-14

• Availability of Reporting Data, page 7-18

• General, page 7-22

Abandoned Call Detail Activity ReportQ. How can multiple abandoned call legs that belong to the same call be

correlated?

A. Match the call start time on the Abandoned Call Detail Activity Report with the call start time in the Detailed Call by Call CCDR Report. Then, look at the session ID and session sequence number on the Detailed Call by Call CCDR Report. Different call legs that belong to the same call have the same session ID but different session sequence numbers.

Q. Why does the Initial Call Priority field or the Final Call Priority field show n/a for a call?

A. The call was abandoned before it was assigned a priority.

Q. What does it mean when an Agent Name field is blank?

A. The call was abandoned before it was routed to an agent.

Q. What does it mean when an Agent Name field contains a value?

A. The call was routed to an agent, the agent did not answer, and the caller hung up.

Q. Why do the number of abandoned calls shown on the Abandoned Call Detail Activity Report and the number of calls shown on the Contact Service Queue Activity Report not match?

A. These values can differ because a Contact Queue Detail record may mark a call as dequeued while a Contact Call Detail record marks the call as abandoned. For example, consider the following workflow:

7-2Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 215: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAbandoned Call Detail Activity Report

StartAcceptPromptSelect Resource-Connect-Queue--Play Prompt (Prompt2)--Dequeue--Play Prompt (Prompt3)End

If a call is abandoned during Prompt2 or Prompt3, the Contact Queue Detail record will mark the call as dequeued but not abandoned from any queue. The Contact Call Detail record will mark the call abandoned.

In this case, the Contact Service Queue Activity Report will show the call as dequeued from all CSQs for which the call was routed. The Abandoned Call Detail Activity Report will show the call as abandoned from all from all CSQs for which the call was routed.

Another reason is that the call gets aborted after being in the queue.

Such calls get marked as aborted in the Contact Call Detail record, and as dequeued (if it was dequeued before aborting)/abandoned in Contact Queue Detail record. In this case the CSQ reports will display more abandoned calls than the Abandoned Call Detail Activity Report.

Q. When an agent transfers a call to another agent and the caller abandons the call, why is the call not displayed in the Abandoned Call Detail Activity report?

A. When an agent transfers a call to another agent and the caller abandons the call before the call is answered by the second agent, the first phase of the call is marked as handled and the abandonment of the second phase is not displayed in the Abandoned Detail Call Activity Report.This information cannot be seen in any other report.

7-3Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 216: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAgent Call Summary Report

Agent Call Summary ReportQ. In the Agent Call Summary Report, are the ACD Transfer-In and ACD

Transfer-Out calls included in the Inbound ACD-Total or the Outbound-Total values?

A. These calls are included in the Inbound ACD-Total value.

Q. In the Agent Call Summary Report, why is the total number of inbound calls different than the number calls handled on the CSQ Activity Report (by CSQ)?

A. The number of calls can differ for these reasons:

• The Agent Call Summary Report shows calls that are presented to agents and the CSQ Activity Report shows calls that are presented to CSQs. If there are agents included in the Agent Call Summary Report who do not belong to CSQs in the CSQ Activity Report, the Agent Call Summary Report shows more calls.

• If agent based routing configured, calls can go to agents directly, without going through a CSQ. In this case, the Agent Call Summary Report shows more calls.

• The Agent Call Summary Report can include transferred ACD calls. For example, assume that a call is queued for CSQ1 and is then handled by Agent1. Agent1 then transfers the call to Agent2 (without going through a CSQ). In this case, one call is shown as handled on the CSQ Activity Report (through CSQ1 by Agent1). The same is shown twice on Agent Call Summary Report:, one as handled by Agent1 (through CSQ1), another as handled by Agent2 (not through a CSQ but as a direct transfer from Agent2).

Agent Detail ReportQ. Why are the Hold Time and the Work Time fields blank for a call?

A. The call was not an ACD call. (IVR calls include agent-to-agent calls and external calls made by an agent.) The Cisco Unified CCX database does not record hold time and work time for IVR calls.

7-4Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 217: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAgent Login Logout Activity Report

Q. Why does the value in the Duration field not equal talk time + hold time + work time?

A. The value in the duration field is calculated as follows:

call end time – call start time

The call start time is when the call rings at the agent extension. The call end time is when the agent leaves Work state. Therefore, the call duration is equal to ring time + talk time + hold time + work time.

Q. How can IVR calls be identified?

A. The Hold Time and the Work Time fields are blank in the Agent Detail Report.

Agent Login Logout Activity ReportQ. Why does a less-than sign (<) precede the value in the Login Time field or a

greater-than sign (>) precede the value in the Logout Time field?

A. A less-than sign (<) indicates that the agent logged in before the report start time. A greater-than sign (>) indicates that the agent logged out after the report end time.

For example, assume that the report start time was 8 a.m. (0800) and the report end time was 6:00 p.m. (1800). If the agent logged in at 7:45 a.m. (0745), the Login Time field will show < 8am (or < 0800). If the agent logged out at 6:30 p.m. (1830), the Logout Time field will show > 6pm (or > 1800).

Agent Summary ReportQ. How is the value in the Average Logged-In Time field calculated?

A. This value is calculated as the total logged-in time divided by the number of login sessions.

7-5Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 218: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAgent Summary Report

For example, assume that an agent logs in at 8:00 a.m. (0800), then logs out at 8:30 a.m. (0830), then logs in again at 9:15 a.m. (0915), and then logs out at 10:00 a.m. (1000). In this case, there are two login sessions. The first session lasts 30 minutes and the second session lasts 45 minutes. The average logged-in time is (30+45)/2 = 37.5 minutes.

Q. How is Handle Time calculated?

A. Handle time = Talk time + Hold time + Work time.

Q. How is the value in the Idle Time—Avg field calculated?

A. This value is calculated as the total idle time divided by the number of idle sessions.

For example, assume that an agent goes to Not Ready state at 10:00 a.m. (1000), then goes to Ready state at 10:15 a.m. (1015), then goes to Not Ready state at 11:00 a.m. (1100), and then goes to Ready state at 11:05 a.m (1105). In this case, there are two idle sessions. The first session lasts 15 minutes and the second session lasts 5 minutes. The average idle time is (15+5)/2 = 10 minutes.

Q. Why do the values in the Talk Time - Avg and the Talk Time -Max fields in the Agent Summary Report not match the value in the Talk Time field in the Agent State Summary Reports?

A. The talk time information in the Agent Summary Report comes from the talkTime field in the AgentConnectionDetail table. This value is the time that an agent spent on an incoming ACD call. The talk time information in the Agent State Summary Reports comes from AgentStateDetail table. These values show the time that an agent spent in the talk state. These values will be different when the agent placed any ACD calls on hold during the reporting period.

Q. Does the Agent Summary show information for IVR calls?

A. The Agent Summary Report shows information for ACD calls only. The Agent Detail Report shows information for Cisco Unified CCX and Cisco Unified IP IVR calls.

7-6Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 219: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsApplication Performance Analysis Report

Application Performance Analysis ReportQ. What does it mean when the Application ID field contains –1 and the

Application Name field is empty?

A. The Application ID field will contain –1 and the Application Name field will be empty for agent-to-agent calls, IVR calls, agent-to-agent transfer/conference consult legs, or any other call that is not placed to a Cisco Unified CCX Route Point or associated with an application.

Q. Why is the value in the Calls Presented field lower than the total number of calls on the Detailed Call by Call CCDR Report for the same report period?

A. The Application Performance Analysis Report counts incoming calls only. The Detailed Call by Call CCDR Report counts incoming calls, outgoing calls (for example, outbound calls made by agents), and internal calls (for example, agent-to-agent consult calls).

Q. Why does the Application Performance Analysis report show more abandoned calls that the Contact Service Queue Activity Report for the same report period?

A. The Contact Service Queue Activity Report includes only abandoned ACD calls. (This report counts an ACD call as abandoned if the caller hangs up while queued for a CSQ or CSQs). The Application Performance Analysis Report includes abandoned ACD calls and abandoned IVR calls. (This report counts a call as abandoned if the call ends before it is answered by an agent or before it is marked as handled by a workflow.)

Call Custom Variables ReportQ. What are the values in the Custom Variable 1 through the Custom Variable

10 fields?

A. These fields show the meanings of the custom variables that are specified in a workflow.

7-7Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 220: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsCommon Skill Contact Service Queue Activity Report

For example, a workflow may designate variable1 as the menu option that the caller chooses and designate variable2 as the account number that the caller enters. In this case Custom Variable 1 would show the option value (such as 2) that the caller entered, and Custom Variable 2 would show the account number that was entered.

Common Skill Contact Service Queue Activity ReportQ. This report is similar to other CSQ reports—why is it useful?

A. This report provides additional information for multiple CSQs that are configured with the same call skill but with different competence levels. An incoming call may be queued for the CSQ with the lowest competence level. If no agent is available for a certain period, the call will be queued for the next higher competence level. The summary line in the report displays the summarized statistics for the group of CSQs configured with common skills. A group of CSQs that is configured in this manner is called a logical CSQ.

Q. Why are the summary for skill totals not adding up properly in the Common Skill Contact Service Queue Activity Report (by Interval):

A. This report is designed for customers who have logical CSQs configured. A logical CSQ is a group of CSQs configured with the same skill but with different competence levels. When a call comes in to a script that uses the “logical CSQ” approach, it first goes to the CSQ with the lowest skill level. If the wait time exceeds the predefined threshold, the call goes to the next higher skill level. So, the same incoming call can flow within the same group of CSQs. The value on the Calls Presented summary line shows the maximum number of calls presented to all CSQs within the same group rather than the total number of calls presented to all CSQs within the same group. (Calculating the sum could result in counting the same call multiple times because the call could be presented to different CSQs within the same logical group.) For Calls Handled, this reports shows the total number of calls because one call can only be handled by one CSQ. For Calls Abandoned, this report shows the maximum number of all calls abandoned from all CSQs within the same group.

This report is particularly useful for logical CSQs. If you do not have logical CSQs configured, consider using other CSQ reports (Contact Service Queue Activity Report, Contact Service Queue Activity Report by Interval/CSQ).

7-8Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 221: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsContact Service Queue Activity Report

Contact Service Queue Activity ReportQ. How are average queue time and maximum queue time calculated?

A. The average queue time for a CSQ is calculated as the sum of the queue times for all the calls presented divided by the number of calls presented. The maximum queue time for a CSQ is the longest queue time for a single call among the calls presented.

The individual queue time for each CSQ is stored in the CQDR table. For example, assume that an incoming call is queued for CSQ1 for 5 minutes. Then it is queued for CSQ2 for 10 minutes. Then it is handled by CSQ1. The queue time recorded for CSQ1 in the CQDR table is 5 minutes, and for CSQ2 is 10 minutes.

Q. How are average calls abandoned (in the Calls Abandoned—Avg field) and maximum calls abandoned (in the Calls Abandoned—Max field) calculated?

A. Average calls abandoned for a CSQ is an average value per day. It is calculated as the total number of calls abandoned for the CSQ divided by the number of days in the report period. Maximum calls abandoned for a CSQ is calculated by determining the number of calls abandoned for each day in the report period and selecting the largest of these values.

Q. In the following scenario, is the call counted as abandoned or as handled: The system receives a call, queues it, and plays a prompt giving the caller the option to press 1 to leave a message. The caller presses 1 and leaves a message.

A. By default, the call is counted as abandoned instead of handled because it did not connect to an agent. However, if the workflow is designed to mark a call as handled after a caller leaves a message, the call will be counted as handled.

Q. If a workflow gives callers the option to transfer to a voice messaging system, is there a way to track the number of callers that make this transfer and leave a message?

A. You can design a workflow to store a caller’s key input in one of the custom variables in the ContactCallDetail table. Then you can generate the Call Custom Variable Report and manually count the rows that contain the desired information. Or you can create a custom report to provide this information.

Q. Will calls presented always equal calls handled + calls abandoned?

7-9Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 222: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsContact Service Queue Activity Report (by CSQ)

A. No. Calls presented = calls handled + calls abandoned + calls dequeued + calls handled by others.

(“Calls handled” refers to calls that were connected to an agent in a particular CSQ. “Calls handled by others” refers to calls that were handled by some workflow in a script, and to calls that were queued for multiple CSQs and then handled one of the other CSQs.)

Q. Can the Contact Service Queue Activity Report show hourly data? And can hourly reports be generated automatically for each hour of each day?

A. To show hourly data for each day, schedule daily reports for the CSQ Activity Report (by CSQ) or the CSQ Activity Report (by Interval). In the Detail tab, set the interval length to 60 minutes. This setting will provide one report each day, divided into 1–hour intervals.

Separate hourly reports are not available, but with the interval length set to 60 minutes, a daily report will display 24 intervals, one for each hour of the day.

Contact Service Queue Activity Report (by CSQ)Q. Why does the same CSQ appear twice in this report (and on other CSQ

reports)?

A. A CSQ has many attributes, including CSQ name, service level, resource selection criterion, and auto work. Some attributes, such as CSQ name and service level, are displayed in the report. Other attributes are not displayed in the report. However, changing any attribute of the CSQ causes a new line to show in the report. For example, if the service level is changed from 10 to 25, two lines of the same CSQ will show in the report. One line will show the old service level value and one line will show the new service level value. Similarly, if Auto Work is changed from 1 to 0, two lines of the same CSQ will also show in the report. Since the Auto Work setting does not appear in the report, the same CSQ will appear twice.

Q. How do the four Percentage of Service Level Met fields (Only Handled, Without Abandon, Positive Abandon, and Negative Abandon) differ?

7-10Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 223: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsContact Service Queue Activity Report (by CSQ)

A. A handled call is one that is answered by an agent or one that is marked as handled by a workflow. An abandoned call is one that disconnects before an agent answers. Handled and abandoned calls can be divided into these categories: handled within service level, handled after service level, abandoned within service level, and abandoned after service level.

The Percentage of Service Level Met—Only Handled field calculation considers handled calls only. It does not consider abandoned calls. This field shows the percentage of handled calls that were handled within the service level, and is calculated as follows:

(Number of calls handled within service level / Number of calls handled) * 100%

The remaining fields differ in how they account for abandoned calls: not counted, meeting service level, or not meeting service level.

The Percentage of Service Level Met—Without Abandon field calculation does not include information for calls that were abandoned within the service level. This field shows the percentage of presented calls (calls routed to a CSQ), not counting abandoned calls, that were handled within the service level. This value is always less than or equal to the value in the Percentage of Service Level Met—Only Handled field, and is calculated as follows:

(Number of calls handled within service level / (Number of calls presented – Number of calls abandoned within service level)) * 100%.

The Percentage of Service Level Met—Positive Abandon field calculation considers calls abandoned within the service level as meeting the service level. This field shows the percentage of presented calls that were handled or abandoned within the service level, and is calculated as follows:

((Number of calls handled within service level + Number of calls abandoned within service level) / Number of calls presented) * 100%

The Percentage of Service Level Met—Negative Abandon field calculation considers calls abandoned within the service level as not meeting the service level. This file shows the percentage of presented calls that were handled within the service level. This value is less than or equal to the The Percentage of Service Level Met—Positive Abandon field, and is calculated as follows:

(Number of calls handled within service level / Number of calls presented) * 100%

Q. How is an abandoned call counted if it was queued for multiple CSQs?

7-11Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 224: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsDetailed Call by Call CCDR Report

A. If a call is queued for multiple CSQs and is then abandoned, it is counted as abandoned from all the CSQs for which it is queued.

For example, assume that a call is queued for CSQ1 and CSQ2 and that the caller hangs up before being routed to an agent. In this case, an abandoned call is counted for CSQ1 and for CSQ2.

Q. How is a dequeued call counted if it was queued for multiple CSQs?

A. If a call is queued for multiple CSQs, and is handled by one of them, the call is counted as dequeued from each of the other CSQs.

For example, assume that an incoming call is queued for CSQ1, CSQ2, and CSQ3 and that it is handled by an agent from CSQ2. In this case, a dequeued call is counted for CSQ1 and for CSQ3.

Q. After the service level for a CSQ is changed, why does the CSQ appear in the report twice, once with the old service level and once with the new service level?

A. The Cisco Unified CCX database maintains records of old and new service levels. When a new service level is configured, the old record is marked as inactive. The dateInactive field in the ContactServiceQueue table shows the date and time that the new service level was configured. If the value in the dateInactive field is in the report period, the report shows the active (new) and inactive (old) CSQs.

Detailed Call by Call CCDR ReportQ. What are a session ID and a session sequence number?

A. A session ID is a unique identification number that the system assigns to a call. This number remains the same for the entire call. The system also assigns a sequence number to each leg of a call. Sequence numbers start at 0 and increment by 1 each time the call is transferred or redirected.

Q. Can a call be marked as handled if it is never queued for a CSQ?

A. Yes. You can design a workflow to mark such a call as handled.

Q. Why are the Hold Time and the Work Time fields blank?

7-12Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 225: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsTraffic Analysis Report

A. The call was an IVR call. (IVR calls include agent-to-agent calls and external calls made by an agent.) The Cisco Unified CCX database does not record hold time and work time for IVR calls.

Q. Why does it appear that there duplicate calls on the report?

A. The calls in the CCDR Report are not duplicates. They are conference calls, which have the same SessionID, Session Sequence Number, but different talk time because different agents participated in the same call. (The Detailed Call, CSQ, Agent Report shows the names of agents who participated in a conference call.)

Q. What does it mean when the contact disposition is 3?

A. When the system cleans up a call (which may have remained in the system because of missing events) the system writes a CCDR with the contact disposition dont_care (value = 3).

Traffic Analysis ReportQ. Why is the value in the Total Incoming Calls field in this report different than

the value in the Total Incoming Calls field in the Application Performance Analysis Report?

A. An incoming call can have multiple call legs. The Traffic Analysis report counts a call with multiple legs as a single call. However, each call leg may invoke a different application, so the Application Performance Analysis Report counts each call leg as a call.

For example, assume that a call comes into an Auto Attendant and that the caller selects a menu option for Musician Demonstration. The call will have 2 call legs:

Session ID = 1, sequence number = 0, application = “auto attendant”

Session ID = 1, sequence number = 1, application = “musician demonstration”

This call is counted once for the Traffic Analysis Report. It is counted twice for the Application Performance Analysis Report: once for the “auto attendant” application and once for the “musician demonstration” application.

7-13Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 226: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsData Reconciliation Among Reports

Data Reconciliation Among ReportsQ. Why does the Detailed Call by Call CCDR Report show more handled calls

than the CSQ reports?

A. The CSQ reports show calls that are handled by agents after the calls are queued for a CSQ. The Detailed Call by Call CCDR Report shows those calls and calls that are marked as handled by a workflow script before they are queued for a CSQ.

Q. Why does the Application Performance Analysis Report show more calls presented, handled, and abandoned than the CSQ Reports?

A. There are two reasons:

• One incoming call can invoke multiple applications because each leg of the call can invoke a different application. The call is counted once for each application.

• Calls that are hung up before being queued for any CSQ may be marked as handled or abandoned (depending on the workflow and on when they hung up). Such calls do not have CRDRs or ACDRs and will not be counted on CSQ reports or Agent reports. (These calls will be counted in the Application Performance Analysis Report because the calls entered an application.)

Q. Why does the Agent Summary Report show more calls handled than the CSQ reports?

A. Conference calls to agents will result in one CRDR having multiple ACDRs. The Agent Summary Report counts the number of ACDRs and the CSQ report count the number of CRDRs.

Q. How can conference calls be identified?

A. To identify conference calls, search for ACDRs with the same session ID and sequence number, with different agent IDs, and with talk time greater than 0.

Q. How can calls that were presented to an agent but were not answered be identified?

7-14Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 227: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsData Reconciliation Among Reports

A. To identify such calls, search for ACDRs with talk time equal to zero. In addition, the CSQ-Agent Summary Report shows the total number of RNAs for each agent and for each CSQ. On the Agent Summary Report, Calls Presented minus Calls Handled is the number of calls that went RNA.

Q. Why is the total number of calls in the Calls Handled field in the Contact Service Queue Activity Report lower than the number in the Calls Handled Field in the Agent Summary Report?

A. The CSQ reports, including the Contact Service Queue Activity Report, report, show activity at the CSQ level. The agent reports, including the Agent Summary Report, shows activity at the agent level.

For handled calls, the Agent Summary Report counts the ACDRs with non-zero talk times (to exclude unanswered calls), and the Contact Service Queue Activity Report counts CQDRs with disposition equal to 2 (handled).

The number of such ACDRs may be larger than the number of such CQDRs for any of the following reasons:

• If you choose all agents for the Agent Summary Report but choose only one CSQ for the Contact Service Queue Activity Report, the Agent Summary Report will report more handled calls.

• There may be conference calls that involve multiple agents. In these cases, one CQDR will have multiple associated ACDRs. An associated ACDR has the same sessionID and sessionSeqNum as the CQDR.

• Agent-to-agent transfers will result in more ACDRs than CQDRs. If agent A picks up a call from CSQ1, one CQDR and one ACDR are created. When agent A transfers the call to agent B, another ACDR is created, but no CQDR is created.#

Q. Why do the Agent Summary Report, Contact Service Queue Activity Report, and Application Performance Analysis Report show different values for calls presented?

A. The Application Performance Analysis Report shows the highest number of calls presented for the following reasons:

• One incoming call can invoke multiple applications because each leg of the call can invoke a different application. The same call is counted once for each application.

7-15Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 228: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsData Reconciliation Among Reports

• Some calls were terminated before they were queued. Such calls do not have CRDRs (because they were not queued) and are not counted on the Contact Service Queue Activity Report. These calls also do not have ACDRs and are not counted on the Agent Summary Report.

The Agent Summary Report shows more calls presented than the Contact Service Queue Activity Report for either of the following reasons:

• The same call was queued to a certain CSQ but presented to multiple agents within the CSQ (because an agent did not answer). Such calls are counted once for the Contact Service Queue Activity Report but counted once for each agent involved for the Agent Summary Report.

• There were conference calls which involved multiple agents.

Q. Why is the number of abandoned calls in the Abandoned Call Detail Activity Report higher than the number of abandoned calls in the Contact Service Queue Activity Report?

A. Some calls shown in the Abandoned Call Detail Activity Report were abandoned before they were routed to a CSQ (these calls have a blank Call Routed CSQ field), so they are not counted for any CSQ. The Contact Service Queue Activity Report shows calls that were abandoned while they were queued for a CSQ.

Q. Why do the CSQ Activity Report and the Agent Summary Report show different values for the Maximum Handle Time? For example, assume that Agent1 belongs only to CSQ1 and CSQ1 does not include any other agent. Why would the Maximum Handle for Agent1 that appears on the CSQ Activity Report be different than the Maximum Handle for Agent1 that appears on the Agent Summary Report?

A. An agent from another CSQ handled the call, conferenced in Agent1, and then dropped out. In addition, Agent1 continued the call for longer than the longest talk time of the any call that the agent handled for CSQ1. In this case, the Maximum Handle Time appears for Agent 1 on the Agent Summary Report. It does not appear for CSQ1 on the CSQ Activity Report because Agent1 was conferenced in to the call but the call was initially handled by another CSQ.

7-16Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 229: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsData Reconciliation Among Reports

Q. If a call is queued in CSQ 1 and CSQ 2 and then handled by and agent based routing agent, why does the CSQ Cisco Unified CCX Stats real-time report show a value of 1 for Contacts Dequeued for both CSQ1 and CSQ2 but the CSQ Activity Report show a value of 0 for Calls dequeued for both CSQ1 and CSQ:

A. In this scenario, there should be three CQDRs:

• One CQDR for CSQ1, with a disposition of Handled_by_other (5) (or of 4 if there is a dequeue step)

• One CQDR for CSQ2, with a disposition of Handled_by_other (5) (or of 4 if there is a dequeue step)

• One CQDR one for the agent who handled call through agent based routing, with a disposition of Handled (2).

The CSQ Activity Report shows dispositions 4 and 5 as Handled by Other, so it shows one call as Handled By Other for both CSQ1 and CSQ2. Calls Dequeued is 0 for both CSQs (disposition 3 is reported as Dequeued on the report). The CSQ Cisco Unified CCX Stats real-time report counts calls marked as Handled_by_other as dequeued calls. On that report, the Contacts Dequeued column includes calls that were dequeued and handled by another CSQ, by an agent, or by a script.

Q. Why are values for Calls Dequeued different on the Contact Service Queue Activity Report (by CSQ or by Interval) and the Contact Service Queue Activity Report?

A. On the CSQ Activity Report (by CSQ or by Interval):

Calls Dequeued = calls dequeued via the dequeue step + calls handled by workflow script + calls handled by another CSQ.

On the CSQ Activity Report:

Calls Dequeued = calls dequeued via dequeue step, calls handled by other = calls handled by workflow script + calls handled by another CSQ.

Q. Why does the Talk Time field in the Agent Summary Report show 0 but the Talk Time field Agent Detail Report show another value?

A. The Agent Summary Report shows ACD calls only, but Agent Detail Report shows Cisco Unified CCX and Cisco Unified IP IVR calls. The calls in question are IVR calls, so they do not appear on Agent Summary Report.

7-17Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 230: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAvailability of Reporting Data

Q. What can cause a discrepancy between Cisco Unified CCX historical reports and Cisco Agent Desktop reports?

A. If Agent A performs a consult transfer to agent B for an incoming ACD call, a historical report shows two call legs for both Agent A and Agent B. The Cisco Agent Desktop reports shows two call legs (one inbound and one outbound) for agent A, but only one call leg for agent B.

Q. If an agent uses a unique reason code when going to Not Ready state to make outbound calls, why does the Agent Not Ready Reason Code Summary report show a different duration for that reason code than the Agent Detail report shows for the duration of outbound calls for the agent?

A. If the agent does not spend the entire duration of time in Not Ready state with the unique reason code making outbound calls, the sum of the duration of outbound calls will be less than the duration spent in Not Ready state with the unique reason code.

Availability of Reporting DataQ. Is there a report that shows calls per hour per CSQ? For example:

7:00 a.m. to 8:00 a.m., 25 calls

8:00 a.m. to 9:00 a.m., 35 calls

9:00 a.m. to 10:00 a.m., 34 calls

A. The Contact Service Queue Activity Report (by Interval) shows this information. To generate this report for one-hour intervals, set its Interval Length filter parameter to Sixty (60) minute intervals.

Q. Is there a way to determine telephone numbers of calling parties?

A. The Call ANI fields on the Abandoned Call Detail Activity Report and the Agent Detail Report show this information.

7-18Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 231: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAvailability of Reporting Data

Q. How is this scenario reported: a call is in queue, then is routed to an available agent who does not answer the call, and then is redirected to another agent.

A. The Agent Detail Report will show two lines: one for the agent who did not answer the call (ring time is greater than 0; talk time, hold time, and work time are each zero), and one line for the agent who answered the call (talk time is greater than 0).

On the Agent Summary Report, the call appears as presented to the agent who did not answer the call, but not as handled by that agent. The call appears as presented to and handled by the agent who answered the call.

On the CSQ-Agent Summary Report, the call appears as RNA for the first agent.

Q. Is there a way to determine the start time and the end time for a call with multiple legs?

A. The sessionID fields in the Cisco Unified CCX database tables will contain the same value for a particular call. These fields let you identify all database records that relate to the call. The sessionSeqNum fields in the Cisco Unified CCX database tables start at 0 and increment by 1 for each leg of a call. These fields let you identify the various legs of a call. (The way in which sessionID and sessionSeqNum values are written to the database depend on the call scenario. For more information and examples, see Chapter 3, “Writing Database Records.”)

The start time of a call is stored in the startDateTime field of the CCDR where sessionSeqNum is equal to 0 and where the sessionID value identifies the call. The end time of that call is stored in the endDateTime field of the CCDR with the highest sessionSeqNum and the same sessionID value.

Q. Is there a way to report on menu choices?

A. You can create a custom report to show menu choices. To do so use the Set Session Info step in a workflow to store in custom variables digits entered by callers. The contents of such custom variables are stored in the customVariable fields in the CCDR. Use the information in the CCDR customVariable fields when you create custom reports.

Here is an example of how you could prepare a report to show information for a menu with three choices (1, 2, and 3):

1. For a workflow, define a variable of type session and name it this_session.

2. Place a Get Contact Info step at the beginning of the workflow.

7-19Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 232: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAvailability of Reporting Data

3. Set the Session attribute to be variable this_session.

4. Define a Menu step that has three branches and place a Set Enterprise Call Info step in each branch.

5. In the General tab of the Set Enterprise Call Info step, click Add.

6. In the branch for caller-choice 1, enter 1 in the Value field, and choose Call.PeripheralVariable1 from the Name drop-down list.

7. In the branch for caller-choice 2, enter 2 in the Value field, and choose Call.PeripheralVariable2 from the Name drop-down list.

8. In the branch for caller-choice 3, enter 3 in the Value field, and choose Call.PeripheralVariable3 from the Name drop-down list.

9. Create a custom report that will show the values of the customVariable1, customVariable2, and customVariable3 fields in the CCDR.

If calls are to be transferred between workflows and multiple menu choices can be made for a single session, take care to preserve previously entered menu choices. For example, place a Get Session Info step at the beginning of the workflow. If the _ccdrVar1 variable is null, there were no previous entries. If it is not null, when you add a new choice, determine a format for associating a menu choice to a sequence number. In this way, you will be able to prepare accurate reports.

Q. If a Cisco Unified CCX system does not include a license for Cisco Unified CCX Historical Reports, is data still written to the Cisco Unified CCX databases?

A. Yes.

Q. Is there reporting on agent service level agreements (SLAs), such as Cisco Agent Desktop queue time threshold (caution, warning) and agent talk time SLA (caution, warning)?

A. No, but the Cisco Unified CCX databases store such data. You can create a custom report to show this information.

7-20Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 233: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsAvailability of Reporting Data

Q. Is there a report that provides information about calls that were transferred by agents to another CSQ?

A. The Detailed Call, CSQ, Agent Report provides information about transferred calls. (The session ID remains the same for a transferred call but the session sequence number increments by 1.) This report also shows the agent who handled each call and the CSQ to which the call was routed.

Q. After a record contains data, is stored in memory, and is ready to be written to the Cisco Unified CCX database, when is it written to the database?

A. Call records (CCDR, CRDR, CQDR)) are written after each call is completed. Agent state records (ASDR) are written after agents change state. Agent connection records (ACDR) are written when an agent leaves Work state or after the call completes (if the agent does not go to Work state).

Note CCDRs are written after the agent leaves Work state, when applicable. Otherwise they are written after the call ends.

Q. Are there summary tables for daily data, which contain the data of a specific day? Are these tables used to create weekly data tables? Are weekly data tables used to create monthly data tables?

A. The system stores detailed data. It does not summarize detailed tables to create daily, weekly, or monthly tables.

Q. Is there a monthly report that shows statistics for service levels?

A. The Contact Service Queue Activity Report (by CSQ or by Interval) shows information about service levels provided to calls handled.

In the Cisco Unified CCX Historical Report client system, schedule the Contact Service Queue Activity Report (by CSQ or by Interval) to run monthly.

Q. Can I create custom historical reports?

A. Yes. You will need Crystal Reports version 8.5 or version 10 (Professional or Developer Edition). (Crystal Reports is not included with Cisco Unified CCX.) For more information about creating custom reports, see Chapter 6, “Creating Custom Historical Reports for Cisco Unified CCX.”

7-21Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 234: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsGeneral

GeneralQ. How is the number of days calculated in historical reports?

A. The number of days is calculated by a SQL function that counts the number of calendar days in an integral number of days. Fractions of a day are counted as an entire day. For example, 10 a.m. (1000) on 5/15 to 10 a.m. (1000) on 5/16 is counted as two days. 12:00:00 a.m. (0000) on 5/15 to 11:59:59 p.m. (1159:59) on 5/15 is counted as one day. 12:00:00 a.m. (0000) on 5/15 to 12:00:00 a.m. (0000) on 5/16 is counted as two days.

Q. How can a report on reason codes be generated?

A. Reason Codes, when configured, are entered by agents when they explicitly transition to Logout state or to Not Ready state. In these cases, reason codes are stored in the ASDR. The Agent Login Logout Activity Report shows logout reason code information in detail. The Agent Not Ready Reason Code Summary Report shows summary information for the Not Ready reason code. The Agent State Detail Report shows Logout reason code and Not Ready reason code in detail.

Reason codes are not stored in the cases shown in the following table. In these cases, the reasonCode field in the ASDR will contain a value of –1.

Agent State in ASDR Case

Logout Agent closes the Cisco Agent Desktop without logging out

Logout IP Phone Agent server or Cisco Agent Desktop crashes

Logout Agent logs out when logged in to another computer or phone

Not Ready Normal agent login

Not Ready Agent receives an IVR call

Not Ready Agent goes offhook to place a call

Not Ready Agent fails to answer an ACD call within the specified timeout period

7-22Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 235: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsGeneral

Note Not Ready codes are system wide and cannot be configured to be hidden from certain agents.

Q. What is the database used for Cisco Unified CCX?

A. If Cisco Unified CCX and Cisco Unified Communications Manager (Cisco Unified CM) are installed on separate servers, the default database is MSDE 2000. However, you can choose to use Microsoft SQL Server 2000 instead. (MS SQL Server 2000 is required if you are using high availability.) If Cisco Unified CCX and Cisco Unified CM are installed on the same server, Cisco Unified CCX uses the same database as Cisco Unified CM, which is SQL Server 2000.

Q. Why is the Contact Service Queue Service Level Report, which is available in previous versions of Cisco Unified CCX, no longer available in the current version?

A. The information that was in this report is distributed among the Contact Service Queue Service Level Priority Summary Report, the Contact Service Queue Activity Report, and the Contact Service Queue Call Distribution Summary Report.

Q. Why is the Skill Routing Activity Report, which is available in previous versions of Cisco Unified CCX, no longer available in the current version?

A. The information that was in this report is available in the Contact Service Queue Activity Report or in the Contact Service Queue Activity Report when filtered to show Skill Groups only.

Not Ready or Logout Agent’s phone goes down

Not Ready or Logout Supervisor changes the agent’s state from the Cisco Supervisor Desktop

Agent State in ASDR Case

7-23Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 236: Historical Reporting Administrator and Developer Guide ...

Chapter 7 Frequently Asked QuestionsGeneral

Q. What can cause more than one record to have the same Node ID, Session ID, and Sequence No?

A. More than one record can have the same Node ID, Session ID, and Sequence No in the following scenarios:

– A call is conferenced to a CTI route point

– A call goes RNA (ring no answer) to an agent.

7-24Cisco Unified Contact Center Express Historical Reporting Administrator and Developer Guide, Release 7.0(1)

Page 237: Historical Reporting Administrator and Developer Guide ...

Cisco Unified Contact Center Express Historical Reporting Administrator

I N D E X

A

Abandoned Call Detail Activity Report

FAQ 7-2

overview 2-4

query design 2-4

Aborted and Rejected Call Detail Report

filter parameter 2-9

filter parameters 2-15

overview 2-6

query design 2-6

ACD, definition 2-3

ACDR, definition 3-1, 7-1

Agent Call Summary Report

FAQ 7-4

overview 2-9

query design 2-10

Agent Detail Report

filter parameters 2-20

overview 2-16

query design 2-17

Agent Login Logout Activity Report

FAQ 7-5

filter parameters 2-23

overview 2-21

query design 2-22

Agent Not Ready Reason Code Summary Report

filter parameter 2-29

overview 2-24

query design 2-25

Agent State Detail Report

filter parameters 2-33

overview 2-30

query design 2-31

Agent State Summary Report (by Agent)

filter parameters 2-42

overview 2-34

query design 2-35

Agent State Summary Report (by Interval)

filter parameters 2-42

overview 2-34

query design 2-35

Agent Summary Report

FAQ 7-5

filter parameters 2-47

overview 2-43

query design 2-44

IN-1 and Developer Guide, Release 7.0(1)

Page 238: Historical Reporting Administrator and Developer Guide ...

Index

Agent Wrap-Up Data Detail Report

filter parameters 2-53

overview 2-50

query design 2-51

Agent Wrap-up Data Summary Report

filter parameter 2-55

overview 2-54

query design 2-54

Application Performance Analysis Report

FAQ 7-7

overview 2-55

query design 2-55

Application Summary Report

filter parameter 2-59

overview 2-56

query design 2-56

ASD, definition 2-3

ASDR, definition 3-1, 7-1

B

basic reports

Abandoned Call Detail Activity Report 2-4, 7-2

Aborted and Rejected Call Detail Report 2-6

Agent Call Summary Report 2-9, 7-4

Agent Detail Report 2-16

Agent Login Logout Activity Report 2-21, 7-5

IN-2Cisco Unified Contact Center Express Historical Rep

Agent Not Ready Reason Code Summary Report 2-24

Agent State Detail Report 2-30

Agent State Summary Report (by Agent) 2-34

Agent State Summary Report (by Interval) 2-34

Agent Summary Report 2-43, 7-5

Agent Wrap-Up Data Detail Report 2-50

Agent Wrap-up Data Summary Report 2-54

Application Performance Analysis Report 2-55, 7-7

Application Summary Report 2-56

Call Custom Variables Report 2-59, 7-7

Called Number Summary Activity Report 2-64

Common Skill Contact Service Queue Activity Report (by Interval) 2-65

Contact Service Queue Activity Report 2-68, 7-9, 7-10

Contact Service Queue Activity Report (by CSQ) 2-75

Contact Service Queue Activity Report (by Interval) 2-75

Contact Service Queue Call Distribution Summary Report 2-79

Contact Service Queue Priority Summary Report 2-85

Contact Service Queue Service Level Priority Summary Report 2-87

CSQ-Agent Summary Report 2-89

Detailed Call, CSQ, Agent Report 2-96

orting Administrator and Developer Guide, Release 7.0(1)

Page 239: Historical Reporting Administrator and Developer Guide ...

Index

Detailed Call by Call CCDR Report 2-92, 7-12

Multichannel Agent Contact Summary 2-100

Multichannel Agent Login Logout Activity 2-101

Multichannel CSQ Activity 2-101

Outbound Agent Detail Performance Report 2-102

Outbound Campaign Summary Report 2-105

Priority Summary Activity Report 2-108

Remote Monitoring Detail Report 2-110

Traffic Analysis Report 2-113, 7-13

C

Call Custom Variables Report

FAQ 7-7

filter parameters 2-61

overview 2-59

query design 2-60

Called Number Summary Activity Report

overview 2-64

query design 2-64

call flow, example 3-2

See also call scenario

call legs, of same call 7-2

call presented but unanswered, identifying 7-14

call scenario

ACD Call Blind Transfer 3-14

Cisco Unified Contact Center Express Historical Reporting Adm

ACD Call Unanswered 3-10

Agent Consults Agent then Resumes Call 3-16

Agent Places Consult Call then Resumes Call 3-15

Agent to Agent Non-ACD Call 3-11

Agent to Agent Non-ACD Call Conference 3-13

Agent to Agent Non-ACD Call Transfer 3-12

Basic ACD Call 3-3, 3-4, 3-5

Basic Agent Based Routing 3-6

Basic Outbound Call 3-18, 3-19, 3-20

Conference to Agent 3-8

Transfer to Route Point 3-7

Workflow Redirect to Route Point 3-9

CCD, definition 2-3

CCDR, definition 3-1, 7-1

charts, in reports 1-1

Common Skill Contact Service Queue Activity Report 7-8

Common Skill Contact Service Queue Activity Report (by Interval)

filter parameters 2-68

overview 2-65

query design 2-65

conference call, identifying 7-14

Contact Service Queue Activity Report

FAQ 7-9

filter parameter 2-75

overview 2-68

IN-3inistrator and Developer Guide, Release 7.0(1)

Page 240: Historical Reporting Administrator and Developer Guide ...

Index

query design 2-68

Contact Service Queue Activity Report (by CSQ)

FAQ 7-10

filter parameters 2-79

overview 2-75

query design 2-76

Contact Service Queue Activity Report (by Interval)

filter parameters 2-79

overview 2-75

query design 2-76

Contact Service Queue Call Distribution Summary Report

filter parameters 2-84

overview 2-79

query design 2-80

Contact Service Queue Priority Summary Report

filter parameter 2-86

overview 2-85

query design 2-85

Contact Service Queue Service Level Priority Summary Report

filter parameter 2-89, 2-92

overview 2-87

query design 2-87, 2-90

CQD, description 2-3

CQDR, definition 3-1, 7-1

CRD, definition 2-3

CRDR, definition 3-1, 7-1

IN-4Cisco Unified Contact Center Express Historical Rep

Crystal Reports, for creating custom reports 6-1

CSQ-Agent Summary Report

overview 2-89

CSQU, definition 2-3

custom reports

creating 6-1

Crystal Reports version required 6-1

requirements before creating 6-2

troubleshooting 6-18

custom reports, creating 7-21

D

data, exporting to a data warehouse 5-1

database

exporting data to a data warehouse from 5-1

types 7-23

writing data to 7-20

database tables 2-3

data reconciliation, among reports 7-14

data warehouse, exporting data to 5-1

Detailed Call, CSQ, Agent Report

filter parameters 2-98

overview 2-96

query design 2-97

Detailed Call by Call CCDR Report

FAQ 7-12

filter parameter 2-95

orting Administrator and Developer Guide, Release 7.0(1)

Page 241: Historical Reporting Administrator and Developer Guide ...

Index

overview 2-92

query design 2-93

E

EEMCEDR, defenition 3-1

EEMEASD, defenition 3-1

EEMQADR, defenition 3-1

exporting, data to a data warehouse 5-1

L

legs

See call legs

M

menu choices, reporting on 7-19

MRD, definition 2-3

Multichannel Agent Contact Summary Report

overview 2-100

Multichannel Agent Login Logout Activity Report

overview 2-101

Multichannel CSQ Activity Report

overview 2-101

Cisco Unified Contact Center Express Historical Reporting Adm

N

number of days, calculation in reports 7-22

O

Outbound Agent Detail Performance Report

filter parameter 2-104

overview 2-102

query design 2-102

Outbound Campaign Summary Report

filter parameter 2-108

overview 2-105

query design 2-106

P

Priority Summary Activity Report

filter parameter 2-110

overview 2-108

query design 2-109

R

reason codes, reporting on 7-22

Remote Monitoring Detail Report

overview 2-110

query design 2-111

report charts 1-1

IN-5inistrator and Developer Guide, Release 7.0(1)

Page 242: Historical Reporting Administrator and Developer Guide ...

Index

report definition file 6-10

reporting data, availability 7-18

reports

creating custom 6-1

exporting 4-1

sharing 4-1

web access to 4-1

See also basic reports

reports catalog file 6-17

report types 1-1

RG, definition 2-3

RMD, definition 2-3

RSM, definition 2-3

S

service level agreements, reporting on 7-20

SG, definition 2-3

T

Traffic Analysis Report

FAQ 7-13

overview 2-113

query design 2-113

W

web access to reports 4-1

IN-6Cisco Unified Contact Center Express Historical Rep

web server, for reports 4-1

workflow, custom variables in 7-8, 7-9

orting Administrator and Developer Guide, Release 7.0(1)