WebSphere Voic e Response for AIX with DirectTalk Technology
Using the CCXML Browser
Ve r s i o n 4.2
SC34-6368-03
Note
Before using this information and the product it supports, read the general information under “Notices” on
page 43.
Fourth edition (August 2008)
This edition applies to Version 4, Release 2 of IBM WebSphere Voice Response for AIX with DirectTalk Technology
(program number 5724-I07), and to all subsequent releases and modifications until otherwise indicated in new editions. Make sure you are using the correct edition for the level of the product.
© Copyright International Business Machines Corporation 2001, 2008. All rights reserved.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
Contents
About this book ...... v Transporting events to and from external
Who should read this book ...... v components ...... 30
Related publications ...... v Configuration ...... 30
Specifications and standards ...... vi Sending an event to a CCXML session . .30
Typographic conventions ...... vi Sending an event from a CCXML session 31
Accessibility ...... vii Logging events ...... 32
Notes on terminology ...... vii Error handling ...... 32
Making comments on this book . . . . . vii
Chapter 3. Problem determination . . . .35
Chapter 1. CCXML language ...... 1 System log file ...... 35
What is CCXML? ...... 1 Formatting the log file ...... 35
Using ECMAScript ...... 2 Checking the log file ...... 35
Elements ...... 2 CCXML document errors...... 36
Events ...... 5 Common problems...... 36
CCXML classes ...... 9
Sessions ...... 12 Appendix. Example files ...... 39
Session variables ...... 13 Sample default.cff file ...... 39
Error handling ...... 14 Sample CCXML document ...... 41
Document fetching and caching . . . . .14
Notices ...... 43
Chapter 2. CCXML Programming . . . .17 Trademarks ...... 44
CCXML document structure ...... 17
The initial part ...... 18 Glossary ...... 47
The event processor part ...... 18
CCXML document processing ...... 19 List of WebSphere Voice Response and
CCXML variables and their scope . . . . .19 associated documentation ...... 73
Single Call and Multi Call modes . . . .20 WebSphere Voice Response software . . . .73
CCXML object identifiers ...... 20 IBM hardware for use with WebSphere Voice
Connection states ...... 21 Response ...... 74
Using WebSphere Voice Response call tags . .21 Withdrawn from marketing but still
Answering a telephone call ...... 23 supported ...... 74
Rejecting a telephone call ...... 24 WebSphere Voice Response related products 74
Updating a variable ...... 24 WebSphere Voice Server for Multiplatforms 74
Invoking a VoiceXML application . . . . .24 Unified Messaging for WebSphere Voice
Passing information back from a VoiceXML Response ...... 74 application to CCXML ...... 25 AIX and the IBM pSeries computer . . .75
Invoking a Java application ...... 25 HACMP ...... 75
Passing information back from a Java SS7 ...... 75 application to CCXML ...... 26 Integrated Services Digital Network . . .75
Transferring a telephone call ...... 27 Bellcore Specifications for ADSI Telephones 76
Call transfer events ...... 29
Making an outbound telephone call . . . .29 Index ...... 79
Disconnecting a telephone call ...... 30
© Copyright IBM Corp. 2001, 2008 iii iv Using the CCXML Browser
About this book
® ® This book provides an overview of using the IBM Call Control XML Browser for WebSphere
® Voice Response for AIX to run Call Control XML (CCXML) applications. Such applications
can be used to provide telephony control support to VoiceXML, or other voice dialog systems
such as those written in Java.
This book tells you how WebSphere Voice Response for AIX and the CCXML Browser
supplied with it operate together, and offers hints and tips on creating CCXML applications. It
lists elements in the CCXML language and indicates how they are supported, and also how
their attributes are interpreted. It also lists events in the CCXML language and indicates when
they are issued, and the meaning of the event data.
For information on configuring the WebSphere Voice Response for AIX Java and VoiceXML
environment to use CCXML, refer to the WebSphere Voice Response for AIX: Deploying and
Managing VoiceXML and Java Applications.
The WebSphere Voice Response for AIX CCXML Browser conforms to the Working Draft of
the Voice Browser Call Control: CCXML Version 1.0 specification, published by W3C and
available at http://www.w3.org/TR/2004/WD-ccxml-20040430/. Except where otherwise stated,
all references to CCXML in this book relate to that Working Draft specification. You should
read the CCXML specification in conjunction with this book.
Throughout this book, the terms Call Control XML Browser and CCXML Browser are used in
preference to the terms Call Control XML Interpreter and CCXML Interpreter. In the context
of CCXML, the terms browser and interpreter are interchangeable.
CCXML applications can be developed using the IBM WebSphere Voice Toolkit CCXML
Editor. For information on the CCXML Editor, refer to the WebSphere Voice Toolkit online
information.
Who should read this book
Read this book if you are:
v An application developer who is interested in creating CCXML applications that run on
WebSphere Voice Response for AIX.
Related publications
Reference, design, and programming information for creating CCXML applications is available
from the sources that are represented by the documents listed in this section.
© Copyright IBM Corp. 2001, 2008 v
For details of WebSphere Voice Response for AIX publications, see “List of WebSphere Voice
Response and associated documentation” on page 73
Note: Guidelines and publications cited in this book are for your information only and do not
in any manner serve as an endorsement of those materials. You alone are responsible for
determining the suitability and applicability of this information to your needs.
Specifications and standards
You might want to refer to the following sources for information about relevant specifications
and standards:
v Voice Browser Call Control: CCXML Version 1.0 specification, published by W3C and available
at http://www.w3.org/TR/ccxml/ (This is the latest published edition.)
v ECMA Standard 262: ECMAScript Language Specification, 3rd Edition, published by ECMA and
available at http://www.ecma-international.org/publications/standards/Ecma-262.htm
v ECMA Standard 327: ECMAScript 3rd Edition Compact Profile,, published by ECMA and
available at http://www.ecma-international.org/publications/standards/Ecma-327.htm
v Voice Extensible Markup Language (VoiceXML) Version 2.0 specification, published by W3C
and available at http://www.w3.org/TR/voicexml20/
Typographic conventions
This book uses the following typographic conventions:
boldface
Identifies an item that is in a WebSphere Voice Response window. The item might be
a keyword, an action, a field label, or a pushbutton. Whenever one of the steps in a
procedure includes a word in boldface, look in the window for an item that is labeled
with that word.
boldface italics
Are used for emphasis. Take extra care wherever you see bold italics.
italics Identify one of the following:
v New terms that describe WebSphere Voice Response components or concepts. A
term that is printed in italics is usually followed by its definition.
v Parameters for which you supply the actual names or values.
v References to other books.
monospace
Identifies one of the following:
v Text that you type in an AIX window. Because AIX is case sensitive, ensure that
you type the uppercase and lowercase characters exactly as shown.
v Names of files and directories (path names).
vi Using the CCXML Browser accessibility
Accessibility
WebSphere Voice Response for AIX is a voice application enabler. The applications that are
developed to run on WebSphere Voice Response provide telephone access to business data
and services. In this way, WebSphere Voice Response provides accessibility for people who
cannot access the data and services by using regular Web pages or traditional graphic
interfaces. These telephone user interfaces are fully accessible to people who are blind or have
low vision and, if speech recognition is used, to people with mobility impairments or limited
hand use. Speech recognition capability can be provided by products such as IBM WebSphere
Voice Server. In addition, support for users of Telephony Devices for the Deaf (TDD) is
provided as part of the WebSphere Voice Response product.
With WebSphere Voice Response you can perform many application development and system
administration tasks with a text editor or line commands—these are accessible if you use a
screen reader product to interface with them. Also, the default settings of the WebSphere
Voice Response graphical user interface can be changed to produce large fonts and high
contrast colors. Details of how to use these accessibility features can be found in the
WebSphere Voice Response for AIX: User Interface Guide. Alternatively, application development
™ can be done with Java or VoiceXML development tools that are supplied by IBM and third
parties.
You can also use a screen-reader product to access the WebSphere Voice Response publications
in HTML format (for details of their availability refer to “List of WebSphere Voice Response
and associated documentation” on page 73 at the back of this book).
Notes on terminology
v A glossary of commonly-used terms is at the end of this book.
® v The full product name of WebSphere Voice Response for AIX with DirectTalk Technology is
generally abbreviated in this book to WebSphere Voice Response.
™ ® v The term pSeries is generically used in this book to refer both to PCI-based RS/6000
™ computers and to appropriate models of the System p5 and pSeries ranges. (Consult your
IBM representative for details of models that are supported for use with WebSphere Voice
Response.) RS/6000 computers with an MCA bus are not supported.
v The IBM Quad Digital Trunk Telephony PCI Adapter is generally referred to in this book by its
abbreviation DTTA. This adapter is a replacement for the IBM ARTIC960RxD Quad Digital
Trunk PCI Adapter, which is generally referred to by the abbreviation DTXA.
v References made to the VoiceXML 2.1 specification are intended to include VoiceXML 2.0
unless otherwise specified.
Making comments on this book
If you especially like or dislike anything about this book, feel free to send us your comments.
About this book vii making comments on this book
You can comment on what you regard as specific errors or omissions, and on the accuracy,
organization, subject matter, or completeness of this book. Please limit your comments to the
information that is in this book and to the way in which the information is presented. Speak
to your IBM representative if you have suggestions about the product itself.
When you send us comments, you grant to IBM a nonexclusive right to use or distribute the
information in any way it believes appropriate without incurring any obligation to you.
You can get your comments to us quickly by sending an e-mail to [email protected].
Alternatively, you can mail your comments to:
User Technologies
IBM United Kingdom Laboratories,
Mail Point 095, Hursley Park,
Winchester, Hampshire, SO21 2JN, United Kingdom
Please ensure that you include the book title, order number, and edition date.
viii Using the CCXML Browser
Chapter 1. CCXML language
This chapter provides an introduction to basic Call Control XML (CCXML) concepts and
constructs. It describes the IBM Call Control XML Browser for WebSphere Voice Response for
AIX (CCXML Browser) implementation of Version 1.0 of the CCXML specification.
The information provided in this chapter is not a complete description of the functionality of
the language. For more information, see the CCXML Version 1.0 specification at
http://www.w3.org/TR/2004/WD-ccxml-20040430/.
What is CCXML?
CCXML is an XML-based markup language that enables developers to write documents that
perform advanced telephony call handling. CCXML is an industry standard that is defined by
the World Wide Web Consortium (W3C).
CCXML applications
A CCXML application allows sophisticated multiple-call handling and control, including the
ability to place outgoing calls, to answer incoming calls, and to invoke voice applications. It
allows for handling of a class of asynchronous events and advanced telephony operations
involving substantial amounts of signals, status events, and message-passing.
CCXML has been designed to complement and integrate with VoiceXML systems. However, it
should be noted that the two languages are separate and that VoiceXML is not required to run
CCXML applications.
Event driven
CCXML is an event driven language and is capable of handling asynchronous events.
Within a CCXML document there exists a set of transitions. Each transition is designed to
handle specific types of events. The CCXML Browser processes an internal queue of events.
Each event in the queue is handled in turn and is passed to an appropriate transition within
the CCXML document.
Events can be generated by any of the following:
v The telephony system
v A CCXML Browser
© Copyright IBM Corp. 2001, 2008 1
v Voice applications that are invoked by the CCXML Browser
v CCXML applications that are written by users
A CCXML Browser session can be configured to handle many phone connections
simulaneously. The events received from the CCXML Browser’s single event queue can be
from any of these concurrent connections.
Using ECMAScript
The scripting language of CCXML is ECMAScript Compact Profile (ES-CP, also known as
ECMA-327). This is an industry-standard programming language and is a subset of
ECMAScript 3rd Edition. ES-CP is tailored to resource-constrained devices and is used by
CCXML to maximize efficiency.
Elements
Although the CCXML language is fully supported, WebSphere Voice Response for AIX does
not currently implement the complete set of CCXML elements. Table 1 describes the level of
element implementation that is available in this release, and shows the attributes that are
implemented for fully and partially implemented elements.
If an element attribute that is not implemented by WebSphere Voice Response is used within a
document, the document loads successfully but the event error.unsupported is thrown
Table 1. Summary of CCXML elements and attributes
Level of Implemented
Element Description Implementation Attributes
incoming phone call.
v hints
variable.
v expr
timer
a CCXML document.
v xml:base
not implemented:
v dest
v aai
v hints
v callerid
v timeout
v use
2 Using the CCXML Browser
Table 1. Summary of CCXML elements and attributes (continued)
Level of Implemented
Element Description Implementation Attributes
conference.
session in a new thread.
v namelist
v method
v start
v sessionid
v timeout
audio conference.
v src conferenceid not
supported v type
v namelist
v dialogid
v prepareddialogid conferenceid not
supported v src
v type
duplex=“half” not
v namelist supported
v dialogid
v immediate
v dialogid
v reason
v hints
CCXML session.
v namelist
Chapter 1. CCXML language 3
Table 1. Summary of CCXML elements and attributes (continued)
Level of Implemented
Element Description Implementation Attributes
v namelist
v method
v fetchid
v synch
v timeout
document in the current
CCXML session.
log.
v expr
A container for referencing Full v name
information about a
v content CCXML document.
v http-equiv
metadata language the
CCXML document
information.
another CCXML session.
v event
v sessionid
to a new endpoint.
call.
v reason
v hints