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

Status
Published
Publication Date
28-Feb-2005
Current Stage
6060 - National Implementation/Publication (Adopted Project)
Start Date
01-Mar-2005
Due Date
01-Mar-2005
Completion Date
01-Mar-2005

Buy Standard

Technical report
SIST-TP ETSI/TR 102 171 V1.1.1:2005
English language
35 pages
sale 10% off
Preview
sale 10% off
Preview

e-Library read for
1 day

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.

TIPHON and the TIPHON logo are Trade Marks currently being registered by ETSI for the benefit of its Members.

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.

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

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.

• 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.

• 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.

• 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.