Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) Updated: December 2008 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-0833 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 UCBs 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, CCVP, Cisco Eos, Cisco StadiumVision, the Cisco logo, DCE, and Welcome to the Human Network are trademarks; Changing the Way We Work, Live, Play, and Learn is a service mark; and Access Registrar, Aironet, AsyncOS, Bringing the Meeting To You, Catalyst, CCDA, CCDP, CCIE, CCIP, CCNA, CCNP, CCSP, 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, Enterprise/Solver, EtherChannel, EtherFast, EtherSwitch, Event Center, Fast Step, Follow Me Browsing, FormShare, GigaDrive, HomeLink, Internet Quotient, IOS, iPhone, IP/TV, iQ Expertise, the iQ logo, iQ Net Readiness Scorecard, iQuick Study, IronPort, the IronPort logo, LightStream, Linksys, MediaTone, MeetingPlace, 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. (0801R) Any Internet Protocol (IP) addresses used in this document are not intended to be actual addresses. Any examples, command display output, and figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses in illustrative content is unintentional and coincidental. Copyright © 2008 Cisco Systems, Inc. All rights reserved. Table of Contents Preface ...........................................................................................................................................................1 Purpose .....................................................................................................................................................1 Audience ....................................................................................................................................................1 Organization ..............................................................................................................................................1 Related Documentation .............................................................................................................................2 Conventions................................................................................................................................................3 Obtaining Documentation and Submitting a Service Request...................................................................4 Documentation Feedback...........................................................................................................................5 1. Introduction to the Reporting Server...........................................................................................................7 Overview.....................................................................................................................................................7 How the Reporting Server Functions.........................................................................................................7 2. Planning for Reporting..............................................................................................................................11 Sizing........................................................................................................................................................11 Backup and Restore.................................................................................................................................11 Synchronizing Timestamps......................................................................................................................12 3. Managing the Database............................................................................................................................13 Data Retention.........................................................................................................................................14 Data Categories.......................................................................................................................................16 Database Backup.....................................................................................................................................16 Retries: Backup and Purge.......................................................................................................................17 Database Recovery..................................................................................................................................18 How to Perform a Complete Database Restore...................................................................................18 Database Users........................................................................................................................................19 Instance Owner....................................................................................................................................19 Database Administrator.......................................................................................................................19 Application User...................................................................................................................................19 Reporting User....................................................................................................................................19 Failure and Restoration............................................................................................................................20 4. Configuring the Reporting Server.............................................................................................................21 Adding a Reporting Server to the Operations Console............................................................................21 Adding a Reporting Server..................................................................................................................22 Viewing Device State...........................................................................................................................26 Editing a Reporting Server in the Operations Console.............................................................................26 Editing a Reporting Server..................................................................................................................26 Guidelines for Choosing Secure Passwords........................................................................................36 Uploading a Log Messages XML File..................................................................................................37 Downloading a Log Messages XML File.............................................................................................38 Editing the Log Messages XML File....................................................................................................39 Unified CVP Event Severity Levels......................................................................................................39 Applying a License to a Reporting Server Using the Operations Console...............................................40 Applying a License to a Reporting Server...........................................................................................40 Deleting a Reporting Server From the Operations Console.....................................................................41 Deleting a Reporting Server................................................................................................................41 Viewing Reporting Statistics.....................................................................................................................42 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) i Reporting Server Statistics..................................................................................................................42 Finding a Reporting Server in the Operations Console............................................................................44 Finding a Reporting Server..................................................................................................................44 Adding and Removing a Device from a Device Pool................................................................................45 Adding or Removing a Device From a Device Pool.............................................................................45 5. Configuring the VXML Server for Reporting..............................................................................................47 Adding a VXML Server to the Operations Console..................................................................................47 Adding a VXML Server........................................................................................................................47 Editing a VXML Server in the Operations Console...................................................................................49 Editing a VXML Server.........................................................................................................................49 VXML Server General Properties........................................................................................................50 VXML Server Configuration Properties...............................................................................................51 Inclusive and Exclusive VoiceXML Filters for Reporting......................................................................52 Transferring a File to Multiple Devices......................................................................................................54 Procedure............................................................................................................................................55 Procedure............................................................................................................................................55 6. Introduction to the Database Schema.......................................................................................................57 About the Database Schema....................................................................................................................57 Entity-Relationship Diagram.....................................................................................................................58 Table Definitions.......................................................................................................................................59 ActionTypeRef Table............................................................................................................................59 Call Table.............................................................................................................................................59 CallEvent Table....................................................................................................................................61 CallICMInfo Table.................................................................................................................................63 CauseRef Table...................................................................................................................................63 CVPDataRetention Table.....................................................................................................................66 CVPDBSpaceUsed Table....................................................................................................................67 CVPDBVersion Table...........................................................................................................................67 CVPLog Table......................................................................................................................................68 ElementTypeRef Table.........................................................................................................................68 EventTypeRef Table.............................................................................................................................69 OutgoingECCVariable Table................................................................................................................70 ResultRef Table....................................................................................................................................71 SubSystemTypeRef Table....................................................................................................................71 UserInputModeRef Table.....................................................................................................................72 VarDataTypeRef Table.........................................................................................................................72 VoiceActionTypeRef Table....................................................................................................................73 VXMLCustomContent Table.................................................................................................................73 VXMLElement Table............................................................................................................................74 VXMLElementDetail Table...................................................................................................................75 VXMLElementFlag Table.....................................................................................................................76 VXMLError Table..................................................................................................................................77 VXMLHotEvent Table...........................................................................................................................78 VXMLHotLink Table.............................................................................................................................79 VXMLSession Table.............................................................................................................................79 VXMLSessionVariable Table................................................................................................................81 VXMLVoiceInteractDetail Table............................................................................................................82 7. Reporting Against the Database...............................................................................................................83 Unified CVP Call Summary Report..........................................................................................................83 Unified CVP Application Summary Report...............................................................................................84 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) ii Unified CVP VXML Element By Call Report.............................................................................................85 Unified CVP and Unified ICME Report.....................................................................................................85 8. Reporting Best Practices..........................................................................................................................87 CPU Intensive Reports.............................................................................................................................87 Writing Efficient SQL when Creating Reports..........................................................................................88 Zero Duration Calls and Writing Reports..................................................................................................88 Make Sure Data is Secure........................................................................................................................89 Passwords................................................................................................................................................89 Filtering Data to be Stored in the Database.............................................................................................89 Database Sizing Issues............................................................................................................................90 Database Backup and Recovery..............................................................................................................90 Database Retention Settings....................................................................................................................90 Purge and Backup Database Maintenance Tasks....................................................................................90 Allow Only Reporting Users when Querying the Database......................................................................90 Reporting Isolation Level..........................................................................................................................91 Informix, Operating System Time, and Local Time...................................................................................91 Assuring Accurate Time Stamps for Reporting and Logging....................................................................91 Joining Data with an ICM HDS Database.................................................................................................91 Joining Unified CVP and SQL Server Data..............................................................................................91 Index .............................................................................................................................................................93 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) iii List of Figures Figure 1: CVP Architecture...............................................................................................................................................8 Figure 2: Call Flow..........................................................................................................................................................58 Figure 3: ER Diagram......................................................................................................................................................58 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) iv Preface Purpose This document provides information to help you configure and manage the Reporting Server. Audience This guide is intended for Call Center managers, Unified Customer Voice Portal (CVP) system managers, Cisco Unified Intelligent Contact Management Enterprise (ICME) and Cisco Network Application Manager (NAM) system managers, VoIP technical experts, and IVR application developers. Readers of this guide should already have a general understanding of Unified CVP software. Readers should be familiar with general Unified CVP installation and setup procedures. Organization This guide is divided into the following chapters: Chapter Description Chapter 1, "Introduction to the Reporting Server" (page 7) Provides an introductory discussion of the Reporting Server. Chapter 2, "Planning for Reporting" (page 11) Discusses topics to be aware of if you plan to use Unified CVP reporting. Chapter 3, "Managing the Database" (page 13) Discusses concepts to be kept in mind while managing the database. Chapter 4, "Configuring the Reporting Server" (page 21) Discusses how to configure the Reporting Server using the Operations Console. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 1 Preface Related Documentation Chapter Description Chapter 5, "Configuring the VXML Server for Reporting" Discusses how to configure the VXML Server using the (page 47) Operations Console. Chapter 6, "Introduction to the Database Schema" (page 57) Provides information about the database schema. Chapter 7, "Reporting Against the Database" (page 83) Discusses generating reports. Chapter 8, "Reporting Best Practices" (page 87) Provides a list of best practices. Related Documentation Note: Planning your Unified CVP solution is an important part of the process in setting up Unified CVP. Cisco recommends that you read the Cisco Unified Customer Voice Portal Release 7.x Solution Reference Network Design (SRND) guide before configuring your Unified CVP solution. With Unified CVP 7.x, the Planning Guide for Cisco Unified Customer Voice Portal has been incorporated into the SRND guide. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 2 Preface Conventions Unified CVP provides the following documentation: • Cisco Security Agent Installation/Deployment for Cisco Unified Customer Voice Portal provides installation instructions and information about Cisco Security Agent for the Unified CVP deployment.We strongly urge you to read this document in its entirety. • Cisco Unified Customer Voice Portal Release 7.x Solution Reference Network Design (SRND) provides design considerations and guidelines for deploying contact center voice response solutions based on Cisco Unified Customer Voice Portal (CVP) 7.x releases. • Configuration and Administration Guide for Cisco Unified Customer Voice Portal describes how to set up, run, and administer the Cisco Unified CVP product, including associated configuration. • Element Specifications for Cisco Unified CVP VXML Server and Unified Call Studio describes the settings, element data, exit states, and configuration options for Elements. • Installation and Upgrade Guide for Cisco Unified Customer Voice Portal describes how to install Unified CVP software, perform initial configuration, and upgrade. • Operations Console Online Help for Cisco Unified Customer Voice Portal describes how to use the Operations Console to configure Unified CVP solution components. • Port Utilization Guide for Cisco Unified Customer Voice Portal describes the ports used in a Unified CVP deployment. • Programming Guide for Cisco Unified CVP VXML Server and Unified Call Studio describes how to build components that run on the Cisco Unified VXML Server. • Say It Smart Specifications for Cisco Unified CVP VXML Server and Unified Call Studio describes in detail the functionality and configuration options for all Say It Smart plugins included with the software. • Troubleshooting Guide for Cisco Unified Customer Voice Portal describes how to isolate and solve problems in the Unified CVP solution. • User Guide for Cisco Unified CVP VXML Server and Unified Call Studio describes the functionality of Call Studio including creating projects, using the Call Studio environment, and deploying applications to the Unified CVP VXML Server. For additional information about Unified ICME, see the Cisco web site (http://www.cisco.com/ en/US/products/sw/custcosw/ps1001/tsd_products_support_series_home.html) listing Unified ICME documentation. Conventions This manual uses the following conventions: Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 3 Preface Obtaining Documentation and Submitting a Service Request Convention Description boldface font Boldface font is used to indicate commands, such as user entries, keys, buttons, and folder and submenu names. For example: • Choose Edit > Find. • Click Finish. italic font Italic font is used to indicate the following: • To introduce a new term. Example: A skill group is a collection of agents who share similar skills. • For emphasis. Example: Do not use the numerical naming convention. • A syntax value that the user must replace. Example: IF (condition, true-value, false-value) • A book title. Example: See the Cisco CRS Installation Guide. window font Window font, such as Courier, is used for the following: • Text as it appears in code or that the window displays. Example: <html><title>Cisco Systems,Inc. </title></html> < > Angle brackets are used to indicate the following: • For arguments where the context does not allow italic, such as ASCII output. • A character string that the user enters but that does not appear on the window such as a password. Obtaining Documentation and Submitting a Service Request For information on obtaining documentation, submitting a service request, and gathering additional information, see the monthly What's New in Cisco Product Documentation, which also lists all new and revised Cisco technical documentation, at: Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 4 Preface Documentation Feedback http://www.cisco.com/en/US/docs/general/whatsnew/whatsnew.html Subscribe to the What's New in Cisco Product Documentation as a Really Simple Syndication (RSS) feed and set content to be delivered directly to your desktop using a reader application. The RSS feeds are a free service and Cisco currently supports RSS version 2.0. Documentation Feedback You can provide comments about this document by sending email to the following address: mailto:ccbu_docfeedback@cisco.com We appreciate your comments. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 5 Preface Documentation Feedback Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 6 Chapter 1 Introduction to the Reporting Server This section contains the following topics: • Overview, page 7 • How the Reporting Server Functions, page 7 Overview The Reporting Server houses the Reporting Service, and hosts an IBM Informix Dynamic Server (IDS) database management system. The Reporting Service provides historical reporting to a distributed self-service deployment in a call center environment. The system is used to assist call center managers with call activity summary information to manage daily operations. It can also provide operational detail data for various IVR applications. The Reporting Service receives reporting data from the IVR Service, the SIP Service (if used), and the VXML Server. As stated, it is deployed together with an Informix database management system, and it transforms and writes this reporting data into that database. The database schema is prescribed by the Unified Customer Voice Portal (CVP) product, but the schema is fully published so that customers may develop custom reports based on it. The Reporting Service does not itself perform database administrative and maintenance activities such as backups or purges. However, Unified CVP provides access to such maintenance tasks through the Operations Console. How the Reporting Server Functions The diagram below shows the Unified CVP architecture. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 7 Chapter 1: - Introduction to the Reporting Server How the Reporting Server Functions Note: • The Reporting Service and the Database are separated for functional clarity. Together they comprise the Reporting Server. • The connection of the Operations Console to the Call Server, through an OAMP Resource Manager (ORM) is simply indicative. An ORM is co-located with each managed Unified CVP component, and the Operations Console is connected to each component. The ORM is invisible to the end-user. Figure 1: CVP Architecture A Call Server is a physical machine on which resides, for example, the IVR Service, the SIP Service, and the ICM Service. The Call Server uses a central messaging bus to allow each service to communicate. The Reporting Service connects to the message bus either through an in-process plug-in or an out-of-process plug-in depending on whether the Reporting Service resides in the same JVM with the message bus system. It listens to all the messages passing through the message bus and captures call-state change messages sent from SIP or IVR services or reporting messages from a VXML Server. The Reporting Service then parses those messages and converts them into batches of appropriate SQL statements and executes them into a SQL database using the Java Database Connectivity (JDBC) API. The Reporting Service can also receive and process Unified CVP admin messages to perform Unified CVP system administrative tasks, such as turning on or off debugging, querying statistics, and so forth. As the diagram shows, the Reporting Service can be shared by multiple Call Servers that belong to the same Unified CVP deployment. Note: There only needs to be one Reporting Server in a deployment. During temporary database outages, messages are buffered to file and inserted into the database when the database comes back on-line. The amount of time that messages can be buffered depends on the system throughput. If more than one Reporting Server is used, be aware that: • Each Call Server and each VXML Server can be associated with only one Reporting Server • Reports cannot span multiple Informix databases Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 8 Chapter 1: Introduction to the Reporting Server How the Reporting Server Functions A third-party reporting engine, such as Crystal Reports, can be used to generate various reports against the predefined Unified CVP database schema. Unified CVP does not provide a native reporting engine. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 9 Chapter 1: - Introduction to the Reporting Server How the Reporting Server Functions Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 10 Chapter 2 Planning for Reporting The current chapter mentions a few topics that you must be aware of if you plan to use Unified CVP reporting. Chapter 3, Managing the Database (page 13) provides more information. However, for a detailed discussion of this subject, see:Cisco Unified Customer Voice Portal (CVP) Solution Reference Network Design (SRND) guide, and the Hardware and Software System Specification for Cisco Unified Customer Voice Portal Software. This section contains the following topics: • Sizing, page 11 • Backup and Restore, page 11 • Synchronizing Timestamps, page 12 Sizing The Unified CVP reporting solution deployment options, together with related sizing requirements, are discussed in the Cisco Unified Customer Voice Portal (CVP) Solution Reference Network Design (SRND) guide. Backup and Restore Unified CVP utilizes RAID as protection against failure of a single drive in a mirrored pair. However, RAID 10 will not protect against the loss of a site, loss of a machine, or a loss of both mirrored drives. Unified CVP allows customers, by means of the Operations Console, to schedule daily database backups or to run database backups on-demand. This allows the customer to manually restore the database if needed to the last backup time, so that the worst case scenario is losing about 24 hours worth of data. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 11 Chapter 2: - Planning for Reporting Synchronizing Timestamps Database backups are written to the local database server. However, storing backups only on a local machine does not protect the customer against server failure or the loss of a site. Cisco recommends that Unified CVP customers copy the backup files to a different machine, preferably at a different location. Customers who choose to do this must assume all security and backup management responsibilities. Database backups are essentially the same size as the originating database. Due to disk size limitations, Unified CVP can store a maximum of two backups. Customers who wish to store more copies of database backups must copy the backups to another location. Database restore is not supported through the Operations Console. To restore the Unified CVP database, a customer must manually run the Informix command from a command prompt. When restoring a pre-Unified CVP 7.0 version of Unified CVP reporting data, once the restore is complete run the UpgradeReportingRunAsCVP_DBAdmin.bat script, which comes with Unified CVP 7.0. This script will upgrade the schema and recreate the Unified 7.0 stored procedures. Note: Failure to run this script will leave the database and software in an inconsistent state with respect to the rest of the Unified CVP 7.x installation. Synchronizing Timestamps Call Servers, VXML Servers, and Reporting Servers must have their clocks synchronized in order to assure accurate timestamps in both the database and log files. Since Unified CVP components do not themselves synchronize machine times, a cross-component time synchronization mechanism, such as NTP, must be used. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 12 Chapter 3 Managing the Database The Reporting Service does not itself perform database administrative and maintenance activities such as backups or purges. However, Unified CVP provides access to such maintenance tasks through the Operations Console. Caution: The management of database and reporting users must be done using the Operations Console. This ensures that all dependencies are synchronized. The changing of passwords outside of this tool could result in the Reporting Server not being able to connect to the database. These same conditions will arise if passwords expire. If you implement a password expiration policy, then ensure that you remember to use the Operations Console to change the Informix, Database Administrator, and Database Users (see "Database Users" (page 19)) passwords before the passwords expire to avoid the possibility of data loss and/or downtime. It will be useful to familiarize yourself with the database management concepts discussed in this chapter. Note: The following maintenance tasks are supported by Unified CVP: database backups and data purges. Database backup and purge cannot run at the same time. Purge should be scheduled at least 3 hours before a backup. These jobs, as well as on-demand backup, should be run at low call and reporting volume times. From the perspective of Unified CVP, database backups are optional, data purges are mandatory. However, from the perspective of the user, database backups should not be considered optional. See the discussion below. The database backup and purge maintenance tasks are created as Windows Scheduled Tasks, and can be viewed in the Scheduled Tasks window (Start > Programs > Accessories > System Tools > Scheduled Tasks). Periodically, you should check the Scheduled Tasks to ensure the Last Run Time was as expected and there are no status messages. This section contains the following topics: • Data Retention, page 14 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 13 Chapter 3: - Managing the Database Data Retention • • • • • • Data Categories, page 16 Database Backup, page 16 Retries: Backup and Purge, page 17 Database Recovery, page 18 Database Users, page 19 Failure and Restoration, page 20 Data Retention Via the Operations Console, users are able to select the time of day to run database purge, and to set the number of days of data to be retained by data category. During schema creation, default data retention values are specified for each data category. Note that a high level category, such as Call, cannot have a lower retention time than a dependent category, such as Call Event. Note: When you schedule a purge from the Operations Console, two Windows jobs are scheduled on the Reporting Server. The time that you choose is used to schedule what is referred to as the "Nightly purge" job. The other job is referred to as the "Midday purge" and is automatically scheduled 12 hours from the Nightly purge. So, for example, if you schedule a purge at 2 A.M., then the Nightly purge is run at 2 A.M. and the Midday purge at 2 P.M. • The Nightly purge performs a purge if necessary (as required by a data retention value, or for an emergency purge—see below), in addition to other tasks like updating the database statistics. If a purge is performed, the statistics are updated after the purge. In addition, on Sundays, the Nightly purge also copies the Informix log file to a backup directory, creates a new log file and deletes the old. The Nightly purge should be scheduled at a time of low call and reporting volume. • The midday purge is the same as the nightly purge. In the event that data volume spikes during the day and an emergency purge is required, it will be handled at midday. Midday purge also serves as a backup for the nightly purge. If the nightly purge fails to allocate new fragments for new data, this will be taken care of by the midday purge. Even if a purge occurs, this process is not system intensive in the same way that the Nightly purge is. • During a purge, reporting users may be disconnected from the database, if they are holding locks that contend with purge. Notify reporting users not to run reports at this time. If the number of days of data that you chose to retain cannot be contained within the database, then the database will 'emergency' purge old data to create space for new data. Emergency purge is, therefore, a critical safety mechanism for Unified CVP. If used space has grown past the system's high water mark, the user will be notified by an SNMP trap message and data will be purged. The SNMP notification will alert the user to the loss of data and request that they shrink their 'retention days' data settings. Users should reduce the number of actual days of data retained until emergency purge is no longer required. Additionally, users can reduce the data generated by means of data filters (for VXML Server application detail data filtering, see Chapter 4, "Configuring the VXML Server for Reporting" (page 47)). During a database purge operation, the Reporting Server disconnects from the database (though for no more than 10 minutes) and starts buffering messages in memory until the purge is done. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 14 Chapter 3: Managing the Database The same memory limitations as described in the section "Failure and Restoration" (page 20) apply. The remainder of this page is intentionally left blank. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 15 Chapter 3: - Managing the Database Data Categories Data Categories The following data categories exist for Unified CVP. Note that a high level category, such as Call, cannot have a lower retention time than a dependent category, such as CallEvent. For each category, the default data retention times, in days, is given within parentheses. level 1: Call (30) level 2: -Call Event (30) level 2: -VoiceXML Session (30) level 3: --VoiceXML Element (15) level 4: ---VoiceXML ECC Variable (15) level 4: ---VoiceXML Interact Detail (15) level 4: ---VoiceXML Session Variable (15) level 4: ---VoiceXML Element Detail (15) Database Backup Unified CVP allows users to turn the scheduling of data backups on or off, as well as to run backups on-demand. Backups are made to the Reporting Servers' local file system. By default, scheduled backups are turned off. Caution: Unified CVP backup scheduling is an optional feature. Backup is the responsibility of the user. Data loss may occur if the backing up of files is not managed appropriately by the user. If Unified CVP backup scheduling is turned on, the backup frequency is once per day. Backups should be scheduled to run no sooner than 3 hours after the scheduled purge job. Additionally, users can run a backup on demand—as long as another backup, or a purge, is not already running. All database backups are performed and stored on the local machine. Due to space limitations, a maximum of two backups and a minimum of one backup will be available at any time on the local machine. Having two files is critical. If the system was to fail while writing a backup, and the failure was such that a restore is necessary, the older backup file would be required for restore. It is a best practice to: • Keep a given backup for at least two weeks • Check the integrity of the backup periodically Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 16 Chapter 3: Managing the Database Retries: Backup and Purge Unified CVP uses the Informix backup utility ontape (for both backup and restore). Unified CVP names backup files as follows. When a new backup launches—either scheduled, or on demand from the Operations Console—the new file is named cvp_backup_data. The Unified CVP backup script has been written to first copy the last backup file cvp_backup_data to cvp_backup_data.old. This always leaves two backup files on the local system and makes it easy for Unified CVP administrators to script copy jobs to move the files. The backup script ensures that two backups cannot be launched at the same time. Note: The backup script also ensures that a backup cannot be launched if a purge is underway, and vice versa. Storing a backup on the local machine does not protect against failure of that machine or loss of a site. Cisco strongly recommends that customers manually or automatically create a job to copy the cvp_backup_data.old file to a separate machine, preferably at a separate location. Again, the user is responsible for managing backup data. Note: Only the cvp_backup_data.old file can be copied. The cvp_backup_data file can not be copied. Attempting to copy the cvp_backup_data file will lock the file and prevent another backup from running. For information on configuring backups, see Chapter 3, "Configuring the Reporting Server" (page 21). Retries: Backup and Purge Occasionally, a backup or purge cannot run when scheduled. For example, if an on-demand backup is running when a purge is scheduled to run, the purge will be prevented from running. Retries of scheduled backups or purges are performed according to the following rules. Note: There are no retries for an on-demand backup. • A scheduled backup retries every 10 minutes, for up to 4 hours. • A purge retries every 10 minutes, for up to 6 hours. • At the end of 4 hours (for a backup) or 6 hours (for a purge), if the operation has not succeeded, retries stop and an SNMP alert is sent. • If both a backup and a purge are retrying simultaneously, there is no guarantee as to which operation will run first. • If a lock (the mechanism preventing a backup or purge from running) is over 12 hours old, the system clears it. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 17 Chapter 3: - Managing the Database Database Recovery Database Recovery Unified CVP database recovery returns the database to the state of the most recent complete backup. For example, if the user schedules a backup at 01:00 and restores the database at 23:00, the same day, the restored database is in the state it was in at 01:00. Even though the Reporting Server can operate in partial mode, if the database is offline, Cisco recommends stopping the Reporting Server during a database restore to ensure the database is able to control all system resources to minimize the time it takes to complete the database restore. Note: Data loss will occur if the Reporting Server is turned off and the message bus exceeds its temporary persistence capabilities. Caution: Prior to and following a database restore, the following steps must be performed: 1. Before the restore, disable scheduled tasks (backup, purge). 2. After the restore, re-enable scheduled tasks. How to Perform a Complete Database Restore The following task effects a complete restore of the full database if performed on the original database server. It assumes that the backup was performed through Unified CVP. Step 1 Go to Windows Services and stop the Informix IDS Service Step 2 At the command line type: ontape –r Step 3 Answer the prompts with the following answers: Step 4 a. Continue Restore? y b. Do you want to back up the logs? n c. Restore a level 1 archive? n d. Do you want to restore log tapes? n After the program terminates, wait at least 5 minutes. At the command prompt, check the status of Informix IDS Service by typing : onstat a. If it returns 'IBM Informix Dynamic Server Version 10.00.xxx-- Fast Recovery…' then wait another 5 minutes and recheck the status by typing: onstat - (10.00.xxx where xxx is the database subversion number). Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 18 Chapter 3: Managing the Database Database Users b. If it returns 'IBM Informix Dynamic Server Version 10.00.xxx -- Quiescent…', change the database to multiuser mode by typing: onmode -m then wait 2 minutes, and recheck the status by typing: onstat – c. If it returns 'IBM Informix Dynamic Server Version 10.00.xxx -- On-Line', the database is ready to support the Unified CVP application Database Users Unified CVP defines four categories of database users. The four categories are instance owner (informix), database administrator, application user, and reporting user. Instance Owner During the Unified CVP installation, a user named informix is created. This user owns the Informix instance and can run the IDS service. This account should never be used to access the Unified CVP database. Database Administrator The cvp_dbadmin user will create, update, and own the database. This account should not be used to run the database or to run reports against the system. The cvp_dbadmin user can create and delete reporting users and perform database administrative activities, such as purge and backup. Application User The Unified CVP JDBC uses cvp_dbuser to access the Informix database. This user has the rights to connect, insert, update, and delete records in the Unified CVP database. If this user's password expires, then data insertion and purge will fail. This could result in data loss. Reporting User Reporting users are created and deleted by a database administrator using the Operations Console. Multiple reporting users are allowed. Reporting users have read-only access to the Unified CVP database. Only reporting users should be allowed to generate reports. As stated previously, reporting users have read-only database access; therefore, they cannot accidentally modify the database schema or database data. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 19 Chapter 3: - Managing the Database Failure and Restoration Failure and Restoration • If the Reporting Server fails, messages destined for the Reporting Server are buffered by the Call Server, in memory, up to 200,000 messages. After that limit is reached, all new messages are dropped. • If the database connection fails, the Reporting Server sends out an SNMP alert and starts persisting messages to a file, up to a user specified limit. During this time the Reporting Server stays In Service. When 75% of the specified limit is reached, a warning is written to the log file. Once 100% of the limit is reached, an SNMP alert is sent out and the Reporting Server goes into Partial Service—any new messages may be dropped. When the database connection comes back up, the Reporting Server goes into recovery mode and changes its state to Partial Service if it is not in that state already. It then starts reading messages from the file and committing them to the database. Depending on the size of the file, it may take a long time (sometimes hours) to commit all of the data to the database. Any new messages that come in during recovery will be buffered in memory. There is, however, a limit to the number of messages that the Reporting Server can buffer. This is true regardless of the mode or state it is in. When the number of buffered messages reaches 100,000, an SNMP alert is sent out to warn the user. At 200,000 another SNMP alert is sent out and all new messages' detail information is dropped—keeping only basic data like call, call event, and session information. Also at 200,000, the Reporting Server changes its state to Partial Service, if it is not already in that state. After the total number of buffered messages reaches 300,000, another SNMP alert is sent out and all new messages are dropped from that point forward. When the number of messages in memory drops back below 50,000, an SNMP alert is sent out stating that the queue size is back to normal, and the Reporting Server’s state goes back to In Service. • If, on startup, a persistent file exists, the Reporting Server stays in Partial Service and goes into recovery mode as described above. • During a database purge operation, the Reporting Server disconnects from the database and starts buffering messages in memory until the purge is done. The same memory limitations as described above apply in this case as well. Caution: When the Reporting Server is in Partial Service, there are no guarantees that new messages will be kept and committed to the database. They will be buffered in memory for as much as possible, but at some point they may be dropped either partially or fully. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 20 Chapter 4 Configuring the Reporting Server You can configure and manage the Reporting Server using the Unified CVP Operations Console, a web-based interface from which you can configure the Unified CVP components in the Unified CVP solution. From the Device Management menu, Reporting Server option, you can configure one or more Reporting Servers. Reporting provides historical reporting to a distributed self-service deployment in a call center. The Reporting Server receives reporting data from one or more Call Servers and VXML servers, and stores that data in an Informix database. Call data is stored in a relational database, on which you can write custom reports. Administrators can use the Operations Console to schedule data purge and database backups. Multiple Call Servers can send data to a single Reporting Server. You can use third-party reporting tools, such as, Crystal Reports to generate and view reports on call data. This section contains the following topics: • • • • • • • Adding a Reporting Server to the Operations Console, page 21 Editing a Reporting Server in the Operations Console, page 26 Applying a License to a Reporting Server Using the Operations Console, page 40 Deleting a Reporting Server From the Operations Console, page 41 Viewing Reporting Statistics, page 42 Finding a Reporting Server in the Operations Console, page 44 Adding and Removing a Device from a Device Pool, page 45 Adding a Reporting Server to the Operations Console Adding a Reporting Server to the Operations Console adds its configuration to the Operations Console database and adds it to the list of Reporting Servers in the Control Panel. When you add a Reporting Server, you must associate it with one or more Call Servers. Call data for all SIP, H.323, and VoiceXML calls handled by the Call Servers is stored in the Reporting Database. You can also add the server to one or more logical groups of devices, called device pools. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 21 Chapter 4: - Configuring the Reporting Server Adding a Reporting Server to the Operations Console Adding a Reporting Server Create a new Reporting Server either by using an existing Reporting Server configuration as a template or by filling in its values from scratch. Before You Begin You must configure the Call Server to associate with the Reporting Server before configuring the Reporting Server. Collect the following information about the Reporting Server and Reporting Database during the installation of Unified CVP software: Information Needed: • Host name of the Call Server associated with the Reporting Server • Host name and IP address of the server on which the Reporting Database resides • The Reporting password that was entered during installation Procedure To add a Reporting Server: Step 1 Choose Device Management > CVP Reporting Server. A window listing Reporting Servers opens. Note: To use an existing Reporting Server as a template for creating the new Reporting Server, select the Reporting Server by clicking the radio button preceding it and then click Use As Template. Step 2 Click Add New. The Reporting Server Configuration window opens to the General Tab. Step 3 Enter the IP Address and Hostname for the Reporting server and any other desired information. Step 4 Associate one or more Call Servers to the Reporting server by selecting a Call Server listed in the Available pane and clicking the right arrow to add it to the Selected pane. Step 5 Select the Reporting Properties tab and configure reporting properties. Step 6 Optionally, select the Device Pool tab and add the Reporting Server to a device pool. Step 7 Optionally, select the Infrastructure tab and configure log file and syslog settings. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 22 Chapter 4: Configuring the Reporting Server Adding a Reporting Server to the Operations Console Step 8 When you finish configuring the Reporting Server: a. click Save to save the settings in the Operations Server database b. Or click Save & Deploy to save the settings in the Operations Server database and deploy the changes to the Reporting Server See Also Deleting a Reporting Server (page 41) Editing a Reporting Server (page 26) Reporting Server General Tab Configuration Settings (page 23) Reporting Server Properties Tab Configuration Settings (page 24) Adding and Removing a Device from a Device Pool (page 45) Reporting Server Infrastructure Settings (page 24) Viewing Device State (page 26) Configuring General Reporting Server Information You can configure settings that identify the Reporting server, associate it with one or more Call Servers, and enable or disable security on the General Tab. Table 1: Reporting Server General Tab Configuration Settings Field Description Default Range IP Address The IP address of the Reporting server None Valid IP address Hostname The host name of the Reporting server machine None Valid DNS name, which can include letters in the alphabet, the numbers 0 through 9 Description An optional text description for the Reporting server None Up to 1,024 characters General Enable Secure Select to enable secure communications Off Communication with the between the Operations Server and this Operations Console component. The Reporting Server is accessed using SSH and files are transferred using HTTPS. On or Off You must configure secure communications before you enable this option. See Chapter Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 23 Chapter 4: - Configuring the Reporting Server Adding a Reporting Server to the Operations Console Field Description Default Range 6 in the Configuration and Administration Guide for Unified Customer Voice Portal. Associate Call Servers A given Call Server can only be associated with one Reporting Server. Select one or more Call Servers to associate None with the Reporting Server. You must select at least one Call Server. Call data for all SIP, H.323, and VoiceXML calls handled by this Call Server will be stored in the Reporting Database. Click the right arrow to add a Call Server to the Selected pane. Click the left arrow to remove a Call Server from the Selected pane. Configuring Reporting Properties You can configure Reporting Server settings on the Reporting Properties Tab. Table 2: Reporting Server Reporting Properties Tab Configuration Settings Field Description Default Range Restart Required Configuration Enable Reporting Enables the Reporting Server to Yes receive call data from the associated Call Server(s). Yes or No Yes Max. File Size (MB): Defines the maximum size of the file 100 used to record the data feed messages during a database failover. Note that this can be limited by the amount of free disk space. 1 through 1000 No Enables Quality of Service (QoS) default between the Reporting Server and the Call Server. af11, af12, af13, Yes af21, af22, af23, af31, af32, af33, af41, af42, af43, cs1, cs2, cs3, cs4, cs5, cs6, cs7,default, ef QoS Select QoS Level Note: For more information, see Implementing Quality of Service Policies with DSCP (Document ID: 10103) at http://www.cisco.com/ warp/public/105/dscpvalues.html. Configuring Reporting Server Infrastructure Settings The Reporting Server publishes statistics on the total number of reporting events received from the VXML Server, the SIP Service, and the IVR Service. It also publishes the total number of Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 24 Chapter 4: Configuring the Reporting Server Adding a Reporting Server to the Operations Console times the Reporting Server writes data to the Reporting database. You can configure the interval at which the Reporting Server publishes statistics, the maximum log file and directory size, and the details for recording syslog messages on the Reporting Server Infrastructure tab. Table 3: Reporting Server Infrastructure Tab Configuration Settings Field Description Default Range Configuration: Thread Management Maximum Threads (Required) The maximum thread pool size in the 300 Reporting Server Java Virtual Machine. 100 - 1000 The Reporting Server publishes statistics at this 30 minutes interval. 10 - 1440 (Required) Maximum size of the log file in 5 MB megabytes. The log file name follows this format: CVP.DateStamp.SeqNum.log example: 1 MB - Max Log Directory Size Advanced Statistics Aggregation Interval Log File Properties Max Log File Size Max Log Dir Size divided by Max Log File Size cannot be greater than 5,000. For example: CVP.2006-07-04.00.log After midnight each day, a new log file is automatically created with a new date stamp. Also, when a log file exceeds the max log file size, a new one with the next sequence number is created, for example, when CVP.2006-07-04.00.log reaches 5 MB, CVP.2006-07-04.01.log is automatically created. Max Log Directory Size (Required) Maximum size of the directory containing Reporting Server log files. 500 MB 500 - 50000 MB Max Log File size < Max Log Directory Size Max Log File size > 1 Max Log Dir Size / Max Log File Size cannot be greater than 5.000 Configuration: Syslog Settings Syslog Server Name of the server to which the Reporting Server None writes log messages. Not applicable Syslog Server Port Number Port number of the Syslog server. Any available port number. Valid port numbers are integers between 1 and 65535. Backup Server Name of a backup server to which the Reporting None Server writes log messages. None Not applicable Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 25 Chapter 4: - Configuring the Reporting Server Editing a Reporting Server in the Operations Console Field Description Default Range Backup Server Port Number Port number of the backup Syslog server. None Any available port number. Valid port numbers are integers between 1 and 65535. Viewing Device State When you select a device from the Device Management menu, the following information is listed about all devices of that type that have been added to the Operations Console: Device Information: • Hostname - The host name of the device. • IP Address - The IP address of the device. • Device state - A device can be in one of two states: configured or invalid. A configuration can become invalid if the device is reinstalled. To clear this state, edit the device and click Save & Deploy. For other possible causes and solutions, refer to the Troubleshooting Guide for Cisco Unified Customer Voice Portal. • Description - An optional text description for the device. Editing a Reporting Server in the Operations Console You can change the properties of a Reporting Server that has been added to the Operations Console. In edit mode, the Database Administration and File Transfer menus are also available. From the Database Administration menu, you can manage reporting users, run database backups, configure database purge, and view database details. From the File Transfer menu, you can transfer one license file at a time to the Operations Console and then apply that license to a Reporting Server. You can also transfer the Log Messages XML file between the Operations Console and the Reporting Server. Editing a Reporting Server Procedure To edit a Reporting Server: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 26 Chapter 4: Configuring the Reporting Server Editing a Reporting Server in the Operations Console Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. The Edit Reporting Server Configuration window opens. Step 3 If you have not already applied a license, select File Transfer in the toolbar and then click Licensing. The File Transfer page displays. Step 4 On the General Tab, change the desired general information. You cannot change the IP address or hostname of the Reporting Server. Step 5 Select the Reporting Properties Tab, then configure reporting properties. Step 6 Optionally, select the Device Pool tab and add the Reporting Server to a device pool. Step 7 Optionally, select the Infrastructure tab and configure log file and syslog settings. Step 8 When you finish configuring the Reporting Server: a. click Save to save the settings in the Operations Server database b. OR click Save & Deploy to save the settings in the Operations Server database and deploy the changes to the Reporting Server See Also Deleting a Reporting Server (page 41) Adding a Reporting Server (page 22) Configuring Reporting Properties (page 24) Adding and Removing a Device from a Device Pool (page 45) Finding a Reporting Server (page 44) Viewing Device State (page 26) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 27 Chapter 4: - Configuring the Reporting Server Editing a Reporting Server in the Operations Console Changing a Reporting Database User Password The Unified CVP installation procedure creates the following three user accounts and sets an initial password for each account. You can change passwords from the Reporting Server screen in edit mode, but you can only change one user password at a time. • Informix User (Instance Owner) - Starts and stops the Reporting database, using Informix tools. • Unified CVP Database Administrator - Uses the Operations Console to run backups, schedule purges, check database used space, and add and remove Reporting users. • Unified CVP Database User (Application User) - Connects, inserts, and updates records in the Informix database. This user cannot modify the Reporting schema. Procedure To change a reporting database user password: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Select the Reporting Server to edit by clicking the link to its name under the Hostname column. Step 3 Click Edit. The Edit Reporting Server Configuration window opens with the current settings displayed. Step 4 Select the Database Administration menu in the toolbar, then select Change User Passwords. The Reporting Server: Change User Passwords page opens, displaying the IP address and host name for the currently selected Reporting Server. Step 5 In the User field, use the drop-down menu to select the user whose password you want to change. Step 6 In Old Password field, enter the existing password for that user. Step 7 In the New Password field, enter the new password. Note: Passwords must follow guidelines for secure passwords. Step 8 In the Reconfirm Password field, retype the new password. Step 9 Click Save & Deploy to save the changes to the Operations Console database and deploy them to the Reporting Server. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 28 Chapter 4: Configuring the Reporting Server Editing a Reporting Server in the Operations Console See Also Running Reporting Database Backups (page 31) Configuring Reporting Database Purge (page 33) Managing Reporting Users (page 29) Guidelines for Choosing Secure Passwords (page 36) Viewing Reporting Database Details (page 35) Getting Reporting Server Statistics (page 43) Managing Reporting Users The Unified CVP Database Administrator should create reporting users to run reports against the Reporting database. Reporting users should have read-only access to the Reporting database, so they cannot accidentally modify the database schema or data. Adding New Reporting Users To add a new reporting user to the Reporting Server: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. You can also search for a Reporting Server. The Edit Reporting Server Configuration window opens. Step 3 Select the Database Administration menu in the toolbar, then select Manage Reporting Users. The Reporting Server: Manage Users window opens, listing the IP address and host name for the currently selected Reporting Server. Step 4 In the Manage Users pane, click Add User. Step 5 In the Username field, enter the name for the user. Step 6 In the Password field, enter a password for the new user. Step 7 In the Reconfirm Password field, retype the password. Step 8 In the Database Administrator Password field, enter the Database Administrator's password . Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 29 Chapter 4: - Configuring the Reporting Server Editing a Reporting Server in the Operations Console Step 9 Click Add to add the user. See Also Changing Reporting User Passwords (page 30) Removing Reporting Users (page 31) Changing Reporting Database User Passwords (page 27) Finding a Reporting Server (page 44) Changing a Reporting User's Password To change a reporting user's password: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. You can also search for a Reporting Server. The Edit Reporting Server Configuration window opens. Step 3 Select the Database Administration menu in the toolbar, then select Manage Reporting Users. The Reporting Server: Manage Users window opens, listing the IP address and host name for the currently selected Reporting Server. Step 4 In the Manage Users pane, click Change Password. Step 5 From the Available users list, select the user whose password you want to change and click the left arrow. The user name will appear in Username field. Step 6 In the Old Password field, enter the user's original password. Step 7 In the New Password field, enter the new password. Step 8 In the Reconfirm Password field, retype the new password. Step 9 Click Change to make the change. See Also Changing Reporting Database User Passwords (page 27) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 30 Chapter 4: Configuring the Reporting Server Editing a Reporting Server in the Operations Console Changing Reporting User Passwords (page 30) Removing Reporting Users (page 31) Adding New Reporting Users (page 29) Changing Reporting Database User Passwords (page 27) Finding a Reporting Server (page 44) Removing Reporting Users To remove a reporting user from the Reporting Server: Step 1 Choose Device Management > Reporting Server. The Find, Add, Delete, Edit Reporting Server window opens. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. You can also search for a Reporting Server. The Edit Reporting Server Configuration window opens. Step 3 Select Database Administration in the toolbar, then select Manage Reporting Users. The Reporting Server: Manage Users window opens; it lists the IP address and host name for the currently selected Reporting Server. Step 4 From the Available users list, select the user to remove and click the left arrow. Step 5 In the Database Administrator Password field, enter the Database Administrator's password. Step 6 Click Delete to delete the selected user. See Also Adding New Reporting Users (page 29) Changing Reporting User Passwords (page 30) Changing Reporting Database User Passwords (page 27) Finding a Reporting Server (page 44) Running Reporting Database Backups By default, Reporting Database backups are disabled. You can choose to schedule backups of the Reporting database or run backups on demand. When you enable backups, files are saved Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 31 Chapter 4: - Configuring the Reporting Server Editing a Reporting Server in the Operations Console to the Reporting Server's local file system. You are responsible for managing backed-up files. Scheduled backups occur once each day. You can configure the time of day at which backups occur. A maximum of two backups and a minimum of one backup will be available at any time on the local machine. Procedure To run a reporting database backup: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Click Edit. The Reporting Server Configuration window opens with the current settings displayed. Step 3 Select the Database Administration menu in the toolbar, then select Reporting Database Backups. The Reporting Server - Database Backup Activities page appears; it lists the IP address and host name for the currently selected Reporting Server. Step 4 To launch a backup immediately, click Backup Now. To schedule a time for daily backups, select Schedule Daily Backups and then select the hour and minute of the start time. Step 5 Enter the Database Administrator Password and click Save & Deploy. See Also Changing a Reporting Database User Password (page 27) Configuring Reporting Database Purge (page 33) Managing Reporting Users (page 29) Viewing Reporting Database Details (page 35) Getting Reporting Server Statistics (page 43) Cancelling Reporting Database Backups By default, Reporting Database backups are disabled. You can choose to schedule backups of the Reporting database or run backups on demand. You can cancel daily backups at any time. Procedure To cancel a reporting database backup: Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 32 Chapter 4: Configuring the Reporting Server Editing a Reporting Server in the Operations Console Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. The Edit Reporting Server Configuration window opens with the current settings displayed. Step 3 Select the Database Administration menu in the toolbar, then select Reporting Database Backups. The Reporting Server - Database Backup Activities page displays. The IP address and host name for the currently selected Reporting Server are listed. Step 4 Click Cancel Daily Backups. Step 5 Enter your Database Administrator Password and click Save & Deploy. See Also Changing a Reporting Database User Password (page 27) Configuring Reporting Database Purge (page 33) Managing Reporting Users (page 29) Viewing Reporting Database Details (page 35) Getting Reporting Server Statistics (page 43) Configuring Reporting Database Purge You can purge call data from the Reporting Database. Data purge is run daily at the time you specify. Each category of call data is retained for a default number of days, before being purged. Procedure To configure Reporting Database purge settings: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. The Edit Reporting Server Configuration window opens with the current settings displayed. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 33 Chapter 4: - Configuring the Reporting Server Editing a Reporting Server in the Operations Console Step 3 Select the Database Administration menu in the toolbar, then select Data Purge. The Reporting Server - Database Purge Settings page opens, displaying the IP address and host name for the currently selected Reporting Server. Step 4 In the Data Purge section of the page, you can change the data retention time for each category of data. Step 5 Select the hours and minutes to run the purge each day. Step 6 Enter your Database Administrator Password and click Save & Deploy. See Also Running Reporting Database Backups (page 31) Cancelling Reporting Database Backups (page 32) Changing a Reporting Database User Password (page 27) Managing Reporting Users (page 29) Viewing Reporting Database Details (page 35) Getting Reporting Server Statistics (page 43) Categories of Reporting Data that Can Be Purged Using the Operations Console, you can select the time of day to run database purge, and set the number of days the data will be retained by data category. The following table describes each category of data that you can purge from the Reporting Database and lists the default number of days that this data is kept before purging. Note: A high level category, such as Call, cannot have a lower retention time than a dependent category, such as Call Event. Table 4: Number of Days to Retain Data Before Purging Data Category Description Default Call Detailed information about calls received by Unified CVP. 30 Call Event Call state change event messages published by the Call Server and VXML 30 Server. SIP and IVR services publish call state change event messages when a SIP call or H.323 call changes its state. Messages include call initiated, transferred, terminated, aborted, or an error state. VoiceXML Session VoiceXML session data includes application names, session ID, and 30 session variables. Session variables are global to the call session on the VXML Server. Unlike element data, session data can be created and modified by all components (except the global error handler, hot events, and XML decisions). Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 34 Chapter 4: Configuring the Reporting Server Editing a Reporting Server in the Operations Console Data Category Description Default VoiceXML Element A VoiceXML element is a distinct component of a voice application call 15 flow whose actions affect the experience of the caller. A VoiceXML element contains detailed script activity to the element level, such as, Call Identifiers, activity time stamp, VoiceXML script name, name and type of the VoiceXML element, and event type. VoiceXML ECC Variable Expanded Call Context (ECC) variables that are included in VoiceXML 15 data. Unified CVP uses ECC variables to exchange information with Unified ICME. For a complete list and description of ECC variables, see the Configuration and Administration Guide for Cisco Unified Customer Voice Portal . VoiceXML Voice Interact Detail Application detailed data at the script element level from the VXML Server call services. This data includes input mode, utterance, interpretation, and confidence. 15 VoiceXML Session Variable VoiceXML session variables are global to the call session on the VXML 15 Server. VoiceXML Element Detail The names and values of element variables. 15 The data categories are hierarchical as described in Data Categories (page 16). Viewing Database Details You can view the size of a Reporting database. Procedure To view database details: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. The Edit Reporting Server Configuration window opens with the current settings displayed. Step 3 Select the Database Administration menu in the toolbar, then select Database Details. The Reporting Server - Disk Drives: Housing Database Files page opens, displaying the IP address and host name for the currently selected Reporting Server along with the following database information: Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 35 Chapter 4: - Configuring the Reporting Server Editing a Reporting Server in the Operations Console Reporting Database Details: • Database Name - Name of the database • Total Size (MB) - Total data size • Free size (MB) - Amount of space that has not been taken by extents • Used Size (MB) - Data space used • Extent size (MB) - Space reserved for tables. This size may be greater than the total size. • % Free Size - The percent of space that has not been extended (reserved). This might be greater than 100%. See Also Running Reporting Database Backups (page 31) Cancelling Reporting Database Backups (page 32) Changing a Reporting Database User Password (page 27) Configuring Reporting Database Purge (page 33) Managing Reporting Users (page 29) Getting Reporting Server Statistics (page 43) Guidelines for Choosing Secure Passwords Note: Reporting passwords are subject to both the Unified CVP password policy, which is indicated below, and the password policy enforced by the operating system of the computer on which the Reporting Server resides. For each aspect of the password, the Reporting password must meet the requirement of the more restrictive policy. Passwords must meet all the following criteria: Passwords must only contain the following ASCII characters: • Maximum password length is eighty (80) characters. • Minimum password length is eight (8) characters. • The password must contain characters from at least three of the following classes: lowercase letters, uppercase letters, digits, and special characters. – Lowercase letters (abcdefghijklmnopqrstuvwxyz) – Uppercase letters (ABCDEFGHIJKLMNOPQRSTUVWXYZ) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 36 Chapter 4: Configuring the Reporting Server Editing a Reporting Server in the Operations Console – Digits (0123456789) – The following special characters: !"#$%&'()*+,-./ :;<=>?@ [\]^_` {|}~ • No character in the password can be repeated more than three (3) times consecutively. • Password must not repeat or reverse username. Password is not "cisco", "ocsic", or any variant obtained by changing the capitalization of letters therein. Uploading a Log Messages XML File You can download a Log Messages XML file, CVPLogMessages.xml, to your local machine from any Unified CVP server. After downloading the file, you can edit it to configure the way Unified CVP event notifications are handled. Then after you edit the file, you can upload the customized file to any Unified CVP server. If you want to transfer multiple files at a time, use the Bulk Administration menu. Procedure To upload a Log Messages XML file from a Unified CVP Server to the Operations Console: Step 1 From the Device Management menu, choose the type of server to which you want to upload a syslog XML file. For example, to upload a file to a VXML Server, choose Device Management > VXML Server. The Find, Add, Delete, Edit window lists servers that have been added to the control panel. Step 2 Select a server by clicking on the link in its Hostname field or by clicking the radio button preceding it and then clicking Edit. Step 3 Select File Transfer in the toolbar and then click Log Messages XML File Upload. The Log Messages XML Upload page displays. Step 4 In the Select a Log Messages XML file from your local PC text box, enter a file name or click Browse and search for the file on your local system.. Step 5 Click Upload to transfer the selected file to the Unified CVP Server. Step 6 Shut down and then start the corresponding Unified CVP Server. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 37 Chapter 4: - Configuring the Reporting Server Editing a Reporting Server in the Operations Console See Also Downloading a Log Messages XML File (page 37) Editing the Log Massages XML File (page 39) Bulk Administration File Transfer (page 54) Downloading a Log Messages XML File You can download a Log Messages XML file, CVPLogMessages.xml, to your local machine from any Unified CVP server. After downloading the file, you can edit it to configure the way Unified CVP event notifications are handled. Then after you edit the file, you can upload the customized file to any Unified CVP server. If you want to transfer multiple files at a time, use the Bulk Administration menu. Procedure To download a Log Messages XML file from the Operations Console to a Unified CVP Server: Step 1 From the Device Management menu, choose the type of server from which you want to download a syslog XML file. For example, to download a file to a VXML Server, choose Device Management > VXML Server. The Find, Add, Delete, Edit window lists any servers that have been added to the control panel. Step 2 Select a server by clicking on the link in its Hostname field or by clicking the radio button preceding it and then clicking Edit. Step 3 Select File Transfer in the toolbar and then click Log Messages XML File Download. The Log Messages XML Download page displays. Step 4 Click Download to transfer the XML file to the server. A message indicates that this operation might take some time. Click OK to continue with the download or click Cancel to cancel the download. See Also Uploading a Log Messages XML File (page 37) Editing the Log Messages XML File (page 39) Bulk Administration File Transfer (page 54) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 38 Chapter 4: Configuring the Reporting Server Editing a Reporting Server in the Operations Console Editing the Log Messages XML File The log messages XML file, CVPLogMessages.xml, defines the severity, destination (SNMP management station or Syslog server) and possible resolution for Unified CVP log messages. This file also identifies an event type identifier and message text identifier for each event. The identifiers are stored in the resource properties file, CVPLogMessages.properties. Each Unified CVP Call Server, VXML Server, and Reporting Server has a log messages XML file and log message file. You can edit the CVPLogMessages.xml file on a particular Unified CVP server to customize the severity, destination and possible resolution for each event that the server generates. You can also edit the CVPLogMessages.properties file to change the text of the message that is generated when an event occurs on that server. Use any plain-text editor (one that does not create any markup) or XML editor to edit the CVPLogMessages.xml file. Use a resource file editor, if available, to edit the CVPLogMessages.properties file. If a resource file editor is not available, use a text editor. Message Element Possible Values What it Means Name Resource="identifier" Identifies the event type described in the CVPLogMessages.properties file. Body Resource="identifier" Identifies the message text described in the CVPLogMessages.properties file. Severity 0 to 6 Identifies the severity level (page 39) of the event. SendToSNMP True or false Set to true, to send this message, when logged, to an SNMP manager, if one is configured. SendToSyslog True or false Set to true to send this message, when logged, to a Syslog server, if one is configured. SNMPRaise True or false Set to true to identify this message, when logged, as an SNMP raise event, which the SNMP management station can use to initiate a task or automatically take an action. Set to false to identify this message as an SNMP clear when sent to an SNMP management station. An SNMP clear event usually corresponds to an SNMP raise event, indicating that the problem causing the raise has been corrected. An administrator on an SNMP management station can correlate SNMP raise events with SNMP clear events. Unified CVP Event Severity Levels The following table describes the available severity levels for Unified CVP events. You can set the severity level for an event by editing the log messages XML file, CVPLogMessages.xml, on the server that generates events. For instructions on editing this file, see Editing the Log Messages XML File (page 39). Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 39 Chapter 4: - Configuring the Reporting Server Applying a License to a Reporting Server Using the Operations Console Level Severity Purpose EMERGENCY 0 System or service is unusable ALERT 1 Action must be taken immediately CRITICAL 2 Critical condition, similar to ALERT, but not necessarily requiring an immediate action ERROR 3 An error condition that does not necessarily impact the ability of the service to continue to function WARN 4 A warning about a bad condition, which is not necessarily an error NOTICE 5 Notification about interesting system-level conditions, which are not errors INFO 6 Information about internal flows or application or per-request information, not system-wide information Applying a License to a Reporting Server Using the Operations Console Applying a License to a Reporting Server You must apply a valid license file after configuring a Reporting Server. You can browse for and upload the license file to the Operations Console, and then transfer the license to the Reporting Server. Select either an existing license file in the Operations Console database or a new license file from your local desktop. Note: Each Reporting Server IP address requires a unique license. You must apply the correct license to the Reporting Server. Procedure To apply a license file: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Server window lists any Reporting Servers that have been added to the control panel. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. You can also search for a Reporting Server. The Edit Reporting Server Configuration window opens. Step 3 Select File Transfer in the toolbar and then click Licensing. The File Transfer page displays. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 40 Chapter 4: Configuring the Reporting Server Deleting a Reporting Server From the Operations Console Step 4 Step 5 If the license file is not listed in the Select From Available License Files box: a. Click Select a License File from Your Local PC b. Enter the file name of the license for this Reporting Server in the text box or click Browse to search for the license file on the local file system If the license is listed in the Select From Available License Files box, select the matching license file and then click Transfer to transfer the selected license file to the Reporting Server. The license is applied to the selected Reporting Server. See Also Finding a Reporting Server (page 44) Deleting a Reporting Server From the Operations Console Deleting a Reporting Server You can remove a Reporting Server from the Operations Console. Deleting a Reporting Server removes its configuration from the Operations Console database and removes the Reporting Server from the displayed list of Reporting Servers. Procedure To delete a reporting server: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window displays. Step 2 Find the Reporting Server to delete by using the procedure in the Finding a Reporting Server (page 44) topic. Step 3 From the list of matching records, choose the Reporting Server that you want to delete. Step 4 Click Delete. Step 5 When prompted to confirm the delete operation, click OK to delete or click Cancel to cancel the delete operation. See Also Adding a Reporting Server (page 22) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 41 Chapter 4: - Configuring the Reporting Server Viewing Reporting Statistics Viewing Reporting Statistics The Reporting Server publishes statistics that include the number of events received from the IVR, SIP, and VoiceXML services during an interval and the total events published since the Reporting Server started. Reporting Server Statistics Reporting Server statistics include the total number of events received from the IVR, SIP, and VoiceXML services. Access Reporting Server statistics either by: • Choosing System > Control Center, selecting a Reporting Server, and then clicking the Statistics icon in the toolbar. • Choosing Device Management > CVP Reporting Server, selecting a Reporting Server, and then clicking the Statistics icon in the toolbar. Table 5: Reporting Server Statistics The following table describes the Reporting Server statistics. Statistic Description Interval Statistics Start Time The time the system started collecting statistics for the current interval. Duration Elapsed The amount of time that has elapsed since the start time in the current interval. Interval Duration The interval at which statistics are collected. The default value is 30 minutes. VXML Events Received The total number of reporting events received from the VoiceXML service during this interval. For each reporting event received from the VoiceXML service, this metric will be increased by one. SIP Events Received The total number of reporting events received from the SIP Service during this interval. For each reporting event received from the SIP Service, this metric will be increased by one. IVR Events Received The total number of reporting events received from the IVR service in the interval. For each reporting event received from the IVR service, this metric will be increased by one. Database Writes The total number of writes to the database made by the Reporting server during the interval. For each write to the database by the Reporting server, this metric will be increased by one. Aggregate Statistics Start Time The time the service started collecting statistics. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 42 Chapter 4: Configuring the Reporting Server Viewing Reporting Statistics Statistic Description Duration Elapsed The amount of time that has elapsed since the service start time. VXML Events Received The total number of reporting events received from the VoiceXML Service since the service started. For each reporting event received from the VoiceXML Service, this metric will be increased by one. SIP Events Received The total number of reporting events received from the SIP Service since the service started. For each reporting event received from the SIP Service, this metric will be increased by one. IVR Events Received The total number of reporting events received from the IVR Service since the service started. For each reporting event received from the IVR Service, this metric will be increased by one. Database Writes The total number of writes to the database made by the Reporting server since startup. For each write to the database by the Reporting server, this metric will be increased by one. Getting Reporting Statistics Reporting Server statistics include the total number of events received from the IVR, SIP, and VoiceXML services. Procedure To get Reporting Server statistics: Step 1 Choose Device Management > CVP Reporting Server. The Find, Add, Delete, Edit Reporting Servers window opens. Step 2 Select a Reporting Server by clicking on the link in its name field or by clicking the radio button preceding it and then clicking Edit. The Edit Reporting Server Configuration window opens with the current settings displayed. Step 3 Select Statistics in the toolbar. The Reporting Server statistics (page 42) are listed in the Reporting tab. See Also Running Reporting Database Backups (page 31) Cancelling Reporting Database Backups (page 32) Changing a Reporting Database User Password (page 27) Configuring Reporting Database Purge (page 33) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 43 Chapter 4: - Configuring the Reporting Server Finding a Reporting Server in the Operations Console Managing Reporting Users (page 29) Viewing Reporting Database Details (page 35) Finding a Reporting Server in the Operations Console The Operations Console provides a basic and advanced search feature for locating a specific Reporting Server. Finding a Reporting Server The Operations Console lets you locate a Reporting Server on the basis of specific criteria. Use the following procedure to locate a Reporting Server. Procedure To find a Reporting Server: Step 1 Choose Device Management > CVP Reporting Server from the Main menu. A list of the available Reporting Servers appears, 10 at a time, sorted by name. Step 2 If the list is long, click Next to view the next page of available devices. Step 3 If you know the name of a particular Reporting Server, enter its name in the Search text box and then click Go. Note: Basic Search is not case sensitive, and wildcard characters are not allowed. If the Search text box is empty, all Reporting Servers are listed. Step 4 To perform an advanced search, click Advanced. From the first Advanced Search window drop-down list box, choose one of the following criteria: Search criteria: • Hostname • IP address • Description Step 5 From the second window drop-down list box, choose one of the following criteria: Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 44 Chapter 4: Configuring the Reporting Server Adding and Removing a Device from a Device Pool Search criteria: • begins with • contains • ends with • is exactly • is empty Step 6 Specify the appropriate search text, if applicable, and click Find. Adding and Removing a Device from a Device Pool Device Pools are logical groupings of devices, for example, SanJose-Gateways. Device pools provide a convenient way to define a set of common characteristics that can be assigned to devices, for example, the region in which the devices are located. The system creates a default device pool, which contains all devices. Every device you create is automatically assigned to the default device pool. You can never remove the default device pool from the selected device pool list. The default device pool ensures that the Administrator can view and manage all devices. You can create device pools and assign devices to the device pools you created. Adding or Removing a Device From a Device Pool Procedure To add or remove a device from a device pool: Step 1 From the Device Management menu, choose the type of device you want to add to or remove from a device pool. For example, to add a Reporting Server to a device pool, select CVP Reporting Server from the menu. A window listing known devices of the type you selected displays. For example, if you selected Reporting Server, known CVP Reporting Servers are listed. Step 2 Select the device by checking the checkbox preceding it or highlighting the device and then clicking Edit. Step 3 Select the Device Pool tab. Step 4 If: Then: You want to add a device to a device pool Select the device pool from the Available pane, and then click the right arrow to move the pool to the Selected pane. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 45 Chapter 4: - Configuring the Reporting Server Adding and Removing a Device from a Device Pool If: Then: You want to remove a device from Select the device pool from the Selected pane, and then click the left arrow to move the device pool to the a device pool Available pane. Step 5 Click Save. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 46 Chapter 5 Configuring the VXML Server for Reporting The VXML Server is a J2EE-compliant application server that provides a complete solution for rapidly creating and deploying dynamic VoiceXML applications. If you installed a VXML Server, you must configure it before using it to deploy VoiceXML applications or licenses. This section contains the following topics: • Adding a VXML Server to the Operations Console, page 47 • Editing a VXML Server in the Operations Console, page 49 • Transferring a File to Multiple Devices, page 54 Adding a VXML Server to the Operations Console Adding a VXML Server to the Operations Console adds its configuration to the Operations Console database and adds it to the list of VXML Servers in the Control Panel. When you add a VXML Server, you must associate it with a Call Server. The VXML Server uses the message service on this Call Server to communicate with the Reporting Server. You can also add a VXML Server to one or more logical groups of devices, called device pools, and configure publishing statistics. See Adding and Removing a Device from a Device Pool (page 45) for additional information about how to add a server to a device pool. Adding a VXML Server Before You Begin Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 47 Chapter 5: - Configuring the VXML Server for Reporting Adding a VXML Server to the Operations Console Do the following before adding a VXML Server to the Operations Console: • Collect the host name or IP address of the VXML Server during the installation of Unified CVP software. • Install and configure at least one Call Server before configuring the VXML Server. • Review Call Studio scripts, noting any of the following items you want to include or exclude from VXML Server reporting data: – Application names – Element types – Element names – Element fields – ECC variables Procedure To add a VXML Server: Step 1 Choose Device Management > VXML Server. The Find, Add, Delete, Edit VXML Servers window opens. Note: To use an existing VXML Server as a template for creating the new VXML Server, select the VXML Server by clicking the radio button preceding it and then click Use As Template. Step 2 Click Add New. The VXML Server Configuration window opens to the General Tab. Step 3 Enter the general server information and choose a primary Call Server. Step 4 Optionally, choose a backup Call Server. Step 5 Select the Configuration Tab, then configure VXML Server properties. Step 6 Optionally, select the Device Pool tab and add the VXML Server to a device pool. Step 7 Optionally, select the Infrastructure tab and configure log file and syslog settings. Step 8 When you finish configuring the VXML Server: a. click Save to save the settings in the Operations Server database b. OR click Save & Deploy to save the settings in the Operations Server database and deploy the changes to the Reporting Server Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 48 Chapter 5: Configuring the VXML Server for Reporting Editing a VXML Server in the Operations Console Step 9 Shut down and then restart the VXML Server and the primary and backup Call Servers. Editing a VXML Server in the Operations Console You can change the properties of a VXML Server that has been added to the Operations Console. In edit mode, the Statistics, File Transfer, and System Id menus are also available. From the Statistics menu, you can view call statistics published by the VXML Server. From the File Transfer menu, you can transfer license files, VoiceXML script files, and log messages to the VXML Server. The System Id menu provides an option to generate a unique system identifier for the XML Server. You will need the System Id when getting a license for this server. Editing a VXML Server Before You Begin You can edit the configuration for a VXML Server that has been added to the Operations Console Control Center. Procedure To edit a VXML Server configuration: Step 1 Choose Device Management > VXML Server. The Find, Add, Delete, Edit VXML Servers window opens. Step 2 From the list of matching records, choose the VXML Server that you want to edit. Step 3 Click Edit. The VXML Server Configuration window opens to the General Tab. Step 4 Change any general server information. You cannot change the IP address of the VXML Server. Step 5 Select the Configuration Tab, then configure VXML Server properties. Step 6 Optionally, select the Device Pool tab and add the VXML Server to a device pool. Step 7 Optionally, select the Infrastructure tab and configure log file and syslog settings. Step 8 When you finish configuring the VXML Server: a. click Save to save the settings in the Operations Server database b. OR click Save & Deploy to save the settings in the Operations Server database and deploy the changes to the Reporting Server Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 49 Chapter 5: - Configuring the VXML Server for Reporting Editing a VXML Server in the Operations Console Step 9 Shut down and then restart the VXML Server and—if they have changed—the primary and backup Call Servers. VXML Server General Properties You can configure settings that identify the VXML Server and choose a primary, and optionally, a backup Call Server to communicate with the Reporting Server. You can also enable secure communications between the Operations Console and the VXML Server. Table 6: VXML Server General Configuration Settings Field Description Default Range Restart/Reboot Needed IP Address The IP address of the VXML Server None A valid IP address No Hostname The host name of the VXML Server. None Host names must be valid DNS names, which can include letters in the alphabet, the numbers 0 through 9, and a dash. A valid DNS name, No which includes uppercase and lowercase letters in the alphabet, the numbers 0 through 9, and a dash Description The description of the VXML Server. Less than or equal to 1024 characters No Enable secure communication with the Operations Console Select to enable secure communications None between the Operations Console and this component. The device is accessed using SSH and files are transferred using HTTPS. On or Off Yes - reboot Primary Call Server The VXML Server uses the message None service on this Call Server to communicate with the Reporting Server. Select a primary Call Server from the drop-down list. The drop-down list includes all Call Servers added to the Operations Console. Not applicable Yes - Restart Call Server and VXML Server Backup Call Server The VXML Server uses the message None service on this Call Server to communicate with the Reporting Server if the Primary Call Server is unreachable. Select a backup Call Server from the drop-down list. The drop-down list includes all Call Servers added to the Operations Console. Not applicable Yes - Restart Call Server and VXML Server General None Call Servers Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 50 Chapter 5: Configuring the VXML Server for Reporting Editing a VXML Server in the Operations Console VXML Server Configuration Properties From the VXML Server Configuration tab, you can enable reporting of VXML Server script and call activities to the Reporting Server. When enabled, the VXML Server reports on call and application session summary data. Call summary data includes call identifier, start and end timestamp of calls, ANI, and DNIS. Application session data includes application names, session id, and session time stamps. If you choose detailed reporting, Call Studio script details are reported, including element access history, activities within the element, element variables and element exit state. Customized values added in the Add to Log element configuration area in Call Studio scripts are also included in reporting data. Optionally, you can create report filters that define which data are included and excluded from being reported. Table 7: VXML Server Configuration Settings Field Description Default Range Restart/Reboot Needed Yes - Restart VXML Server Configuration Enable Reporting for this VXML Server Indicates whether or not the VXML Enabled Server sends data to the Reporting Server. If disabled, no data is sent to the Reporting Server and reports will not contain any VXML application data. Enabled (the default) or Disabled. Enable Reporting for VXML Application Details Indicates whether or not VoiceXML Disabled application details are reported. Enabled or Disabled (the Yes - Restart default). VXML Server Max. Number of Messages The maximum size of reporting 100,000 messages that are saved in a memory buffer if a failover occurs and the Call Server is unreachable. Not applicable - cannot be Not applicable changed The level of transmission quality and service availability for the VXML Server. The drop-down list has the Yes - Restart following values: af11, VXML Server af12, af13, af21, af22, af23, af31, af32, af33, af41, af42, af43, cs1, cs2, cs3, cs4, cs5, cs6, cs7,default, ef QoS Select QoS Level cs3 Note: For more information, see the Enterprise QoS Solution Reference Network Design Guide. VXML Applications Details: Filters Inclusive Filters List of applications, element types, None element names, and element fields, and ECC variables to include in reporting data. A semicolon-separated list Yes - Restart of text strings. A wildcard VXML Server character (*) is allowed within each element in the list. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 51 Chapter 5: - Configuring the VXML Server for Reporting Editing a VXML Server in the Operations Console Field Description Default Range Restart/Reboot Needed Note: For more information about filter syntax and rules, see Inclusive and Exclusive VoiceXML Filters for Reporting (page 52). Exclusive Filters List of applications, element types, None element names, and element fields, and ECC variables to exclude from reporting data. A semicolon-separated list Yes - Restart of text strings. A wildcard VXML Server character (*) is allowed within each element in the list. Note: For more information about filter syntax and rules, see Inclusive and Exclusive VoiceXML Filters for Reporting (page 52). Inclusive and Exclusive VoiceXML Filters for Reporting You use Inclusive and Exclusive VoiceXML filters to control the data that the VXML Server feeds to the Reporting Server. Data feed control is crucial for: • Saving space on the reporting database. • Preserving messaging communication bandwidth. Rules for VoiceXML Inclusive and Exclusive Filters Inclusive and exclusive filters operate using the following rules: • By default, all items but the Start, Subdialog_Start, and Subdialog_End elements are filtered from reporting data unless they are added to an Inclusive Filter. The Subdialog_Start and Subdialog_End elements are never filtered from reporting data unless Reporting is disabled on the VXML Server. • The Exclusive Filter takes precedence over the Inclusive Filter. For example, if an application name is in the Exclusive Filter, then all of the items of that applications are excluded from reporting data even if a particular field or element is listed in the Inclusive filter. • The syntax for Inclusive/Exclusive filters is: Appname.ElementType.ElementName.FieldName Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 52 Chapter 5: Configuring the VXML Server for Reporting Editing a VXML Server in the Operations Console or AppName.*.*.SESSION:Varname Note: This syntax is used to indicate session variables. • A semicolon (;) should be used to separate each item in a filter. For example, ElementA ; ElementB is valid. • A single wildcard (*) can be specified anywhere within the application name, element type, element name, or field name. • Element types, element names, and field names can contain alphanumeric characters, underscores, and a space character. • An application name can contain alphanumeric characters and underscores, but the space character is not allowed. For example, A_aa.B_bb.*C_cc_DD.E_ee_F* is valid. Examples of VoiceXML Filter Wildcard Matching The table below provides examples of VoiceXML filter wildcard matching. Table 8: Examples of VoiceXML Filter Wildcard Matching MyApplication.Voice.*.* Matches all voice elements in MyApplication *.Voice.*.* Matches all Voice elements in all applications. MyApplication.*.*.var* Matches all fields in MyApplication that start with the string var. MyApplication.*.*.*3 Matches all fields in MyApplication that end with 3. MyApplication.*.*.SESSION:Company Matches the Company session variable in MyApplication. Examples of Inclusive and Exclusive VoiceXML Filters for Reporting The table below provides examples of some different combinations of Inclusive and Exclusive filters and the resulting data that the VXML Server feeds to the Reporting Server. Table 9: Examples of Inclusive and Exclusive VoiceXML Filters for Reporting Inclusive Filter Exclusive Filter Data the VXML Server Feeds To the Reporting Server Application1.*.*.* None All Application1 data Application1.*.*.* *.*.Element1.*; All Application1 data, except Element1 and Element2 *.*.Element2.* Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 53 Chapter 5: - Configuring the VXML Server for Reporting Transferring a File to Multiple Devices Inclusive Filter Exclusive Filter Data the VXML Server Feeds To the Reporting Server Application1.*.*.* *.*.Element1.*; All Application1 data, except Element1, Element2, and Field1 *.*.Element2.*; *.*.*.Field1 *.Voice.*.* which matches Element3 and Element4 All Application1 data, except Element3 and Element4 Application1.*.*.* No data for Application1 *.Voice.*.* which matches *.*.Element3.*; Only Element1 and Element2 Element1, Element2, Element3, and Element4 *.*.Element4.* *.Voice.*.* which matches *.*.*.Field1 Element1 and Element2, except for Field1, if it exists in those elements *.*.Element1.* None Element1 *.*.Element1.* *.*.*.Field1 Element1, except for Field1 if it exists in Element1 *.*.*.Field1 *.*.Element3.*; Field1 in any elements except Element3 and Element4 Application1.*.*.* *.*.Element1.*; *.*.Element2.*; *.*.*.Field1 Element1 and Element2 *.*.Element4.* A good strategy for using filters is to create an Inclusive filter that includes the data you want to save in the Reporting database and then create an Exclusive filter to exclude portions of the data, for example, sensitive security information such as Social Security Numbers. For example. you would • First, create an inclusive filter to include all information: MyApp.Voice.*.* • Then, create an exclusive filter to remove credit card and social security numbers information: MyApp.Voice.*.CreditCard; MyApp.voice.*.SSN Transferring a File to Multiple Devices You can transfer a license file, VoiceXML script file, or Tcl script file from the Operations Console to one or more devices at a time. License files can only be transferred to Call Servers, Reporting Servers, Speech Servers, and VXML Servers. Script files can be transferred to VXML Servers, gatekeepers, gateways, and content services switches. You can only transfer a file to Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 54 Chapter 5: Configuring the VXML Server for Reporting Transferring a File to Multiple Devices one type of device at a time. If you try to transfer a type of file to a device that does not support that file type, an error message is displayed, and the previous settings are cleared. Procedure To transfer a script file: Step 1 Choose Bulk Administration > File Transfer. The File Transfer window opens to the Files tab. Script files that have already been transferred to the Operations Console are listed in the Available Script Files box. Step 2 Click Script File. Step 3 Either enter the fully qualified path to a script file to transfer or click Browse to search for the file. Step 4 Click the Transfer to Devices tab to transfer the selected file to one or more devices. Step 5 From the Select Device Type drop-down menu, select the type of device to which you want to transfer the selected file. Only devices of the selected type are displayed in the Available Devices box. Step 6 Select a device from the Available Devices box and click the right arrow to move the device to the Selected Devices box. To remove a device from the Selected Devices box, select the device and click the left arrow to move the device to the Available Devices box. Step 7 When you finish selecting devices, click Transfer. The file you selected on the Files tab is transferred to each selected device. Procedure To transfer a license file: Step 1 Choose Bulk Administration > File Transfer. The File Transfer window opens to the Files tab. License files that have already been transferred to the Operations Console are listed in the Available License Files box. Step 2 Click License File. Step 3 Either enter the fully qualified path to a license file to transfer or click Browse to search for the file. Step 4 Click the Transfer to Devices tab to transfer the selected file to one or more devices. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 55 Chapter 5: - Configuring the VXML Server for Reporting Transferring a File to Multiple Devices Step 5 From the Select Device Type drop-down menu, select the type of device to which you want to transfer the selected file. Only devices of the selected type are displayed in the Available Devices box. Step 6 Select a device from the Available Devices box and click the right arrow to move the device to the Selected Devices box. To remove a device from the Selected Devices box, select the device and click the left arrow to move the device to the Available Devices box. Step 7 When you finish selecting devices, click Transfer. The file you selected on the Files tab is transferred to each selected device. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 56 Chapter 6 Introduction to the Database Schema This section contains the following topics: • About the Database Schema, page 57 • Entity-Relationship Diagram, page 58 • Table Definitions, page 59 About the Database Schema The Reporting Server hosts an IBM Informix Dynamic Server (IDS) database, where it stores reporting data in a defined database schema. The schema is fully published so that customers may develop custom reports based on it, using a customer-provided report presentation product. (Customers may not, however, extend the schema for their own purposes.) This schema provides Unified CVP customers with the ability to: • establish database connectivity with commercial off-the-shelf reporting and analytics engines from popular business intelligence technology vendors, such as Crystal Reports and Exony—and then build their custom reporting and analytics solutions against the Unified CVP database schema • join with an ICM HDS database to track call activity across both systems (see "Joining Data with an ICM HDS Database" (page 91)) The following diagram indicates a common set of incoming and outgoing entry and exit states for a call to a self-service application. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 57 Chapter 6: - Introduction to the Database Schema Entity-Relationship Diagram Figure 2: Call Flow Note: The call will remain as video accepted when transferring video to an audio-only agent. Entity-Relationship Diagram The following ER diagram shows the Unified CVP database schema. Figure 3: ER Diagram Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 58 Chapter 6: Introduction to the Database Schema Table Definitions Table Definitions This section lists all the tables, in alphabetical order. ActionTypeRef Table This is the table to map an ActionTypeID to the type of action for an element that changes data. Field Type Null Index Description ActionTypeID int No Yes (Primary Key) The unique id of an action type Name nvarchar(96) No No The name of the action type Description Table Values (ID, Name): 1, "Initialize" 2, "Update" 3, "Return" Call Table This table contains one record per call. Field Type Null Index CallGUID char(35) No Yes (Primary Key The global unique id of Composite CallGUID, a call CallStartDate) CallStartDate date No Yes (Primary Key Date of the call, for Composite CallGUID, data purging purposes CallStartDate) StartDateTime datetime No Yes Date and time a call was made MessageBusName varchar(42) No No The name of the Call Server (its message adapter name) where the call originates SubSystemTypeID int No No The type of Unified CVP Service, such as SIP, IVR, VXML Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 59 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description LocalTimeZone int Yes No The local time zone identifier. This field is not populated ANI varchar(32) Yes No ANI of the caller sent by telephony provider DNIS varchar(32) No No DNIS of a call sent by telephony provider EndDateTime datetime Yes No The date and time a call ended with hang-up or disconnect. Note: Sometimes messages are dropped—even for an otherwise successful call. In these cases, EndDateTime is set to the same value as StartDateTime. Thus, if a call appears to be of 0 duration, report writers will know to exclude such a call from consideration in cases where it would otherwise skew metrics UUI varchar(100) Yes No The UUI of the originating caller sent by telephony provider Iidigits varchar(100) Yes No The IIDIGITS of the originating caller sent by telephony provider UID varchar(50) Yes No The external UID of the caller if the call is associated with a user NumAppVisited int No No The number of applications visited during the life of the call NumOptOut int No No The number of times that the call is opt out to an agent TotalTransfer int No No The total number of times the call is transferred out. A transfer includes Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 60 Chapter 6: Introduction to the Database Schema Table Definitions Field Type Null Index Description transfers to agents as well as a transfer to the VRU leg. NumTimeOut int No No The number of times the call timed out NumError int No No The number of errors that occurred during the call NumOnHold int No No The number of times the call is on hold due to unavailable port DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) CallType char(1) Yes No Indicates if this call is an Audio (A) or Video (V) call. Note: This field is new in Unified CVP Release 7.0. All calls prior to this release were only of type Audio (A); thus, a field to indicate this was not necessary. Note: On occasion, messages are dropped—even for an otherwise successful call. In such cases, EndDateTime is set to the same value as StartDateTime. Thus, if a call appears to be of 0 duration, report writers will know to exclude such a call from consideration in cases where it would otherwise skew metrics. CallEvent Table This table contains tracks the events of the call. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 61 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index CallGUID char(35) No Yes (Composite index The global unique id of CallGUID, a call CallStartDate) CallStartDate date No Yes (Composite index Date of the call, for CallGUID, data purging purposes CallStartDate) CallLegID varchar(43) Yes No A call id assigned by a Service MessageBusName varchar(42) No No The name of the Call Server (its message adapter name) with which the event is associated EventDateTime datetime No Yes Date and time of the event EventTypeID int No No The mechanism used to generate the call event CauseID int No No The reason that the call event was generated DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) SubSystemTypeID int No Yes The type of the Service SubSystemName varchar(41) No No The name of the Service the event originated from LocalTimeZone int Yes No The local time zone identifier. This field is not populated MediaFileName nvarchar(255) Yes No Stores the path and the name of the media file of the video requested in the call. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 62 Description Chapter 6: Introduction to the Database Schema Table Definitions CallICMInfo Table This table contains information to associate a Unified CVP call to ICM. Field Type Null Index Description CallGUID char(35) No Yes (Composite The global unique id of a call index CallGUID, CallStartDate) CallStartDate date No Yes (Composite Date of the call, for data index purging purposes CallGUID, CallStartDate) RouterCallKey Integer No Yes (Composite ICM Router CallKey index RouterCallKey, RouterCallKeyDay) RouterCallKeyDay Integer No Yes (Composite ICM RouterCallKeyDay index RouterCallKey, RouterCallKeyDay) RouterCallKeySequenceNumber int Yes Yes ICM RouterCallKeySequenceNumber EventDateTime datetime No Yes Date and time of the event MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) CauseRef Table This is the table to map a CauseID to the cause. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 63 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description CauseID int No Yes (Primary Key) The unique id of a call event cause Name nvarchar(96) No No The cause of the event Table Values (ID, Name): 0, "None" 1, "Normal Completion" 2, "Call Abandon" 3, "Call Transferred" 4, "New Transaction" 5, "Busy" 6, "No Answer" 7, "Maintenance" 8, "Net Congestion" 9, "Net Not Obtainable" 10, "Reorder Tone" 11, "Resources Not Available" 12, "Trunks Busy" 13, "Called Party Disconnected" 14, "Max Ports" 15, "Suspended" 16, "Time Out" 17, "Invalidated" 18, "Error" 19, "Video Answered" 1001, "Hang Up" 1002, " Network" 1003, "System" Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 64 Chapter 6: Introduction to the Database Schema Table Definitions 1004, "Script Type" 1005, "Unknown UApp" 1006, "Script Name" 1007, "Config Param" 1008, "Misconfig Ecc" 1009, "Media File" 1010, "Semantic" 1011, "VXML Format" 1012, "VXML Element" 1013, "Variable Data" 1014, "No Var Data" 1015, "Format" 1016, "Entry Invalid" 1017, "No Entry" 1018, "Media Resource Video" [Unable to perform video-related request due to resource limitations ] 1019, "Recording Failed 1020, "Data Range" 1021, "Timed Out" 1022, "Called Hung Up" [agent, VRU, or other endpoint hung up on caller; that is, the caller did not hang up first] 1023, "No Answer" 1024, "Busy" 1025, "Gen Transfer" 1026, "Invalid Extn" 1027, "Hang Up Forced" 1028, "After Trans Estab" 1030, "Unsupported Language" Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 65 Chapter 6: - Introduction to the Database Schema Table Definitions 1031, "Media Resource ASR" 1032, "Media Resource TTS" 1033, "General ASR TTS" 1034, "Unknown Error" 1040, "CVP System Unavailable" 1041, "CVP App Error" 1042, "CVP App Hang Up" 1043, "Error CVP App Suspended" 1044, "Error CVP No Session Error" 1045, "Error CVP Bad Fetch" CVPDataRetention Table This table contains the actual number of days of data retained in the database for each table. Field Type Null Index Description DataCategory varchar(64) No No The name of the Data Category Visible in Operations Console TableName varchar(32) No Yes The name of the table NumberDaysRetained integer No No The number of days to retain the data ActualNumberDaysRetained integer Yes No If the value is 0 or a positive integer then it means actual number of days data retained; if the value is -1 then this value is inherited from the ActualNumberDaysRetained in the DataCategory Note: Effective Release 7.x, you can set the number of days to 0 instead of leaving it Null. NumberOfExtents integer Yes No The number of extents ExtentSpaceUsed float Yes No The extent space used TotalSpaceUsed float Yes No The data plus index space size used in megabytes DataSpaceUsed float Yes No The data space size used in megabytes DailyPurgeLastRunDate datetime Yes No The date and time of last daily run Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 66 Chapter 6: Introduction to the Database Schema Table Definitions Field Type Null Index Description EmergencyPurgeLastRunDate datetime Yes No The date and time of last emergency purge CategoryHierarchy integer No No Grouping for system maintance TableAlias char(4) No No Alias for the table DBSpaceName varchar(24) No No Database space where the table is located Note: Effective, Unified CVP Release 7.x, the CVPDateTrap, CVPPartitionInfo, CVPPartitionParameters, and CVPPurgeList tables are only for system use. CVPDBSpaceUsed Table This table contains the name of the database, along with other pertinent information. Field Type Null Index Descriptions DBSpace varchar(20) No No Name of the DBSpace TotalSpace float No No Total Available File Space ExtendedSpace float No No Reserved Space FreeSpace float No No Non-reserved Space DataSpaceUsed float Yes No Amount of ExtendedSpace actually used MaxSizeGrowth float Yes No Maximum recorded growth in 24 hours RecentSizeGrowth float Yes No Last recorded growth in 24 hours LastRunDate datetime No No The date and time when the record was updated CVPDBVersion Table This table contains the database version information. Field Type Null Index Description MajorVersion varchar(10) No Yes (Composite index Major version MajorVersion, MinorVersion) MinorVersion varchar(20) No Yes (Composite index Minor version MajorVersion, MinorVersion) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 67 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description UpdateDateTime datetime No No The date and time when the record is updated CVPLog Table This table contains log messages. Field Type Null Index Description MessageDateTime datetime Yes No Date and time of message Message varchar(255) Yes No Message details MessageClass char(8) Yes Yes Type of message: Add, Aged Off, Alter, Err Info, Remainder, EPurge Note: Effective, Unified CVP Release 7.x, the CVPDateTrap, CVPPartitionInfo, CVPPartitionParameters, and CVPPurgeList tables are only for system use. ElementTypeRef Table This is the table to map an ElementTypeID to a VXML element type. Field Type Null Index Description ElementTypeID int No Yes (Primary Key) The unique id of an element type Name nvarchar(96) No No The name of the element type Table Values (ID, Name): 0, "Start" 1, "End" 2, "Subdialog_Start" 3, "Subdialog_Return" 4, "Decision" 5, "Action" 6, "Custom" 7, "HotLink" Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 68 Chapter 6: Introduction to the Database Schema Table Definitions 8, "HotEvent" 9, "ElementFlag" 10, "Voice" 11, "VXMLInsert" 12, "ReqICMLabel" 13, "General" EventTypeRef Table This is the table to map an EventID to its name (event type). Field Type Null Index Description EventTypeID int No Yes (Primary Key) The unique id of a call event type Name nvarchar(96) No No The name of the event type Table Values (ID, Name): 0, "New Call" 1, "Connect Failure" 2, "Busy" 3, "No Answer" 4, "Answer" 5, "Abandon" 6, "Disconnect" 7, "Hang Up" 8, "App Transfer" 9, "App Session Complete" 10, "Call Transfer" 11, "Run Script" 12, "Agent Recording" 13, "ICM Recording" Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 69 Chapter 6: - Introduction to the Database Schema Table Definitions 14, "Agent Video" 15, "ICM Video OutgoingECCVariable Table This table contains the ECC variable used by ICM. This is for outgoing calls, that is calls from Unified CVP back to ICM. Field Type Null Index CallGUID char(35) No Yes (Composite index The global unique id of CallGUID, a call CallStartDate) CallStartDate date No Yes (second field in Composite indexes) SessionID int8 No Yes (Composite index The identifier of the SessionID, session in which the CallStartDate) ECC variable changes ElementID int8 No Yes (Composite index The identifier of the ElementID, element in which the CallStartDate) ECC variable changes ECCVarName char(12) No No The name of session variable that was exited ECCVarValue nvarchar(255) No No The value of session variable EventDateTime datetime No Yes Date and time when the ECC variable changed MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 70 Description Date of the call, for data purging purposes Chapter 6: Introduction to the Database Schema Table Definitions ResultRef Table This is the table to map a ResultID to a result string. Field Type Null Index Description ResultID int No Yes (Primary Key) The unique id of a result Name nvarchar(96) No No The name of the element result Table Values (ID, Name): 1, "Normal" 2, "Invalidated" 3, "HotEvent" 4, "HotLink" 5, "Hang Up" 6, "Error" 7, "Transfer" SubSystemTypeRef Table This is the table to map a SubSystemTypeID to a Unified CVP Service type. Field Type Null Index Description SubSystemTypeID int No Yes (Primary Key) The unique id of a Service type Name nvarchar(96) No No The name of the Service type Table Values (ID, Name): 0, "SIP" 1, "IVR" 2, "VXML" 3, "OAMP" [Operate, Administer, Maintain, Provision = Operations Console] 4, "CONTROLLER" Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 71 Chapter 6: - Introduction to the Database Schema Table Definitions 5, "RPT" 6, "ICM" 7, "ORM" [OAMP Resource Manager = element co-located with Unified CVP components that allows the Operations Console to manage the components] 8, "SYSTEM" UserInputModeRef Table This is the table to map a UserInputModeID to the name of the user input mode. Field Type Null Index Description UserInputModeID int No Yes (Primary Key) The unique id of a user input mode Name nvarchar(96) No No The name of the user input mode Table Values (ID, Name): 1, "DTMF" 2, "Voice" 3, "DTMF Voice" VarDataTypeRef Table This is the table to map a VarDataTypeID to the data type of a variable. Field Type Null Index Description VarDataTypeID int No Yes (Primary Key) The unique id of a variable data type Name nvarchar(96) No No The name of the variable data type Table Values (ID, Name): 0, "String" 1, "Int" 2, "Float" 3, "Boolean" Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 72 Chapter 6: Introduction to the Database Schema Table Definitions VoiceActionTypeRef Table This is the table to map a VoiceActionTypeID to the VXMLVoiceInteractDetail. Field Type Null Index Description VoiceActionTypeID int No Yes (Primary Key) The unique id of a VoiceActionTypeRef Name nvarchar(96) No No The name of the call state Table Values (ID, Name): 1, "No Match" 2, "No Input" 3, "Audio Group" 4, "Input Mode" 5, "Utterance" 6, "Interpretation" 7, "Confidence" VXMLCustomContent Table This table contains one record for each VoiceXML custom event. This event will occur if a custom component programmatically calls the addToLog method of the Session API. The event will also occur when an element whose configuration contains entries in the Add To Log table in the General tab is run. Field Type Null Index Description ElementID int8 No Yes (Composite index The unique id of a ElementID, visited element CallStartDate) CallStartDate date No Yes (Composite index Date of the call, for ElementID, data purging purposes CallStartDate) VarName nvarchar(51) No No The name of the custom event variable VarValue nvarchar(255) Yes No The value of the custom event variable EventDateTime datetime No No Date and time when the variable is changed Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 73 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) VXMLElement Table This table contains one record for each VoiceXML script element visited by a call. For example, if the same element is visited twice in an application script during a call, there will be two separate element records. Field Type Null Index ElementID int8 No Yes (Primary Key, The unique id of a Composite ElementID, visited element CallStartDate) CallStartDate date No Yes (second field in Primary Key and Composite indexes) SessionID int8 No Yes (Composite index The unique id of a SessionID, VXML application CallStartDate) session CallGUID char(35) No Yes The global unique id of a call ElementName nvarchar(51) No No The name of an element ElementTypeID int No No The type of element EnterDateTime datetime No Yes Date and time when the element was entered ExitDateTime datetime Yes No Date and time when the element was exited Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 74 Description Date of the call, for data purging purposes Chapter 6: Introduction to the Database Schema Table Definitions Field Type Null Index Description ExitState nvarchar(51) Yes No The exit state of the element NumberOfInteractions int Yes No The number of interactions while the user visited this element ResultID int Yes No Indicates how an element ended MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) VXMLElementDetail Table This table contains one detail record for each script element variable. VarValue holds the String value of the variable and VarDataTypeID specifies the data type of the variable to which the String value can be converted. Field Type Null Index Description ElementID int8 No Yes (Composite index The unique id of an ElementID, element CallStartDate) CallStartDate date No Yes (Composite index Date of the call, for ElementID, data purging purposes CallStartDate) VarName nvarchar(51) No No The name of the element variable VarValue nvarchar(255) Yes No The String value of the element variable Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 75 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description VarDataTypeID int No No The data type of the element variable, such as String, Integer, Boolean ActionTypeID int No No The type of action for an element that changes data EventDateTime datetime No Yes Date and time when the variable was changed MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) VXMLElementFlag Table This table contains one record for each element in which a flag was activated. The Name field holds the name of the flag. Field Type Null Index ElementID int8 No Yes (Composite index The unique id for the ElementID, element in which the CallStartDate) flag activated CallStartDate date No Yes (Composite index Date of the call, for ElementID, data purging purposes CallStartDate) EventDateTime datetime No Yes The date and time when the flag activated Name nvarchar(51) No No The flag name PreviousElementName nvarchar(51) Yes No Name of the previous application element Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 76 Description Chapter 6: Introduction to the Database Schema Table Definitions Field Type Null Index Description MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) VXMLError Table This table contains one record for each element in which an error occurred. The ErrorName field holds the name of the error. Field Type Null Index Description ElementID int8 No Yes (Composite index The unique id for the ElementID, element in which the CallStartDate) error occurs CallStartDate date No Yes (Composite index Date of the call, for ElementID, data purging purposes CallStartDate) ErrorName varchar(12) No No Name of an error EventDateTime datetime No Yes The date and time when the error occurred Description nvarchar(255) No No The detailed error message MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 77 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) VXMLHotEvent Table This table contains one record for each element in which a hot event occurred. The Name field holds the name of the hot event. Field Type Null Index ElementID int8 No Yes (Composite index The unique id for the ElementID, element in which the CallStartDate) hotevent occurred CallStartDate date No Yes (Composite index Date of the call, for ElementID, data purging purposes CallStartDate) EventDateTime datetime No Yes The date and time when hot event occurred Name nvarchar(51) No No The name of the hot event MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 78 Description Chapter 6: Introduction to the Database Schema Table Definitions VXMLHotLink Table This table contains one record for each element in which a hotlink was activated. The Name field holds the name of the hot link. Field Type Null Index Description ElementID int8 No Yes (Composite index The unique id for the element in which the ElementID, hotlink activated CallStartDate) CallStartDate date No Yes (Composite index Date of the call, for ElementID, data purging purposes CallStartDate) EventDateTime datetime No Yes The date and time when the hot link activated Name nvarchar(51) No No The name of the hot link MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) VXMLSession Table This table contains one record for each application visited by a call. For example, if a call has transferred from one application to another one, the call with the same CallGUID will have two session records. Field Type Null Index Description SessionID int8 No Yes (Primary Key, The unique id of a Composite SessionID, VXML application CallStartDate) session Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 79 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description CallStartDate date No Yes (second field in Primary Key and Composite indexes) Date of the call, for data purging purposes SessionName nvarchar(96) No No The name of the session assigned by VXML Server CallGUID char(35) No Yes (Composite index The global unique id of CallGUID, a call CallStartDate) StartDateTime datetime No Yes Date and time when session starts AppName nvarchar(51) No Yes The name of the VXML application EventTypeID int Yes No The mechanism used to end the application visit CauseID int Yes No The reason that the application visit ended EndDateTime datetime Yes No The end date and time of the session SourceAppName nvarchar(51) Yes No The name of the application that transferred to this one LocalTimeZone int Yes No The local time zone identifier. This field is not populated Duration int Yes No The duration of the session (seconds) SubSystemName varchar(41) No No The name of the VXML Service MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 80 Chapter 6: Introduction to the Database Schema Table Definitions Field Type Null Index Description may indicate problems with the reporting server) VXMLSessionVariable Table This table contains one record for each instance of a session variable. For example, if the same session variable was modified once in an application script during a call, there will be two separate records, one for its initial value when it was created and another for the updated value. Field Type Null Index Description SessionID int8 No Yes (Composite index The unique id of an IVR application SessionID, session CallStartDate) ElementID int8 No Yes (Composite index The identifier of the ElementID, element in which the CallStartDate) session variable changes CallStartDate date No Yes (second field in Composite indexes) Date of the call, for data purging purposes VarName nvarchar(51) No No The name of the session variable that was exited VarValue nvarchar(255) Yes No The value of the session variable ActionTypeID int No No The type of action for a session variable that changes data EventDateTime datetime No Yes Date and time when the session variable changed VarDataTypeID int No No The data type of the session variable, such as Integer, String, Boolean MessageBusName varchar(42) No No The name of the message bus that delivers the VXML data feed message DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 81 Chapter 6: - Introduction to the Database Schema Table Definitions Field Type Null Index Description between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) FromICM boolean No No Indicates whether this session variable change originated from Unified ICME; Informix stores these values as 1 or 0, but represents these values as 't' or 'f' Description VXMLVoiceInteractDetail Table This table contains the unique id of a call. Field Type Null Index ElementID int8 No Yes (Composite index The unique id of a ElementID, visited element CallStartDate) CallStartDate date No Yes (Composite index Date of the call, for ElementID, data purging purposes CallStartDate) ElapsedTimeMillisecond int No No Time since the last interaction VoiceActionTypeID int No No Type of interaction Value nvarchar(255) Yes No Value of interaction DBDateTime datetime No No The date and time of the database operation (when the record was inserted). This is useful for debugging purposes to determine lags between when the event occurred versus when it was written to the database (for example, a long lag may indicate problems with the reporting server) Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 82 Chapter 7 Reporting Against the Database Unified CVP does not provide a native reporting engine. A third-party reporting engine, such as Crystal Reports, can be used to generate various reports against the predefined Unified CVP database schema. This section contains the following topics: • • • • Unified CVP Call Summary Report, page 83 Unified CVP Application Summary Report, page 84 Unified CVP VXML Element By Call Report, page 85 Unified CVP and Unified ICME Report, page 85 Unified CVP Call Summary Report The Reporting Service captures and presents detailed data on every call made to the Call Server. It traces the path of each call through the entire distributed self-service application using unique call identifiers, the various applications (and/or system components) that a particular call visited, when the applications (and/or system components) were visited, and the total number of calls that the Call Server was processing at that time. Table 10: Unified CVP Call Summary Report Call Num CallGUID Start Date Time Call ANI Duration 1 28CD4191- 11/30/2006 0:40:45 7F6C11DBA6EF00146944B976 50 2 2A288BE4- 11/30/2006 0:40:47 7F6C11DB- 50 DNIS Num Num Time Out Errors Num Apps Visited Total Transfers 190190190 3110 0 0 1 0 190190190 3110 0 0 1 0 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 83 Chapter 7: - Reporting Against the Database Unified CVP Application Summary Report Call Num CallGUID Start Date Time Call ANI Duration DNIS Num Num Time Out Errors Num Apps Visited Total Transfers A6F000146944B976 3 2AC38680- 11/30/2006 0:40:48 7F6C11DB900D00146944B962 50 191191191 3110 0 0 1 0 4 2BF25095- 11/30/2006 0:40:50 7F6C11DBA6F100146944B976 50 190190190 3110 0 0 1 0 5 2BFA1D3C- 11/30/2006 0:40:50 7F6C11DB82AB00146944B8CC 14 1 8001431001 0 0 0 1 6 2C61F58D- 11/30/2006 0:40:51 7F6C11DB900E00146944B962 50 191191191 3110 0 0 1 0 7 2D685567- 11/30/2006 0:40:53 7F6C11DB82AC00146944B8CC 130 1 8001431001 0 0 1 2 8 2DBC1546- 11/30/2006 0:40:53 7F6C11DBA6F200146944B976 50 190190190 3110 0 0 1 0 9 2E2D8EB6- 11/30/2006 0:40:54 7F6C11DB900F00146944B962 50 191191191 3110 0 0 1 0 Unified CVP Application Summary Report To measure the overall effectiveness of various self-service applications, the application summary report displays the core application data. Table 11: Unified CVP Application Summary Report Group Name Offered Reporting GD DTMF 60sec 3,276,239 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 84 Handled Caller Abandon 3,248,281 1,620 Chapter 7: Reporting Against the Database Unified CVP VXML Element By Call Report Unified CVP VXML Element By Call Report Customers who deploy self-service applications need a report that tracks a call's path through VXML elements. This report is used to debug and monitor VXML applications after they are deployed. Table 12: Unified CVP VXML Element By Call Report Element Name Element Enter Time Element Exit Time Element Type Subdialog Start 01 1:11:53 am 1:11:53 am Subdialog Start start 1:11:53 am 1:11:53 am Start ReqICMLabel 1:11:53 am 1:11:54 am ReqICMLabel Flag Done 1:11:54 am 1:11:54 am ElementFlag Audio Exit 1:11:54 am 1:11:54 am Voice Audio ValidLabel 1:11:54 am 1:11:54 am Voice Subdialog Return 01 1:11:54 am 1:11:54 am Subdialog Return end 1:12:43 am 1:12:43 am End Unified CVP and Unified ICME Report Customers who deploy self-service applications with their Unified ICME or Unified CCE system need a report that will track the details of this system as well as Unified CVP details. Crystal Reports can join data from more than one ODBC connection. In particular, Crystal Reports functionality allows you to select two data sources (in this case, one from Unified CVP Informix tables and one from Microsoft SQL Server tables) and create a join report. The report discussed here is designed to only return data from one call at a time. The user is prompted to enter the RouterCallKey and the RouterCallKeyDay when launching the report. All of the Unified ICME data originates from the Termination_Call_Detail table. This is a very large table and the report must do a sequential scan to retrieve the data as the RouterCallKey and the RouterCallKeyDay are not indexed columns. To minimize the effect on the HDS you should run the report during off-hours, or run against an HDS that does not support concurrent reporting users. Table 13: CallGUID: F772B308-0808927 Start DateTime End Date Time Router CallKeyDay Router CallKey ANI DNIS NumberApps Visited 7/5/2006 2:28:23PM 312 8305558931 0 7/5/2006 2:30:23PM 159120 9789360000 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 85 Chapter 7: - Reporting Against the Database Unified CVP and Unified ICME Report Table 14: CallGUID: F772B308-0808927 TCD Record DateTime CallTypeID Service Skill TargetID Agent Skill TargetID Answered Within ServiceLevel 1 7/5/2006 2:39:23PM 5001 None None N 2 7/5/2006 2:30:23PM 5001 5001 5002 N Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 86 Chapter 8 Reporting Best Practices This section contains the following topics: • • • • • • • • • • • • • • • • CPU Intensive Reports, page 87 Writing Efficient SQL when Creating Reports, page 88 Zero Duration Calls and Writing Reports, page 88 Make Sure Data is Secure, page 89 Passwords, page 89 Filtering Data to be Stored in the Database, page 89 Database Sizing Issues, page 90 Database Backup and Recovery, page 90 Database Retention Settings, page 90 Purge and Backup Database Maintenance Tasks, page 90 Allow Only Reporting Users when Querying the Database, page 90 Reporting Isolation Level, page 91 Informix, Operating System Time, and Local Time, page 91 Assuring Accurate Time Stamps for Reporting and Logging, page 91 Joining Data with an ICM HDS Database, page 91 Joining Unified CVP and SQL Server Data, page 91 CPU Intensive Reports Do not run CPU intensive reports off the database while the database is receiving data. Note: Reports become more CPU intensive as the complexity associated with producing the report from the information available in the database increases. There is no sharp dividing line between intensive and non-intensive reports. The system performance must remain within the guidelines defined in the Cisco Unified Customer Voice Portal (CVP) Release 7.x Solution Reference Network Design (SRND) document. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 87 Chapter 8: - Reporting Best Practices Writing Efficient SQL when Creating Reports Writing Efficient SQL when Creating Reports The following guidelines should be kept in mind. • When writing SQL, developers must organize their WHERE clauses and put the most important join first. The most important join is the one that will reduce the size of the dataset to the least amount of rows. • Reports must be written so that every field in the WHERE and ORDER BY clauses uses an indexed field. • The second column in a composite index should never be used in a JOIN statement without the first column. • Engineers writing database code should treat database, table, and column names as case sensitive, even though the current database is case insensitive, to ensure that the application is portable. • Many operations hold database locks; therefore, reports should use a wait time of 30 seconds, if possible. • Reports and SQL queries should set Isolation level to dirty read. This is much more efficient for the database as it utilizes Informix Virtual shared memory instead of the resident memory portion of shared memory. • Do not ever set isolation level to repeatable read. • Do not ever write a SQL statement that selects into temp without specifying the 'no log' option. • The internal ID generator limits the amount of total VXML subsystems to 8,000 per deployment. Zero Duration Calls and Writing Reports On occasion, messages are dropped—even for an otherwise successful call. In such cases, EndDateTime is set to the same value as StartDateTime. Thus, if a call appears to be of 0 duration, report writers will know to exclude such a call from consideration in cases where it would otherwise skew metrics. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 88 Chapter 8: Reporting Best Practices Make Sure Data is Secure Make Sure Data is Secure Ensure data is secure by the following practices: • Unified CVP offers administrators the ability to choose not to persist sensitive ECC data in the database. Users define ECC variables in Unified ICME and by default they are not persisted in the Unified CVP database. The Caller_input and FromExtVXML ECC variables are subject to many application-dependent uses. For security purposes, flag these two variables as not persistent in Unified ICME 7.1(1). If there is anything in them that must be stored, the routing script can copy the data to an appropriate variable for storage in the database. • Users can reduce the data generated by means of data filters (for VXML Server application detail data filtering, see Chapter 4, "Configuring the VXML Server for Reporting" (page 47)). Either adding more exclusive filters, or using fewer inclusive filters, would cut down on the amount of data stored • Users can turn off logging of sensitive data containing caller’s responses on a per-element basis. The caller’s input, such as set of digits representing Social Security number of credit card number, can be set not to be logged, providing a security layer in case logs are compromised. Passwords Note: Passwords on the Reporting Server must be created as part of the Unified CVP installation or by means of the Operations Console. Updating of passwords must be done via the Operations Console. Do not use any other means to create or update passwords. Reporting passwords are subject to both the Unified CVP password policy and the password policy enforced by the operating system of the computer on which the Reporting Server resides. For each aspect of the password, the Reporting password must meet the requirement of the more restrictive policy. Filtering Data to be Stored in the Database Users can reduce the data generated by means of data filters (for VXML Server application detail data filtering, see Chapter 4, "Configuring the VXML Server for Reporting" (page 47)). Either adding more exclusive filters, or using fewer inclusive filters, would cut down on the amount of data stored. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 89 Chapter 8: - Reporting Best Practices Database Sizing Issues Database Sizing Issues See the discussion in "Data Retention" (page 14). Also see the Planning Guide for Cisco Unified Customer Voice Portal and the Cisco Unified Customer Voice Portal (CVP) Release 7.x Solution Reference Network Design (SRND) document. Database Backup and Recovery Issues to keep in mind are: • Managing your backup strategy • Turning off Reporting Server when doing database recovery These are discussed in "Database Backup" (page 16) and "Database Recovery" (page 18). Database Retention Settings Ensure that the database is sized conservatively so that it never needs to emergency purge. Purge and Backup Database Maintenance Tasks The database backup and purge maintenance tasks are created as Windows Scheduled Tasks, and can be viewed in the Scheduled Tasks window (Start > Programs > Accessories > System Tools > Scheduled Tasks). These jobs log in as SYSTEM. If the CVPDBNightlyPurge and CVPDBMidDayPurge tasks do not run, then the database will not be purged and will eventually become full, resulting in data loss. If the CVPDBBackup task does not run the database will not be backed up. Periodically, you should check the Scheduled Tasks to ensure the Last Run Time was as expected and there are no status messages. Allow Only Reporting Users when Querying the Database In the interests of security, allow only reporting users to generate reports. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 90 Chapter 8: Reporting Best Practices Reporting Isolation Level Reporting Isolation Level Reporting clients should never run with an isolation level of repeatable read as this could hold locks and prevent updates to the data. Informix, Operating System Time, and Local Time Informix only displays a datetime that corresponds to the same time zone as the Informix server operating system's time zone. As a result, two items must be kept in mind: • If you wish a datetime to be displayed for a time zone other than that of the Informix server operating system, you must use reporting tools or SQL tools (for example, those available with Crystal Reports or Java) to do this. • If, in your system, you are using more than one Informix server for Unified CVP reporting, it is best if all such server OSs are set to the same time zone. This helps avoid confusion. Assuring Accurate Time Stamps for Reporting and Logging Unified CVP components do not themselves synchronize machine times. However, customers must provide a cross-component time synchronization mechanism, such as NTP, to ensure accurate time stamps for reporting and logging. Joining Data with an ICM HDS Database Joining Unified CVP and Unified ICME data can be a very expensive operation on the Unified ICME system. To minimize performance impacts on an HDS system, use one of the following strategies: • Dedicate an HDS for these reports • Query an HDS when Unified ICME reporting users are not running reports Joining Unified CVP and SQL Server Data To join data from a SQL Server Database and an Informix Database one must use a reporting tool that supports the ability to join data from two heterogeneous databases. Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 91 Chapter 8: - Reporting Best Practices Joining Unified CVP and SQL Server Data Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) 92 Index Reporting Server general information....23 Index Reporting Server Infrastructure Tab....24 Reporting Server reporting properties....24 ActionTypeRef table....59 VXML Server....51 analytics engine....57 VXML Server properties....50 application summary report....84 CPU intensive reports....87 application user....19 Crystal Reports....9, 57 backups....7, 13, 16, 90 cvp_dbadmin....19 cancelling for Reporting Server....32 cvp_dbuser....19 retries....17 CVPDataRention Table....66 running for Reporting Server....31 CVPDataRetention table....67 before you begin tasks CVPDBSpaceUsed table....67 adding a reporting server....22 CVPDBVersion table....67, 68 adding a VXML Server....47 CVPLogMessages.properties file deleting a Reporting Server....41 editing a VXML Server....49 best practices....87 bulk file transfer license files....55 script files....55 call editing....39 CVPLogMessages.xml file editing....39 CVPLog table....68 database....7, 57 multiple....8 sizing....90 zero duration....88 viewing details....35 Call category....16 database administrator....19 CallCMInfo Table....63 database backup....11 Call Event category....16 database backup (see backups)....16 CallEvent table....61, 62 database connection failure....20 CallICMInfo table....63 database purge (see purging)....14 Call Server....8 database recovery....18, 90 downloading Log Messages XML file....38 database restore....11, 18 uploading Log Messages XML file....37 database schema....7, 57 call summary report....83 database tables....59 Call table....59 database users (see users)....19 CauseRef table....63 data categories....16 clocks....12 data filtering....89 configuration tabs data retention....14, 67, 90 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) Index 93 Index default number of days....34 destination log messages....39 device pools adding or removing a device....45 device statistics Reporting Server....43 ECC variable....70, 89 join report....85, 91 license files transferring multiple files....55 log messages CVPLogMessages.xml....39 Operations Console....13 OutgoingECCVariable table....70 passwords....13 ElementTypeRef table....68 changing reporting database user....28 emergency purge (see purging)....14 policies....89 Entity-Relationship diagram....58 purging....7, 13, 14, 90 ER diagram....58 emergency....14 events number of days to retain data....34 severity levels for....39 retries....17 EventTypeRef table....69 purging data....33 failure querying the database....90 database connection....20 recovery....18 Reporting Server....20 reporting....11 filtering data....89 filters for reporting VXML Server....52 Reporting configuring Reporting Server....21 reporting database changing user passwords....28 generating reports....90 reporting engine....9, 57, 83 HDS....85, 91 reporting filters IBM Informix Dynamic Server database (see Informix)..7 ICM....63 for VXML Server....51 Reporting Server....7, 8 ICM Service....8 adding....22 IDS (see Informix)....7 adding reporting users....29 informix....19 cancelling backups....32 Informix database (see database)....7 changing a reporting user's password....30 Informix user changing reporting database user password....28 changing password....28 configuring....21 instance owner....19 configuring properties....24 isolation level....91 deleting....41 IVR Service....8 downloading Log Messages XML file....38 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) Index 94 Index editing....26 SIP Service....8 failure....20 sizing finding....44 general configuration settings....23 infrastructure settings....24 prerequisites for adding....22 reporting....11 SQL writing....88 statistics prerequisites for deleting....41 Reporting Server....42 removing reporting users....31 SubSystemTypeRef table....71 running backups....31 synchronized clocks....12 running purge....33 time statistics....42 local....91 uploading Log Messages XMLfile....37 stamps....91 viewing database details....35 system....91 viewing statistics....43 Reporting Service....7, 8 reporting users....19 adding....29 changing passwords....30 removing....31 reports generating....90 resolution timestamps synchronized....12 Unified CVP database administrator changing password....28 Unified CVP user changing password....28 Unified ICME....85, 91 UserInputModeRef table....72 users....19 log messages....39 adding reporting....29 resource properties file application user....19 editing....39 database administrator....19 restore....18 instance owner....19 ResultRef table....71 reporting user....19 retries backup and purge....17 VarDataTypeRef table....72 VoiceActionTypeRef table....73 schema (see database schema)....7 VoiceML Element Detail category....16 script files VoiceXML ECC Variable category....16 transferring multiple files....55 severity VoiceXML Element category....16 VoiceXML Interact Detail category....16 log messages....39 VoiceXML Session category....16 of events....39 VoiceXML Session Variable category....16 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) Index 95 Index VXML configuring VXML server for reporting....47 VXMLCustomContent table....73 VXML element by call report....85 VXMLElementDetail table....75 VXMLElementFlag table....76, 77 VXMLElement table....74 VXMLError table....77, 78 VXML filters example wilcards....53 rules....52 VXML Filters example inclusive and exclusive....53 VXMLHotEvent table....78 VXMLHotLink table....79 VXML Server....8 adding....48 configuration properties....51 configuring for reporting....47 creating reporting filters for....51 downloading Log Messages XML file....38 editing....49 example filter wildcards....53 example reporting filters....53 filters for reporting....52 general configuration settings....50 prerequisites for adding....47 prerequisites for editing....49 rules for reporing filters....52 transferring Log Messages XML file....37 uploading Log Messages XML file....37 VXMLSession table....79 VXMLSessionVariable table....81 VXMLVoiceInteractDetail table....82 zero duration calls....88 Reporting Guide for Cisco Unified Customer Voice Portal Release 7.0(1) Index 96