Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
Corporate 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 526-4100
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. CCSP, CCVP, the Cisco Square Bridge logo, Follow Me Browsing, and StackWise are trademarks of Cisco Systems, Inc.; Changing the Way We Work, Live, Play, and Learn, and iQuick Study are service marks of Cisco Systems, Inc.; and Access Registrar, Aironet, BPX, Catalyst, CCDA, CCDP, CCIE, CCIP, CCNA, CCNP, Cisco, the Cisco Certified Internetwork Expert logo, Cisco IOS, Cisco Press, Cisco Systems, Cisco Systems Capital, the Cisco Systems logo, Cisco Unity, Enterprise/Solver, EtherChannel, EtherFast, EtherSwitch, Fast Step, FormShare, GigaDrive, GigaStack, HomeLink, Internet Quotient, IOS, IP/TV, iQ Expertise, the iQ logo, iQ Net Readiness Scorecard, LightStream, Linksys, MeetingPlace, MGX, the Networkers logo, Networking Academy, Network Registrar, Packet, PIX, Post-Routing, Pre-Routing, ProConnect, RateMUX, ScriptShare, SlideCast, SMARTnet, The Fastest Way to Increase Your Internet Quotient, and TransPath 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. (0601R) Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) 2006 Cisco Systems, Inc. All rights reserved.
CONTENTS
Preface
xiii xiii xiii xiii
Purpose Audience
Revision History
Document Organization xiv Part I: General Information xiv Part II: Deployment Models and Sizing Part III: Reference Material xiv Conventions
xv
xiv
Obtaining Documentation xv Cisco.com xv Product Documentation DVD xv Ordering Documentation xvi Documentation Feedback
xvi
Cisco Product Security Overview xvi Reporting Security Problems in Cisco Products
xvii
Obtaining Technical Assistance xvii Cisco Technical Support & Documentation Website Submitting a Service Request xviii Definitions of Service Request Severity xviii Obtaining Additional Publications and Information
1
xix
xvii
PART
CHA PTER
Introduction
1-1 1-1
CHA PTER
CVP Components
2-1 2-1
CVP Solution Components 2-2 CVP Call Server 2-3 Cisco Ingress and VXML Gateway
2-3
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
iii
Contents
Cisco Gatekeeper 2-4 CVP VoiceXML Server 2-4 CVP VoiceXML Studio 2-5 Standalone Distributed Diagnostics and Services Network (SDDSN) 2-5 Cisco Content Services Switch (CSS) 2-5 Cisco PSTN Gateway (PGW) Softswitch 2-5 Third Party Media Server 2-6 Third Party Automatic Speech Recognition (ASR) and Text-to-Speech (TTS) Server IPCC Enterprise and Intelligent Contact Management (ICM) 2-7 Cisco CallManager 2-7
2
2-6
PART
CHA PTER
Deployment Models
3-1
Model #1, Standalone Self Service 3-1 Customer Requirements 3-2 Caller Experience 3-2 Characteristics 3-2 Components 3-2 Protocol Level Call Flow 3-2 Transfers 3-4 Geographic Distribution Alternatives 3-4 Collocated VoiceXML Servers and Gateways 3-4 Gateways at the Branch, Centralized VoiceXML Servers (non-collocated) Model #2, CVP Call Control 3-5 Customer Requirements 3-5 Caller Experience 3-5 Characteristics 3-5 Components 3-6 Protocol Level Call Flow 3-6 Ingress Gateway New Call Flow 3-6 ICM Transfers a Call to a Target 3-6 ICM Transfers a Call to a Second Target Via Blind Network Transfer Transfers 3-7 Distributed: Ingress and/or Egress Gateway at the branch 3-8 Network Traffic 3-8 Survivability 3-8 Model #3a, CVP Call Control with Queue and Collect Customer Requirements 3-9
3-9
3-4
3-7
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
iv
OL-8408-02
Contents
Caller Experience 3-9 Characteristics 3-9 Components 3-10 Protocol Level Call Flow 3-10 Ingress Gateway new Call Flow 3-10 Establishment of VRU Leg to VXML Gateway 3-11 ICM Transfers the Call to a Target 3-11 ICM Transfers a Call to a Second Target Via Blind Network Transfer Transfers 3-13 Distributed: Ingress/VXML Gateway at branch 3-13 Model #3b, CVP Call Control with Queue and Self Service 3-14 Customer Requirements 3-14 Caller Experience 3-14 Characteristics 3-15 Components 3-15 Protocol Level Call Flow 3-15 Transfers 3-16 Distributed: Ingress/VXML Gateway and VoiceXML Server at branch Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service Customer Requirements 3-17 Caller Experience 3-17 Characteristics 3-17 Components 3-17 Protocol Level Call Flow 3-18
4
3-12
3-16 3-17
CHA PTER
Sizing
Gateway 4-3 Choice of Gateway 4-3 Gateway Sizing 4-4 Using MGCP Gateways 4-6 Gatekeeper
3
4-6
PART
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
Contents
CHA PTER
5-1
Layer 2 Switch
Originating Gateway 5-3 Configuration 5-3 Call Disposition 5-4 Gatekeeper 5-4 HSRP 5-4 Alternate Gatekeeper Configuration 5-5 HSRP 5-5 Alternate Gatekeeper Call Disposition 5-6
5-5
5-6
CVP Voice Browser 5-6 Configuration 5-7 Configuring High Availability for New Calls 5-7 Configuring High Availability for Calls in Progress Call Disposition 5-8 CVP Application Server 5-8 Configuration 5-8 Call Disposition 5-9
5-7
VoiceXML Gateway 5-10 Configuration 5-10 Centralized VoiceXML gateways 5-10 Distributed VoiceXML gateways (ingress gateway and VoiceXML same gateway) 5-10 Distributed VoiceXML gateways (ingress gateway and VoiceXML different gateway) 5-10 Alternate Endpoints 5-11 Call Disposition 5-12 Hardware Configuration for High Availability on the Voice Gateways 5-12 Content Services Switch (CSS) Configuration 5-13 Call Disposition 5-13
5-12
Media Server 5-14 Configuration when Using CVP Microapplications 5-14 Call Disposition when Using CVP Microapplications 5-14 Configuration when using CVP VoiceXML Studio scripting 5-15 CVP VoiceXML Server 5-15 Configuration 5-15
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
vi
OL-8408-02
Contents
Standalone Self Service Deployments Deployments using ICM 5-15 Call Disposition 5-16
5-15
Automatic Speech Recognition (ASR) and Text-to-Speech (TTS) Server Configuration 5-17 Standalone Self Service Deployments 5-17 Deployments Using ICM 5-17 Call Disposition 5-18 Cisco CallManager 5-18 Configuration 5-18 Call Disposition 5-18 Intelligent Contact Management (ICM) Configuration 5-19 Call Disposition 5-19
5-19
5-17
Standalone Distributed Diagnostics and Services Network (SDDSN) Configuration 5-20 Call Disposition 5-20
6
5-19
CHA PTER
6-1
CAC implications 6-2 Cisco CallManager as an egress Gateway 6-4 Cisco CallManager as an ingress Gateway 6-5 Multiple Cisco CallManager Clusters 6-5 RSVP
6-5
H.323 Gatekeeper Call Routing implications in a distributed branch CVP model (Centralized CallManager model) 6-5 Multiple Cisco CallManager Clusters 6-6
7
CHA PTER
7-1
Release Trunk Transfers 7-1 Takeback-N-Transfer (TNT) 7-2 Hook flash and Wink 7-2 Two B Channel Transfer (TBCT) 7-3 ICM Managed Transfers VoiceXML Transfers
7-3 7-4
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
vii
Contents
CHA PTER
Network Level Considerations (The IP Infrastructure) Bandwidth Provisioning and QoS Considerations 8-1 CVP Network Architecture Overview 8-2 Voice Traffic 8-2 Call Control Traffic 8-2 H.323 8-2 GED-125 8-3 MRCP 8-3 ICM Central Controller to CVP VRU PG 8-3 Data Traffic 8-4 Bandwidth Sizing 8-4 VoiceXML Documents 8-4 Media File Retrieval 8-5 H.323 Signaling 8-5 ASR/TTS 8-5 Voice Traffic 8-6 Call Admission Control RSVP 8-6 QoS
8-7 8-7 8-8 8-6
8-1
CHA PTER
9-1
NetworkVRU Types 9-1 About ICM NetworkVRUs 9-2 CVP as Service Node IVR to ICM (Type 5) 9-2 CVP as Intelligent Peripheral IVR to ICM based on Correlation ID mechanism (Type 3,7) 9-3 CVP as Intelligent Peripheral IVR to ICM based on Translation Route ID mechanism (Type 8,2) NetworkVRU Types and CVP Deployment Models 9-4 Model #1. Standalone Self-Service 9-5 Model #2. CVP with ICM-Controlled Switching 9-5 Model #3a. DTMF Menu, Prompt and Collect 9-5 Model #3b. ASR/TTS and/or complex IVR application 9-6 Model #4. IVR/Queuing via ICM with NIC-controlled routing 9-6 Model #4a. IVR/Queuing via ICM with NIC-controlled routing 9-6 Model #4b. IVR/Queuing via ICM with NIC-controlled pre-routing 9-7 Hosted Implementations 9-7 About Hosted Implementations
9-7
9-4
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
viii
OL-8408-02
Contents
How CVP Fits Into Hosted Environments 9-8 CVP Placement and Call Routing in a Hosted environment NetworkVRU Type in a Hosted environment 9-10 Using Third Party VRUs
10
9-9
Cisco CallManager and ACD Originated Calls - Deployment Models and Sizing Implications
9-12
9-11
CHA PTER
Cisco CallManager Originated Calls - Deployment Models and Sizing Implications Why these Cisco CallManager Originated Calls Are Different Call Flows (customer) 10-2 ICM Outbound with Transfer to IVR Internal Help Desk 10-2 Warm Consultative Transfer 10-2
10-2 10-1
10-1
Call Flows (protocol) 10-3 Model #1, Standalone Self Service 10-3 Model #2, CVP Call Control 10-3 Model #3a, CVP Call Control with Queue and Collect 10-4 Model #3b, CVP Call Control with Queue and Self Service 10-6 Deployment Implications 10-6 ICM Configuration 10-6 Hosted Implementations 10-6 Cisco CallManager Configuration Network Level 10-7 Sizing 10-7 CVP Call Servers 10-7 Gateways 10-7 MTP Resources 10-8
11
10-7
CHA PTER
11-1 11-1
Typical Applications of GKTMP with CVP 11-2 Protocol Level Call Flow 11-3 Pre-Routing of incoming calls, call context passing not required 11-3 Pre-Routing of incoming calls, call context passing is required 11-4 Routing of post-ICM calls 11-4 Deployment Implications 11-4 Pre-Routing of incoming calls, call context passing not required 11-5 Pre-Routing of incoming calls, call context passing is required 11-5
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
ix
Contents
11-5
CHA PTER
CHA PTER
Design Implications for VoiceXML Server What is VoiceXML over HTTP? Multilanguage Support
13-2 13-1
13-1
Differences in the Supported Web Application Servers Where to Install CVP Studio
14
13-3
13-2
CHA PTER
Deployment and Ongoing Management Best Practices for Prompt Management Configuring Caching on IOS Branch office implications
15
14-2 14-2
CHA PTER
Licensing
15-1
CVP Licensing 15-1 Regular Port Licenses 15-1 Regular Server Licenses 15-2 Redundant Licenses 15-2 License Enforcement 15-3 ASR/TTS Licensing 15-3 Gateway Licensing
16
15-4
CHA PTER
16-1 16-1
Real Time Health Monitoring of CVP Components Statistical Monitoring of CVP Components End to End Tracking of Individual Calls Formal Reporting Based on ICM Data
16-2 16-3 16-2
16-3
OL-8408-02
Contents
GL O S S A R Y
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
xi
Contents
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
xii
OL-8408-02
Preface
Purpose
This document provides design considerations and guidelines for deploying enterprise network solutions that includes the Cisco Customer Voice Portal (CVP). This document builds on ideas and concepts presented in the Cisco IP Contact Center (IPCC) Enterprise Edition Solution Reference Network Design (SRND), which is available online at http://cisco.com/go/srnd
Audience
This design guide is intended for the system architects, designers, engineers, and Cisco channel partners who want to apply best design practices for the Cisco Customer Voice Portal (CVP). This document assumes that you are already familiar with basic contact center terms and concepts and with the information presented in the Cisco IPCC SRND. To review those terms and concepts, refer to the documentation at the preceding URL.
Revision History
Unless stated otherwise, the information in this document applies specifically to Cisco CVP Releases 3.1. This document may be updated at any time without notice. You can obtain the latest version of this document online at http://cisco.com/go/srnd Visit this Cisco.com website periodically and check for documentation updates by comparing the revision date (on the front title page) of your copy with the revision date of the online document. The following table lists the revision history for this document.
Comments Initial release of this document. Updated for Cisco CVP release 3.1(0)
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
xiii
Document Organization
This document assumes that you are already familiar with basic contact center terms and concepts and with Cisco IP Contact Center (IPCC) solutions. Before using this CVP guide, you should review the design ideas and concepts presented in the latest version of the Cisco IP Contact Center (IPCC) Enterprise Edition Solution Reference Network Design (SRND), which is available online at http://cisco.com/go/srnd This document is divided into three parts:
Part I: General Information, page xiv Part II: Deployment Models and Sizing, page xivg Part III: Reference Material, page xiv
Customer Requirements: what sorts of customers gravitate toward this model? Caller Experience: what do callers experience when they dial in to systems of this model? Characteristics: what features does this model support? What are its salient distinctions from other models? Components: which CVP product and solution components are required in this model, and which components can be added in order to enhance the features it offers? Protocol Level Call Flow: exactly what does the message flow among components look like? Transfers: what kinds of transfers are supported among CVP call legs and agent destinations? Geographic Distribution implications: what factors need to be considered when the model is used in a branch office or distributed deployment, as opposed to one that is centralized?
Armed with this detailed information it should be possible to identify the deployment model which best suits your customers needs. This part then includes instructions on how to determine how many gateways and servers of various types need to be ordered. This section is known as sizing, and is distinct from licensing, which appears in Part III.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
xiv
OL-8408-02
Preface Conventions
also describes certain less common call flows which do not fit neatly into the named deployment models from Part II, as well as a detailed discussion of how the CVP design supports high availability in the case of component and network link failure.
Conventions
This document uses the following conventions: Convention Italic font Screen font Blue font Description Arguments for which you supply values, book titles, and items selected for emphasis appear in italic font. Expression Language examples and code appear in screen font. Hypertext links to the section referenced in the blue font
Obtaining Documentation
Cisco documentation and additional literature are available on Cisco.com. Cisco also provides several ways to obtain technical assistance and other technical resources. These sections explain how to obtain technical information from Cisco Systems.
Cisco.com
You can access the most current Cisco documentation at this URL: http://www.cisco.com/techsupport You can access the Cisco website at this URL: http://www.cisco.com You can access international Cisco websites at this URL: http://www.cisco.com/public/countries_languages.shtml
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
xv
Ordering Documentation
Registered Cisco.com users may order Cisco documentation at the Product Documentation Store in the Cisco Marketplace at this URL: http://www.cisco.com/go/marketplace/ Nonregistered Cisco.com users can order technical documentation from 8:00 a.m. to 5:00 p.m. (0800 to 1700) PDT by calling 1 866 463-3487 in the United States and Canada, or elsewhere by calling 011 408 519-5055. You can also order documentation by e-mail at [email protected] or by fax at 1 408 519-5001 in the United States and Canada, or elsewhere at 011 408 519-5001.
Documentation Feedback
You can rate and provide feedback about Cisco technical documents by completing the online feedback form that appears with the technical documents on Cisco.com. You can submit comments about Cisco documentation by using the response card (if present) behind the front cover of your document or by writing to the following address: Cisco Systems Attn: Customer Document Ordering 170 West Tasman Drive San Jose, CA 95134-9883 We appreciate your comments.
Report security vulnerabilities in Cisco products. Obtain assistance with security incidents that involve Cisco products. Register to receive security information from Cisco.
A current list of security advisories, security notices, and security responses for Cisco products is available at this URL: http://www.cisco.com/go/psirt To see security advisories, security notices, and security responses as they are updated in real time, you can subscribe to the Product Security Incident Response Team Really Simple Syndication (PSIRT RSS) feed. Information about how to subscribe to the PSIRT RSS feed is found at this URL: http://www.cisco.com/en/US/products/products_psirt_rss_feed.html
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
xvi
OL-8408-02
For Emergencies only [email protected] An emergency is either a condition in which a system is under active attack or a condition for which a severe and urgent security vulnerability should be reported. All other conditions are considered nonemergencies.
Tip
We encourage you to use Pretty Good Privacy (PGP) or a compatible product (for example, GnuPG) to encrypt any sensitive information that you send to Cisco. PSIRT can work with information that has been encrypted with PGP versions 2.x through 9.x. Never use a revoked or an expired encryption key. The correct public key to use in your correspondence with PSIRT is the one linked in the Contact Summary section of the Security Vulnerability Policy page at this URL: http://www.cisco.com/en/US/products/products_security_vulnerability_policy.html The link on this page has the current PGP key ID in use. If you do not have or use PGP, contact PSIRT at the aforementioned e-mail addresses or phone numbers before sending any sensitive material to find other means of encrypting the data.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
xvii
Access to all tools on the Cisco Technical Support & Documentation website requires a Cisco.com user ID and password. If you have a valid service contract but do not have a user ID or password, you can register at this URL: http://tools.cisco.com/RPF/register/register.do
Note
Use the Cisco Product Identification (CPI) tool to locate your product serial number before submitting a web or phone request for service. You can access the CPI tool from the Cisco Technical Support & Documentation website by clicking the Tools & Resources link under Documentation & Tools. Choose Cisco Product Identification Tool from the Alphabetical Index drop-down list, or click the Cisco Product Identification Tool link under Alerts & RMAs. The CPI tool offers three search options: by product ID or model name; by tree view; or for certain products, by copying and pasting show command output. Search results show an illustration of your product with the serial number label location highlighted. Locate the serial number label on your product and record the information before placing a service call.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
xviii
OL-8408-02
Severity 3 (S3)Operational performance of the network is impaired, while most business operations remain functional. You and Cisco will commit resources during normal business hours to restore service to satisfactory levels. Severity 4 (S4)You require information or assistance with Cisco product capabilities, installation, or configuration. There is little or no effect on your business operations.
The Cisco Product Quick Reference Guide is a handy, compact reference tool that includes brief product overviews, key features, sample part numbers, and abbreviated technical specifications for many Cisco products that are sold through channel partners. It is updated twice a year and includes the latest Cisco offerings. To order and find out more about the Cisco Product Quick Reference Guide, go to this URL: http://www.cisco.com/go/guide
Cisco Marketplace provides a variety of Cisco books, reference guides, documentation, and logo merchandise. Visit Cisco Marketplace, the company store, at this URL: http://www.cisco.com/go/marketplace/
Cisco Press publishes a wide range of general networking, training and certification titles. Both new and experienced users will benefit from these publications. For current Cisco Press titles and other information, go to Cisco Press at this URL: http://www.ciscopress.com
Packet magazine is the Cisco Systems technical user magazine for maximizing Internet and networking investments. Each quarter, Packet delivers coverage of the latest industry trends, technology breakthroughs, and Cisco products and solutions, as well as network deployment and troubleshooting tips, configuration examples, customer case studies, certification and training information, and links to scores of in-depth online resources. You can access Packet magazine at this URL: http://www.cisco.com/packet
iQ Magazine is the quarterly publication from Cisco Systems designed to help growing companies learn how they can use technology to increase revenue, streamline their business, and expand services. The publication identifies the challenges facing these companies and the technologies to help solve them, using real-world case studies and business strategies to help readers make sound technology investment decisions. You can access iQ Magazine at this URL: http://www.cisco.com/go/iqmagazine or view the digital edition at this URL: http://ciscoiq.texterity.com/ciscoiq/sample/
Internet Protocol Journal is a quarterly journal published by Cisco Systems for engineering professionals involved in designing, developing, and operating public and private internets and intranets. You can access the Internet Protocol Journal at this URL: http://www.cisco.com/ipj
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
xix
Networking products offered by Cisco Systems, as well as customer support services, can be obtained at this URL: http://www.cisco.com/en/US/products/index.html
Networking Professionals Connection is an interactive website for networking professionals to share questions, suggestions, and information about networking products and technologies with Cisco experts and other networking professionals. Join a discussion at this URL: http://www.cisco.com/discuss/networking
World-class networking training is available from Cisco. You can view current offerings at this URL: http://www.cisco.com/en/US/learning/index.html
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
xx
OL-8408-02
A R T
C H A P T E R
Introduction
Over the past two decades, many customers have invested in TDM-based interactive voice response (IVR) applications to automate simple customer transactions such as checking account or 401K account inquires. In addition, many TDM-based IVR platforms were based on proprietary development environments and hardware platforms, which typically meant restricting the customers integration options with automatic speech recognition (ASR) and text-to-speech (TTS) solutions. Over the past few years there has been a dramatic shift in using VoiceXML technology to support the next generation of IVR applications. The major goal of VoiceXML is to provide a standards-based way of incorporating the advantages of web-based development and content delivery into voice-enabled business applications such as ASR and TTS.
IP-based call switching: CVP can transfer calls over an IP network while maintaining call control for call treatment or subsequent transfers over the IP network. IP-based takeback and transfer (TNT): CVP can take back a transferred call for further IVR treatment or transfer it back to the PSTN. IP-based IVR services: CVP can perform the classic prompt-and-collect functions such as, "Press 1 for sales, 2 for service," and so forth. IP-based queuing: Calls can be "parked" on CVP for prompting, music on hold, and so forth, while waiting for a call center agent to become available. Compatibility with other Cisco call routing and VoIP products: Specifically, Hosted IPCC or Intelligent Contact Manager (ICM), Cisco Gatekeeper, Cisco gateways, and Cisco IP Contact Center (IPCC). Compatibility with the public switched telephone network (PSTN): Calls can be moved onto an IP-based network for CVP treatment and then moved back out to a PSTN for further call routing to a call center. Carrier-class platform: CVP's reliability, redundancy, and scalability enable it to work with service-provider and large enterprise networks. IP-based voice-enabled IVR services: CVP provides for sophisticated self-service applications (including speech-enabled applications), such as banking, brokerage, and airline reservations.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
1-1
Introduction
The CVP platform (VoiceXML server component) serves up scripted VoiceXML pages to the Cisco IOS voice browser. These pages are invoked using CVP's External VoiceXML feature in the Cisco Intelligent Contact Management (ICM) software or in CVP VoiceXML Standalone deployments, directly upon request from the gateway. CVP VoiceXML is supported on most of the gateways listed in this document (see Chapter 12, Gateway Options), but the performance specifications differ from one gateway to another.
What is VoiceXML?
Voice eXtensible Markup Language, or VoiceXML, is a language similar to HTML that brings the full power of web development and content delivery to interactive voice response (IVR) applications. VoiceXML is designed for creating audio dialogs that feature synthesized speech, digitized audio, recognition of speech or dual tone multifrequency (DTMF) key input, and recording of spoken input. It is a common language for content providers, tool providers, and platform providers, and it promotes service portability across implementation platforms. VoiceXML separates service logic from user interaction and presentation logic in VoiceXML voice web pages. It also shields application authors from low-level, platform-specific IVR and call control details. VoiceXML is easy to use for simple interactions, yet it provides language features to support complex IVR dialogs.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
1-2
OL-8408-02
C H A P T E R
CVP Components
This chapter describes the major components of the Cisco Customer Voice Portal:
Typical CVP Deployment, page 2-1 CVP Solution Components, page 2-2
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
2-1
CVP Components
Figure 2-1
Call Center IP IP
Data Center
SCCP
CallManager
M
INGRESS Gateway
V HTTP CSS
VXML
CVP VB
TDM ACD
HTTP
MRCP ASR/TTS
CVP Call Server, page 2-3 Cisco Ingress and VXML Gateway, page 2-3 Cisco Gatekeeper, page 2-4 CVP VoiceXML Server, page 2-4 CVP VoiceXML Studio, page 2-5 Standalone Distributed Diagnostics and Services Network (SDDSN), page 2-5 Cisco Content Services Switch (CSS), page 2-5 Cisco PSTN Gateway (PGW) Softswitch, page 2-5 Third Party Media Server, page 2-6 Third Party Automatic Speech Recognition (ASR) and Text-to-Speech (TTS) Server, page 2-6 IPCC Enterprise and Intelligent Contact Management (ICM), page 2-7
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
2-2
143479
OL-8408-02
Chapter 2
Depending on the particular deployment model in use, some of the above components might not be required. Once deployed, CVP provides an integrated self-service, queuing, and switching solution. The following sections discuss each of these components in more detail. For the most current information on a particular product, refer to the specific product documentation available online at: http://www.cisco.com/
Note
This design guide focuses mainly on CVP components and deployments. For the most current, in-depth technical information on the other products listed above, refer to the latest versions of the additional design guides available at http://www.cisco.com/go/srnd. The following sections present an overview of each of these components, and give a general discussion about how each component interacts with the rest of the system.
Converting TDM voice signals to Voice over IP (VoIP), if necessary Connecting and reconnecting calls to VoIP terminating destinations Executing voice treatment and switching instructions in the form of VoiceXML documents
The gateway interacts with the CVP Call Server in two ways. In deployment models which integrate with ICM (see Chapter 3, Deployment Models), the gateway exchanges H.323 call control instructions with the CVP Call Server. When it is performing these call control activities, it is known as an ingress
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
2-3
CVP Components
gateway. In all deployment models, the gateway might also be executing VoiceXML operations via its built-in IOS Voice Browser software. A gateway which performs VoiceXML operations is known as a VXML gateway. As an ingress gateway, the arrival of a new call causes an H.323 call setup operation to occur between the gateway and the CVP Call Server. As a VXML gateway, the arrival of a new call invokes a flash-resident VoiceXML application and begins making requests to either the CVP VoiceXML Server or the CVP Call Server for VoiceXML pages to execute, depending on the deployment model in use. Supported gateways include the Cisco 2800 Series, 3700 Series, 3800 Series, 5350XM, 5400 HPX, and the 5400 XM. The AS5850 ERSC and the Cisco Catalyst 6500 Communication Media Module (CMM) is also supported as an ingress/egress gateway only. For the most current list of supported gateways, refer to the latest version of the CVP 3.0 Bill of Materials (BOM), available at http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Cisco Gatekeeper
The gatekeeper is a network element used by the gateway for call transfers. It is an optional component in certain deployments; however, in practice most installations incorporate a gatekeeper for dial plan configuration and bandwidth management. When the gateway receives instructions from the CVP Call Server to transfer a call, it first matches the destination number with its dial peers. If the matched dial peer specifies gatekeeper lookup (that is, session-target ras), the gateway will query the gatekeeper with the transfer destination label. The gatekeeper, in turn, replies with an IP address to which the gateway will transfer the call. As of CVP 3.1 SR1, two gatekeeper failover mechanisms are supported: Hot Standby Router Protocol (HSRP), and Alternate Gatekeepers. For more information on H.323 gatekeepers, refer to the Cisco gatekeeper product documentation available online at Cisco.com.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
2-4
OL-8408-02
Chapter 2
SNMP traps CiscoWorks2000 Syslog, which receives log messages and permits queries on the logs Microsoft Windows Remote Access Service (RAS) and Hosted IPCC or Intelligent Contact Management (ICM) Event Management System (Cisco Remote Monitoring Suite), traditionally named Cisco Phone Home
SDDSN must reside on a separate server from any CVP or ICM component. For the most current information on the hardware requirements for the SDDSN, refer to the latest version of the CVP 3.1 Bill of Materials (BOM), available at http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
2-5
CVP Components
The Cisco PGW Softswitch provides a consistent, unified interconnection that can handle dial-up services, MGCP, Session Initiation Protocol (SIP), and H.323, as well as future standards. The PGW enables service providers to deploy and operate multiple network solutions while maintaining a stable connection to the PSTN.
Third Party Automatic Speech Recognition (ASR) and Text-to-Speech (TTS) Server
Prompts to the caller can utilize prerecorded voice prompts or can be generated with TTS via a voice synthesizing engine (the TTS server). In response to the prompt, the caller can be asked to enter DTMF input or voice input. When the caller provides voice input, the speech recognition engine tries to match that input to a set of acceptable responses. VoiceXML and the World Wide Web Consortium (W3C) provide a rich feature set to support the ASR grammars. The simplest to implement and support is inline grammars, by which the set of acceptable customer responses is passed to the gateway. Another form is external grammars, by which the ICM passes a pointer to an external grammar source. The CVP VoiceXML Server adds this pointer to the VoiceXML document that it sends to the gateway, which then loads the grammar and uses it to check ASR input from the caller. In this case, the customer is responsible for creating the grammar file. A third type of grammar is the built-in grammar. For a complete explanation of grammar formats, consult the W3C website at http://www.w3.org/TR/speech-grammar/ The text for TTS is passed directly from the CVP VoiceXML Server to the gateway. This action is referred to as inline TTS in this document. The actual speech recognition and speech synthesis are performed by a separate server that interfaces directly to the VXML gateway via the Media Resource Control Protocol (MRCP). Currently, ScanSoft, Nuance, and IBM are the supported ASR/TTS engines. These ASR/TTS engines also support (with limitations) voice recognition and synthesis for multiple languages. For the latest information on supported languages and limitations of these ASR/TTS engines, refer to the following websites:
Nuance http://www.nuance.com
Scansoft http://www.nuance.com
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
2-6
OL-8408-02
Chapter 2
IBM http://www-306.ibm.com/software/voice/
Note that these are third party products, which the customer or partner must purchase directly with the vendor. The customer also receives technical support directly from the vendor. That does not, however, mean that the vendors latest software version can be used. CVP is carefully tested with specific versions of each vendors product, and Cisco TAC will not support CVP customers who use different ASR/TTS versions than those which have been tested with Cisco CVP. It is important to check the CVP 3.1 Bill of Materials (BOM), available at http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Cisco CallManager
Cisco CallManager is an optional component in the CVP solution. Its use in the solution depends on the type of call center being deployed. Pure TDM-based call centers using ACDs, for example, typically do not use Cisco CallManager (except when migrating to IPCC), nor do strictly self-service applications using the CVP Standalone Self Service deployment model. Cisco CallManager generally is used as part of the Cisco IPCC solution, in which call center agents are part of an IP solution using Cisco IP phones, or when migrating from TDM ACDs. Only specific versions of Cisco CallManager are compatible with CVP solutions. It is important to check the CVP 3.1 Bill of Materials (BOM), available at http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
2-7
CVP Components
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
2-8
OL-8408-02
A R T
C H A P T E R
Deployment Models
This chapter covers following five substantially different deployment models for CVP customers:
Model #1, Standalone Self Service, page 3-1 Model #2, CVP Call Control, page 3-5 Model #3a, CVP Call Control with Queue and Collect, page 3-9 Model #3b, CVP Call Control with Queue and Self Service, page 3-14 Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service, page 3-17
Each model begins by listing the types of customer requirements and the expected caller experience which would lead a customer to that particular model. Salient characteristics of the model are presented, mentioning at a high level what makes each model different from the others, and any important constraints or caveats that the reader needs to know about. Next, we list the CVP product and solution components which might or must be present in that model. These descriptive sections are followed by a detailed specification of the protocol level message flow between components, and a list of the types of transfers which are supported (refer to Chapter 7, Call Transfer Optionsfor detailed information about these types of transfers). Each model ends finally with a section describing how it can or must be adapted if it is deployed in a geographically distributed fashion (A.K.A. branch office deployment). All of these models can be deployed with CVP's standard set of high availability features. However, we have chosen not to discuss the design or effects of high availability here, in order to keep the discussion focused. That topic is covered in Chapter 5, Designing CVP for High Availability.
Customer Requirements, page 3-2 Caller Experience, page 3-2 Characteristics, page 3-2 Components, page 3-2 Protocol Level Call Flow, page 3-2 Transfers, page 3-4 Geographic Distribution Alternatives, page 3-4
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-1
Deployment Models
Customer Requirements
The customer wants a standalone IVR for automated self service and call handling.
Caller Experience
The caller dials either a local phone number or a centralized phone number, communicates with an IVR, and then optionally transfers to a destination.
Characteristics
This deployment model provides IVR services only. Intelligent contact center integration is not included, though it is possible to transfer the call to an arbitrary destination, without call context, and without queuing. This model requires VoiceXML Servers and gateways, but does not include the CVP Call Server or any ICM components. IVR applications support either DTMF- only or ASR and TTS.
Components
Required components:
Optional components:
Call arrives to ingress gateway via TDM/SIP/H.323. Gateway performs normal inbound pots/voip dial-peer matching. Selected dial-peer invokes CVP self-service TCL script. TCL script invokes CVP standalone bootstrap VoiceXML Document which performs an HTTP request to the configured CSS VIP address for the primary VXML server. CSS selects an available VXML server to process the call. CSS also creates a cookie to ensure that subsequent HTTP requests for the call are directed to the same VXML server.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-2
OL-8408-02
Chapter 3
5. 6. 7. 8.
VXML server runs the application specified in the HTTP URL. VXML server returns a dynamically generated VXML doc to the gateway via the CSS. Gateway parses and renders VXML doc. For spoken output, the gateway either retrieves and plays back pre-recorded audio files referenced in the VXML documentation, or streams media from a TTS server via an MRCP session:
a.
Pre-recorded Audio
Gateway looks in local cache for the requested audio file. If the audio file exists in cache
and has not expired, gateway renders from cache. Alternatively, if the file cannot be retrieved from cache or has expired, gateway makes an HTTP request to the destination defined by the URL of the audio source in the VXML doc. Note that mechanisms other than HTTP might be used, such as tftp, rtsp, flash, etc. For more information, reference Cisco IOS TCL IVR and VoiceXML Application Guide http://www.cisco.com/application/pdf/en/us/guest/products/ps6242/c1696/ccmigration_09 186a008045e24d.pdf
The CSS is configured to select an available media server for the specified URL. Once
selected, the CSS sends an HTTP redirect back to the gateway with the IP address of media server. The gateway then retrieves the media directly.
b. TTS Gateway establishes an MRCP session to the TTS server configured on the gateway, using
the CSS to determine the actual physical server. Note that the TTS server address can be overridden by populating the VXML property com.cisco.tts-server.
TTS server sends RTP packets back to the Gateway directly, bypassing the CSS. Gateway
Caller input can be captured either by DTMF detection on the gateway or via DTMF/utterance recognition on the ASR server. When an ASR server is used, the gateway establishes an MRCP connection to the ASR server configured on the gateway using the CSS to determine the actual physical server. Note that the ASR server address can be overridden by populating the VXML property com.cisco.asr-server. The caller's speech is streamed over RTP directly from the gateway to the ASR server. the caller input to the VXML server via the CSS. Using the cookie saved earlier, the original VXML server will be (and must be) selected to handle the request because it has retained context for the call.
10. As defined in the VoiceXML document, gateway submits an HTTP request containing the results of
11. The IVR dialogue continues with repeated iterations from Step 6. on page 3- 3 to Step 10. on page 3-
3.
12. The application on the VXML server might access back-end systems for personalized data to
incorporate into the VoiceXML documents that it sends back to the gateway.
13. As part of the self-service application, transferring the caller to another destination might be
necessary.
14. In the case of a VXML Bridged Transfer the outcome of the transferred call leg is submitted back
to the VXML server when the transfer completes either normally or because of an error. The VXML session is resumed and further iterations of IVR call treatment and transfers can be performed.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-3
Deployment Models
Transfers
The following types of transfer are supported in this model.
VXML 2.0 Bridged Transfer VXML 2.0 Blind Transfer Release Trunk Transfer (Hook Flash and TBCT)
The VoiceXML transfers are invoked using the VoiceXML Studios transfer element. Release Trunk Transfers are invoked by providing specially formatted return values in VoiceXML Studios subdialog_return element.
WAN outage does not impact self service application ASR is permitted with centralized ASR servers
Cons of collocation:
No centralized administration or reporting Extra VoiceXML Servers required when using replicated branch offices Deployment of applications to multiple VoiceXML servers
Centralized administration and reporting Local phone numbers VoiceXML Server capacity can be shared among branch offices
Cons of non-collocation:
Limited branch survivability ASR requires a local ASR server at each branch WAN bandwidth must be sized for additional VoiceXML over HTTP traffic
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-4
OL-8408-02
Chapter 3
Customer Requirements, page 3-5 Caller Experience, page 3-5 Characteristics, page 3-5 Components, page 3-6 Protocol Level Call Flow, page 3-6 Transfers, page 3-7 Distributed: Ingress and/or Egress Gateway at the branch, page 3-8
Customer Requirements
This model has the following customer requirements:
TDM migration to IP: Customer has a TDM ACD network, and wants to exploit the benefits and flexibility of routing calls over an IP network among those existing ACDs without tromboning. Customer wants to use the IP infrastructure to save costs, such as Takeback and Transfer charges, tie line charges, and PSTN network dip charges. Customer wants the advantages of pre-routing within an enterprise infrastructure without resorting to a service provider. Customer wants a cradle to grave view of all calls in the contact center.
Caller Experience
The caller dials either a local or a centralized phone number and is intelligently routed to a businessappropriate service. The caller might be subsequently transferred to one or more other services, with call context preserved.
Characteristics
This deployment model is a call-switching-only solution and does not insert any IVR capability into the network. This model requires ICM in order to provide the intelligent call routing, but does not provide for any queuing other than what is already provided by the existing ACDs. Calls can be transferred among agents and other devices without loss of call context information and without tromboning through those devices. In addition, this model facilitates migration of existing TDM peripherals to IP, since a Child IPCC Enterprise can take the place of any traditional ACD.
Note
The Child IPCC deployment was added in the ICM 7.0(0) release. For more information on this deployment, refer to the Cisco IPCC Gateway Deployment Guide at: http://www.cisco.com/en/US/products/sw/custcosw/ps1001/tsd_products_support_series_home.html
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-5
Deployment Models
Components
Required components:
This call flow refers to a target as the destination of the transferred call leg. This target could be an IPCC Enterprise agent, an ACD with its own queuing capabilities, or anything else that can take a callers call.
Call arrives to ingress gateway via TDM/SIP/H.323. Gateway performs normal inbound pots/voip dial-peer matching Ingress gateway makes an H.323 RAS request to the gatekeeper to find the IP address of an appropriate CVP Call Server for that dialed number. Gateway sends an H.225 call setup to the CVP Call Server. For a brief period of time, a G.711 bearer stream exists between the ingress gateway and the CVP Call Server. CVP Call Server sends a New Call message to ICM via the VRU PG. ICM starts a routing script based on dialed number and other criteria.
ICM routing script selects a target. ICM sends the targets label to the CVP Call Server. The label might or might not be prefixed with "DTMF", "TBCT", or "HF".
a. If the label contains no prefix, then the transfer is conducted through H.323 signaling. The CVP
Call Server consults the gatekeeper to translate the label to the IP address of an appropriate Cisco CallManager or other H.323 endpoint. The CVP Call Server then sends an H.225 call setup to the selected endpoint, and makes an Empty Capability Set (ECS) request to the ingress gateway to redirect. Through the media stream is redirected, the H.225 signaling path continues to pass through the CVP Call Server.
b. In the case of DTMF (used for TNT), the CVP Call Server sends an H.323 message to the
ingress gateway requesting that it outpulse the remainder of the label (which usually begins with "*8") to the carrier. The carrier pulls the call away from the ingress gateway and delivers it to the specified destination. Both the signaling and media connections to the CVP Call Server are terminated.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-6
OL-8408-02
Chapter 3
c. In the case of hook flash the CVP Call Server sends an H.323 message to the ingress gateway
requesting that it generates a hook flash, and then outpulses the remainder of the label to the carrier, PBX, or other TDM peer to which the gateway is connected. The call is disconnected from the ingress gateway, pulled back into the connected TDM network and delivered to the specified destination.
d. In the case of TBCT, the CVP Call Server instructs the Survivability.tcl script running on the
ingress gateway to issue a 2-B Channel Transfer to the specified target. The carrier pulls the call away from the ingress gateway and delivers it to the specified destination.
3.
If the H.323 target returns a busy or connect failure status, or if the target rings for a period of time which exceeds the CVP Call Servers RNATimeout setting, the CVP Call Server cancels the transfer request and sends a transfer failure indication to ICM. This causes a Router Requery operation; the ICM routing script recovers control and has the opportunity to select a different target or take other remedial action. (Note: Router Requery is only available for transfers which use H.323 signaling; see ICM Managed Transfers, page 7-3.) The call arrives at the H.323 endpoint. Caller speaks to the agent. We assume now that the agent needs to blind-transfer the call to a second agent.
4. 5.
ACD issues a Route Request to ICM. ICM starts a new routing script which contains a Select node, Label node, or other non-queuing node that results in the immediate selection of a label. ICM sends an agent label to the CVP Call Server. The CVP Call Server disconnects the transferred call leg from the current H.323 endpoint and connects the call to the new endpoint in exactly the same way as described earlier when the call was transferred to the first endpoint. Caller speaks to the second agent. We assume now that the caller is satisfied and hangs up. Ingress gateway sends an H.225 release to the CVP Call Server. CVP Call Server sends an H.225 release to the Cisco CallManager to disconnect the agent. CVP Call Server sends a Disconnect message to ICM.
5. 6. 7. 8.
Transfers
The following types of transfers are supported:
akeback-N-Transfer (TNT) Hook flash and Wink wo B Channel Transfer (TBCT) ICM Managed Transfers
Since this model does not include any Cisco-provided VRU, the transfer target will often be another VRU rather than an ACD or agent. However, this is not relevant to the protocol level call flow shown above, since in any case the VRU is simply another endpoint.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-7
Deployment Models
Network Traffic
Two kinds of traffic flows over the WAN: signaling and media. The signaling is H.323 between the ingress/egress gateways and the centralized gatekeepers and CVP Call Servers, and possibly SCCP between the Cisco CallManager phones and the centralized Cisco CallManagers. The media comprises RTP traffic between:
The ingress gateways and the centralized CVP Call Servers (briefly at the start of each new call only) The ingress gateways and centralized or remote IP phones The ingress gateways and egress gateways located in different sites.
If the customer requirements permit, dial plans and routing priorities can be configured such that callers who ingress at one branch are connected by preference to agents who are located at the same branch. In these cases, the RTP traffic flows directly from ingress gateway to IP phone, and does not need to traverse the WAN. (Signaling and data may traverse the WAN.) WAN links are typically provisioned with a minimal amount of bandwidth. In order to conserve that bandwidth, use G.729 encoding for any RTP traffic which traverses the WAN s. (However, the initial brief setup to the CVP Call Server must use G.711, because the CVP Call Server only supports that codec.)
Survivability
Branch reliability becomes somewhat more of an issue than centralized reliability because WANs are typically less reliable than LAN links. Therefore, provide mechanisms which are local to the branch to gracefully handle calls which are impacted by loss of a WAN link to the central site. This topic is discussed in detail in Chapter 6, Call Survivability in Distributed Deployments.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-8
OL-8408-02
Chapter 3
Deployment Models Model #3a, CVP Call Control with Queue and Collect
Customer Requirements, page 3-9 Caller Experience, page 3-9 Characteristics, page 3-9 Components, page 3-10 Protocol Level Call Flow, page 3-10 Transfers, page 3-13 Distributed: Ingress/VXML Gateway at branch, page 3-13
Customer Requirements
Customer requirements include everything in Model #2:
TDM migration to IP: Customer has a TDM ACD network, and wants to exploit the benefits and flexibility of routing calls over an IP network among those existing ACDs without tromboning. Customer wants to use the IP infrastructure to save costs, such as Takeback and Transfer charges, tie line charges, and PSTN network dip charges. Customer wants the advantages of pre-routing within an enterprise infrastructure without resorting to a service provider. Customer wants a cradle to grave view of all calls in the contact center.
as well as:
The ability to bring network level prompting and queuing into the enterprise.
This deployment also allows the customer to leverage ICM scripting knowledge to write simple IVR applications integrated with the routing script logic.
Caller Experience
The caller dials a local or centralized phone number. The caller receives a welcome prompt, an initial menu, and perhaps a simple data entry dialogue to collect an account number. Based on the callers input, the call might be queued for a contact center agent, receiving music or announcements while on hold. Eventually the caller is connected to an available agent, after which the caller might be returned to queue and/or transferred to a different target, such as voice mail, another agent, or IVR menu. All call context information is maintained for the life of the call.
Characteristics
All scripting is done using the ICM Script Editor, with ICM Network VRU Scripts forming the building blocks of the IVR application. Each script invokes the appropriate CVP Micro-application for the required operation. Most implementations use DTMF data entry and recorded. wav files rather than ASR and TTS.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-9
Chapter 3 Model #3a, CVP Call Control with Queue and Collect
Deployment Models
Transfers to agents can involve queuing, and subsequent transfers might involve further IVR dialog as well. Agent to agent calls can be blind-transferred without tromboning, but warm transfers might require tromboning through the ACD. Call context is maintained throughout the call.
Components
Required components:
Ingress gateways VXML gateways Gatekeepers CVP Call Servers ICM, or IPCC Enterprise or Hosted
Optional components:
Rarely used:
ASR/TTS services
Call arrives to ingress gateway via TDM/SIP/H.323. Gateway performs normal inbound pots/voip dial-peer matching Ingress gateway optionally makes an H.323 RAS request to the gatekeeper (static dial-peer targets might be configured instead) to find the IP address of an appropriate CVP Call Server for that dialed number. Gateway sends an H.225 call setup to the CVP Call Server, and the CVP Call Server immediately responds with an H.225 connect. At this point the gateway answers the incoming call leg. For 100ms or so, a G.711 RTP stream exists between the ingress gateway and the CVP Call Server. This short term media burst sends only a few RTP packets to the CVP Call Server from the gateway before it is torn down as the call is transferred to the VXML gateway. This should be considered negligible and does not impact network design. Gateway access lists can be configured if necessary to prevent this stream from being established. CVP Call Server sends a New Call message to ICM via the VRU PG. ICM starts a routing script based on dialed number and other criteria. We assume now that the script begins with a simple menu.
3.
4. 5.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-10
OL-8408-02
Chapter 3
Deployment Models Model #3a, CVP Call Control with Queue and Collect
The ICM script executes a Send To VRU script node which results in a Connect message containing the VRU access number and a unique Correlation ID being sent to the CVP Call Server. The label is known as the "VRU Transfer Label". CVP Call Server consults that gatekeeper to translate the label to the IP address of an appropriate VXML gateway. (This gatekeeper consultation is mandatory as the CVP Call Server cannot transfer H.323 calls without being configured to use a gatekeeper) CVP Call Server sends an H.225 call setup to the selected VXML gateway, and requests the ingress gateway to redirect the media stream to the VXML gateway. Note that the destination number comprises the VRU transfer label with the Correlation ID appended. The H.323 call arrives at the VXML gateway which performs normal inbound VoIP dial-peer matching. Selected dial-peer invokes CVP TCL script. TCL script invokes CVP VXML bootstrap document, which performs an HTTP request to the configured CVP Call Server for the gateway (or via a CSS if present in the solution, see Chapter 5, Designing CVP for High Availability). The CVP Call Server strips the Correlation ID from the end of the dialed number and sends a Request-Instruction message to the ICM, which correlates this VRU call leg with the script that invoked the Send To VRU operation. The ICM script resumes and the IVR dialogue commences. The ICM sends a Run External Script to the CVP Call Server specifying the CVP microapp to be executed. to the VXML gateway.
2.
3.
4. 5. 6.
7.
8. 9.
10. CVP Call Server sends a VoiceXML Document containing the prompt or DTMF input instructions 11. VXML gateway voice browser executes the VoiceXML Document. 12. In executing the VoiceXML Document, the VXML gateway could optionally make an HTTP request
While the music is playing an agent becomes available. ICM sends an agent label to the CVP Call Server.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-11
Chapter 3 Model #3a, CVP Call Control with Queue and Collect
Deployment Models
2.
The CVP Call Server disconnects the current transferred call leg to the VXML Gateway and re-establishes the media channels for the incoming call leg from the ingress gateway to the CVP Call Server. The CVP Call Server sends an Empty Capability Set message to the ingress gateway and the media channels are disconnected pending setup of the new transferred call leg to the agent. The CVP Call Server consults the gatekeeper to translate the agent label to an appropriate destination IP address. This is a Cisco CallManager in the example scenario here but could alternatively be an egress gateway which is front-ending an ACD or TDM voice network. If the gatekeeper cannot return a destination IP address in response to the ARQ or the call setup fails to the primary and all possible alternate endpoints returned by the gatekeeper, an event report is sent to the ICM indicating connect failure. The ICM Router requery mechanism is invoked in order that the script might resume and perform further IVR treatment or provide alternative transfer destinations. Router requery is also performed if the call setup attempt results in destination busy or the called number does not answer within the CVP Call Servers predefined RNATimeout period. Note that RNATimeout is a system-wide setting for each CVP Call Server. The CVP Call Server issues an H.225 Setup to the target device and requests the ingress gateway to establish the media stream to the target device. Caller speaks to the agent.
3. 4.
5.
6. 7.
We assume now that the agent needs to blind-transfer the call to a second skill group. We also assume that there are currently no agents available in that skill group. The agent, via his ACD or CTI desktop application makes a post-route request to ICM. ICM starts a new routing script, and executes another Queue node. On successfully queuing the call ICM executes a Run External Script node to return the caller to the VRU and present queuing messages and music while waiting in queue. ICM sends the VRU Transfer Label to the CVP Call Server along with a unique Correlation ID. The CVP Call Server commences another Empty Capability Set transfer to reconnect the caller to the VXML gateway. The CVP Call Server disconnects the current transferred call leg to the Cisco CallManager and re-establishes the media channels for the incoming call leg from the ingress gateway to the CVP Call Server. The CVP Call Server sends an Empty Capability Set message to the ingress gateway and the media channels are disconnected pending setup of the new transferred call leg to the VXML gateway. CVP Call Server consults that gatekeeper to translate the label to the IP address of an appropriate VXML gateway. gateway to redirect the media stream to the VXML gateway.
8. 9.
10. CVP Call Server sends an H.225 Setup to the selected VXML gateway, and requests the ingress 11. The VXML gateway starts a TCL/VXML application as described already for the VRU leg, which
sends an HTTP New Call message to the CVP Call Server (optionally via a CSS - see High Availability Design section).
12. The CVP Call Server sends a Request Instruction message containing the call's Correlation ID to
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-12
OL-8408-02
Chapter 3
Deployment Models Model #3a, CVP Call Control with Queue and Collect
13. The ICM routing script resumes execution with a RunExternalScript node to play the queuing
messages/music.
14. ICM sends a RunScriptRequest message to the CVP Call Server. 15. CVP Call Server sends a VoiceXML Document containing instructions to play the specified media
file.
16. VXML gateway voice browser executes the VoiceXML Document, retrieving media files from the
call to the new agent in exactly the same way as described earlier when the call was transferred to the first agent.
21. Caller speaks to the second agent. We assume now that the caller is satisfied and hangs up. 22. Ingress gateway sends an H.225 release to the CVP Call Server. 23. CVP Call Server sends an H.225 release to the Cisco CallManager to disconnect the agent. 24. CVP Call Server sends a Disconnect message to ICM.
Transfers
The following types of transfer are supported:
akeback-N-Transfer (TNT) Hook flash and Wink wo B Channel Transfer (TBCT) ICM Managed Transfers
For agent to agent transfers, only blind transfers are supported when the agents are hosted on TDM ACD's. For IPCC agents, warm transfers are also supported. However, note that in this case the H.323 signaling is daisy-chained through the Cisco CallManager once the warm transfer has been completed by the agent. From the customers perspective, this means that the original callers line appearance remains on the first agents desktop application until the caller eventually hangs up. It also means that auto-answer will not function properly for the first agent, since she still appears to be talking to the caller.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-13
Chapter 3 Model #3b, CVP Call Control with Queue and Self Service
Deployment Models
Model #3b, CVP Call Control with Queue and Self Service
This section covers the following topics:
Customer Requirements, page 3-14 Caller Experience, page 3-14 Characteristics, page 3-15 Components, page 3-15 Protocol Level Call Flow, page 3-15 Transfers, page 3-16 Distributed: Ingress/VXML Gateway and VoiceXML Server at branch, page 3-16
Customer Requirements
Customer requirements include everything in Model #3a:
TDM migration to IP: Customer has a TDM ACD network, and wants to exploit the benefits and flexibility of routing calls over an IP network among those existing ACDs without tromboning. Customer wants to use the IP infrastructure to save costs, such as Takeback and Transfer charges, tie line charges, and PSTN network dip charges. Customer wants the advantages of pre-routing within an enterprise infrastructure without resorting to a service provider. Customer wants a cradle to grave view of all calls in the contact center. The ability to bring network level prompting and queuing into the enterprise.
as well as:
a need to support substantially more complex self service applications, which might or might not include ASR and TTS. The customer has an existing services oriented architecture environment for his web infrastructure, and wants to make use of it for self service.
Caller Experience
Caller dials a local or centralized phone number. The caller interacts with a complex self service application, and might choose to transfer to an agent. The caller might wait in queue, listening to music or messages. Eventually the caller speaks to an agent, after which the caller might be returned to queue and/or transferred to a different target, such as voice mail, another agent, or back into a self service application. All call context information is maintained for the life of the call.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-14
OL-8408-02
Chapter 3
Deployment Models Model #3b, CVP Call Control with Queue and Self Service
Characteristics
The self-service scripting is developed primarily in VoiceXML Studio, though the initial invocation and possibly some amount of scripting might also be developed in the ICM Script Editor in order to link a number of self-service modules into an overall IVR service. The ICM script coordinates the interaction at a high level and integrates the IVR aspects of the call with the call routing business rules. ASR and TTS are often used in this model.
Components
Required components:
Ingress gateways VXML gateways Gatekeepers CVP Call Servers CVP VoiceXML Servers (or other VXML application server) ICM or IPCC Enterprise or Hosted
Optional components:
CVP Call Server sends a VoiceXML Document containing an embedded "subdialog" element, containing a URL for the VoiceXML Server application. This URL is built dynamically by the CVP Call Server using values set in CVP ECC variables by the ICM script. Optionally, data can be passed to the VXML subdialog either via URL or VXML parameters; the content of which is determined by the ToExtVXML ECC variables set in the ICM script. When the gateway voice browser executes this VoiceXML Document, it sends the embedded HTTP request to the VoiceXML Server. The VoiceXML Server invokes the requested application, and responds with a VoiceXML Document of its own, containing the first instructions comprising the self-service application. The gateway voice browser executes the VoiceXML Document, fetching and playing prompts as necessary from the Media Server.
2. 3. 4.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-15
Chapter 3 Model #3b, CVP Call Control with Queue and Self Service
Deployment Models
5.
We assume that the application uses ASR to input information from the caller, and TTS to play text-based messages. The gateway voice browser sends a set of grammars and a request to the ASR server to recognize spoken input, as well as TTS requests to synthesize speech. The MRCP ASR/TTS server synthesizes the spoken message and plays it via an RTP stream back to the gateway. It also listens via an RTP stream in the other direction for utterances which match the specified grammars. The MRCP server responds to the gateway voice browser with a list of words which it recognized. The gateway voice browser sends a resulting HTTP request to the VoiceXML Server. The VoiceXML Server continues executing its script, serving additional Voice XML documents. Steps 2 through 8 are repeated as necessary. gateway voice browser containing a "subdialog return" element and optional data for delivery back to ICM.
6.
7. 8. 9.
10. Eventually the VoiceXML Server script terminates, and sends a VoiceXML Document to the
11. The gateway voice browser sends the resulting information in an HTTP request to the CVP Call
Server.
12. The CVP Call Server sends a RunScriptResult message to ICM. 13. ICM continues its routing script.
Transfers
Transfers are performed as detailed previously for model 3a:
akeback-N-Transfer (TNT) Hook flash and Wink wo B Channel Transfer (TBCT) ICM Managed Transfers
Although the CVP VXML self-service applications could theoretically be scripted to perform their own transfers, these should not be used in this model and are not supported. The ICM, having passed control to an external CVP VXML application, expects to resume control of the call once the application has completed. If a transfer is required then the destination number, if determined by the self-service application, wants be returned to ICM via the FromExtVXML ECC variables which can be set on the subdialog-return script element. For agent to agent transfers, only blind transfers are supported when the agents are hosted on TDM ACDs. For IPCC agents, warm transfers are also supported. However, it should be noted that in this case the H.323 signaling is daisy-chained through the Cisco CallManager once the warm transfer has been completed by the agent. From the customers perspective, this means that the original callers line appearance remains on the first agents desktop application until the caller eventually hangs up. It also means that auto-answer will not function properly for the first agent, since she still appears to be talking to the caller.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-16
OL-8408-02
Chapter 3
Deployment Models Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service
For example, the VoiceXML Server might be either centralized or located at the branch, and ASR is not supported unless the ASR servers can be co-located with the VXML gateways wherever they are placed. Finally, if the solution involves internal IP calls from the branch to the central office or to another branch office, these calls are not currently supported with ASR.
Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service
This section covers the following topics:
Customer Requirements, page 3-17 Caller Experience, page 3-17 Characteristics, page 3-17 Components, page 3-17 Protocol Level Call Flow, page 3-18
Customer Requirements
The customer has an existing PGW (PSTN Gateway) or TDM Intelligent Network for call control, and wants to use CVP as a network IVR or network self-service platform.
Caller Experience
Caller experience can be any of those described in models Model #2, CVP Call Control, page 3-5, Model #3a, CVP Call Control with Queue and Collect, page 3-9 or Model #3b, CVP Call Control with Queue and Self Service, page 3-14.
Characteristics
This model is characterized by the fact that all call control is performed through the NIC. CVP is only involved for the purpose of doing VRU treatment (ie.,queueing, collecting caller-input, or self service). Self service applications can be simple or complex, involving DTMF and/or ASR/TTS, and calls can be queued and transferred to agents. Blind network transfers are possible, subject to availability in the particular call control platform to which the NIC is connected. Note that PGW deployments connecting to ICM via the Generic SS7 NIC fall into this category, Models 2 and 3 apply when the PGW delivers H.323 calls to the CVP Call Server.
Components
Required components:
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-17
Chapter 3 Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service
Deployment Models
Optional components:
CVP VoiceXML Servers Media Servers ASR/TTS Servers Content Services Switch
A call is delivered to the voice network switching platform. The switching platform sends a new call indication to the ICM. The ICM identifies the call from the dialed number and selects a routing script to process the call. The script is executed and the call is sent to the VRU for call treatment using a translation route or label plus Correlation ID depending on the ICM VRU type being used in this deployment. The selection of VRU type is determined by placement of the VRU at NAM or CICM level and the ability of the switching platform to support use of a Correlation ID. The connect-to-VRU message is sent from the ICM to the switching platform. The switching platform connects the incoming call to the voice gateway. Call arrives at the ingress gateway via a TDM connection. The gateway performs normal inbound pots dial-peer matching. (Note that in the case of the PGW being used in this deployment model this step involves delivery of an H.323 call to a VXML gateway and matching of a VoIP dial-peer) Selected dial-peer invokes CVP TCL script. TCL script invokes CVP VXML bootstrap document, which performs an HTTP request to the configured CSS VIP address for the primary CVP Call Server. CSS selects an available CVP Call Server to process the call. The CSS is only used for the initial http request to the CVP Call Server as subsequent requests from the gateway use the IP address of the CVP Call Server explicitly. call leg with the script that performed the Send/Translation Route to VRU operation.
4. 5. 6.
7. 8. 9.
10. The CVP Call Server sends a Request-Instruction message to the ICM, which correlates this VRU 11. The ICM script resumes and the IVR dialogue commences. 12. The ICM sends a Run External Script to the CVP Call Server specifying the CVP microapp to be
executed.
13. The CVP Call Server sends a dynamically generated VoiceXML Document to the voice gateway. 14. The gateway parses and renders the VoiceXML document. 15. This document might contain either VXML elements for speech output and caller input, or it might
invoke a sub-dialogue with a destination URL that references another VXML server, typically a CVP VoiceXML Server, in order to incorporate self service modules into the overall dialogue.
16. In the latter case, the IVR dialogue continues between the gateway and the VXML server as defined
in Model #3b (see Model #3b, CVP Call Control with Queue and Self Service, page 3-14).
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-18
OL-8408-02
Chapter 3
Deployment Models Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service
17. On completion of the self-service operations defined in the VoiceXML Document, the gateway
sends another http request to the CVP Call Server containing the results.
18. The CVP Call Server forwards the outcome to ICM using a Run Script Results message. 19. Further Run External Script nodes are executed in the ICM script until the IVR dialogue is
completed.
20. At this point the call might either be terminated or transferred to a call center agent or other
destination.
21. To terminate the call, the ICM sends a disconnect message to the switching platform. 22. Alternatively, to transfer the call to another destination, the ICM sends a connect message to the
switching platform which will result in disconnection of the VRU call leg from the voice/VXML gateway and connection of a new transferred leg to the selected target.
23. Subsequently, depending on the capability set of the switching platform and the ability of the
destination to perform a route request to ICM, the caller could be returned to CVP for further IVR treatment and queuing.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
3-19
Chapter 3 Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service
Deployment Models
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
3-20
OL-8408-02
C H A P T E R
Sizing
This chapter discusses how to determine how many physical machines to order, and, in the case of gateways and gatekeepers, what kind to order. This chapter covers the following topics:
Sizing Overview, page 4-1 CVP Call Server, page 4-2 CVP VoiceXML Server, page 4-3 Gateway, page 4-3 Gatekeeper, page 4-6
Sizing Overview
As a basis for this exercise, first determine the customers contact center profile in terms of the number of calls which are in each state, worst case. In other words, if you were to observe the contact center at its busiest instant in the busiest hour, how many calls would you find are in each of the following states:
Self Service calls which are either executing applications using the CVP VoiceXML Server; Queue and Collect calls which are in queue for an agent, or which are executing prompt and collect type self service applications; and Talking calls which are connected to agents or to third party TDM VRU applications.
In counting the number of calls which are in the Talking state, count only calls which are using CVP or gateway resources. To determine whether a Talking call is using resources, you must consider how the call gets transferred to that VRU or agent. If the call was transferred via VoIP, it continues to use an ingress gateway port and it continues to use a CVP resource, because CVP continues to monitor the call and provides the ability to retrieve it and re-deliver it at a later time. The same is true of calls which are tromboned to a TDM target, using both an incoming and an outgoing TDM port on the same gateway or on a different gateway (ie., toll bypass). Calls which are transferred to VRUs or agents in this manner should be counted as Talking calls. However, if the call was transferred via *8 TnT, hook flash, TBCT, or an ICM NIC, neither the gateway nor CVP play any role in the call. Both components have reclaimed their resources. Such calls should not be counted as Talking calls.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
4-1
Sizing
Finally, include in the overall call counts those calls that have been transferred back into CVP for queuing or self-service, via either blind or warm methods. Because these calls usually do not amount to more than 5% or 10% of the overall call volume, it is easy to overlook them. You will also notice that the definitions of these call states differ somewhat from the similar definitions used for port licensing purposes (see Chapter 15, Licensing). The use of ASR or TTS has nothing to do with delineating which calls are in which state, whereas it does for licensing purposes. Similarly, the call state determination has nothing to do with whether the agents are IPCC agents or ACD agents, nor does it matter whether the customer intends to use CVPs ability to retrieve and re-deliver the call to another agent or back into self service. In addition to the overall snapshot profile of calls in the contact center, one more piece of information is required:
You will need this information on a contact-center-wide basis. You can use statistical means to arrive at this number, because you will never be able to identify a true maximum arrival rate. Except in fairly small implementations, this is seldom the critical factor in determining sizing. Armed with the above data, you can now begin sizing each component in the network. This section first considers the CVP products Call Server and VoiceXML Server, followed by the gateways, gatekeepers and content switches. Note that this section deals entirely with the number and type of physical components required to support the customers system. It does not include any redundancy. For an understanding of how to extend these numbers to support higher reliability, please see Chapter 5, Designing CVP for High Availability.
Note
Unless otherwise noted, this entire Component Sizing chapter applies to all deployment models, including Model #1, Standalone Self-Service.
The CVP Call Server is not used in Model #1, Standalone Self-Service. This section does not apply to such deployments. CVP Call Servers are sized according to the number of call legs they can handle, in addition to their maximum call arrival rate. A call might have up to two legs: one for call control activity (switch leg), and one for VRU activity (VRU leg). Each CVP Call Server can handle 400 call legs. Therefore, the number of calls each CVP Call Server can handle depends on the percentage of calls which are using two call legs. In the case of Deployment Model #3, CVP with ICM-Controlled Switching, all cases use only a switch leg. Therefore, each CVP Call Server can handle the full 400 calls. In the case of Deployment Model #4, IVR/Queuing via ICM with NIC-controlled routing, all calls use only a VRU leg. Each CVP Call Server can therefore again handle the full 400 calls. In Models #3a and #3b, the capacity depends on the percentage of calls which are in talking state. Each CVP Call Server is further limited to a 3 CPS call arrival rate. However, Model #4 is exempt from this limitation because the CVP Call Server in this model does not perform any H.323 processing. Specifically, the number of CVP Call Servers required is:
(2*Self Service + 2*Queue and Collect + Talking) / 400, rounded up
or
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
4-2
OL-8408-02
Chapter 4
whichever is larger.
where calls refers to the number of calls which are actually in CVP VoiceXML Server self-service applications at that busy moment snapshot in time.
Gateway
This section covers the following topics:
Choice of Gateway, page 4-3 Gateway Sizing, page 4-4 Using MGCP Gateways, page 4-6
Choice of Gateway
CVP uses gateways for two purposes: TDM ingress and VoiceXML rendering. Any Cisco gateway which is supported by CVP can usually be used for either purpose or both. However, depending on your Deployment Model, you might need only one or the other:
Model #1, Standalone Self-Service: All calls use both ingress and VoiceXML Model #2, CVP with ICM-Controlled Switching: All calls use ingress only Model #3a, DTMF Menu, Prompt and Collect: All calls use ingress, some calls use VoiceXML Model #3b, ASR/TTS and/or complex IVR application: All calls use ingress, some calls use VoiceXML Model #4, IVR/Queuing via ICM with NIC-controlled routing: All calls use VoiceXML only
In cases where both ingress and VoiceXML are required, you can choose to run both functions on the same gateways, or you can choose to designate some gateways for ingress and others for VoiceXML. Following are some guidelines for determining whether they should be combined or split:
In classical branch office deployments, where the call needs to be queued at the branch where it arrived, ingress and VoiceXML functions must always be combined. In cases where a large number of non-CVP PSTN connections will share the gateways, it is recommended to dedicated Ingress for that purpose, and use separate VXML gateways. AS5850eRSC and Cisco Catalyst 6500 Communication Media Module (CMM) can be used for ingress only; they cannot be used for VoiceXML. VXML-only gateways are less costly, since they do not require DSP farms or TDM cards. Use a spreadsheet to determine which way you obtain the best price.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
4-3
Chapter 4 Gateway
Sizing
With relatively low call volume, it is usually better to combine them for redundancy purposes. Two combined gateways are better than one of each, since the loss of one gateway still allows calls to be processed, though at a lower capacity.
The next decision is whether to use ISR gateways (2xxx or 3xxx) or the AS5xxx gateways. Guidelines state that ISR gateways should only be used in branch office sites, whereas AS5xxxx gateways should be used in centralized data center sites. Sometimes it is difficult to determine what constitutes a branch office, and therefore which gateway should be used. The following guidelines might help:
The classical definition of branch offices, for which you should use ISR gateways, includes:
Multiple sites where TDM calls will be arriving from the PSTN Those sites are separated from the data centers where most of the CVP equipment lie You will be placing only one gateway at each site
If you have sites where you will be stacking multiple gateways for any reason, then those sites are data center sites and should use 5xxx gateways. Anything which does not fit these two descriptions: use your best judgement.
Finally, note that IP-IP Gateway functionality is not a supported configuration with CVP. None of the deployment models described in Chapter 3, Deployment Models require this functionality, but some customers have very complex call flows which do not clearly fit those models, and some customers want to integrate with non-Cisco VoIP in a way where IP-IP gateway might be helpful.
Note
Refer to technical specifications for the AS5xxx series gateways at: http://www.cisco.com/en/US/products/hw/iad/index.html and for the Integrated Service Routers (ISRs) at: http://www.cisco.com/en/US/products/hw/routers/index.html.
Gateway Sizing
Individual Cisco gateways can handle different call capacities depending on whether they are doing ingress only, VoiceXML only, or a combination of the two. Gateways doing VoiceXML activities also have different call capacities depending on whether or not they are supporting ASR or TTS activities. In general, gateways performing ingress only can be sized according to the number of TDM cables that can be physically connected. For gateways which are combined or VXML-only, it is important to ensure that the overall CPU usage will be less than 70% on average. The factors affecting CPU usage are:
Calls per second (cps) Maximum concurrent calls Maximum concurrent VoiceXML sessions
Before sizing the voice gateways, use the IPCC Resource Calculator to determine the maximum number of trunks (DS0s) and VoiceXML IVR ports needed to support the entire solution. For almost all CVP deployment models, sizing is based on the Maximum concurrent VoiceXML sessions & VoIP calls, described in Table 4-1.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
4-4
OL-8408-02
Chapter 4
Sizing Gateway
Table 4-1
Voice Gateway and Dedicated VXML Sever VXML Platform Cisco 2801 Cisco 2811 Cisco 2821 Cisco 2851 Cisco 3725 Cisco 3745 Cisco 3825 Cisco3845 AS5400HPX AS5350XM AS5400XM VXML and DTMF 7 30 48 60 68 100 120 150 96 240 240 VXML and VXML and ASR/TTS DTMF 6 24 36 56 50 80 96 144 90 192 192 6 24 36 56 50 77 96 144 90 192 192 VXML and ASR/TTS 4 20 30 48 38 60 72 96 72 192 192 Memory Recommended 256MB 256MB 256MB 512MB 512MB 512MB 512MB 512MB 512MB Default Default
These numbers assume that the only activities running on these gateways are VoiceXML with basic routing and connectivity. If you intend to run additional applications, such as fax, security, normal business calls, etc., the capacity numbers presented here should be prorated accordingly. These figures apply to IOS version 12.4 (mainline). Also, note that if you run VXML on one of the 28/37/3800 gateways, additional licenses, FL-VXML-1 or FL-VXML-12 are required. Table 4-2 should also be consulted in order to ensure that the concurrent call load and call arrival rates do not exceed these rated capacities.
Table 4-2 Maximum Calls on a Platform
Platform 2801 2811 2821 2851 3725 3745 3825 3845 AS5400HPX AS5350XM AS5400XM
Maximum VoIP Calls 32 80 128 192 192 384 384 540 384 192 648
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
4-5
Chapter 4 Gatekeeper
Sizing
In addition to these capacities, also consider how much DRAM and flash memory to order. The capacity which comes with the machine by default is usually sufficient for most purposes. However, if your application requires large numbers of distinct .wav files (as with complex self service applications), or if your application has unusually large .wav files (as with extended voice messages or music files), you might want to increase the amount of DRAM in order to accommodate more cache space. .Wav files are recorded at 8kb per second. Additionally, if you plan to use the flash memory itself rather than a media server to house media files, you might want to expand your flash memory order. The use of DRAM for prompt caching is discussed in detail in Chapter 14, Media File Options.
Design and Plan a phased migration of each MGCP voice gateway to H.323. Implement both MGCP 0.1 and H.323. There are some considerations with this option. First, only one signaling protocol might be assigned to a PTSN interface module. This means you need dedicated PSTN interfaces/modules to each CVP and to Cisco CallManager. If calls are being sent over the Wide Area Network, you must examine you Call Admission design. Optimally, have a single call admission control mechanism for all calls as well as the dialplan.
Deploy a second H.323 voice gateway at each CVP location. This means you need additional PSTN lines. If calls are being sent over the Wide Area Network (WAN), you must examine your Call Admission design. Optimally, have a single call admission control mechanism for all calls as well as the dialplan.
Gatekeeper
Gatekeepers are required components in all deployments except Model #1, Standalone Self-Service, and Model #4, NIC-based Call Control with CVP Queue, Collect and Self-Service. A gatekeeper is an H.323 entity on a LAN that provides address translation and control access to the LAN for H.323 terminals and gateways. The gatekeeper can provide other services to the H.323 terminals and gateways, such as bandwidth management and locating gateways. Generally, when you need to add a gatekeeper for the CVP design, you should use the Cisco 2811 for smaller deployments, the Cisco 3825 for medium deployments, and the Cisco 3845 or 7301 for larger deployments. Again, CPU utilization is the determining factor when sizing gatekeepers. Memory usage is seldom a critical factor, unless you are also using the same gatekeepers to register very large numbers of endpoints outside of the CVP implementation. The factors that affect CPU utilization are:
The overall number calls the gatekeeper has to support The length of time the gatekeeper has to monitor the call The number of H.323 endpoints registering with the gatekeeper The call arrival rate
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
4-6
OL-8408-02
Chapter 4
Sizing Gatekeeper
However in almost all cases the call arrival rate will be the determining factor in CVP implementations. Please see Table 4-3.
Table 4-3 Maximum Call Per Second on Router
Router 7301 72XX 3845 3825 3745 3725 2851 2821 2811
Note
The 5xxx routers cannot be used as gatekeepers. Also, note that gatekeeper functionality should not be combined on the same router as gateway functionality, except in non-redundant lab environments (and a more expensive IOS feature set is required in this case as well). For the most current information about the Cisco integrated services routers, refer to the latest product documentation available at the following sites:
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
4-7
Chapter 4 Gatekeeper
Sizing
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
4-8
OL-8408-02
A R T
C H A P T E R
Overview, page 5-1 Layer 2 Switch, page 5-2 Originating Gateway, page 5-3 Gatekeeper, page 5-4 CVP Voice Browser, page 5-6 CVP Application Server, page 5-8 VoiceXML Gateway, page 5-10 Content Services Switch (CSS), page 5-12 Media Server, page 5-14 CVP VoiceXML Server, page 5-15 Automatic Speech Recognition (ASR) and Text-to-Speech (TTS) Server, page 5-17 Cisco CallManager, page 5-18 Intelligent Contact Management (ICM), page 5-19 Standalone Distributed Diagnostics and Services Network (SDDSN), page 5-19
Overview
This design provides the highest level of failure protection. Your solution may vary depending upon the customers business needs, including:
CVP can be deployed in many configurations that use numerous hardware and software components. Each solution must be designed in such a way that a failure impacts the fewest resources in the call center. The type and number of resources impacted depends on how stringent the business requirements
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-1
are and which design characteristics you choose for the various CVP components, including the network infrastructure. A good CVP design is tolerant of most failures (defined later in this chapter), but sometimes not all failures can be made transparent to the caller. CVP is a sophisticated solution designed for mission-critical call centers. The success of any CVP deployment requires a team with experience in data and voice internetworking, system administration, and CVP application configuration. Before implementing CVP, use careful preparation and design planning to avoid costly upgrades or maintenance later in the deployment cycle. Always design for the worst possible failure scenario, with future scalability in mind for all CVP sites. In summary, plan ahead and follow all the design guidelines and recommendations presented in this guide and in the latest version of the Cisco IP Telephony Solution Reference Network Design (SRND), available at: http://www.cisco.com/go/srnd For assistance in planning and designing your CVP solution, consult your Cisco or certified Partner Systems Engineer (SE). A note about the CVP Call Server component: throughout this document we have been treating this device as a single component, because there has not been a need to examine it in any more depth than that. When discussing CVP high availability however, it is important to understand that there are actually two parts to this component: the CVP Voice Browser and the CVP Application Server. The CVP Voice Browser is responsible for H.323 processing, and the CVP Application Server is responsible for the interface to ICM, as well as for the conversion of CVP Microapplications to VoiceXML pages and vice versa. CVP's high availability design treats these two parts as independent processes, allowing calls to be handled by one CVP Call Server's Voice Browser and another CVP Call Server's Application Server at the same time. We will cover this in detail as we discuss these components later in this chapter.
Layer 2 Switch
The figure below shows a high-level physical design layout for a fault-tolerant CVP system. Each component in the CVP site is duplicated for redundancy. The quantity of each of these components varies based on the expected busy hour call attempts (BHCA) for a particular deployment. The following sections describe the failover strategy for each of these components.
Figure 5-1 Redundant CVP System
In , two Layer 2 switches comprise a single VLAN. There are two reasons for this design:
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-2
OL-8408-02
Chapter 5
If one switch fails, only a subset of the components becomes inaccessible. The components connected to the remaining switch can still be accessed for call processing. A Content Services Switch (CSS) and its redundant partner must reside on the same VLAN in order to send keep-alive messages to each other via Virtual Router Redundancy Protocol (VRRP), a protocol similar to Hot Standby Router Protocol (HSRP). If one of the Later 2 switches fails, one CSS is still functional.
Note
NIC teaming is not supported in the CVP solution. Gateway/Gatekeeper NIC redundancy is discussed in the next section.
Originating Gateway
The function of the originating gateway in a CVP solution is to accept calls from the PSTN and direct them to CVP for treatment. This section covers the following topics:
Configuration
For the most current information on how to provide redundancy and reliability for originating gateways and T1/E1 lines, refer to the latest version of the Cisco IPCC Enterprise Solution Reference Network Design (SRND), available at http://www.cisco.com/go/srnd In addition, consider the following CVP-specific issues when designing gateways for high availability in a CVP solution:
When used in ICM-integrated models, the originating gateway communicates with CVP using the H.323 protocol. Therefore, unlike many Cisco CallManager deployments where the gateway and Cisco CallManager typically communicate via MGCP, the originating gateway must be configured for H.323 when communicating with CVP in ICM-integrated CVP deployments. The H.323 protocol, unlike MGCP, has no inherent provisions for call survivability. Further details are discussed in CVP Voice Browser, page 5-6. When configuring the gateway for H.323, it is best to bind the H.323 interface to the virtual loopback interface, as illustrated in the following configuration example:
interface Loopback0 ip address 22.22.22.12 255.255.255.255 h323-gateway voip interface h323-gateway voip id Dir_GK ipaddr 200.1.1.120 1719 <<<<<<< GK Info h323-gateway voip h323-id paris h323-gateway voip bind srcaddr 22.22.22.12
This configuration makes H.323 independent of the gateway physical interfaces. In this way, if one NIC card fails, the other NIC card can start processing H.323 traffic.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-3
Chapter 5 Gatekeeper
As shown in the Redundant CVP System diagram, each gateway NIC card is connected to a different physical switch to provide redundancy in the event that one switch or interface fails. One of the switches must additionally be configured with a second VLAN to which one of the NIC cards must be connected. The loopback interface virtually ties together the two gateway NIC cards which are now residing in two different VLANs.
Call Disposition
If the originating gateway fails, the following conditions apply to call disposition:
Calls in progress are dropped. There is nothing that can be done to preserve these calls because the PSTN switch has lost the D-channel to all T1/E1 trunks on this gateway. New calls are directed to a T1/E1 at an alternate gateway, provided the PSTN switch has its trunks and dial plan configured to do so.
Gatekeeper
An H.323 gatekeeper is always required in all ICM-integrated deployment models except Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service, which does not use CVP for call control at all. The CVP Voice Browser requires the use of a gatekeeper, and a CVP Voice Browser is used in all of these other models. Note, however, that a gatekeeper is an optional (although recommended) component for call routing by the originating gateway in those deployments; an originating gateway can perform all of its H.323 call routing by using VoIP dial-peers that contain static IP addresses, whereas the CVP Voice Browser must always perform a gatekeeper Remote Access Service (RAS) lookup to route calls.
Note
In one particular situation, when using the VBAdmin SetTransferLabel option, the Voice Browser ignores the IP address result returned from the gatekeeper, and instead routes the IVR call leg back to the same originating gateway from which the call arrived. This feature ensures that no WAN bandwidth is incurred during IVR treatment/queuing. A gatekeeper is still required in this situation because the Voice Browser needs to perform the gatekeeper lookup function to obtain possible alternate endpoints in the event that the attempt to transfer the call to the originating gateway fails. Gatekeepers can use one of three types of high-availability mechanisms:
Only HSRP and alternate gatekeeper are supported by CVP. Alternate gatekeeper support was introduced in CVP 3.1 SR1.
HSRP
HSRP is a Cisco proprietary routing protocol that provides backup to a gatekeeper in the event of failure. Using HSRP, two gatekeepers work together to present the appearance of a single virtual router on the LAN. The gatekeepers share the same IP and MAC addresses. Therefore, if one of the gatekeepers fails, the hosts on the LAN are able to continue forwarding packets to a consistent IP and MAC address. The process of transferring the routing responsibilities from one device to another is transparent to the user.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-4
OL-8408-02
Chapter 5
The H.323 endpoints (such as the CVP Voice Browser, Cisco CallManager, and gateways) register to a virtual IP address that represents the HSRP gatekeeper pair. If one gatekeeper fails, its partner assumes primary control. The major disadvantage of HSRP is that both gatekeepers in the HSRP failover pair must reside on the same LAN segment, and therefore they generally cannot be separated geographically. When there are multiple data centers, position an HSRP pair at each data center. It may also be possible to provide a high-speed VLAN connection between the two data centers and split the HSRP pair between the data centers.
Alternate Gatekeeper
Unlike with HSRP, when there are multiple data centers, only one gatekeeper needs to positioned at each data center when using alternate gatekeeper. The CVP Voice Browser can be configured with a list of alternate gatekeepers (as many as needed as there is no limit). When the Voice Browser starts up, it attempts to register to the first gatekeeper in the list. If the registration is not successful, it proceeds to try the remainder of the gatekeepers sequentially in the list until a successful registration occurs. The VB stays registered to that gatekeeper until either:
That gatekeeper has some type of failure. The VB recognizes a gatekeeper failure in the following ways:
The periodic RAS RRQ (registration request) to the gatekeeper times out or is rejected. An ARQ (admission request) on a transfer times out. The gatekeeper pro-actively tells the VB to unregister, such as when the administrator does a
The user does another setGK from VBAdmin. This causes the VB to register with the first gatekeeper in the list, if that gatekeeper is available, otherwise it once again does a sequential attempt.
Although the CVP Voice Browser does not specifically support GUP clustering, there is no reason that the alternate gatekeepers cannot be defined as part of a GUP cluster. In this way, other H323 endpoints that do support clustering (such as Cisco Call Manager and IOS gateways) can take advantage of the benefits of gatekeeper clustering. CVP simply ignores clustering messages, such as when one of the gatekeepers in the cluster becomes overloaded. CVP uses one or more of the gatekeepers in the cluster as the alternate gatekeepers in its list and detects failure according to the rules mentioned in the preceding bullets.
Configuration
This section covers the following topics:
HSRP
Configure the HSRP gatekeepers according to the instructions in the latest version of the CVP Configuration and Administration Guide, available at http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-5
Alternate Gatekeeper
Using CVP Voice Browser VBAdmin: Examples:
1.
set GK "10.86.129.33, 10.86.129.34, 10.86.129.35" This sets up 3 gatekeepers to which the VB could possible register. In each case, the VB registers to the first local zone that is configured in that gatekeeper. It also uses the default RAS port 1719.
2.
setGK "10.86.129.33:zonename1:1718, 10.86.129.34" This causes the VB to first attempt to register to gatekeeper 10.86.129.33 on port 1718 with local zone "zonename1". If that gatekeeper fails, the VB subsequently attempts to register to 10.86.129.34 on port 1719 with the first local zone defined on that gatekeeper.
Call Disposition
A gatekeeper can fail in any of the following ways. The call dispositions below apply to both HSRP and Alternate Gatekeeper.
re-registering to the backup gatekeeper. After the failed transfer, an error is returned to the ICM. If the ICM script is coded to return an error (an END node does this) and survivability is configured on the gateway, the call is default-routed.
New calls arriving at the incoming gateway and CVP are serviced correctly, although it is
possible that some of the calls may invoke survivability during the period that the endpoints are re-registering to the backup gatekeeper.
If the ICM script is coded to return an error (an END node does this) and survivability is configured on the gateway, the call is default-routed.
New calls arriving at the gateway are default-routed if survivability is configured on the
gateway.
The primary gatekeeper degrades but does not fail. There are two conditions that usually cause this behavior: low memory due to memory leaks or excessive debug levels causing CPU overload.
In this situation, call processing behavior is unpredictable due to the fact that there may be no
clean failover to the backup gatekeeper. If survivability is configured on the gateway, calls are default-routed.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-6
OL-8408-02
Chapter 5
Configuration
CVP Voice Browser high availability is configured on the originating gateways.
The server can crash The process can crash The process can hang An Ethernet cable can become disconnected.
The configuration discussed in this section protects against all of these situations. However, there are two situations that cannot be protected against:
Someone stops the process with calls in progress. This situation occurs when a system administrator forgets to put the Voice Browser out-of-service first to allow calls in progress to finish before stopping the process. The Voice Browser exceeds the recommended call rate. Although there is a throttle for the absolute number of calls allowed in the Voice Browser, there is no throttle for call rate. In general, exceeding 5 calls per second (cps) for an extended period of time causes the Voice Browser to have erratic and unpredictable behavior. This situation can be prevented by proper sizing of the CVP systems.
For call survivability, configure the originating gateways as described in the latest version of the CVP Configuration and Administration Guide, available at http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-7
In the event of most downstream failures (including a CVP Voice Browser failure), the call is default-routed by the originating gateway. Note that survivability is not applicable in the CVP Standalone and NIC-routing models because there is no CVP Voice Browser involved anywhere in those models. On the originating gateways, also configure the following commands:
voice service voip h323 no h225 timeout keepalive hp rtcp report interval 3000 gateway timer receive-rtcp 3
Call Disposition
If the CVP Voice Browser fails, the following conditions apply:
Calls in Progress If the CVP Voice Browser fails after the caller has been transferred, (transfers include transfer to an IP phone, VoiceXML gateway, or other egress gateway), the call continues normally until a subsequent transfer activity (if applicable) is required from the CVP Voice Browser. If the caller has not hung up and is awaiting further activity, there is a period of 9 to 18 seconds of silence before the caller is default-routed by survivability to an alternate location. If the call has not yet been transferred, the caller hears 9 to 18 seconds of silence before being default-routed by survivability to an alternate location. (Survivability does not apply in the CVP Standalone and NIC-routing models.)
New Calls New calls are directed by the gatekeeper to an alternate CVP Voice Browser. If no Voice Browsers are available, the call is default-routed to an alternate location by survivability. (Survivability does not apply in CVP Standalone and NIC Routing models)
Configuration
A CVP Voice Browser selects an application server for the switch leg of the call. Configure the CVP Voice Browser as described in the latest version of the CVP Configuration and Administration Guide. One important addition to note is that the Voice Browser immediately reverts to using an application server earlier in the list if one becomes available. Although there is no limit to the number of application servers in the list, it is best to list only two. Otherwise, in some instances the caller has to wait for each application server in the list to time-out before being default-routed by survivability. (Survivability does not apply in the CVP Standalone and NIC Routing models.) For example, if the data center has three CVP servers (A, B, and C), then the application server lists could be configured as follows on the Voice Browsers:
Voice Browser A: setAppServerList localhost, B
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-8
OL-8408-02
Chapter 5
On the AppAdmin Call Definitions page in the Application Server, provisions must be made for overflow calls from a failed application server. Use the following best-practice recommendation:
Maximum number of calls allowed: 425 CVP Call Server capacity is limited to 400 simultaneous calls regardless of CPU or memory resources on the server, but it is prudent to allow for some overlap between calls which are terminating and new calls which are starting up. Note that in the most common Deployment Models, #3a and #3b, a call that is receiving IVR treatment counts as two calls: one call in the 100-port group and one call in the 200-port group.
It is generally best to make the 100-port and 200-port group values equal to accommodate any ratio of IVR treatment and transferred calls. The VoiceXML gateway sends HTTP requests to a CVP Application Server to obtain a VoiceXML document. It uses the following VoiceXML gateway configuration parameters to locate a server when not using a CSS. Note that the backup server is invoked only if the primary server is not accessible, and if this is not a load-balancing mechanism. Additionally, every call first attempts to access the primary before failing over to the backup.
hp host isn-vxml <ip-address-of-primary-application-server> hp host isn-vxml-backup <ip-address-of-secondary-application-server>
The VoiceXML gateway also uses the following VoiceXML gateway configuration parameters to locate a server when using a CSS. Because the CSS almost always locates an application server on the first request, a backup server is rarely invoked but should always be configured.
ip host isn-vxml <ip-address-of-CSS-VIP-for-app-server> ip host isn-vxml-backup <ip-address-of-CSS-VIP-for-app-server>
There are several files in flash memory on the gateway that are also involved with high availability: handoff.tcl, recovery.vxml, and several .wav files. Use Trivial File Transfer Protocol (TFTP) to load the proper files into flash memory according to instructions found in the latest version of the CVP 3.1 Configuration and Administration Guide. The CSS, if used, provides load balancing and failover for CVP Application Servers (as well as some other components, which are discussed later). Configure the CSS according to the instructions in the latest version of the CVP Configuration and Administration Guide.
Call Disposition
If the CVP Application Server fails, the following conditions apply to the call disposition:
Calls in progress are default-routed to an alternate location by survivability on the originating gateway. (Survivability does not apply in the CVP Standalone and NIC Routing models.) New calls are directed to an in-service CVP Application Server.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-9
VoiceXML Gateway
The VoiceXML Gateway parses and renders VoiceXML documents obtained from one of several sources: the CVP Application Servers, the CVP VoiceXML Servers, or some other external VoiceXML source. Rendering a VoiceXML document means retrieving and playing prerecorded audio files, collecting and processing user input, and/or connecting to an ASR/TTS server for voice recognition and dynamic text-to-speech.
Configuration
High availability configuration for VoiceXML gateways is controlled by the gatekeeper and/or the CVP Voice Browser depending on the geographic location of the VXML gateways (centralized or distributed).
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-10
OL-8408-02
Chapter 5
CVP indiscriminately prepends the sigdigits value to all transfers, including those to Call Manager. It is therefore necessary when using Call Manager in this scenario to define a gatekeeper-controlled trunk for each of the VoiceXML gateway tech-prefixes and to add zone prefix configuration to the gatekeeper for the Call Manager agents. Example:
Ingress gateway: dial-peer voice NNNN voip tech-prefix 2# (gets the call to CVP) Apply a translation-rule to the incoming DNIS to prepend the value 3. Assuming DNIS is 8002324444, the final DNIS routed to CVP is 2#38002324444 VBAdmin: setTechPrefix 2# (default) setSigDigits 1 (strip one digit from the DNIS after stipping the 2# tech prefix) VXML gateway: Register to gatekeeper with tech-prefix 3# Call Manager (if used): Create a separate gatekeeper-controlled trunk corresponding to each of the tech-prefixes used by the VXML gateways. Gatekeeper (only if using Call Manager): Define zone prefixes to appropriately route calls to Call Manager agents.
Call arrives at CVP with DNIS 2#38002324444 CVP first strips the tech-prefix (2#), leaving 38002324444 CVP then strips one digit (3) from the beginning of the DNIS, leaving 8002324444. 8002324444 is passed to ICM for call routing. When it is time to transfer, assume ICM returns the label 99999998877. CVP prepends 3#, giving 3#99999998877. This value is then passed to the gatekeeper for address resolution. Gatekeeper resolves this label to the VoiceXML gateway which registered as 3#. VoiceXML gateway should strip the 3# on the way in, leaving 99999998877 for the destination phone address.
Alternate Endpoints
In all the cases described above, provide alternate endpoints for each of the VoiceXML gateways in case the VoiceXML gateway rejects the incoming request (perhaps due to configuration error or overload):
endpoint alt-ep h323id VoiceXMLgw1 ip-address-VoiceXMLgw2 endpoint alt-ep h323id VoiceXMLgw2 ip-address-VoiceXMLgw3 endpoint alt-ep h323id VoiceXMLgw3 ip-address-VoiceXMLgw1
In the event that a CVP Voice Browser is unable to connect to a VoiceXML gateway, an error is returned to the ICM script. Separate the Send to VRU node from the first Run External script node in order to catch the VoiceXML gateway connection error. If an END script node is used off the X-path of the Send to VRU node, the call is default-routed by survivability on the originating gateway. (Survivability does not apply in the CVP Standalone and NIC Routing models.) A Queue to Skill group node could also be used, but that method is effective only if there is an agent available. Otherwise, ICM tries to queue the caller and that attempt fails because the CVP Voice Browser is once again unable to connect to a VoiceXML gateway. An END node could then also be used off the X-path of the Queue to Skill Group node to default-route the call.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-11
Call Disposition
If the VoiceXML Gateway fails, the following conditions apply to the call disposition:
Calls in progress are default-routed to an alternate location by survivability on the ingress gateway. (Survivability does not apply in CVP Standalone and NIC Routing models.) New calls find an alternate VoiceXML gateway.
Redundant power supplies and on-hand spares Separate components for higher availability Dedicated components, which have fewer interaction issues
Example 1: Separate PSTN Gateway and VoiceXML Gateway A PSTN gateway and a separate VoiceXML gateway provide greater availability than a combine PSTN and VoiceXML gateway. Example 2: Duplicate Components for Higher Availability
Two 8-T1 PSTN gateways provide greater availability than one 16-T1 PSTN gateway. Two 96-port VoiceXML servers provide greater availability than one 192-port VoiceXML server. Larger designs can use N+1 spares for higher availability.
Example 3: Geographic Redundancy for Higher Availability Geographical redundancy and high availability can be achieved by purchasing duplicate hardware for Side A and Side B.
If the primary CSS that is servicing these requests should fail, the client VoiceXML gateway must still be able to obtain media and VoiceXML from the servers.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-12
OL-8408-02
Chapter 5
Configuration
You can configure high availability for the CSS by using the Virtual IP (VIP) Redundancy method, as described in the latest version of the CVP Configuration and Administration Guide. Also refer to the latest version of the CSS Redundancy Configuration Guide, available at: http://www.cisco.com/univercd/cc/td/doc/product/webscale/css/css_750/redundgd/index.htm Essentially, a master/backup pair of CSSs functions very much like an HSRP gatekeeper pair. They must reside on the same VLAN and exchange heartbeats using Virtual Router Redundancy Protocol (VRRP), a protocol very similar to HSRP. If the primary CSS fails, the backup CSS recognizes the failure within three seconds and begins processing client requests to its configured virtual IP addresses. The configuration of the master and backup CSSs must always be kept in syncronization.
Call Disposition
If the master CSS fails, then the following conditions apply to the call disposition:
Calls in progress encounter various behaviors, depending on the type of service the VoiceXML gateway client requested:
Media server requests are unaffected. The VoiceXML gateway has a very short-lived interaction
with the CSS for audio files. Upon receiving a media server request from the gateway, the CSS simply provides an HTTP redirect IP address for the VoiceXML gateway. At that point, the gateway fetches the audio file directly from the media server, bypassing any further interaction with the CSS. Additionally, media file requests to the CSS are very infrequent because the VoiceXML gateway caches previously retrieved media files.
CVP Application Server requests are unaffected. Only the initial VoiceXML document request
to a CVP Application Server uses the CSS. The CSS first picks a CVP Application Server to service the request. The first document passes through the CSS on its return to the VoiceXML gateway. However, subsequent VoiceXML requests are made directly from the VoiceXML gateway client to the CVP Application Server. If the CSS fails during the very brief period that the first VoiceXML document is being returned, the VoiceXML gateway simply retries the request. If the backup (now primary) CSS selects the same CVP Application Server as the previous one, there is an error due to a duplicate call instance. In that case, the caller is default-routed by survivability on the originating gateway. (Survivability does not apply in the CVP Standalone model.)
ASR/TTS requests typically fails but might be recoverable. When the VoiceXML gateway first
makes an ASR/TTS request to the CSS, a TCP connection is opened from the VoiceXML gateway to the Media Resource Control Protocol (MRCP) server. That TCP connection goes through the CSS and persists until the caller disconnects or is transferred to an agent. If the primary CSS fails, that TCP connection is terminated. The VoiceXML gateway returns an error code that you could write a script to work around. The worst-case scenario is that the caller is default-routed to an alternate location by survivability on the originating gateway. (Survivability does not apply in the CVP Standalone model.)
CVP VoiceXML Server requests may fail. The VoiceXML Gateway is "sticky" to a particular
CVP VoiceXML Server for the duration of the VoiceXML session. It uses CSS cookies to provide that stickiness. If the CSS fails, the backup CSS has no knowledge of the cookie. Subsequent requests in the session might go to the correct CVP VoiceXML Server, but there is no guarantee. The VoiceXML gateway returns an error code that you could write a script to work
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-13
around. The worst-case scenario is that the caller is default-routed to an alternate location by survivability on the originating gateway. (Survivability does not apply in the CVP Standalone model.)
New calls are directed transparently to the VIPs on the backup CSS, and service is unaffected.
Media Server
Audio files can be stored locally in flash memory on the VoiceXML gateway or on an HTTP/TFTP file server. By definition, audio files stored locally are highly available. However, HTTP/TFTP file servers provide the advantage of centralized administration of audio files.
The VoiceXML gateway also uses the following VoiceXML gateway configuration parameters to locate a server when using a CSS. Because the CSS almost always locates a media server on the first request, a backup server is rarely invoked but should always be configured. The CSS, if used, provides load-balancing and failover for HTTP media servers.
ip host mediaserver <ip-address-of-CSS-VIP-for-media-server> iip host mediaserver-backup <ip-address-of-CSS-VIP-for-media-server>
Configure the CSS according to the instructions in the latest version of the CVP Configuration and Administration Guide, available at: http://www.cisco.com/univercd/cc/td/doc/product/icm/isn/cvp31/cvp31doc/
Calls in progress should recover automatically. The high-availability configuration techniques described above should make the failure transparent to the caller. If the media request does fail, use scripting techniques to work around the error (for example, retry the request, transfer to an agent or label, or use TTS). New calls are directed transparently to the backup media server, and service is not affected. If the media server is located across the WAN from the VXML gateway and the WAN dies, the gateway continues to use prompts from gateway cache until such time that the requested prompt becomes stale, at which time the gateway attempts to re-fetch the media and the call fails if survivability is not enabled. If survivability is enabled, the call are default-routed.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-14
OL-8408-02
Chapter 5
Configuration
The CVP VoiceXML Server high-availability configuration and behavior differ between Standalone deployments and deployments which are integrated with ICM, as described in the following sections.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-15
Figure 5-2
Call Disposition
If the CVP VoiceXML Server fails, the following conditions apply to the call disposition:
Calls in progress in a Standalone deployment are disconnected. Calls in progress in an ICM-integrated deployment can be recovered using scripting techniques to work around the error as shown in the script above (for example, retry the request, transfer to an agent or label, or force an error with an END script node to invoke survivability on the originating gateway). New calls are directed transparently to an alternate CVP VoiceXML Server. Note that without a CSS, callers may experience a delay at the beginning of the call waiting for the system to timeout while trying to connect to the primary VoiceXML server.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-16
OL-8408-02
Chapter 5
Designing CVP for High Availability Automatic Speech Recognition (ASR) and Text-to-Speech (TTS) Server
Configuration
The ASR/TTS high-availability configuration and behavior differ between Standalone and ICM-integrated deployments, as described in the following sections.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-17
Call Disposition
If the ASR/TTS MRCP server fails, the following conditions apply to the call disposition:
Calls in progress in Standalone deployments are disconnected. Calls in progress in ICM-integrated deployments can be recovered using scripting techniques to work around the error (for example, retry the request, transfer to an agent or label, switch to prerecorded prompts and DTMF-only input for the remainder of the call, or label or force an error with an END script node to invoke survivability on the originating gateway). New calls in Standalone or ICM-integrated deployments are directed transparently to an alternate ASR/TTS server if a CSS is being used. New calls in ICM-integrated deployments are directed transparently to an alternate ASR/TTS server if "-backup" gateway hostnames have been used.
Cisco CallManager
CVP transfers callers to IPCC Enterprise agent phones or desktops using the H.323 protocol. The CVP Voice Browser gets an agent label from the ICM and queries the gatekeeper with the label. The gatekeeper then returns an IP address of one Cisco CallManager in the cluster, and the CVP Voice Browser calls that IP address and connects the caller to the agent. The CVP Voice Browser proxies the signaling channel, so it remains in the call signaling loop after the transfer is completed. However, the RTP stream flows directly from the originating gateway to the phone. This fact becomes very significant in discussions of high availability.
Configuration
For the most current information on providing Cisco CallManager for high availability, refer to the latest version of the Cisco IPCC Solution Reference Network Design (SRND), available at http://www.cisco.com/go/srnd In addition, configure the originating gateway parameters according to the guidelines in the section on Configuring High Availability for Calls in Progress, page 5-7.
Call Disposition
If the Cisco CallManager process fails on the server that is either hosting the call or hosting the phone, the following conditions apply to the call disposition:
Calls in progress are preserved. Skinny Client Control Protocol (SCCP) phones have the ability to preserve calls even when they detect the loss of their Cisco CallManager. The caller-and-agent conversation continues until either the caller or agent goes on-hook. The CVP Voice Browser recognizes that Cisco CallManager has failed, assumes the call should be preserved, and maintains the signaling channel to the originating gateway. In this way, the originating gateway has no knowledge that Cisco CallManager has failed. Note that additional activities in the call (such as hold, transfer, or conference) are not possible. Once the parties go on-hook, the phone then re-homes to another Cisco CallManager server. When the agent goes on-hook, Real-Time Control Protocol (RTCP) packets ceases transmitting to the originating gateway, which causes the gateway to disconnect the caller 9 to 18 seconds after the agent goes on-hook. If survivability has been
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-18
OL-8408-02
Chapter 5
configured on the gateway and the caller is waiting for some additional activity (the agent might think caller is being blind-transferred to another destination), the caller is default-routed to an alternate location.
New calls are directed to an alternate Cisco CallManager server in the cluster.
Configuration
For the most current information on configuring ICM for high availability, refer to the latest version of the Cisco IPCC Enterprise Solution Reference Network Design (SRND), available at http://www.cisco.com/go/srnd
Call Disposition
There are many components in Cisco ICM, and call disposition varies depending on the component that fails. Although there are a few exceptions, the following conditions apply to the call disposition:
If the Voice Response Unit (VRU) Peripheral Gateway (PG) or any component on the VRU PG fails, calls in progress are default-routed by survivability on the originating gateway. If the Logger fails, calls in progress are unaffected. If the primary router fails, calls in progress are unaffected. If both the side A and side B routers fail, calls in progress are default-routed by survivability on the originating gateway. New calls are directed to the backup ICM component.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
5-19
Configuration
For the most current information on configuring SDDSN for high availability, refer to the latest version of the CVP Configuration and Administration Guide, available at: http://www.cisco.com/univercd/cc/td/doc/product/icm/isn/cvp31/cvp31doc/
Call Disposition
If the primary SDDSN server fails, CVP begins transmitting alarm data to the backup SDDSN server if one is configured. The following conditions also apply to call disposition:
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
5-20
OL-8408-02
C H A P T E R
Gatekeeper implications, page 6-2 CAC implications, page 6-2 RSVP, page 6-5 H.323 Gatekeeper Call Routing implications in a distributed branch CVP model (Centralized CallManager model), page 6-5
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
6-1
Gatekeeper implications
In a pure TDM environment where CVP is switching calls from an ingress gateway to an egress gateway attached to TDM ACD/IVR, the gatekeeper can handle the Call Admission Control (CAC) functionality. CAC is a term used to describe the mechanism for determining if there is enough bandwidth on a network to place a call. If Cisco CallManager is the egress gateway, gatekeeper CAC can only be used if the ingress CVP gateways and the IP phones are at different sites. Please note that gatekeeper dialplan resolution is still in use. Since Cisco CallManager Locations-based CAC is used between the remote sites of a cluster, gatekeeper typically is used for dial-plan resolution only. Understanding the routing of calls in the dial plan and the gatekeeper resolution is important, as call routing situations might occur in which it is necessary to use more than one set of gatekeepers in the implementation. This is particularly common when using this model in a situation where more than one Cisco CallManager Cluster is being used to control the remote sites. For further discussion and understanding of this topic, see H.323 Gatekeeper Call Routing implications in a distributed branch CVP model (Centralized CallManager model), page 6-5.
CAC implications
The two CAC mechanisms used in a CVP environment are Gatekeeper CAC and CallManager Locations CAC. In a completely centralized deployment, CAC is not necessary. CAC is only needed when there is a limited amount of bandwidth between the IP phones or gateways. Connection Admission Control (CAC) needs to be considered from a solution perspective, not just a CVP perspective. This is most evident in the distributed branch office model where there are other voice services, such as Cisco CallManager, sharing the same H.323 gateways with CVP and the amount of bandwidth between the sites is limited. The most important item to consider here is what CAC mechanisms are in place on the network so that a consistent CAC mechanism can be used to account for all the calls managed at that site. A standalone CVP system typically uses Gatekeeper CAC while a Cisco CallManager cluster managing multiple sites will use Cisco CallManager Locations Based CAC. Cisco CallManager keeps track of CAC by identifying devices in certain locations and keeping track of how many calls are active between these locations. Since the Cisco CallManager knows how many calls are active and what codec is in use for each call, it is able to calculate how much bandwidth is in use and limit the number of calls allowed. A thorough conceptual understanding of CAC mechanisms is important. These mechanisms are explained in the CAC section of the IPT SRND, which can be found at http://www.cisco.com/go/srnd If considerations are not given to CAC, in a distributed CVP model, three unique methods of CAC could be in use at the same time.
Gatekeepers for CVP If multiple clusters are used, gatekeepers for intercluster Cisco CallManager calls Cisco CallManager Controlled Locations Based Admission Control for remote sites managed by the same cluster
If Cisco CallManager is sending or receiving calls from CVP, and there are CVP gateways & IP Phone Agents collocated at remote sites, it is important to understand the call flows in order to design and configure CAC correctly.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
6-2
OL-8408-02
Chapter 6
The gatekeeper and Cisco CallManager do not share bandwidth usage information. Networks shared by both the gatekeeper and IP phones will have 2 separate CAC mechanisms determining if there is enough bandwidth to place a call. Understanding how Cisco CallManager determines an endpoints location is key to designing the CAC properly. Investigating this further, consider the basic call flow of a non-CVP call vs. a CVP call. When a user picks up an IP Phone and makes a call from the remote site to a the central site, Cisco CallManager considers the location definitions of the endpoints and the codec requirements defined in the CallManager Region definitions and decides whether or not to allow the call. Note that the CAC and the codec requirements are controlled between these endpoints by Cisco CallManager as the controlling call agent. CVP itself uses gatekeeper for dialed-number resolution and CAC. However, as previously noted, with multiple branch locations controlled by a single Cisco CallManager cluster, Cisco CallManager does not use gatekeeper for CAC (but LCAC instead). The Cisco CallManager must be aware that CVP delivered calls are coming from a gateway at a specific branch so it can consider these calls in the LCAC mechanism. This requires enabling one CallManager service parameter and ensuring that one other is set to default:
Change the Cluster wide service parameter Accept unknown TCP connections to True. (The default is False) Device Name of gatekeeper trunk that will use port 1720 must remain at the default of blank
Accept Unknown TCP Connection when set to true changes the behavior for inbound for H.323 calls. Cisco CallManager accepts an unknown H.225 TCP connection and wait for the H.323 setup message. Cisco CallManager then extracts the User to User Information Element UUIE. In this case, the element contains the IP address of the originating gateway. Cisco CallManager compares this against its configured gateways. If a match is found, the call is treated as if it originated from the voice gateway and not the CVP Voice Browser. Note that this is NOT how Cisco CallManager traditionally treats a gatekeeper-controlled H.323 call. Typically, all gatekeeper-controlled calls come from Location 0 (Zero). This change ensures the call is not treated as a gatekeeper-controlled call and that Locations Admission control is applied. Note that, in this model, if the Cisco CallManager does not match the gateway signaling address in its list of configured gateways, it rejects the call. Figure 6-1 illustrates the decision tree for H.323 call processing.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
6-3
Figure 6-1
These changes allow for effective and scalable use of H.323 gateways in a Centralized CallManager deployment. In a CVP environment, Cisco CallManager can be an ingress or egress gateway. It is more common for Cisco CallManager to be an egress gateway because typically callers are calling from the PSTN, being queued by CVP, and then switched to Cisco CallManager for handling by an Agent. If the caller is not calling from the PSTN, but instead from an IP Phone, Cisco CallManager is an ingress gateway from the perspective of CVP.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
6-4
OL-8408-02
Chapter 6
The CVP Call Server is able to solve this problem by setting the source signaling inside the H.323 setup to the IP address of the ingress gateway. The Cisco CallManager, upon receiving the setup from CVP, sees the source signaling address and knows that the address is the one that should be used when determining what location the call is coming from. Since the Cisco CallManager has this ingress gateway IP configured, Cisco CallManager will use Locations CAC to deduct bandwidth between the ingress gateway and destination IP phone locations. The CVP Call Server should not be configured as a gateway in Cisco CallManager; instead the CVP Call Server should send calls to Cisco CallManager via a gatekeeper controlled H.323 Trunk.
RSVP
Cisco CallManager 5.0 introduces support for RSVP between endpoints within a cluster. RSVP is a protocol used for Call Admission Control (CAC) and is used by the routers in the network to reserve bandwidth for calls. RSVP can be used for delivering calls to IPCC agents in a CallManager cluster. For more information on RSVP, please refer to the Cisco CallManager 5.0 version of the Cisco IP Telephony Solution Reference Network Design (SRND), available at http://www.cisco.com/go/srnd
H.323 Gatekeeper Call Routing implications in a distributed branch CVP model (Centralized CallManager model)
Proper configuration of remote H.323 gateways with a CallManager cluster is important. First consider the H.225 implications of this without the use of gatekeeper. When configuring dial-peer destinations for the IOS Gateways, you must configure a dial-peer pointing to the IP addresses of the Cisco CallManager servers that are processing calls for that gateway. These server IP addresses must be the same servers that are in the redundancy group on the device pool definition for that gateway in the CallManager configuration. If the remote H.323 gateway sends a call to a Cisco CallManager server that is not in the redundancy group for that gateway, the call is rejected.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
6-5
Chapter 6 Call Survivability in Distributed Deployments H.323 Gatekeeper Call Routing implications in a distributed branch CVP model (Centralized CallManager model)
Figure 6-2
In Figure 6-2, if the Madison gateway sends a call to the.3 server, the call is rejected. While this is simple to understand, with several hundred remote sites it can become challenging to maintain over an extended period of time; anytime the Cisco CallManagers gatekeeper redundancy group might be changed, all the remote H.323 gateway dial-peer targets must be changed to match the new IP address of the server added to the redundancy group. A gatekeeper can help reduce this challenge. When using the gatekeeper for configuration, the H.323 gateway makes a RAS request to the gatekeeper for an IP address to which to send the call. The gatekeeper automatically responds with one of the Cisco CallManager server addresses defined in the redundancy group for the gatekeeper trunk. If the redundancy group is changed, the Cisco CallManager must be re-registered to the gatekeeper. However, no further configuration is necessary on the remote gateway.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
6-6
OL-8408-02
C H A P T E R
Release Trunk Transfers, page 7-1 ICM Managed Transfers, page 7-3 Intelligent Network (IN) Release Trunk Transfers, page 7-4 VoiceXML Transfers, page 7-4
Release Trunk Transfers can be invoked by the VoiceXML server (standalone model) or via the ICM ICM Network Transfer using CVP as the routing client will not work, since CVP can no longer control the call These transfers are blind, meaning that if the transfer fails for any reason, ICM does not recover control of the call. Router Requery is not supported From an ICM reporting standpoint, Release Trunk Transfers cause the switch leg to terminate, resulting in a TCD record being written to the database for the call, even though the caller is still potentially talking to an agent. This differs from other types of transfer, in which the TCD record does not get finalized until the caller actually hangs up. Since the ingress trunk is released, gateways do not need to be sized to include calls which have been transferred in this way. This differs from other types of transfer, where gateway resources continue to be occupied until the caller hangs up. Since CVP is no longer monitoring the call, CVP Call Servers do not need to be sized to include calls which have been transferred in this way. Additionally, CVP Call Director port licenses are not required.
There are three signaling mechanisms available to trigger a release trunk transfer:
Takeback-N-Transfer (TNT), page 7-2 Hook flash and Wink, page 7-2
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
7-1
Takeback-N-Transfer (TNT)
TNT (also known as Transfer Connect) is a transfer mechanism offered by some U.S. PSTN service providers (like AT&T & MCI/Verizon). With this transfer method, inband DTMF tones are outpulsed to the PSTN by CVP. These inband tones act as a signaling mechanism to the PSTN requesting a transfer to be completed. A typical DTMF sequence is *8####, where #### represents a new routing label that the PSTN understands. Upon detection of a TNT DTMF sequence, the PSTN drops the call leg to the ingress gateway port, and then re-routes the caller to a new PSTN location, such as a TDM ACD location. This behavior might be necessary for a customer with existing ACD site(s), but no IVR, who wants to use CVP initially as just an IVR. Over time, the customer might want to transition agents from the TDM ACD(s) to IPCC Enterprise and use CVP as an IVR, queueing point, and transfer pivot point (thus eliminating the need for TNT services). In CVP deployments with the ICM, the DTMF routing label outpulsed could have been an ICM translation routing label to enable passing of call data to another ICM peripheral (like a TDM ACD). In this ICM-routed scenario, CVP views this as a completed call and CVP call control is ended. With TNT, if the transfer to the termination point fails, there is nothing CVP can do to re-route the call. While some TNT services do have the ability to re-route the call back to CVP, CVP sees this call as a new call. TNT transfers are not supported under Deployment Model #1, Standalone Self Service.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
7-2
OL-8408-02
Chapter 7
2XXX/3XXX gateways: Can use Analog FXO or Digital FXO (T1/CAS). This is considered line-side hook flash to the PBX and this worked very well with our lab Avaya Definity G3. Cannot use E&M due to CSCdr96285. You can adjust the hook flash duration with "timing hookflash-out" under the voice-port. This can come in handy when you have a PBX that has a non-configurable hook flash duration. This gives us the ability to adjust it in on the gateway side. 5XXX gateways: Tested with T1/CAS "e&m-fgb dtmf dnis". E&M is considered "trunk-side hookflash" to the PBX, Not all switches support trunk-side hook flash (the Avaya G3 in our lab did not). Additionally, the hook flash duration on the 5XXX is 200 ms. The PBX needs to be configured for this. This option is highly switch dependent and a proof-of-concept with the switch vendor is recommended. In Deployment Model #1, Standalone Self Service, a TCL script is required to produce the hook TCL script is provided with CVP 3.1. In all cases, ANI is not available to the call when it gets to CVP. In some CVP deployment models, the ICM *might* already know the ANI if the call had been pre-routed there. In all cases, DNIS must be hard-configured on the gateway config based on the T1/E1 channel on which the call arrives. The PBX is programmed to route certain DNISes over certain T1 trunks. By virtue of the call arriving to the gateway on that trunk, you can definitively configure its DNIS. The drawback here is that the gateway trunk allocation must be pre-determined. The customer has to know what percentage of calls arrive to which DNISs so that the trunk groups on the gateway can be allocated accordingly. An alternate method that can be used on some PBXs is a "converse on step" whereby DTMF tones indicating DNIS and ANI are sent to the IVR. This method would require a single main ICM routing script do input DNIS digits using a Get Data (GD) Microapp, and then invoked the correct sub-script based on the collected DNIS digits. This method requires close coordination between Cisco, the PBX vendor and the customer, and has not been tested to date.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
7-3
n egress port on the same gateway as the ingress port Distant egress gateway, which has a TDM connection to a TDM ACD or PBX (making use of Toll Bypass features) A CVP VXML gateway, for queuing or self service activities
To terminate the call, the voice gateway selects an outgoing pots or voip dial-peer based on the destination specified by ICM. When an ICM VoIP transfer occurs, the ingress voice gateway port is not released. If the termination point is an egress voice gateway, then a second voice gateway port is utilized. CVP continues to monitor the call, and ICM also retains knowledge and call control of the call and can subsequently request for the call to be retrieved from the current termination point and transferred to another termination point from the above list. This type of transfer is used when the CVP is treated as a call treatment platform and queue point for IPCC Enterprise agents. The CVP could also be used to provide call treatment to front end calls to ICM supported TDM ACD locations. This type of transfer allows for calls to be transferred between ICM supported peripherals with full call context and without any tromboning of the voice path. Calls which are transferred in this way have the following characteristics:
ICM Network Transfer using CVP as the routing client functions properly, since CVP continues to control the call. These transfers are supervised, meaning that if the transfer fails for any reason, the ICM routing script does recover control via the Router Requery mechanism. From an ICM reporting standpoint, the switch leg does not terminate until the caller actually hangs up. Thus the TCD record which is written for the switch leg of the call encompasses the entire life of the call, from initial ingress to hang-up. Since the ingress trunk is not released, gateways need to be sized to include calls which have been transferred in this way. Since CVP continues to monitor the call, CVP Call Servers need to be sized to include calls which have been transferred in this way. Additionally, CVP Call Director port licenses are required, except for calls which are connected to CallManager agents.
VoiceXML Transfers
VoiceXML call control is only supported in standalone CVP deployments (Deployment Model #1) in which call control is provided by the VoiceXML server. Deployment Model #3b, which also incorporates the VoiceXML Server, does not support VoiceXML call control. In those and all ICM integrated deployments, ICM must make all call control decisions. The VoiceXML Server can invoke 3 different types of transfers releaseable trunk transfers, VoiceXML blind transfers, and VoiceXML bridged transfers. Releaseable trunk transfers result in the incoming call being released from the ingress voice gateway. VoiceXML blind transfers result in the call being bridged
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
7-4
OL-8408-02
Chapter 7
to an egress voice gateway or a VoIP endpoint, but the VoiceXML server releases all subsequent call control. VoiceXML bridged transfers result in the call being bridged to an egress voice gateway or a VoIP endpoint, but the VoiceXML server retains call control so that it can return a caller to an IVR application or transfer the caller to another termination point. VoiceXML blind and bridged transfers are invoked using the Transfer element in VoiceXML Studio. VoiceXML Transfers will transfer the call to any dial-peer that is configured in the gateway. Releaseable trunk transfers from the VoiceXML server are invoked using the subdialog_return element VoiceXML Blind Transfers differ from VoiceXML Bridged Transfers in two respects:
VoiceXML blind transfers do not support call progress supervision, whereas Bridged transfers do. This means that if a blind transfer fails, the VoiceXML Server script does not recover control and cannot attempt a different destination or take remedial action. VoiceXML blind transfers cause the VoiceXML Server script to end. Always connect the done exit branch from a Blind transfer node to a subdialog_return and a hangup node. Bridged transfers do not terminate the script. The VoiceXML Server waits until either the ingress or the destination call ends. The script ends only if the ingress call leg hangs up. If the destination call leg hangs up first, the script recovers control and continues with additional self service activity. Note that the VoiceXML Server port license remains in use for the duration of a bridged transfer, even though the script is not actually performing any processing.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
7-5
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
7-6
OL-8408-02
C H A P T E R
Bandwidth Provisioning and QoS Considerations, page 8-1 Bandwidth Sizing, page 8-4 Call Admission Control, page 8-6 QoS, page 8-7 Blocking initial G.711 Media Burst, page 8-7 Network Security using Firewalls, page 8-8
In a Distributed CVP deployment when the ingress gateways are separated from the CVP servers by a WAN. In a CVP deployments where the caller and the agent are separated over a WAN. The agent can be a TDM ACD agent or an IPCC agent.
CVP has no concept of a private WAN network structure. All WAN activity, when required, is conducted on a public converged WAN network structure. CVP does not provide QoS packet marking. QoS, if required, must be provisioned in the IP routers in the network using an IP address and port number. Also, CVP does not use separate IP addresses for high and low priority traffic.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
8-1
Adequate bandwidth provisioning is an important component in the success of CVP deployments. Bandwidth guidelines and examples are provided in this chapter to help with provisioning the required bandwidth.
Voice Traffic, page 8-6 Call Control Traffic, page 8-2 Data Traffic, page 8-4
Voice Traffic
Voice calls (voice carrier stream) consist of Real-Time Transport Protocol (RTP) packets that contain actual voice samples. RTP packets with voice samples are transmitted in the following cases:
Between the ingress PSTN phone gateway or IP Phone and one of the following:
IP phone
The destination phone might or might not be co-located with the ingress gateway or calling IP Phone, and the connection can be over a WAN or LAN.
An egress gateway front-ending a TDM ACD (for legacy ACDs or IVRs)
The egress gateway might or might not be co-located with the ingress gateway, and the connection can be over a WAN or LAN.
VoiceXML gateway performing prompt-and-collect treatment
The VoiceXML gateway will usually be the same gateway as the ingress gateway, but it can be different. In either case, both the ingress and VoiceXML gateways are typically co-located on the same LAN. One exception to this rule is a Distributed CVP deployment with centralized ASR/TTS servers. In that case, the VoiceXML gateways are co-located with the ASR/TTS server across the WAN from the ingress gateway. Because of the bandwidth-intensive nature of this particular configuration, it is not used often. The connection is typically over a LAN, but can be over a WAN.
Between the VoiceXML gateway and the ASR/TTS server. Recognition quality cannot be guaranteed if the VoiceXML gateway and ASR server are separated via a WAN. ASR/TTS Servers must be co-located with the VoiceXML gateway.
H.323
CVP is currently certified with three types of H.323 endpoints: Cisco IOS voice gateways, Cisco CallManager, and the PGW in either call control mode or signaling mode. H.323 traffic flows between the following endpoints:
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
8-2
OL-8408-02
Chapter 8
Network Level Considerations (The IP Infrastructure) Bandwidth Provisioning and QoS Considerations
Ingress gateway to/from CVP Voice Browser Here the ingress gateway can be a PGW, Cisco CallManager, or a Cisco IOS gateway. For the most current information on supported models and software versions for each of these components, refer to the latest version of the Cisco Customer Voice Portal (CVP) Bill of Materials (BOM), available at http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_hom e.html The connection in this case can be over a WAN or LAN.
CVP Voice Browser to/from egress gateway Here the egress gateway can be Cisco CallManager or a Cisco IOS gateway. For the most current information on supported models and software versions for each of these components, refer to the latest version of the Cisco Customer Voice Portal (CVP) Bill of Materials (BOM). The egress gateway is either a VoiceXML gateway used to provide prompt-and-collect treatment to the caller, or it is the target of a transfer to an agent (IPCC or TDM) or a legacy TDM IVR. The connection in this case can be over a WAN or LAN.
GED-125
The CVP Application Server and the ICM VRU PG communicate using the GED-125 protocol. The GED-125 protocol includes:
essages that control the caller experience, such as notification when a call arrives. Instructions to transfer or disconnect the caller Instructions that control the IVR treatment the caller experiences.
Because the VRU PG must always be co-located with the CVP Application Server, the connection is always over a LAN.
MRCP
The VoiceXML gateway communicates with ASR/TTS servers using Media Resource Control Protocol (MRCP) v1.0. This protocol currently works with Real-Time Streaming Protocol (RTSP) to help establish control connections to ASR/TTS servers such as Nuance, Scansoft, and IBM Websphere Voice Server. The connection in this case is always over a LAN.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
8-3
Data Traffic
Data traffic includes VoiceXML documents and prerecorded media files returned as a result of HTTP requests executed by the VoiceXML gateway. Specifically:
The VoiceXML gateway requests media files in an HTTP request to a media file server. The media server response returns the media file in the body of the HTTP message. The VoiceXML gateway then converts the media files to RTP packets and plays them to the caller. The connection in this case can be over a WAN or LAN. The VoiceXML gateway requests VoiceXML documents from either the CVP VoiceXML Server or the CVP Application Server. The connection in this case can be over a WAN or LAN.
This chapter focuses primarily on the types of data flows and bandwidth used between a remote ingress gateway and the components with which it interfaces:
CVP VoiceXML Server CVP Application Server CVP Voice Browser IP phones Media servers Egress gateways ASR/TTS servers.
Guidelines and examples are presented to help estimate required bandwidth and, where applicable, provision QoS for these network segments.
Bandwidth Sizing
As discussed above, most of the bandwidth requirements in a CVP solution occur in a Distributed CVP topology, due primarily to the fact that the ingress/VoiceXML gateway is separated from the servers that provide it with media files, VoiceXML documents, and call control data. For purposes of the following discussion, assume all calls to a branch begin with one minute of IVR treatment followed by a single transfer to an agent that also lasts one minute. Each branch has 20 agents, and each branch handles a busy-hour maximum of 600 calls per hour. The call rate is therefore 0.166 calls per second (cps) per branch. Note that even a slight change in these variables might have a large impact on sizing.
VoiceXML Documents
VoiceXML documents are generated based on voice application scripts written using either ICM scripts or CVP VoiceXML Studio, or both. A VoiceXML document roughly corresponds to a Run External Script node in an ICM script. Each VoiceXML document round-trip between the CVP Application Server and the gateway uses on average 7 kilobytes (kB). Assume that a Run External Script node executes every 3 seconds. Because each call receives an average of one minute of IVR treatment, that is approximately 20 VoiceXML documents per call. The bandwidth usage can then be calculated as follows: 7000 bytes 20 documents 8 bits = 1,120,000 bits per call
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
8-4
OL-8408-02
Chapter 8
0.166 cps 1,120,000 bits per call = 185.9 kbps per branch One might expect that CVP VoiceXML Server applications produce much more complex VoiceXML documents than do CVP Micro-applications, since the applications themselves are much more complex. However, that does not appear to be the case. CVP VoiceXML Server produces one VoiceXML document each time it encounters a user interaction element (a VoiceXML Element) in the script. It does not attempt to render multiple script elements into one VoiceXML document. Furthermore, CVP VoiceXML Server makes use of a root document, which enables it to factor out common VoiceXML code and error handling into a file which is fetched only once, at the beginning of the application. The bottom line is that you can assume that VoiceXML server pages average about the same as CVP Application Server pages: 7k bytes.
H.323 Signaling
Every call that is processed by the branch gateway requires 6000 bytes, plus 1000 bytes for each transferred call to an agent, giving a total of 56,000 bits per call (7000 bytes 8 bits). Thus, the bandwidth required would be 0.166 56 kbps = 9.3 kbps for the WAN link to the remote branch.
ASR/TTS
Centralized ASR currently is not supported in Distributed CVP deployments because ASR/TTS servers must always be co-located with the VoiceXML gateway. Therefore, if you want to use AST/TTS in a Distributed CVP deployment, use one of the following configurations:
Install an ASR/TTS server(s) at every branch. In this model, ASR/TTS uses no additional bandwidth, but you will have significant added maintenance for the many additional servers.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
8-5
Install the ASR/TTS servers at a centralized site, and also add a separate VoiceXML gateway at the central site. In this model, there are fewer servers to maintain and there is no bandwidth usage for VoiceXML documents or media files. However, this solution is very bandwidth-intensive for voice.
ASR/TTS cannot use silence suppression and must use the G.711 codec. Assuming one minute of IVR treatment per call using G.711 between the ingress gateway at the branch and the VoiceXML gateway at the central site, the amount of bandwidth required would be: 80 kbps 60 secs = 4,800,000 bits per call 0.166 cps 4,800,000 bits per call = 796.8 kbps per branch Additional queue time increases this value by however much time the caller is in queue.
Note
80 kbps is the rate for G.711, full-duplex, with no VAD, all IP/RTP headers, and no compression.
Voice Traffic
CVP can support G.711 and G.729. For the most current bandwidth information on voice RTP streams, refer to the latest version of the Cisco IP Telephony Solution Reference Network Design (SRND), available at http://www.cisco.com/go/srnd
RSVP
Cisco CallManager 5.0 introduces support for RSVP between endpoints within a cluster. RSVP is a protocol used for Call Admission Control (CAC) and is used by the routers in the network to reserve bandwidth for calls. RSVP can be used for delivering calls to IPCC agents in a Cisco CallManager cluster. For more information on RSVP, please refer to the Cisco CallManager 5.0 version of the Cisco IP Telephony Solution Reference Network Design (SRND), available at http://www.cisco.com/go/srnd
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
8-6
OL-8408-02
Chapter 8
QoS
CVP does not currently have the ability to mark the DSCP of IP packets from the CVP Server. If QoS is needed for CVP signaling and data traffic across a WAN, configure network routers for QoS using IP address and ports to classify and mark the traffic as recommended in Table 8-1.
Table 8-1 Recommended Port Usage and QoS Settings
Component Media Server CVP Call Server H.323 CVP Application Server CVP Call Server AppAdmin Remote Message Interface (RMI) port CVP VoiceXML Server Ingress Gateway H.323 VoiceXML Gateway H.323 H.323 Gatekeeper MRCP
Port r TCP 80 TCP 1720 TCP 8000 TCP 40099 TCP 8080 TCP 1720 TCP 1720 UDP 1719 TCP 554
Queue CVP-Data Signaling CVP-Data Default CVP-Data Signaling Signaling Signaling Signaling
Max Latency (round trip) 1 sec 200 ms 1 sec 5 sec 1 sec 200 ms 200 ms 200 ms 200 ms
*The DSCP value for CVP-Data traffic is only a recommendation. The actual DSCP that is used to mark the traffic is your preference. Neither the CVP-Data queue nor the Signaling queue is a priority queue as described in IOS router terminology. The priority queue is used for Voice or other real-time traffic, while call signaling and CVP traffic are reserved a certain amount of bandwidth based on the call volume. Chapter 4, Sizing can help you determine how much bandwidth is needed for your environment.
In the preceding example 10.0.0.1 is the voice gateways H.323 bound IP address, and 10.10.0.100 is the CVP Call Server. If there are multiple Call Servers, add one ACL entry for each. The interface serial0/0 is the WAN interface connecting to the central site that is hosting the CVP Call Server.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
8-7
Source & Destination Component Voice Gateway -> Media Server Voice Gateway -> CVP Call Server H.225 Voice Gateway -> CVP Call Server Voice Gateway -> CVP VoiceXML Server Voice Gateway -> MRCP Server CVP Call Server -> Egress Voice Gateway H.225 CVP Call Server -> VoiceXML Gateway H.225 CVP Call Server -> H.323 Gatekeeper
Destination Port TCP 80 TCP 1720 TCP 8000 TCP 8080 TCP 554 TCP 1720 TCP 1720 UDP 1719
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
8-8
OL-8408-02
C H A P T E R
NetworkVRU Types, page 9-1 NetworkVRU Types and CVP Deployment Models, page 9-4 Hosted Implementations, page 9-7 Cisco CallManager and ACD Originated Calls - Deployment Models and Sizing Implications, page 9-11 Using Third Party VRUs, page 9-12
NetworkVRU Types
This section first discusses Network VRU Types for ICM in general; then it discusses them as they relate to CVP deployments in particular. This section covers the following topics:
About ICM NetworkVRUs, page 9-2 CVP as Service Node IVR to ICM (Type 5), page 9-2 CVP as Intelligent Peripheral IVR to ICM based on Correlation ID mechanism (Type 3,7), page 9-3 CVP as Intelligent Peripheral IVR to ICM based on Translation Route ID mechanism (Type 8,2), page 9-4 NetworkVRU Types and CVP Deployment Models, page 9-4 Hosted Implementations, page 9-7
Note
In this document, the words VRU and IVR are used interchangeably.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
9-1
Note
The location of the deployed VRU as an intelligent peripheral IVR can be in the network (N-VRU) or at the customer premises (as such NAM in the network and CICM at the customer premise will also be deployed in this scenario). The corresponding correlation or translation route ID should be used accordingly, as described earlier, depending on the location of the VRU.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
9-2
OL-8408-02
Chapter 9
Type 5 and type 6 are similar in the sense that the VRU entity functions both as a switch (call control) and the VRU (IVR). However, they differ on how to connect to the VRU. In Type 6, the Switch and the VRU is the same device. Hence, the call is already at the VRU. No Connect/Request Instructions message sequence is needed from the ICM point of view. On the other hand, in Type 5, the Switch and the VRU are different devices although in the same service node viewpoint from the ICM, even though they both interact with ICM through the same PG interface. Therefore, ICM uses a Connect/Request Instructions sequence to complete the IVR call.
Note
In a CVP application, there are two legs of the call: the Switch leg and the VRU leg as perceived by ICM. In the CVP as service node application (i.e., CVP receives the call from the network directly; not pre-routing), CVP will appear to ICM as type 5 since the call control (the CVP) and the VRU device are different. Hence, CVP needs to be configured as VRU type 5 in the ICM/NAM configuration for the Switch leg. The VRU leg requires a different setup depending on the deployment model (e.g., the VRU leg could be type 7 in the comprehensive ICM enterprise deployment model). Refer to CVP 3.1 Configuration and Administration Guide for examples of configuration of CVP as type 5: http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.html Neither Correlation ID nor translation route is needed when CVP acts as type 5 VRU to ICM/NAM. However, a dummy label is sometimes required.
CVP as Intelligent Peripheral IVR to ICM based on Correlation ID mechanism (Type 3,7)
When the VRU functions as an Intelligent Peripheral IVR with Correlation ID mechanism, ICM uses type 3 and type 7 to designate sub-behaviors of the VRU via the PG in the Correlation ID scheme. They are described below. Both type 3 and type 7 VRU are reachable via Correlation ID mechanism. A PG is needed to control the VRU. However, the difference between these two types is on how to release the VRU leg and how to connect the call to the final destination. In Type 3, the switch that delivers the call to the VRU can take the call from the VRU and connect it to a destination/agent. In Type 7, the switch cannot take the call away from the VRU. When the IVR treatment is complete, ICM needs to disconnect/release the VRU leg first before the final connect can be sent to the switch leg to instruct the switch to connect the call to the destination. CVP when used as an Intelligent Peripheral IVR can function with either Type 3 or 7, but it is somewhat more efficient under type 7 since its gets a positive indication from ICM when its VRU leg is no longer needed (as opposed to waiting for the VXML gateway to inform it that the call has been pulled away). Remember that there are two legs of the call: the Switch leg and the VRU leg. Different CVP hardware can be used for each leg, but functionality-wise from the ICM perspective, there will be a CVP via PG acting as VRU type 5 (i.e., service node) along with a potential different CVP via another PG acting as VRU type 7 to complete the IVR application (self service, queuing, etc.) Refer to CVP 3.1 Configuration and Administration Guide for examples of CVP application with VRU Type 3 or Type 7 configuration: http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
9-3
CVP as Intelligent Peripheral IVR to ICM based on Translation Route ID mechanism (Type 8,2)
When the VRU functions as an Intelligent Peripheral IVR with Translation Route mechanism, ICM uses type 8 and type 2 to designate sub-behaviors of the VRU via the PG in the translation route scheme. They are described below. Both type 2 and type 8 VRU are reachable via the Translation Route mechanism. A PG is needed to control the VRU. However, the difference is how to connect the call to the final destination. In Type 8: the switch that delivers the call to the VRU can take the call from the VRU and connect it to a destination/agent. Type 2 is used when the switch does not have the ability to take the call away from the VRU to deliver it to an agent. In that case, when the IVR treatment is complete, ICM sends final connect to the VRU (rather than to the original switch) to connect the call to the destination. The VRU effectively assumes control of the switching responsibilities when it receives the call. This is known as a handoff. Similarly to the Correlation ID case, there are two legs of the call: the Switch leg and the VRU leg. CVP can be used for the switch leg or the VRU leg (e.g., when NIC and NAM/CICM is involved, CVP will be configured as type 2 or type 8 in the VRU leg). Refer to CVP 3.1 Configuration and Administration Guide for examples of CVP application with VRU Type 8 or Type 2 configuration: http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Model #1. Standalone Self-Service, page 9-5 Model #2. CVP with ICM-Controlled Switching, page 9-5 Model #3a. DTMF Menu, Prompt and Collect, page 9-5 Model #3b. ASR/TTS and/or complex IVR application, page 9-6 Model #4. IVR/Queuing via ICM with NIC-controlled routing, page 9-6 Model #4a. IVR/Queuing via ICM with NIC-controlled routing, page 9-6 Model #4b. IVR/Queuing via ICM with NIC-controlled pre-routing, page 9-7
In ICM, NetworkVRU is a configuration database entity. It is accessed using the Network VRU Explorer. A NetworkVRU entry has two pieces of information:
Type this is a number from 2 to 8, and corresponds to the types described above Labels this is a list of labels which the ICM can use to transfer a call to the particular NetworkVRU being configured. These labels are only relevant for NetworkVRUs of Types 3 and 7 (i.e., those that use the Correlation ID mechanism to transfer calls), and they are required but never used in the case of Type 5. Each label is made up of two parts:
A digit string, which becomes a DNIS that can be understood by the gatekeeper or by gateway
dial-peers; and
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
9-4
OL-8408-02
Chapter 9
A routing client, A.K.A. switch leg peripheral. In other words, each peripheral device which can
act as a switch leg must have its own label, even though the digit strings will likely be the same in all cases. NetworkVRU configuration entries themselves have no value until they are associated with active calls. There are three places in ICM where this association is made:
Advanced tab for a given peripheral in the PG Explorer tool Customer Instance configuration in the ICM Instance Explorer tool On every VRU Script configuration in the VRU Script List tool
Depending on the protocol level call flow, the ICM looks at either the peripheral or the customer instance to determine how to transfer a call to a VRU. Generally speaking, the ICM examines the NetworkVRU which is associated with the switch leg peripheral when the call first arrives on a switch leg, and the NetworkVRU which is associated with the VRU leg peripheral when the call is being transferred to VRU using the Translation Route mechanism. It examines the NetworkVRU which is associated with the Customer Instance when the call is being transferred to the VRU using the Correlation ID mechanism. ICM also examines the NetworkVRU which is associated with the VRU Script every time it encounters a RunExternalScript node in its routing script. If the ICM does not believe the call is currently connected to the designated NetworkVRU, it will not execute the VRU Script. We will now see how this plays out under the various CVP deployment models. Note that much of the discussion which follows is heavily dependent on capabilities which were introduced in ICM/IPCC version 7.0(0). If you are using an older version of ICM, please reference the CVP 3.1 Configuration and Administration Guide: http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
Note
prior to ICM 7.0(0) a Type 5 was recommended here. That will still work properly, but new implementations should use Type 2
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
9-5
Associate all incoming Dialed Numbers with a Customer Instance which is associated with a Type 7 NetworkVRU. (This is sometimes known as a Type 2/7 Configuration.) Finally, all the VRU Scripts that will be executed by this call need to be associated with the same Type 7 NetworkVRU. Though it is not always necessary, as a best practice the ICM routing script should always execute a SendToVRU node prior to the first RunExternalScript node.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
9-6
OL-8408-02
Chapter 9
RunExternalScript node. If the call is going to the VRU leg because it is being queued, generally the TranslationRouteToVRU node should appear after the Queue node. In that way an unnecessary delivery and removal from CVP can be avoided when the requested agent is already available.
Note
Notice the two different VRU transfer nodes that are required. The first one transfers the call away from the NIC with a handoff and establishes CVP as a switch leg device for this call. Physically the call is delivered to an ingress gateway. The second transfer delivers the call to the VXML gateway and establishes CVP as the calls VRU device as well.
Hosted Implementations
This section covers the following topics:
About Hosted Implementations, page 9-7 How CVP Fits Into Hosted Environments, page 9-8 CVP Placement and Call Routing in a Hosted environment, page 9-9 NetworkVRU Type in a Hosted environment, page 9-10
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
9-7
Traditionally, customers implement Hosted setups because they are service providers. They want to provide ICM contact center services to multiple customers of their own. Each customer is hosted on its own CICM, and the NAM is responsible for routing calls which are delivered to the service provider to the appropriate customers CICM. The individual customers run their own contact centers with their own ACDs connected to their own premise-based PGs, which are connected to their assigned service-provider-based CICMs. Thus, the service provider owns and hosts the NAM and all the CICMs, but all the ACDs are owned and hosted by the individual customers. The PGs for those ACDs are owned by the service provider, but located at the customers premise next to his ACDs. The service provider itself does not necessarily operate any ACDs of its own, but it could; those PGs could be connected to a CICM which is assigned to the service provider, or they could actually be connected to the NAM itself. In terms of ICM scripting, all incoming calls initially invoke an appropriate NAM routing script, whose primary responsibility would be to identify the appropriate target customer. The script then delegates control to a routing script which is running on that customers CICM. The CICM-based routing script could then select the appropriate ACD to which to deliver the call, and return the necessary translation route label to the NAM. The NAM would then instruct its routing client to deliver the call to the designated target ACD. If the CICM routing script determined that no ACD could currently take the call, or that it could not yet identify which ACD should take the call, it could ask the NAM to place the call into queue at a Service Control VRU. The CICM routing script could then issue NetworkVRU Script requests via the NAM to that VRU until a routing decision could be made. In practice, however, the NAM/CICM architecture is flexible enough to enable a number of other possibilities. Many Hosted customers use this topology simply as a way to get more calls or more PGs through their ICM setup. Others use CICMs not for customer contact centers, but for outsourcers. In such cases, the NAM handles perhaps the same number of calls as the CICM, and the CICM machines themselves might be physically located quite far away from the NAM. Also, the NAM/CICM architecture was designed at a time when all contact centers ran on TDM-based ACDs. The addition of VoIP routing and Cisco CallManager-based ACDs (i.e., IPCC) with direct agent routing made matters considerably more complicated.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
9-8
OL-8408-02
Chapter 9
In many Hosted environments, particularly when the service provider is itself a PSTN carrier, all the actual call routing occurs via an ICM NIC. In that sense, these deployments are very much like Deployment Model #4, IVR/Queuing via ICM with NIC-controlled routing. The same situation applies if a PGW is being used to route calls, using (typically) the ICM SS7 NIC. However, quite often the service provider does not have a NIC interface at all, and all calls arrive via TDM interfaces such as T3 or E3. In those cases, CVP is used as the switch leg as well as the VRU leg. This situation is similar to Model #3a, DTMF Menu, Prompt and Collect, or to Model #3b, ASR/TTS and/or complex IVR application.
If CVP is placed at the NAM and CVP handles both the switch leg and the VRU leg, the Correlation ID transfer mechanism can be used. The SendToVRU node might be executed by either the NAM or the CICM routing script (the RunExternalScript nodes should also be in the same script which executed the SendToVRU). If CVP is placed at the NAM and a NIC handles the switch leg while CVP handles the VRU leg, either the Correlation ID transfer mechanism or the Translation Route transfer mechanism can be used, depending on the capabilities of the NIC (see Model #4a. IVR/Queuing via ICM with NIC-controlled routing, above).
If Correlation ID transfers are used, then the SendToVRU node might be contained in either the
NAM or the CICM routing script (the RunExternalScript nodes should also be in the same script which executed the SendToVRU).
If Translation Route transfers are used, then the TranslationRouteToVRU node, together with
all RunExternalScript nodes must be in the NAM routing script. The implication here is that the call is queued (or treated with prompt and collect) before the particular CICM is selected. This configuration does not make much sense for queuing, but it could be useful for service providers who want to offer initial prompt and collect before delegating control to the CICM.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
9-9
If CVP is placed at the CICM and a NIC handles the switch leg while CVP handles the VRU leg, only the Translation Route transfer method can be used. The TranslationRouteToVRU node, together with all RunExternalScript nodes must be in the CICM routing script.
Adding Cisco CallManager Originated Calls or ACD Initiated Calls to the mix brings additional constraints. Both of these devices are considered ACDs from the ICMs perspective, and most likely are connected at the CICM level. Assuming these are new calls (as opposed to continuations of existing calls), the route request will come from the ACD, and the resulting label will be returned to the ACD. Neither Cisco CallManager nor any ACD is capable of transmitting Correlation ID upon transfer; only the Translation Route transfer method can be used. This further implies that the transfer destination (e.g., CVP) must also be connected at the CICM level, not the NAM level. Now consider what happens if these calls are not new, but continuations of existing calls. In other words, these calls are attempts to transfer an existing inbound caller from one agent to another agent. Some customers will want such transfers to be blind network transfers (i.e., the first agent drops off and the caller is delivered to a second agent, or queued for a second agent), or warm consultative transfers (i.e., the caller goes on hold while the first agent speaks to a second agent, or waits in queue for a second agent, and eventually hangs up, leaving the caller talking to the second agent).
Blind network transfers. Whether or not the original call was introduced to the NAM via a NIC or CVP switch leg, the transfer label will be passed from the CICM to the NAM to the original switch leg device. We consider two sub-cases.
If the switch leg device is CVP or a NIC which can handle Correlation ID, the Correlation ID
transfer mechanism can be used. The SendToVRU node and all RunExternalScript nodes will be incorporated in the CICM routing script. The CVP VRU leg can be connected to the NAM. This combination blind transfer with Correlation ID transfer is ideal for CVP and should be employed if at all possible.
If the switch leg device is a NIC which cannot handle Correlation ID, then the Translation Route
transfer method must be used, which further implies that the CVP VRU leg device must be connected to the CICM. This is very important: in these cases, the customer might have to deploy additional dedicated CVP Call Servers at the CICM level, since the NAM-level CVP Call Servers cannot be used.
Warm consultative transfers. Note that CVP only helps with warm consultative transfers in the case of IPCC agents transferring the call to other IPCC agents where CVP owns the initial switch leg for the inbound call. For TDM agents, the ACDs own mechanisms are used and does involve CVP. For IPCC Enterprise agents where the incoming call arrived through a NIC, ICMs Network Consultative Transfer facility might be used; that also would not involve CVP.
In that one supported case, where CVP owns the initial switch leg and the transfer is among IPCC agents, the Translation Route transfer method must be used, since the Cisco CallManager cannot handle Correlation ID transfers. This means again, that the CVP VRU leg device must be connected to the CICM. This is very important: in these cases, the customer might have to deploy additional dedicated CVP Call Servers at the CICM level, since the NAM-level CVP Call Servers cannot be used.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
9-10
OL-8408-02
Chapter 9
Interacting with ICM Cisco CallManager and ACD Originated Calls - Deployment Models and Sizing Implications
The NAM, as described earlier, sees new calls arrive either from a NIC or from CVP, and is aware of the CVP VRU leg device. The NAMs NetworkVRU Types must be configured exactly as if it were an independent ICM operating with those devices. The fact that transfer labels sometimes come from a CICM can be effectively ignored for the purposes of configuring NetworkVRU Types. The CICM, on the other hand, sees new calls arrive from a NIC - the INCRP NIC to be specific. All the Dialed Numbers that can arrive from the NAM need to be associated with a Customer Instance which is associated with a Type 7 NetworkVRU. Associate that NetworkVRU with all VRU Scripts, and provide the same label as you need in the NAMs NetworkVRU definition, but with the INCRP NIC as its routing client. Other than that, no peripherals have NetworkVRUs configured.
Cisco CallManager and ACD Originated Calls - Deployment Models and Sizing Implications
The following discussion applies to all ACDs, as well as to all Cisco CallManager integrations which use CVP rather than IP-IVR for queuing. As far as CVP is concerned, these devices share the following characteristics:
They manage agents, and can therefore be destinations for transfers They can issue Route Requests, and can therefore be switch leg devices Though they can be switch leg devices, they cannot handle more than one transfer and they cannot handle CorrelationID
There are several reasons why a Cisco CallManager or ACD user would issue a Route Request:
To be connected to another agent in a particular skill group To reach a self service application To blind-transfer a call which the user had previously received to one of the above
In addition, a Cisco CallManager user in particular might be issuing a Route Request in order to:
Deliver a successful outbound call from the ICM Outbound dialer to a CVP-based self service application Warm-transfer a call which the user had previously received to either a particular skill group or a self service application
Each of the above calls invokes an ICM routing script. The script might or might not search for an available destination agent or service. If it finds an appropriate destination, it sends the corresponding label either back to the ACD, or, if blind-transferring an existing call, to the original callers switch leg device. If it needs to queue the call, or if the ultimate destination is intended to be a self service application rather than an agent or service, it sends a VRU translation route label either back to the ACD, or, if blind-transferring an existing call, to the original callers switch leg device. If the above sequence results in transferring the call to CVPs VRU leg device, there is a second transfer to deliver it to a VXML gateway. To ensure that these events take place, the following ICM configuration elements are required: For new calls from the ACD, or warm transfers of existing calls:
The CVP peripheral must be configured to be associated with a Type 2 NetworkVRU The dialed number which the ACD dialed must be associated with a Customer Instance which
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
9-11
The routing script which was invoked by the ACDs dialed number must contain a
TranslationRouteToVRU node to get the call to CVPs switch leg, followed by a SendToVRU node to get the call to the VXML gateway and CVPs VRU leg
All the VRU Scripts which are executed by that routing script must be associated with the Type
node to get the call to the VXML gateway and CVPs VRU leg
All the VRU Scripts which are executed by that routing script must be associated with the Type
7 NetworkVRU When ICM chooses an agent or ACD destination label for a call, it tries to find one which lists a routing client which can accept that label. For ACD or Cisco CallManager originated calls which are not blind transfers of existing calls, the only possible routing client is the ACD or Cisco CallManager. Once the call has been transferred to CVP, because of the handoff operation, the only possible routing client is the CVP switch leg. But in the case of blind transfers of existing calls, two routing clients are possible: the ACD or Cisco CallManager, or the switch leg device which delivered the original call. For calls which originate through CVP, you can prioritize CVP labels above ACD or Cisco CallManager labels by checking the box called Network Transfer Preferred in the ICM Setup screen for the CVP peripheral.
As the initial routing client (using the GED-125 Call Routing Interface) As a traditional VRU (using the GED-125 Call Routing Interface) As a Service Control VRU (using the GED-125 Service Control Interface)
In the first and second cases, the VRU acts exactly like an ACD, as described in Cisco CallManager and ACD Originated Calls - Deployment Models and Sizing Implications, page 9-11. Like an ACD, it can be a destination for calls which arrive from another source. Calls can even be translation routed to such devices in order to carry call context information. (This operation is known as a traditional translation route, not a TranslationRouteToVRU.) Also like an ACD, it can issue its own Route Requests, and invoke routing scripts to transfer the call to subsequent destinations or even to CVP for self service operations. Such transfers almost always use the translation route transfer mechanism. In the third case, the VRU takes the place of either CVPs switch leg or CVPs VRU leg, or it can even take the place of CVP entirely. Such deployments are beyond the scope of this document.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
9-12
OL-8408-02
C H A P T E R
10
Why these Cisco CallManager Originated Calls Are Different, page 10-1 Call Flows (customer), page 10-2 Call Flows (protocol), page 10-3 Deployment Implications, page 10-6
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
10-1
ICM Outbound with Transfer to IVR, page 10-2 Internal Help Desk, page 10-2 Warm Consultative Transfer, page 10-2
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
10-2
OL-8408-02
Chapter 10
Cisco CallManager Originated Calls - Deployment Models and Sizing Implications Call Flows (protocol)
Model #1, Standalone Self Service, page 10-3 Model #2, CVP Call Control, page 10-3 Model #3a, CVP Call Control with Queue and Collect, page 10-4 Model #3b, CVP Call Control with Queue and Self Service, page 10-6
Note
The Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service, is not discussed here since there is no NIC involved in Cisco CallManager-originated calls.
Caller dials a route pattern Cisco CallManager directs the call to the VXML gateway VXML gateway invokes a voice browser session based on the configured CVP self service application The CVP self service application makes an HTTP request to VoiceXML Server VoiceXML Server starts a self service application VoiceXML Server and VXML gateway exchange HTTP requests and VXML responses Caller hangs up.
Note
The script must not execute a Transfer node, unless it is to a TDM destination. Transfers to an IP destination will result in an IP-to-IP call, which is not supported.
Cisco CallManager route point which invokes an ICM script CVP is a Type 2 NetworkVRU
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
10-3
VRU translation routes to CVP Translation route DNISs configured in CVP Call Server CVP Call Server configured as H.323 gateway in Cisco CallManager Translation route DNISs configured in Cisco CallManager to request destination from gatekeeper H.323 gatekeeper trunk configured in Cisco CallManager with MTP enabled
1. 2. 3. 4. 5. 6. 7. 8. 9.
Caller dials a route point ICM invokes a routing script The routing script encounters a TranslationRouteToVRU node, to transfer the call to CVP; CVP is configured as a Type 2 NetworkVRU ICM returns the translation route label to Cisco CallManager Cisco CallManager consults gatekeeper, gets address of CVP Call Server Cisco CallManager connects the call to the CVP Call Server Cisco CallManager briefly establishes a g.711 media connection between the caller and the CVP Voice Browser The routing script encounters a Select or Label node, and selects a target label ICM returns the target label to CVP Call Server (not to the device which issued the route request)
10. CVP Call Server consults the gatekeeper for the address of the target device 11. CVP Call Server communicates via H.323 with target device and instructs Cisco CallManager to
establish a media stream to it, removing the CVP Call Servers media stream Now consider what happens if the target device issues another route request to ICM. This part would not be possible without the initial TranslationRouteToVRU shown above in step 3.
12. ICM invokes a new routing script 13. The routing script encounters a Select or Label node, and selects a target label 14. ICM returns the target label to CVP Call Server (not to the device which issued the route request) 15. CVP Call Server consults the gatekeeper for the address of the target device 16. CVP Call Server communicates via H.323 with target device and instructs Cisco CallManager to
Cisco CallManager route point which invokes an ICM script CVP is a Type 2 NetworkVRU VRU translation routes to CVP Translation route DNISs configured in CVP Call Server Above route point configured in ICM as a DN with a Type 7 NetworkVRU
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
10-4
OL-8408-02
Chapter 10
Cisco CallManager Originated Calls - Deployment Models and Sizing Implications Call Flows (protocol)
Above NetworkVRU has labels for CVP switch leg routing client Above NetworkVRU labels configured in gatekeeper to point to VXML gateways CVP Call Server configured as H.323 gateway in Cisco CallManager Translation route DNISs configured in Cisco CallManager to request destination from gatekeeper H.323 gatekeeper trunk configured in Cisco CallManager with MTP enabled
1. 2. 3. 4. 5. 6. 7. 8.
Caller dials a route point ICM invokes a routing script The routing script encounters a TranslationRouteToVRU node, to transfer the call to CVP Call Server switch leg ICM returns the translation route label to Cisco CallManager Cisco CallManager consults gatekeeper, gets address of CVP Call Server Cisco CallManager connects the call to the CVP Call Server Cisco CallManager briefly establishes a g.711 media connection between the caller and the CVP Voice Browser The routing script encounters a Queue node
10. ICM sends a VRU transfer label with Correlation ID to CVP Call Server switch leg 11. CVP Call Server consults gatekeeper, gets address of a VXML gateway 12. CVP Call Server communicates via H.323 with VXML gateway and instructs Cisco CallManager to
establish a media stream to it, removing the CVP Call Servers media stream.
13. The routing script executes one or more CVP Microapps via RunExternalScript nodes, plays media
files, requests DTMF input, etc.(See protocol level call flow for Model #3a for details in Chapter 3, Deployment Models.)
14. While CVP Microapps are in progress, a target agent becomes available to take the call. 15. ICM determines a label for the target agent 16. ICM returns the target label to CVP Call Server 17. CVP Call Server consults the gatekeeper for the address of the target device 18. CVP Call Server communicates via H.323 with target device and instructs Cisco CallManager to
establish a media stream to it, removing the VXML gateways media stream. If the target device later issues another route request to ICM, the call flows again exactly as above. The call must again be translation routed to the CVP switch leg Type 2 NetworkVRU, then Correlation ID transferred via SendToVRU to the CVP VXML gateway to create the VRU leg. Microapps might be executed, and eventually the new target label is delivered to the CVP switch leg, which transfers the call to that target.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
10-5
Model #3b, CVP Call Control with Queue and Self Service
Model #3b does not differ significantly from Model #3a, CVP Call Control with Queue and Collect at least as far as call control and signalling. The only departure is that the CVP Microapps which are executed might include subdialog requests to the CVP VoiceXML Server as well. Of course, self service applications are not likely to be invoked during the period when the call is queued. Any agent selection nodes or queue nodes in the ICM routing script would therefore likely be postponed until after the self service application has completed, and control has returned to the ICM routing script.
Deployment Implications
Here is a sampling of items to be aware of when incorporating Cisco CallManager-originated calls into the deployment:
ICM Configuration, page 10-6 Hosted Implementations, page 10-6 Cisco CallManager Configuration, page 10-7 Network Level, page 10-7 Sizing, page 10-7
ICM Configuration
If you want CVP to be able to be involved in subsequent call control, always translation route the call to CVP, as a Type 2 NetworkVRU, before delivering the call to its next destination. This creates a handoff, putting CVP in charge of subsequent transfers for this call, since Cisco CallManager is not able to receive any further labels. If you want to perform any queuing treatment, prompt and collect, or self service applications, always follow the above translation route with a SendToVRU node. SendToVRU can sometimes be invoked implicitly by a Queue node or a RunExtScript node, but you should not rely on that always working. Always include an actual SendToVRU node.
Note
This and all flows in this document assume ICM 7.0(0) or later.) See the assumptions in the above protocol level call flows for additional configuration requirements, Call Flows (protocol), page 10-3.
Hosted Implementations
Translation routes sent by one ICM router must be received by a peripheral which is connected to the same ICM router. This means you can only translation route a call from a CICM level Cisco CallManager into CVP if CVP is also located at the CICM level. In Hosted environments this means you need to provision CVP Call Servers at the CICM level, even if you already have other CVP Call Servers at the NAM level. VXML gateways and gatekeepers can of course be shared. This subject is covered in great detail in Chapter 9, Interacting with ICM.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
10-6
OL-8408-02
Chapter 10
Cisco CallManager Originated Calls - Deployment Models and Sizing Implications Deployment Implications
Remember that the Cisco CallManager will be sending the call to a CVP Call Server, not to a gateway. However, the CVP Call Server must be configured in Cisco CallManager as an H.323 Gateway device. MTP does not need to be turned on for this device. Configure the gatekeeper as an H.323 Gatekeeper trunk device with MTP enabled. Configure the VRU Translation route DNISs to consult that gatekeeper for routing instructions. When configuring agent labels, it is important to remember which device is the routing client. For cases where the label will be returned directly to Cisco CallManager, the Cisco CallManager must be the routing client. For cases where the label will be sent to CVP, the labels must be associated with each of the CVP switch leg Call Servers.
Network Level
Codecs: either g.711 or g.729 might be used for the conversation between the callers IP phone and the VXML gateway. However, for the brief period when the media stream is connected to the CVP Call Server, g.711 must be used.
Sizing
Most customer implementations are not primarily designed for Cisco CallManager-originated calls. The main driver is usually incoming customer calls, though Cisco CallManager-originated calls are frequently a component, particularly in the case of warm transfer. It is easy to forget to size equipment with those calls considered.
Gateways
Cisco CallManager-originated calls do not use ingress gateways at all. Calls are delivered directly from the Cisco CallManager to the CVP Call Server. They do however use VXML gateways whenever a VRU leg is in use. It is important to consider each Cisco CallManager-originated call which is either in queue or conducting self service activities as a call for the purposes of sizing VXML gateways.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
10-7
MTP Resources
The Cisco CallManagers must be sized and configured to allocate an MTP resource for every Internal Help Desk call, every ICM Outbound call which results in a transfer to CVP, and every warm transfer call which results in queuing of the first agent. If you follow the Cisco CallManager configuration guidelines presented in this chapter, it is no longer necessary to allocate MTP resources on a per-CVP Call Server basis, as it used to be.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
10-8
OL-8408-02
C H A P T E R
11
The Cisco Gatekeeper External Interface, page 11-1 The ICM GKTMP NIC, page 11-1 Typical Applications of GKTMP with CVP, page 11-2
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
11-1
Intelligent rejection before the call is answered by CVP When an H.225 SETUP is received by the CVP Call Server it answers the call, returning a CONNECT message immediately. Sometimes it is required to make a routing decision before delivering the call to CVP and it being answered. One example is the use of look-ahead routing in which the ICM script determines the availability and leachability of other ICM peripherals that will be required for the overall call scenario once the call has been delivered to CVP. Using the GKTMP NIC it is possible to reject calls intelligently for alternate routing via the TDM network rather than answer them and not have the resources to handle them subsequently.
Selection of CVP Call Server based on H.323 call information Occasionally the gatekeeper static configuration is not sufficient for selection of the most appropriate CVP Call Server to handle an incoming call. For example, the routing decision might need to be based on the calling line ID or source signalling address.
Manipulation of the calling line ID Modification of the sourceInfo Alias is sometimes useful in order to overload the calling line ID with additional information required by the destination endpoint where translation routing is not possible.
ICM-based dial plan ICM implements a centralized H.323 voice network dial plan, reducing the need for dial plan configuration on individual gatekeepers. This is appropriate only if the dial plan is large, complex, dynamic and difficult to maintain across multiple gatekeepers.
Time of day routing Allows the gatekeeper routing to be supplemented with date and time based decisions, possibly to handle time dependent resource availability.
Back-end system and database queries ICM database lookup or application gateway capabilities data from external systems can be incorporated into routing decisions.
Filtering calls that might be sent immediately to an available destination and bypass CVP While this approach might be seen as a way to avoid using CVP Call Server resources, it limits the functionality available, for example, there can be no intelligent requery for alternative destinations on ring-no-answer nor will it allow the call to be taken back to CVP for subsequent call treatment and transfers.
Pre-Routing with context passing to CVP Used if call context collected during the Pre-Route phase of the call needs to be passed to CVP rather than simply performing a standalone routing request via the GKTMP NIC. In this example, the CVP Call Server must be configured as a Type 2 VRU in order that the call can be translation routed to it and still perform a subsequent transfer. (Note: this capability has limitations in ICM versions prior to 7.0(0) see Deployment Implications, page 11-4.)
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
11-2
OL-8408-02
Chapter 11
Pre-Routing of incoming calls, call context passing not required, page 11-3 In this mode of operation, calls arriving at an ingress gateway make a request to ICM to select either a particular CVP Call Server target or a non-CVP target. When a CVP Call Server is selected, the call is delivered to CVP as a completely new call, with no link to the ICM script involved in the GKTMP-based routing step.
Pre-Routing of incoming calls, call context passing is required, page 11-4 Here, calls which arrive at an ingress gateway make a request to ICM via the GKTMP NIC before being delivered to a particular CVP Call Server target. Any information obtained by this initial ICM routing script is preserved and made available to the ICM script as processing resumes when the call is delivered to the CVP Call Server.
Routing of post-ICM calls, page 11-4 This is to modify the routing of calls that are being transferred to a destination label returned to CVP by an ICM routing script. No information obtained by the previous routing script is available to the new script invoked by the GKTMP request, which functions in a purely standalone manner.
Call arrives at the ingress gateway The ingress gateway requests the gatekeeper to identify a target CVP Call Server (or other IP destination) The gatekeeper issues a GKTMP Request ARQ to ICM via the GKTMP NIC ICM starts a routing script based on dialed number, ANI, time of day, etc. The ICM routing script might return either a Response ARQ or a Response ACF to the gatekeeper. In the former case, the ICM returns modified information in the response and the gatekeeper resumes ARQ processing to select the IP endpoint. This approach is adopted if the ICM is returning a destination label only and not selecting the required destination IP endpoint address(es) explicitly. In the latter case, the ICM completes the processing of the request, returning modified information and selected target IP endpoints. In this case the gatekeeper regards the request as completed, does no further processing of the request and returns the ACF to the ARQing endpoint. The ICM routing script ends here. The gatekeeper returns the selected IP address to the ingress gateway If the target is a non-CVP device, the ingress gateway sets up a VoIP call to that target. If the target is a CVP Call Server, the ingress gateway sets up a new call to it. The CVP Call Server sends a New Call message to ICM
6. 7. 8. 9.
10. ICM starts an independent routing script to handle the incoming call 11. Normal call flow continues. Transfer to VRU leg, Transfer to agent, as well as subsequent blind
Network VRU Transfers to secondary agents or return to queue are fully supported.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
11-3
Call arrives at the ingress gateway The ingress gateway requests the gatekeeper to identify a target CVP Call Server (or other IP destination) The gatekeeper issues a GKTMP Request ARQ to ICM via the GKTMP NIC ICM starts a routing script based on dialed number, ANI, time of day, etc. The ICM routing script executes a TranslationRouteToVRU to select a target CVP Call Server ICM returns the selected translation route label (and optionally the destination endpoint IP address) in the GKTMP Response ARQ/ACF via the GKTMP NIC. The gatekeeper returns the selected IP address to the ingress gateway The ingress gateway sets up a new call to the selected CVP Call Server The CVP Call Server sends a RequestInstruction message to ICM
10. The ICM routing script resumes after the TranslationRouteToVRU node 11. Normal call flow continues: Transfer to VRU leg, Transfer to agent, as well as subsequent blind
Network VRU Transfers to secondary agents or return to queue are fully supported. (See Deployment Implications, page 11-4 for pre-ICM 7.0(0) caveats.)
ICM selects a target agent or other destination label. The ICM routing script ends here. ICM returns the selected label to the CVP Call Server The CVP Call Server requests the gatekeeper for the endpoint IP address associated with that label The gatekeeper issues a GKTMP Request ARQ to ICM via the GKTMP NIC ICM starts a completely independent routing script based on the selected label, ANI, time of day, etc. The ICM routing script selects an appropriate target for the call ICM returns the selected label (and optionally the destination endpoint IP address) in the GKTMP Response ARQ/ACF response via the GKTMP NIC. The ICM routing script ends here. The gatekeeper returns the selected endpoint IP address to the CVP Call Server The CVP Call Server performs and Empty Capability Set transfer, communicating with the ingress gateway and the transfer destination endpoint to establish a VoIP call between them.
Deployment Implications
GKTMP is a simple request/response protocol. From an ICM perspective, this means that the GKTMP NIC cannot perform any call control other than returning a single label and/or endpoint IP address. Third party call control through the GKTMP NIC is not possible once that single destination has been returned. However, it is possible when call control responsibilities are handed off to CVP. The discussion below covers the implications of this for each of the three types of call flow described above:
Pre-Routing of incoming calls, call context passing not required, page 11-5 Pre-Routing of incoming calls, call context passing is required, page 11-5
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
11-4
OL-8408-02
Chapter 11
Once ICM delivers the call to an agent, subsequent agent to agent transfers are not supported via blind Network VRU Transfers with queuing. Agent to agent transfers can still be performed using the ACDs or IPCCs own call switching capabilities, but the Type 2 CVP Network VRU can play no further part in the call. The second transfer to CVPs VRU leg cannot be done with a SendToVRU node. However, two workarounds are possible, each with its own limitations:
Use a second TranslationRouteToVRU node instead of the SendToVRU step. This however
requires that the destination be configured as a Type 8 NetworkVRU, which means it must be a different physical CVP Call Server to the Type 2 CVP platform. This leads to a requirement for extra hardware which might not otherwise be needed based on capacity expectations alone.
Do not do the transfer to CVPs VRU leg at all. This leaves the media terminated at the CVP
Call Server and does not use a VXML gateway at all. It allows no support for ASR/TTS or VoiceXML Server applications, and it requires G.711 RTP between the ingress gateway and the CVP Call Server. This is a deprecated call flow and might soon be declared end-of-life.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
11-5
Other implications
Note that inserting the GKTMP NIC into the call flow does result in additional route requests being processed by the ICM Router for each call processed in this way and additional call detail records will be written by the ICM Logger. Where possible, configure the GKTMP server triggers on the gatekeeper such that only the calls specifically requiring the additional routing functionality afforded by the GKTMP NIC generate a Request ARQ to the ICM.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
11-6
OL-8408-02
C H A P T E R
12
Gateway Options
Cisco offers a large range of voice gateway models, to cover a large range of requirements. Many of these have been qualified for use with CVP, but not all. It is important to always check the latest CVP 3.1 Bill of Materials for the list of currently supported gateway models. This document can be found at: http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml Gateways are used in CVP for conversion of TDM to IP, and for executing VoiceXML instructions. The following sections help you determine which gateways to incorporate into your design. This chapter covers the following topics:
PSTN Gateway, page 12-1 VoiceXML Gateway with DTMF or ASR/TTS, page 12-2 VoiceXML & PSTN Gateway with DTMF or ASR/TTS, page 12-2 TDM Interfaces, page 12-2
PSTN Gateway
In this deployment, the voice gateway is used as the PSTN-to-H.323 voice gateway. The voice gateway is responsible for converting TDM speech to IP and for recognizing DTMF digits and converting them to H.245 signals. In a centralized CVP deployment, you can separate the VoiceXML functionality from the ingress gateway to provide a separate PSTN ingress layer. The separate PSTN layer and VoiceXML farm enables the deployment to support a large number of VoiceXML sessions and PSTN interfaces. For example, the Cisco AS5400XM can accept a DS3 connection, providing support for up to 648 DSOs. However, a gateway that is handling that many ingress calls cannot also support as many VoiceXML sessions. In such cases, the VoiceXML sessions should be offloaded to a separate farm of VXML-only gateways. In a distributed CVP deployment, gateways which reside at the branch office must be dual-use gateways. When the CVP Call Server receives a call from a branch-based ingress gateway, and is asked by the ICM to transfer that call to a VXML gateway, it must be careful to return the call to the same branch office in order to avoid establishing a media stream from one branch to another. It does this by always forcing the VRU leg to go back to the same gateway from which it received the call initially. (For more information, se the SetTransferLabel and SetExcludeIP VBAdmin commands in the CVP 3.1 Configuration and Administration Guide.)
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
12-1
Gateway Options
Note
The AS5850eRSC and the Catalyst 6500 Communication Media Module (CMM) are recommended only for PSTN Gateway use. They are not designed to process VXML.
TDM Interfaces
Cisco AS5400 Series Universal Gateways offer unparalleled capacity in only two rack units (2RUs) and provide universal port data, voice, and fax services on any port at any time. High density (up to one CT3), low power consumption (7.2 A at 48 VDC per CT3), and universal port digital signal processors (DSPs) make the Cisco AS5400 Series Universal Gateways ideal for many network deployment architectures, especially co-location environments and many points of presence (POPs). The Cisco AS5350 Universal Gateway is the only one-rack-unit (1RU) gateway that supports 2-, 4-, or 8-port T1/7-port E1 configurations and provides universal port data, voice, and fax services on any port at any time. The Cisco AS5350 Universal Gateway offers high performance and high reliability in a compact, modular design. This cost-effective platform is ideally suited for internet service providers (ISPs) and enterprise companies that require innovative universal services. The Cisco 2600, 2800, 3700, and 3800 Series Routers support the widest range of packet telephony-based voice interfaces and signaling protocols within the industry, providing connectivity support for more than 90 percent of the world's private branch exchanges (PBXs) and public switched
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
12-2
OL-8408-02
Chapter 12
telephone network (PSTN) connection points. Signaling support includes T1/E1 Primary Rate Interface (PRI), T1 channel associated signaling (CAS), E1-R2, T1/E1 QSIG Protocol, T1 Feature Group D (FGD), Basic Rate Interface (BRI), foreign exchange office (FXO), E&M, and foreign exchange station (FXS). The Cisco 2600, 2800, 3700 and 3800 Series Routers can be configured to support from two to 540 voice channels. For the most current information about the various digital (T1/E1) and analog interfaces supported by the various voice gateways, refer to the latest product documentation available at the following sites:
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
12-3
Gateway Options
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
12-4
OL-8408-02
C H A P T E R
13
What is VoiceXML over HTTP?, page 13-1 Multilanguage Support, page 13-2 Differences in the Supported Web Application Servers, page 13-2 Where to Install CVP Studio, page 13-3
Network bandwidth between Web application server and the VoiceGateway and QOS. Refer to Bandwidth Provisioning and QoS Considerations, page 8-1 for more details.
Performance on the VoiceXML Server CVP Bill of Materials (BOM) requires the MCS-7845 as a VoiceXML server. Adequate performance is required on the server side to respond to VoiceXML over HTTP requests.
Use of pre-recorded Audio vs. Text to Speech Good Voice User Interface applications tend to use pre-recorded audio files wherever possible. Recorded audio sounds much better than TTS. Pre-recorded Audio file quality needs to be designed such that it does not impact download time and browser interpretation. Make recordings in 8-bit Mu law 8Khz format.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
13-1
Make sure the Voice gateway is set to cache Audio content prevents delays in having to download files from the media source. Refer to the Section titled Gateway Prompt Caching Considerations for more details on Prompt Management on Supported Gateways
Use of Grammars A voice application, like any user-centric application, is prone to certain problems that might only be discovered through formal usability testing, or observation of the application in use. Poor speech recognition accuracy is one type of problem common to voice applications, and a problem most often caused by poor grammar implementation. When users mispronounce words or say things that the grammar designer does not expect, the recognizer cannot match their input against the grammar. Poorly designed grammars containing many difficult-to-distinguish entries also results in many misrecognized inputs leading to decreased performance on the VoiceXML server. Grammar tuning is the process of improving recognition accuracy by modifying a grammar based on an analysis of its performance.
Multilanguage Support
The IOS Voice Browser or the MRCP specification does not impose restrictions on support for Multiple Languages. However, there might be restrictions on the ASR/TTS server; check with your preferred ASR/TTS vendor on their support for your languages before preparing a multi-lingual application. Programatically, there is a method where you can dynamically change the ASR server value using a cisco property com.cisco.asr-server in the VoiceXML script. This property overrides any previous value set by the VoiceXML script.
Both Tomcat and Websphere Application server running CVP VoiceXML can support up 500 simultaneous calls per 7845 physical box.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
13-2
OL-8408-02
Chapter 13
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
13-3
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
13-4
OL-8408-02
C H A P T E R
14
Deployment and Ongoing Management, page 14-1 Bandwidth Calculation for Prompt Retrieval, page 14-1 Best Practices for Prompt Management, page 14-2 Configuring Caching on IOS, page 14-2 Branch office implications, page 14-2
In flash memory on each local gateway In this way, gateways do not have to retrieve .wav files for prompts, so WAN bandwidth is not affected. However, if a prompt needs to change, you must change it on every gateway. On an HTTP media server In this way, each local gateway (if properly configured) can cache many or all prompts, depending on the number and size of the prompts.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
14-1
If the prompts are changing frequently, you can ensure that the prompts are current by configuring the HTTP client cache refresh rate to be 30 minutes. This setting allows the voice gateway to cache prompts that will expire after 30 minutes. Upon the next request the prompt will be downloaded and cached again. The HTTP client cache memory file represents the largest prompt file (in kilobytes) that can be cached. In general, divide prompts larger than 500 kB (about a minute in length) into smaller, more manageable pieces to facilitate loading and caching. For example, queue music could be a repetitive loop of a 30-second prompt. Because the prompts are streamed, the prompt are not cached unless the whole prompt is played. Therefore, make prompts a manageable size. If prompts are going to be retrieved from flash, specify prompt URLs in the form: flash:<filename>.wav.
http client cache memory file size in kb 1 10,000 http client cache memory pool size in kb 1 10,000
Note
The upper range is the maximum space allowed for all cached files. The space available can not exceed 10 MB, otherwise subsequent files are not cached.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
14-2
OL-8408-02
C H A P T E R
15
Licensing
This chapter describes how licensing works in a CVP deployment, including how CVP components and ports are licensed. This chapter also presents some significant points about ICM and IOS licensing. The chapter contains the following topics:
CVP Licensing
CVP licensing does not directly correlate to CVP sizing. In particular, while the number of ports you need to license bears some resemblance to the number of ports for which you sized, there is very little relationship between the number of servers you need to license and the number of physical servers you actually order. CVP licenses consist of port licenses and server licenses. Once you have determined these license requirements, you can add redundant port licenses and redundant server licenses. These are further subdivided into Self Service, Queue and Transfer, and Call Director variants. This section includes the following topics:
Regular Port Licenses, page 15-1 Regular Server Licenses, page 15-2 Redundant Licenses, page 15-2 License Enforcement, page 15-3 ASR/TTS Licensing, page 15-3
How many calls are taking to agents How many calls are either:
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
15-1
Licensing
waiting in queue performing simple self service without ASR/TTS and without using VoiceXML Server 3.
How many calls are performing self service activities which do use ASR/TTS or VoiceXML Server
The number of calls you determined corresponds directly to the number of regular (non- redundant) port licenses you need of each type. You need:
CVP Call Director port licenses CVP Queue and Transfer licenses, and CVP Self Service licenses.
Notice that for CVP Standalone deployments, you only need CVP Self Service licenses, since agents are not considered in such deployments. Two caveats apply to CVP Call Director licenses
CVP Call Director licenses are not required for IPCC agents. CVP Call Director licenses are not required for ACD agents where the call has been transferred to those agents using a method which takes the call away from the CVP ingress gateway (*8 TnT, hook flash, or TBCT).
CVP Call Director licenses are not required for IPCC agents. CVP Call Director licenses are not required for ACD agents where the call has been transferred to those agents using a method which takes the call away from the CVP ingress gateway (*8 TnT, hook flash, or TBCT).
In other words, if you did not need a CVP Call Director port license, then you do not need a CVP Call Director server license.
Redundant Licenses
Redundant licenses are purchased by port and by server. Basically, you order as many redundant ports of each type as you require, based on your redundancy model, but you may not order more redundant ports of each type than the number of regular ports you have ordered of that type. Thus, if your redundancy model is N+N, you would order as many Call Director, Queue and Transfer, and Self Service redundant port licenses as you ordered regular port licenses. If your redundancy model is N+1, you would order 300 redundant port licenses of each type that you ordered regular port licenses for, capped
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
15-2
OL-8408-02
Chapter 15
by the actual number of regular port licenses of that type. For example, if you had 700 Self Service port licenses, you would order 300 Redundant Self Service licenses. If you only had 200 Self Service port licenses, you could then only order 200 of the redundant variety. To calculate redundant server licenses, use the same procedure as you did for regular server licenses: one redundant server license of every 300 redundant port licenses. As before, you can conserve redundant server licenses by combining port licenses as necessary into the next more expensive level.
License Enforcement
Port and Server licenses are enforced by the CVP VoiceXML Server only. This means that only CVP Self Service licenses are actually enforced. The VoiceXML Server acquires a license the first time a call makes a request to run a VoiceXML Server application, and releases the license when the VoiceXML Server application terminates. Therefore, a single call can actually move from being a Self Service call (while it is running a VoiceXML Server self service application) to a Queue and Transfer call (while it is in queue for an agent) to a Call Director call (while connected to an agent). Notice however, that the rules for determining port and server license requirements are based on a contact-center-wide snapshot in time, rather than on the stage of a particular call.
ASR/TTS Licensing
ASR and TTS licenses are not sold by Cisco, and must be acquired directly from the vendor. For all the vendors currently supported by CVP, ASR and TTS port licenses are carefully enforced. The license is checked out the moment a call needs to use it, and reserved until the call leaves the VXML gateway.
Note
This is different than for VoiceXML Server licenses. Also, ASR and TTS licenses are independent: a call checks out an ASR license when it first needs to use ASR services, and a TTS license when it first needs to use TTS services. If you plan to move calls from Self Service to Queue and Transfer, you will most likely want to release the ASR and TTS licenses. However, CVP makes no distinction between a call which is at the VXML gateway for self service purposes, and one which is there in order to play queue music. It does not know that the call has progressed from Self Service to Queue and Transfer. The same VXML gateway session remains active across the transition, so any ASR and TTS licenses which were obtained in the first phase are not automatically released. You can, however, force the licenses to be released by causing the call to be removed from the VXML gateway and then redelivered there as a new VRU leg call. Removing it from the VXML gateway releases the ASR and TTS licenses, and redelivering the call makes it immediately available to play queue prompts again, but this time without ASR and TTS licenses. If you are using ICM release 7.0(0) or later, all you need to do is include an explicit SendToVRU node ahead of the Queue node. Prior to ICM release 7.0(0), you need to use a TranslationRouteToVRU node. This only works if you originally translation routed the call to CVP.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
15-3
Licensing
Gateway Licensing
Gateway and IOS licensing are generally beyond the scope of this document. However, note that if you are using any of the ISR gateways (28xx, 37xx, 38xx) as VXML gateways, you also need to purchase FL-VXML- 1 or FL-VXML-12 licenses.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
15-4
OL-8408-02
C H A P T E R
16
Real Time Health Monitoring of CVP Components, page 16-1 Statistical Monitoring of CVP Components, page 16-2 End to End Tracking of Individual Calls, page 16-2 Formal Reporting Based on ICM Data, page 16-3 Formal Reporting Based on CVP VoiceXML Server Data, page 16-3
SNMP traps CiscoWorks2000 Syslog, which receives log messages and permits queries on the logs Microsoft Windows Remote Access Server (RAS) and Hosted IPCC or ICM Event Management System (Cisco Remote Monitoring Suite, traditionally called Cisco Phone Home)
The ICM Remote Monitoring Suite's AlarmTracker is often used as the mechanism to monitor system status for multiple CVP machines. The CVP Call Server sends alarms to SDDSN, and you can use the Alarm Tracker to view alarm status across multiple CVP machines. For detailed information about the CVP Call Servers entire SNMP implementation, refer to the CVP 3.1 Configuration and Administration Guide, Chapter 7, Alarm Handling and Logging. Cisco gateways provide for SNMP monitoring. Information about various IOS MIBs are publicly available at Cisco.com; of particular relevance is the ISDN MIB, information about which can be found at: ftp://ftp.cisco.com/pub/mibs/supportlists/as5400/as5400-supportlist.html.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
16-1
Gateway statistics, including historical and real-time call counts, may be obtained via IOS commands. The gateways ISDN MIB referenced above can be used to provide overall call volumes to an SNMP console, though it does not help distinguish which calls are in self service, in queue, or talking to agents. The ICM provides reports on the number of VRU ports in use at half hour intervals and present this information in discreet or aggregated form. If you know how many ports are available, you can determine whether there were all-trunks-busy periods, and for how long. The CVP Call Server stores detailed statistics in its log files every half hour (a configurable interval) indicating how many calls arrived, were transferred, encountered errors, etc., as well as how long they lasted and many other specific pieces of information. These are described in the CVP 3.1 Configuration and Administration Guide in Chapter 5, Engine Administration, and in Chapter 7, Viewing Voice Browser Logs. These statistics are however not in a form which is suitable for loading into a database or spreadsheet. This document is available at: http://www.cisco.com/en/US/products/sw/custcosw/ps1006/tsd_products_support_series_home.ht ml
The CVP VoiceXML Server writes data rows to a flat log file every for every new call it handles. This data is in comma-separated-value format and quite suitable for loading into a database.
Ingress gateway shown in IOS log files VXML gateway shown in IOS log files CVP Call Server shown in CVP Voice Browser and CVP Application Server log files CVP VoiceXML Server shown in detailed call logs, and available to VoiceXML Server applications for storage or for passing on to further back-end systems ICM shown in the ECC variable user.task.id and stored with all TCD and RCD records ASR and TTS servers shown in logs as the logging tag Cisco CallManager appears in the detailed logs
Thus, with proper levels of logging enabled, a call can be traced through all of the above components.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
16-2
OL-8408-02
Chapter 16
Application reporting: Call counts and call duration summaries per application
Source: Application log files under each application folder Levels: All levels of reporting
Application reporting: Call source summary data such as call counts by ANI
Source: Application log files under each application folder Levels: All levels of reporting
Application menu usage call counts and durations: This data can provide some insight into how a caller transverses through the menu setup for the self-service application. Important: There could be system performance degradation with complete logging.
Source: Application log files under each application folder Levels: Moderate and complete logging only
Voice elements reporting: This data can provide insight into interaction with voice elements including basic speech statistics. Leverage application log files under each application folder.
Source: Application log files under each application folder Levels: Moderate and complete logging only
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
16-3
Call detail reporting: This data can provide flow details about every call made to the system and can help trace a particular call through the self-service application.
Source: Log files under each root folder Levels: All levels of reporting
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
16-4
OL-8408-02
GLOSSARY
A
ANI Application Server; App Server ASR ASR grammar
Automatic Number Identification. Usually the caller's phone number. One of the CVP components. The App Server is logically located between an ICM PG and one or more CVP or Cisco IOS voice browsers. Automated speech recognition. The ability to collect user input using speech recognition. A list of valid responses that a caller can provide during speech recognition.
C
Cisco Security Agent CSS
A security layer that provides intrusion detection and protection (in addition to regular virus scanning software). Content Services Switch. Responsible for load balancing and failover between the gateways and back-end servers (media servers, ASR/TTS servers, VoiceXML servers). Customer Voice Portal. The current version (and new name) of the Cisco ISN product.
CVP
D
DTMF
Dual tone multifrequency. The technique used to transmit keystrokes from touch-tone phones.
G
GED
GeoTel Engineering Document. An API for integrating ACDs, IVRs, and agents into the ICM.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
GL-1
Glossary
H
H.323
A protocol standard that provides a foundation for audio, video, and data communications across IP-based networks, including the Internet. By complying to H.323, multimedia products and applications from multiple vendors can interoperate, allowing users to communicate without concern for compatibility. Hot Standby Routing Protocol. A proprietary routing protocol from Cisco that provides backup to a router in the event of a failure. Using HSRP, several routers present the appearance of a single virtual router on the LAN, sharing the same IP and MAC addresses. If one router fails, the hosts on the LAN are able to continue forwarding packets to a consistent IP and MAC address. CVP Voice Browsers talk to gatekeepers that are configured for redundancy using HSRP.
HSRP
I
ICM in-band
Intelligent Contact Management. A call routing and agent management platform from Cisco. Refers to the technique whereby data (usually DTMF keystrokes) is transmitted audibly on the same path as voice. IP Contact Center. An IP-based call center solution from Cisco. Interactive Voice Response (Voice Response Unit). An automated voice system designed for call-center applications. With respect to the ICM, CVP plays the role of an IVR.
L
label
A text string issued by the NAM or ICM to its routing client in response to a route request. Labels are predefined using the ICM Configuration Manager tool set. A label is a symbolic representation of the exact target location. Labels are free-form, and the format is generally dictated by the specific peripheral (ACD, VRU, CVP, PSTN, and so forth).
M
MCS MGCP
Media Convergence Server. Cisco's standard hardware platform for Windows and Linux servers. Media Gateway Control Protocol. Signaling protocol used by Media Gateway Controller (MGC) or Call Agent (CA). Also handles call routing and stores customer information and connection information. General term for a specific defined function in the CVP that can be invoked from the ICM. The value of call variables from the ICM will affect the behavior of the function. The term is also used to refer to the same specific defined functions invoked from the ICM and executed on third-party VRUs. When the ICM invokes the execution of a micro-app, the application server will generate VoiceXML that is sent to the voice browser for execution.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
GL-2
OL-8408-02
Glossary
MRCP
Media Resource Control Protocol. This protocol is used between the Cisco IOS voice browser and any ASR or TTS server. Media termination point. A network host that is able to send and/or receive voice or audio data.
MTP
N
NAM
Network Applications Manager. When several ICMs are deployed in a hierarchy, the NAM is the top ICM that controls those beneath it. Network Interface Controller. This is the piece of software that interfaces the NAM or ICM to the public network. The NIC essentially normalizes various carrier's AIN capability into the ICM's internal routing protocol.
NIC
O
out-of-band
Refers to the process by which data (usually DTMF keystrokes) is transmitted on some path other than the audible voice path.
P
PG
Peripheral Gateway. An ICM component that is responsible for communicating with peripheral devices such as CVP or Cisco CallManager.
R
RTP
Real-Time Transport Protocol. An Internet protocol for transmitting real-time data such as audio and video. Typically, RTP runs on top of the UDP protocol.
S
SDDSN
Standalone Distributed Diagnostics and Service Network. Allows for alarm monitoring and Event Management System (EMS) logging.
T
TTS
Text-to-speech. Ability to convert text strings to speech for playing to the calling party.
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
GL-3
Glossary
V
VoiceXML
Voice eXtensible Markup Language. A language similar to HTML that brings the full power of Web development and content delivery to interactive-voice-response (IVR) applications. Voice over IP. The technology for transmitting voice via a data network. Virtual Router Redundancy Protocol. An election protocol that dynamically assigns responsibility for one or more virtual routers to the VRRP router(s) on a LAN, allowing several routers on a multi-access link to use the same virtual IP address. Voice Response Unit (or Interactive Voice Response). An automated voice system designed for call-center applications. With respect to the ICM, CVP plays the role of a VRU.
VoIP VRRP
W
W3C
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
GL-4
OL-8408-02
INDEX
A
alternate endpoints application server call disposition configuration call disposition configuration server
5-17 5-8, 5-9 5-8 2-6 5-11
10-2 10-2
for Model #1, Standalone Self Service for Model #2, CVP Call Control
10-3
10-3
for Model #3a, CVP Call Control with Queue and Collect 10-4 for Model #3b, CVP Call Control with Queue and Self Service 10-6 CallManager and ACD Originated Calls and high availability
5-18 9-11
B
bandwidth for ASR/TTS
8-5 8-5 8-5
10-1
7-2 7-4
C
caching on IOS configuration
14-2 6-2, 8-6
7-2 7-3
Call Admission Control (CAC) call control traffic call disposition failures call flows
5-6 5-8 8-2
2-5, 5-12
voice browser
10-2
OL-8408-02
IN-1
Index
F
features of CVP
5-14 1-1
G
5-14 9-4
G.711 Media Burst blocking gatekeeper alternate configuration call disposition configuration H.323 HSRP
6-5 5-4 5-6 5-5 5-6 8-7
Voice Browser
VoiceXML Server
high availaility
5-4
D
data traffic
8-4 10-6 10-7 10-7
5-5 6-2
in distributed deployment
4-3, 4-6
deployment implications
for CallManager Configuration for CVP Call Control Servers for gateways
10-7
12-2
for hosted implementations for ICM Configuration for MTP resources for network level for sizing
10-7 3-1 10-8 10-7 10-6
originating
12-1 4-3
deployment models
VoiceXML
3-1
Model #1. Standalone Self Service Model #2, CVP Call Control
3-5
Model #3a, CVP Call Control with Queue and Collect 3-9 Model #3b, CVP Call Control with Queue and Self Service 3-14 Model #4, NIC-based Call Control with CVP Queue, Collect and Self Service 3-17
applications
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
IN-2
OL-8408-02
Index
H
H.323
8-2 5-1
15-1 15-2
M
5-2 xiii 7-2 9-7
layer 2 switch
14-1 2-5
configuration monitoring
Hot Standby Router Protocol (HSRP) how to use this document HSRP
2-4, 5-4, 5-5 5-5
16-2
alternate gatekeeper
I
ICM
2-7, 9-1 8-3 2-7, 5-19
multilanguage support
N
network level considerations network security using firewalls networkVRU types
8-8 9-1 9-4 8-1
9-1 7-4
O
organization of this document originating gateway
5-3 5-4 5-3 xiv
IP infastructure
L
Layer 2 Switch licensing CVP
15-1 15-3 5-2
ASR/TTS
15-1
P
PGW Softswitch
2-5
enforcement gateways
15-3
15-4
14-2
redundant licenses
OL-8408-02
IN-3
Index
configuration
5-20
T
Takeback-N-Transfer (TNT) TDM interfaces
12-2 2-6 7-2
Q
QoS
8-7
R
RAS
2-5
Remote Access Service (RAS) on CVP VoiceXML data on ICM data revision history RSVP
6-5, 8-6 16-3 xiii 16-3
7-3
V
versions of software voice browser call disposition
5-8 5-7 xiii
S
SDDSN servers for media
2-6 2-5 2-5 2-5
13-3
for VoiceXML
service creation environment Signaling System 7 (SS7) sizing CVP call server gatekeeper gateways overview
4-3 4-1 4-3 4-3, 4-6 2-5
multilanguage support
13-1 2-5, 4-3
server design implications VoiceXML gateways alternate endpoints call disposition configuration
5-12 5-10 5-10 5-11
13-1 13-2
xiii
5-12
Standalone Distributed Diagnostics and Services Network (SDDSN) 2-5, 5-19 call disposition
5-20
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND)
IN-4
OL-8408-02
Index
5-16 5-15
W
W3C
2-6 2-6
Cisco Customer Voice Portal (CVP) Solution Reference Network Design (SRND) OL-8408-02
IN-5