SIST-TP ETSI/TR 102 171 V1.1.1:2005
(Main)Using ECMA-323 (CSTA XML) in a Voice Browser Environment
Using ECMA-323 (CSTA XML) in a Voice Browser Environment
This deliverable illustrates how CSTA XML (ECMA-323) can be used in a Voice Browser Environment.
Uporaba ECMA-323 (CSTA XML) v okolju govornega brskalnika
General Information
Standards Content (Sample)
SLOVENSKI STANDARD
SIST-TP ETSI/TR 102 171 V1.1.1:2005
01-marec-2005
Uporaba ECMA-323 (CSTA XML) v okolju govornega brskalnika
Using ECMA-323 (CSTA XML) in a Voice Browser Environment
Ta slovenski standard je istoveten z: TR 102 171 Version 1.1.1
ICS:
33.030 Telekomunikacijske Telecommunication services.
uporabniške rešitve Applications
SIST-TP ETSI/TR 102 171 V1.1.1:2005 en
2003-01.Slovenski inštitut za standardizacijo. Razmnoževanje celote ali delov tega standarda ni dovoljeno.
---------------------- Page: 1 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
---------------------- Page: 2 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
ETSI TR 102 171 V1.1.1 (2003-02)
Technical Report
Using ECMA-323 (CSTA XML) in a
Voice Browser Environment
---------------------- Page: 3 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
2 ETSI TR 102 171 V1.1.1 (2003-02)
Reference
DTR/ECMA-00285
Keywords
CSTA, voice
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Siret N° 348 623 562 00017 - NAF 742 C
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° 7803/88
Important notice
Individual copies of the present document can be downloaded from:
http://www.etsi.org
The present document may be made available in more than one electronic version or in print. In any case of existing or
perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF).
In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive
within ETSI Secretariat.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
http://portal.etsi.org/tb/status/status.asp
If you find errors in the present document, send your comment to:
editor@etsi.org
Copyright Notification
No part may be reproduced except as authorized by written permission.
The copyright and the foregoing restriction extend to reproduction in all media.
© European Telecommunications Standards Institute 2003.
All rights reserved.
TM TM TM
DECT , PLUGTESTS and UMTS are Trade Marks of ETSI registered for the benefit of its Members.
TM
TIPHON and the TIPHON logo are Trade Marks currently being registered by ETSI for the benefit of its Members.
TM
3GPP is a Trade Mark of ETSI registered for the benefit of its Members and of the 3GPP Organizational Partners.
ETSI
---------------------- Page: 4 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
3 ETSI TR 102 171 V1.1.1 (2003-02)
Contents
Intellectual Property Rights.5
Foreword.5
Brief History.5
1 Scope.6
2 References.6
3 Brief Overview of ECMA-323.6
4 Fundamental Concepts.7
4.1 CSTA Connection.7
4.2 CSTA Connection State Model.7
4.3 Connection State Transitions for CSTA Calls.8
4.3.1 Incoming Call.8
4.3.2 Outgoing Call.8
5 CSTA Profiles.8
5.1 Level 1a Voice Browser Profile .9
5.1.1 Services.9
5.1.2 Events.9
5.2 Level 1b Voice Browser Profile .9
5.2.1 Services.9
5.2.2 Events.10
5.3 Level 2 Voice Browser Profile.10
5.3.1 Services.10
5.3.2 Events.10
5.4 Basic Telephony Profile .11
5.4.1 Services.11
5.4.2 Events.11
5.5 Other Features.12
6 ECMA-323 Illustrative Examples.12
6.1 Discovering the Capabilities of a Telephony Platform.12
6.2 Starting a Monitor (i.e. listening for incoming calls) .12
6.2.1 Monitor Start - Service Request example .12
6.2.2 Monitor Start - Service Response example.13
6.3 Notification of an Inbound Call.13
6.3.1 Delivered Event example.13
6.4 Answering an Inbound Call.14
6.4.1 Answer Call - Service Request example.14
6.4.2 Answer Call - Service Response example .15
6.5 Notification of a Connected Call.15
6.5.1 Established Event example .15
6.6 Clearing a Connection.15
6.6.1 Clear Connection - Service Request example.16
6.6.2 Clear Connection - Service Response example .16
6.7 Notification of a Cleared Connection.16
6.7.1 Connection Cleared Event example.16
6.8 Initiating an Outbound Call.17
6.8.1 Make Call - Service Request example (refer to Profile) .17
6.8.2 Make Call - Service Response example.17
6.9 Outbound Call Event Sequence.17
6.9.1 Originated Event Example.17
6.9.2 Network Reached Event .18
6.9.3 Delivered Event.19
6.9.4 Established Event.20
6.10 Single Step Transfer .20
ETSI
---------------------- Page: 5 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
4 ETSI TR 102 171 V1.1.1 (2003-02)
6.10.1 Single Step Transfer - Service Request example .20
6.10.2 Single Step Transfer - Service Response example.20
6.11 Notification of a Transferred Connection.20
6.11.1 Transferred Event example.20
6.12 Deflect.21
6.12.1 Deflect - Service Request example .21
6.12.2 Deflect - Service Response example.22
6.13 Notification of a Diverted Connection .22
6.13.1 Diverted Event example.22
6.14 Single Step Conference .22
6.14.1 Single Step Conference - Service Request example .22
6.14.2 Single Step Conference - Service Response example.23
6.15 Notification of an Party Added to a call.23
6.15.1 Conferenced Event example .23
6.16 Failure Response example.24
7 SALT/CSTA XML Programming Example.25
8 CCXML/CSTA XML Programming Example .29
9 CSTA Call Control Features .32
9.1 Services.32
9.2 Events.33
History .35
ETSI
---------------------- Page: 6 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
5 ETSI TR 102 171 V1.1.1 (2003-02)
Intellectual Property Rights
IPRs essential or potentially essential to the present document may have been declared to ETSI. The information
pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found
in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in
respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web
server (http://webapp.etsi.org/IPR/home.asp).
All published ETSI deliverables shall include information which directs the reader to the above source of information.
Foreword
This Technical Report (TR) has been produced by ECMA on behalf of its members and those of the European
Telecommunications Standards Institute (ETSI).
Brief History
The present document illustrates how CSTA XML (ECMA-323) can be used in a Voice Browser environment. The
present document is part of a suite of ECMA CSTA Phase III Standards and Technical Reports.
All of the Standards and Technical Reports in this Suite are based upon the practical experience of ECMA member
companies and each one represents a pragmatic and widely based consensus.
ETSI
---------------------- Page: 7 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
6 ETSI TR 102 171 V1.1.1 (2003-02)
1 Scope
Services for Computer Supported Telecommunications Applications are defined by Standard ECMA-269 and the XML
Protocol for those services is defined by Standard ECMA-323.
In many cases, applications require only a small subset of the features standardized in CSTA. In a voice browser
environment, processing speech (not call control) is usually the major focus of the application. For example, from a
CSTA feature perspective, an application may simply need to answer an incoming call and then later clear it. As these
speech-centric applications evolve they can use additional, more advanced, features standardized by CSTA that are
provided by CSTA-conformant communications platforms.
Since ECMA-269 and ECMA-323 are relatively large standards (combined over 1100 pages), it is a challenge for
application developers without prior knowledge of the CSTA standards to know where to find basic concepts that they
need to understand in order to implement basic CSTA features.
The present document illustrates how ECMA-323 can be used in a Voice Browser environment. These concepts
illustrated in the present document can be applied to any Voice Browser environment that provides an XML-based
read/write messaging interface (i.e. CSTA Service Boundary) that supports asynchronous events from a CSTA
conformant communication platform. SALT enabled browsers that implement a ECMA-323 interface for call control
using the SALT smex mechanism is an example of a browser with this capability.
Throughout the present document the term "ECMA-323 enabled voice browser" is used, in a generic sense, to refer to
browser implementation that support a CSTA conformant ECMA-323 interface.
Examples are provided that show how ECMA-323 can be used in several different environments such as SALT-enabled
browsers and CCXML.
2 References
The present document provides informative examples of how to use ECMA-323 in a Voice Browser environment. The
following ECMA Standards should be used as the definitive references for CSTA.
ECMA-269: "Services for Computer Supported Telecommunications Applications (CSTA) Phase III".
ECMA-323: "XMLProtocol for Computer Supported Telecommunications Applications (CSTA) Phase III".
ECMA CSTA Standards can be used for call control in many different environments. The following references provide
additional information on using the ECMA CSTA standards in different environments:
SALT: "Speech Application Language Tags Specification Version 1.0", SALT Forum, 15 July 2002.
(http://www.saltforum.org).
CCXML: "Voice Browser Call Control: CCXML Version 1.0", W3C Working Draft, 11 October 2002.
(http://www.w3c.org/TR/ccxml/).
3 Brief Overview of ECMA-323
ECMA-323 consists of a set of XML Schemas based upon the W3C XML Schema Language Recommendation. The
Standard includes schemas for many categories of services defined in ECMA-269.
Call control is just one category of services in ECMA-323. Examples of other categories of services are: capability
exchange (feature discovery) services, call routing services, services to control a device (e.g. message waiting, writing
to display, forwarding settings), and many others.
CSTA provides a protocol independent abstraction layer for applications. It provides a consistent, standards-based
st rd
messaging interface that can be used with basic 1 party call control based platforms as well as more complex 3 party
st rd
call control (CTI) platforms, or a combination of both (1 party call control with some additional 3 party call control
features).
ETSI
---------------------- Page: 8 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
7 ETSI TR 102 171 V1.1.1 (2003-02)
CSTA modelling and concepts are also compatible with many procedural and object models such as the SALT
CallControl object (chapter 3 of the SALT specification).
4 Fundamental Concepts
This clause introduces some informative modelling concepts that are useful to illustrate how ECMA-323 enabled voice
browsers can use ECMA-323 messages. The actual ECMA CSTA standards should be used for the definitive
descriptions.
4.1 CSTA Connection
CSTA call control services are applied to CSTA connections. A CSTA connection refers to a relationship between a call
and a telephony endpoint. A CSTA connection is referenced via a CSTA connection identifier. A CSTA connection
identifier consists of a call identifier and a device (endpoint) identifier.
st
In a typical 1 party call control implementation, a voice browser application manipulates only the CSTA connection
directly associated with the voice browser platform. However, other call control implementations may also provide
rd
application control of other endpoints in the call using CSTA services (via 3 party call control, for example). A device
identifier is included in a CSTA connection identifier to allow any endpoint to be addressed by a voice browser
application.
4.2 CSTA Connection State Model
A ECMA-323 enabled voice browser application is informed of connection state transitions (via ECMA-323 call
control events) by placing a monitor on a telephony endpoint via an associated address (e.g. this is how an application
"listens" for incoming calls).
Each CSTA connection in a call is associated with a connection state. CSTA specifies a connection state model (see
ECMA-269, figure 6-19) that consists of the following connection states:
• Alerting: Indicates an incoming call at an endpoint. Typically the connection may be ringing or it may be in a
pre-alerting (e.g. offered) condition.
• Connected: Indicates that a connection is actively participating in a call. This connection state can be the result
of an incoming or outgoing call.
• Failed: Indicates that call progression has stalled. Typically this could represent that an outgoing call attempt
that encountered a busy endpoint.
• Held: Indicates that an endpoint is no longer actively participating in a call. For implementations that support
multiple calls per endpoint (i.e. line), a connection could be Held while the line is used to place another call
(consultation transfer on an analogue line, for example).
• Initiated: A transient state, usually indicating that the endpoint is initiating a service (e.g. dialtone).
• Null: There is no relationship between the call and the endpoint.
• Queued: Indicates that the call is temporarily suspended at a device (e.g. call has been parked, camped on).
The CSTA Connection State is provided in ECMA-323 events.
ETSI
---------------------- Page: 9 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
8 ETSI TR 102 171 V1.1.1 (2003-02)
4.3 Connection State Transitions for CSTA Calls
4.3.1 Incoming Call
The following figure illustrates the CSTA events for an incoming call. The connection state of endpoint on the voice
browser platform (called connection) is indicated in parenthesis.
• Delivered Event (Alerting): Indicates call is alerting. Calls that are "auto-answered" do not sent this event. A
CSTA Answer Call service can be used to answer the call. This results in an Established event.
• Established Event (Connected): Indicates call has been answered. Media path has been established. The CSTA
Clear Connection service can be used to clear the call. A Connection Cleared event is generated as the result of
the Clear Connection service.
• Connection Cleared Event (Null): Indicates connection has cleared. This can be the result of the Clear
Connection service or as the result of any party clearing from the call.
4.3.2 Outgoing Call
The following figure illustrates the CSTA events for an outgoing call. The connection state of the endpoint on the Voice
Browser platform (originating connection) is indicated in parenthesis. This sequence could be the result of a CSTA
Make Call service.
• Originated Event (Connected): Indicates that the originating connection (an endpoint on the voice browser
platform) is connected.
• Delivered Event (Connected): Indicates the call is alerting the called party.
• Established Event (Connected): Indicates the called party has answered the call. Media path has been
established.
• Connection Cleared Event (Null): Indicates connection has cleared.
5 CSTA Profiles
Since many CSTA features are optional, and to enhance application portability across different CSTA implementations,
CSTA standards require a minimal subset of functionality as conformance criteria.
ECMA-269 specifies a set of Profiles. At least one profile is required to be supported. The following profiles most
closely match the call control services and events needed by a Voice Browser application.
th
• Level 1a Voice Browser Profile (added in ECMA-269 5 edition): Provides support for answering an
incoming call, clearing, and moving the call to another endpoint using the Single Step Transfer Call service.
The Get Switching Function Capabilities Service is not required to be supported in this profile.
th
• Level 1b Voice Browser Profile (added in ECMA-269 5 edition): Provides support for answering an
incoming call, clearing, and moving the call to another endpoint using the Deflect Call service. The Get
Switching Function Capabilities Service is not required to be supported in this profile.
th
• Level 2 Voice Browser Profile (added in ECMA-269 5 edition): Provides support for making a call in
addition to the services and events required in either the Level1a Voice Browser Profile of the Level 1b Voice
Browser Profile. The Get Switching Function Capabilities Service is required to be supported in this profile.
• Basic Telephony Profile: Provides support for answering an incoming call, creating an outgoing call, and
clearing the call. The Get Switching Function Capabilities Service is required to be supported in this profile.
NOTE: Telephony platforms that interface with networks and/or endpoints that do not expose the underlying
network/device signalling are not expected to provide all of these CSTA events. For example, if the
telephony network does not provide a busy indication, the Failed event is not required.
ETSI
---------------------- Page: 10 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
9 ETSI TR 102 171 V1.1.1 (2003-02)
5.1 Level 1a Voice Browser Profile
5.1.1 Services
The following CSTA services are included in the Level 1a Voice Browser Profile:
• Answer call: Answers an alerting call. In a voice browser, the answering device is an endpoint on the platform.
• Clear Connection: Clears a connection. In a voice browser environment, the clearing device is an endpoint on
the voice browser platform.
• Single Step Transfer (of a connected call): Transfers a call to another endpoint. In a voice browser
environment, the transferring device is an endpoint on the voice browser platform and is no longer involved
with the call after the single step transfer service is completed.
• Monitor Start: Establishes a device-type monitor on an endpoint. In a voice browser environment, the
monitored device is an endpoint on the voice browser platform.
• Monitor Stop: Terminates an existing monitor.
5.1.2 Events
The following CSTA events are included in the Level 1a Voice Browser Profile:
• Connection Cleared: Indicates that an endpoint has disconnected from a call.
• Delivered: Indicates that a call is alerting an endpoint.
• Established: Indicates that an endpoint has answered or been connected to a call.
• Failed: Indicates that a call cannot be completed (e.g. call has encountered a busy endpoint).
• Transferred: Indicates that an existing call has been transferred from an endpoint (on the voice browser
platform) to another endpoint and has been disconnected from the call. This implies that the transferring
device connection state is Null: no Connection Cleared event is generated for the transferring device after the
Transferred event.
5.2 Level 1b Voice Browser Profile
5.2.1 Services
The following CSTA services are included in the Level 1b Voice Browser Profile:
• Answer call: Answers an alerting call. In a voice browser, the answering device is an endpoint on the platform.
• Clear Connection: Clears a connection. In a voice browser environment, the clearing device is an endpoint on
the voice browser platform.
• Deflect (of a connected call): Moves a connection away from the deflecting device. In a voice browser
environment, the deflecting device is an endpoint on the voice browser platform and is no longer involved with
the call after the Deflect Call service is completed.
• Monitor Start: Establishes a device-type monitor on an endpoint. In a voice browser environment, the
monitored device is an endpoint on the voice browser platform.
• Monitor Stop: Terminates an existing monitor.
ETSI
---------------------- Page: 11 ----------------------
SIST-TP ETSI/TR 102 171 V1.1.1:2005
10 ETSI TR 102 171 V1.1.1 (2003-02)
5.2.2 Events
The following CSTA events are included in the Level 1b Voice Browser Profile:
• Connection Cleared: Indicates that an endpoint has disconnected from a call.
• Delivered: Indicates that a call is alerting an endpoint.
• Diverted: Indicates that the endpoint (on the voice browser platform) has redirected a call to another endpoint
and is no longer involved with the call.
• Established: Indicates that an endpoint has answered or been connected to a call.
• Failed: Indicates that a call cannot be completed (e.g. call has encountered a busy endpoint).
5.3 Level 2 Voice Browser Profile
5.3.1 Services
In this profile, a CSTA implementation is required to provide its capabilities to applications via the ECMA-323 Get
Switching Function Capabilities service. The capabilities include the list of ECMA-323 services and events supported
by a telephony platform and the various types of behaviour options supported by an implementation (the profile(s)
supported, the types of digits that are allowed in the dialling string for an outbound call, etc.). Many of the parameters
are optional and do not
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.