Tsapi
Tsapi
Copyright 1999 Lucent Technologies Inc. All Rights Reserved Printed in U.S.A. Notice
Every effort was made to ensure that the information in this book was complete and accurate at the time of printing. However, information is subject to change.
Trademarks
Novell, NetWare, the N-Design, MacIPX and the NetWare logotype are registered trademarks and NLM is a trademark of Novell, Inc. Microsoft, DOS, Windows, Windows NT, and the Microsoft logotype are registered trademarks of Microsoft Corp. Apple and Macintosh are registered trademarks and QuickTime is a trademark of Apple, Inc. OS/2 and PowerPC are registered trademarks of International Business Machines Corporation. CallVisor, DEFINITY and the Lucent Technologies logotype are registered trademarks of Lucent Technologies.
UnixWare is a registered trademark of The Santa Cruz Operation. All products and company names are trademarks or registered trademarks of their respective holders.
Obtaining Products
To learn more about Lucent Technologies products and to order products, contact Lucent Direct, the direct-market organization of Lucent Technologies Business Communications Systems. Access their web site at www.lucentdirect.com. Or call the following number: customers 1 800 451 2100.
Warranty
Lucent Technologies provides a limited warranty on this product. Refer to the Lucent Technologies Network Software License Agreement provided with your package.
Comments
If you have comments, complete and return the comment card at the end of this document.
Acknowledgment
This document was prepared by BCS Product Publications Group, Lucent Technologies, Middletown, NJ 07748-9972.
Contents
1 Abstract 2 Introduction
0URPOSE
0RODUCT !RCHITECTURE
4ELEPHONY 3ERVICES !PPLICATIONS
4 Control Services
/PENING #LOSING AND !BORTING AN !#3 3TREAM
3ENDING #34! 2EQUESTS AND 2ESPONSES
2ECEIVING %VENTS
43!0) 6ERSION #ONTROL
0RIVATE $ATA 6ERSION #ONTROL
0AGE I
1UERYING FOR !VAILABLE 3ERVICES !0) #ONTROL 3ERVICES !#3 &UNCTIONS AND #ONFIRMATION %VENTS ACS/PEN3TREAM !#3/PEN3TREAM#ONF%VENT ACS#LOSE3TREAM !#3#LOSE3TREAM#ONF%VENT !#35NIVERSAL&AILURE#ONF%VENT ACS!BORT3TREAM ACS'ET%VENT"LOCK ACS'ET%VENT0OLL ACS'ET&ILE 5NIX7ARE AND (0 58 ACS3ET%32 7INDOWS AND .ET7ARE ACS3ET%32 7IN ACS3ET%32 -ACINTOSH ACS3ET%32 /3 ACS%VENT.OTIFY 7INDOWS ACS%VENT.OTIFY 7IN ACS%VENT.OTIFY -ACINTOSH ACS%VENT.OTIFY /3 ACS&LUSH%VENT1UEUE ACS%NUM3ERVER.AMES ACS%NUM3ERVER.AMES -ACINTOSH ACS1UERY!UTH)NFO !#3 5NSOLICITED %VENTS !#35NIVERSAL&AILURE%VENT !#3 $ATA 4YPES !#3 #OMMON $ATA 4YPES !#3 %VENT $ATA 4YPES #34! #ONTROL 3ERVICES AND #ONFIRMATION %VENTS CSTA'ET!0)#APS #34!'ET!0)#APS#ONF%VENT CSTA'ET$EVICE,IST #34!'ET$EVICE,IST#ONF%VENT CSTA1UERY#ALL-ONITOR #34!1UERY#ALL-ONITOR#ONF%VENT #34! %VENT $ATA 4YPES
0AGE II
CSTA!NSWER#ALL #34!!NSWER#ALL#ONF%VENT CSTA#ALL#OMPLETION #34!#ALL#OMPLETION#ONF%VENT CSTA#LEAR#ALL #34!#LEAR#ALL#ONF%VENT CSTA#LEAR#ONNECTION #34!#LEAR#ONNECTION#ONF%VENT CSTA#ONFERENCE#ALL #34!#ONFERENCE#ALL#ONF%VENT CSTA#ONSULTATION#ALL #34!#ONSULTATION#ALL#ONF%VENT CSTA$EFLECT#ALL #34!$EFLECT#ALL#ONF%VENT CSTA'ROUP0ICKUP#ALL #34!'ROUP0ICKUP#ALL#ONF%VENT CSTA(OLD#ALL #34!(OLD#ALL#ONF%VENT CSTA-AKE#ALL #34!-AKE#ALL#ONF%VENT CSTA-AKE0REDICTIVE#ALL #34!-AKE0REDICTIVE#ALL#ONF%VENT CSTA0ICKUP#ALL #34!0ICKUP#ALL#ONF%VENT CSTA2ECONNECT#ALL #34!2ECONNECT#ALL#ONF%VENT CSTA2ETRIEVE#ALL #34!2ETRIEVE#ALL#ONF%VENT CSTA4RANSFER#ALL #34!4RANSFER#ALL#ONF%VENT 4ELEPHONY 3UPPLEMENTARY 3ERVICES CSTA3ET-SG7AITING)ND #34!3ET-WI#ONF%VENT CSTA3ET$O.OT$ISTURB #34!3ET$ND#ONF%VENT CSTA3ET&ORWARDING #34!3ET&WD#ONF%VENT CSTA3ET!GENT3TATE #34!3ET!GENT3TATE#ONF%VENT CSTA1UERY-SG7AITING)ND #34!1UERY-WI#ONF%VENT CSTA1UERY$O.OT$ISTURB #34!1UERY$ND#ONF%VENT
0AGE III
CSTA1UERY&WD #34!1UERY&WD#ONF%VENT CSTA1UERY!GENT3TATE #34!1UERY!GENT3TATE#ONF%VENT CSTA1UERY,AST.UMBER #34!1UERY,AST.UMBER#ONF%VENT CSTA1UERY$EVICE)NFO #34!1UERY$EVICE)NFO#ONF%VENT
0AGE IV
#34!,OGGED/FF%VENT #34!.OT2EADY%VENT #34!2EADY%VENT #34!7ORK.OT2EADY%VENT #34!7ORK2EADY%VENT %VENT 2EPORT $ATA 4YPES 5NSOLICITED #34!-ONITOR&ILTER?T #34!%VENT#AUSE?T
7 Snapshot Services
#ALL 3NAPSHOT 3ERVICES
CSTA3NAPSHOT#ALL2EQ
#34!3NAPSHOT#ALL#ONF%VENT
$EVICE 3NAPSHOT 3ERVICE
CSTA3NAPSHOT$EVICE2EQ
#34!3NAPSHOT$EVICE#ONF%VENT
0AGE V
CSTA%SCAPE3ERVICE #34!%SCAPE3ERVICE#ONF%VENT #34!0RIVATE%VENT #34!0RIVATE3TATUS%VENT %SCAPE 3ERVICE $RIVER3WITCH AS THE #LIENT #34!%SCAPE3ERVICE2EQ CSTA%SCAPE3ERVICE#ONF CSTA3END0RIVATE%VENT -AINTENANCE 3ERVICES $EVICE 3TATUS #34!"ACK)N3ERVICE%VENT #34!/UT/F3ERVICE%VENT 3YSTEM 3TATUS !PPLICATION AS THE #LIENT CSTA3YS3TAT2EQ #34!3YS3TAT2EQ#ONF%VENT CSTA3YS3TAT3TART #34!3YS3TAT3TART#ONF%VENT CSTA3YS3TAT3TOP #34!3YS3TAT3TOP#ONF%VENT CSTA#HANGE3YS3TAT&ILTER #34!#HANGE3YS3TAT&ILTER#ONF%VENT #34!3YS3TAT%VENT CSTA3YS3TAT%NDED%VENT 3YSTEM 3TATUS $RIVER3WITCH AS THE #LIENT #34!3YS3TAT2EQ%VENT CSTA3YS3TAT2EQ#ONF CSTA3YS3TAT%VENT
10 Programming Notes
43!0) ON -ACINTOSH
-ACINTOSH 0ROGRAMMING /VERVIEW
-ACINTOSH $EVELOPMENT 0LATFORMS
43!0) AND 'ESTALT
$YNAMIC ,INKING
X -ACINTOSH $YNAMIC ,INKING
0OWER0# -ACINTOSH $YNAMIC ,INKING
5SING !PPLICATION #ONTROL 3ERVICES
%VENT .OTIFICATION
2ECEIVING %VENTS
"LOCKING 6ERSUS 0OLLING
2ECEIVING %VENTS &ROM !NY 3TREAM
43!0) 2ESOURCE -ANAGEMENT
5SING 43!0) )N 3TANDALONE #ODE
0AGE VI
43!0) ON /3 ACS%VENT.OTIFY ACS3ET%32 43!0) ON 7IN 0ROGRAMMING /VERVIEW $EVELOPMENT 0LATFORMS ,INKING TO THE 43!0) ,IBRARY 5SING !PPLICATION #ONTROL 3ERVICES %VENT .OTIFICATION 2ECEIVING %VENTS "LOCKING 6ERSUS 0OLLING 2ECEIVING %VENTS &ROM !NY 3TREAM 3HARING !#3 3TREAMS "ETWEEN 4HREADS -ESSAGE 4RACE 43!0) ON 5NIX7ARE 0ROGRAMMING /VERVIEW $EVELOPMENT 0LATFORMS ,INKING TO THE 43!0) ,IBRARY 5SING !PPLICATION #ONTROL 3ERVICES %VENT .OTIFICATION 2ECEIVING %VENTS "LOCKING 6ERSUS 0OLLING 2ECEIVING %VENTS &ROM !NY 3TREAM -ESSAGE 4RACE 3AMPLE #ODE 43!0) ON (0 58 0ROGRAMMING /VERVIEW $EVELOPMENT 0LATFORMS ,INKING TO THE 43!0) ,IBRARY 5SING !PPLICATION #ONTROL 3ERVICES %VENT .OTIFICATION 2ECEIVING %VENTS "LOCKING 6ERSUS 0OLLING 2ECEIVING %VENTS &ROM !NY 3TREAM -ESSAGE 4RACE 5SING (IGH -EMORY ON 7INDOWS #LIENTS
0AGE VII
#34!#ALL#OMPLETION#ONF%VENT STRUCTURES #34!#LEAR#ALL#ONF%VENT STRUCTURES #34!#LEAR#ONNECTION#ONF%VENT STRUCTURES #34!#ONFERENCE#ONF%VENT STRUCTURES #34!#ONSULTATION#ALL#ONF%VENT STRUCTURES #34!$EFLECT#ALL#ONF%VENT STRUCTURES #34!'ROUP0ICKUP#ALL#ONF%VENT STRUCTURES #34!(OLD#ALL#ONF%VENT STRUCTURES #34!-AKE#ALL#ONF%VENT STRUCTURES #34!-AKE0REDICITIVE#ALL#ONF%VENT STRUCTURES #34!0ICKUP#ALL#ONF%VENT STRUCTURES #34!2ECONNECT#ALL#ONF%VENT STRUCTURES #34!2ETRIEVE#ALL#ONF%VENT STRUCTURES #34!4RANSFER#ALL#ONF%VENT STRUCTURES #34!5NIVERSAL&AILURE%VENT STRUCTURES 4ELEPHONY 3UPPLEMENTARY #ONFIRMATION %VENTS #34!3ET-SG7AITING#ONF%VENT STRUCTURES #34!3ET$ND#ONF%VENT STRUCTURES #34!3ET&WD#ONF%VENT STRUCTURES #34!3ET!GENT3TATE#ONF%VENT STRUCTURES #34!1UERY-SG7AITING)ND#ONF%VENT STRUCTURES #34!1UERY$O.OT$ISTURB#ONF%VENT STRUCTURES #34!1UERY&WD#ONF%VENT STRUCTURES #34!1UERY!GENT3TATE#ONF%VENT STRUCTURES #34!1UERY,AST.UMBER#ONF%VENT STRUCTURES #34!1UERY$EVICE)NFO#ONF%VENT STRUCTURES 3TATUS 2EPORTING #ONFIRMATION %VENTS CSTA-ONITOR$EVICE STRUCTURES CSTA-ONITOR#ALL STRUCTURES CSTA-ONITOR#ALLS6IA$EVICE STRUCTURES #34!-ONITOR#ONF%VENT STRUCTURES #34!#HANGE-ONITOR&ILTER#ONF%VENT STRUCTURES #34!-ONITOR3TOP#ONF%VENT STRUCTURES #34!-ONITOR3TOP%VENT STRUCTURES #ALL %VENT 2EPORTS #ALL %VENT 2EPORT DATA STRUCTURES #34!#ALL#LEARED%VENT STRUCTURES #34!#ONFERENCED%VENT STRUCTURES #34!#ONNECTION#LEARED%VENT STRUCTURES #34!$ELIVERED%VENT STRUCTURES #34!$IVERTED%VENT STRUCTURES #34!%STABLISHED%VENT STRUCTURES #34!&AILED%VENT STRUCTURES
0AGE VIII
#34!(ELD%VENT STRUCTURES #34!.ETWORK2EACHED%VENT STRUCTURES #34!/RGINATED%VENT STRUCTURES #34!1UEUED%VENT STRUCTURES #34!2ETRIEVED%VENT STRUCTURES #34!3ERVICE)NITIATED%VENT STRUCTURES #34!4RANSFERRED%VENT STRUCTURES &EATURE %VENT 2EPORTS #34!#ALL)NFORMATION%VENT STRUCTURES #34!$O.OT$ISTURB%VENT STRUCTURES #34!&ORWARDING%VENT STRUCTURES !GENT 3TATUS 2EPORT %VENTS #34!,OGGED/N%VENT STRUCTURES #34!,OGGED/FF%VENT STRUCTURES #34!.OT2EADY%VENT STRUCTURES #34!2EADY%VENT STRUCTURES #34!7ORK.OT2EADY%VENT STRUCTURES #34!7ORK2EADY%VENT STRUCTURES 3NAPSHOT 3ERVICES #34!3NAPSHOT$EVICE#ONF%VENT STRUCTURES #34!3NAPSHOT#ALL#ONF%VENT STRUCTURES #34!3NAPSHOT$EVICE#ONF%VENT STRUCTURES #OMPUTING &UNCTION 3ERVICES CSTA2OUTE2EGISTER2EQ STRUCTURES CSTA2OUTE2EGISTER2EQ#ONF%VENT STRUCTURES CSTA2OUTE2EGISTER#ANCEL STRUCTURES CSTA2OUTE2EGISTER#ANCEL#ONF%VENT STRUCTURES CSTA2OUTE2EQUEST%VENT STRUCTURES CSTA2OUTE3ELECT STRUCTURES #34!2E2OUTE2EQUEST%VENT STRUCTURES CSTA2OUTE5SED%VENT STRUCTURES CSTA2OUTE%ND%VENT STRUCTURES CSTA2OUTE%ND STRUCTURES %SCAPE 3ERVICES CSTA%SCAPE3ERVICE STRUCTURES #34!%SCAPE3ERVICE#ONF%VENT STRUCTURES 0RIVATE%VENT STRUCTURES 0RIVATE3TATUS%VENT STRUCTURES CSTA0RIVATE3TATUS%VENT STRUCTURES #34!%SCAPE3ERVICE%VENT STRUCTURES CSTA%SCAPE3ERVICE#ONF STRUCTURES CSTA3END0RIVATE%VENT STRUCTURES -AINTENANCE 3ERVICES
0AGE IX
#34!"ACK)N3ERVICE%VENT STRUCTURES #34!/UT/F3ERVICE%VENT STRUCTURES CSTA3YS3TAT2EQ STRUCTURES #34!3YS3TAT2EQ#ONF%VENT STRUCTURES CSTA3YS3TAT3TART STRUCTURES #34!3YS3TAT3TART#ONF%VENT STRUCTURES CSTA3YS3TAT3TOP STRUCTURES #34!3YS3TAT3TOP#ONF%VENT STRUCTURES CSTA#HANGE3YS3TAT&ILTER STRUCTURES #34!#HANGE3YS3TAT&ILTER#ONF%VENT STRUCTURES #34!3YS3TAT%VENT STRUCTURES #34!3YS3TAT2EQ%VENT STRUCTURES CSTA3YS3TAT2EQ#ONF STRUCTURES CSTA3YS3TAT%VENT3END STRUCTURES #34! #ONTROL 3ERVICES CSTA'ET!0)#APS STRUCTURES #34!'ET!0)#APS#ONF%VENT STRUCTURES CSTA'ET$EVICE,IST STRUCTURES #34!'ET$EVICE,IST#ONF%VENT STRUCTURES #34! %VENT 3TRUCTURES #34! EVENT TYPES #34! 2EQUEST %VENT STRUCTURE #34! %VENT 2EPORT STRUCTURE #34! 5NSOLICITED %VENT STRUCTURE #34! #ONFIRMATION %VENT STRUCTURE #34! %VENT?T STRUCTURE
12 References
List of Figures
4ELEPHONY 3ERVICES !RCHITECTURE -ODEL 3HOWING THE 2ELATIONSHIP "ETWEEN 43!0) %LEMENTS $OMAINS AND 3UB $OMAINS
0AGE X
$OMAINS AND 3UB $OMAINS 3IMPLE #ONNECTION 3TATE -ODEL 3AMPLE #ONNECTION 3TATE -ODEL !LTERNATE #ALL 3ERVICE !NSWER #ALL 3ERVICE #LEAR #ALL 3ERVICE #LEAR #ONNECTION 3ERVICE #ONFERENCE #ALL 3ERVICE #ONSULTATION #ALL 3ERVICE $EFLECT #ALL 3ERVICE 'ROUP 0ICKUP #ALL 3ERVICE (OLD #ALL 3ERVICE -AKE #ALL 3ERVICE -AKE 0REDICTIVE #ALL 3ERVICE 0ICKUP #ALL 3ERVICE 2ECONNECT #ALL 3ERVICE 2ETRIEVE #ALL 3ERVICE 4RANSFER #ALL 3ERVICE #ALL #LEARED %VENT 2EPORT #ONFERENCED %VENT 2EPORT #ONNECTION #LEARED %VENT 2EPORT $ELIVERED %VENT 2EPORT $IVERTED %VENT 2EPORT %STABLISHED %VENT 2EPORT &AILED %VENT 2EPORT (ELD %VENT 2EPORT .ETWORK 2EACHED %VENT 2EPORT /RIGINATED %VENT 2EPORT 1UEUED %VENT 2EPORT 2ETRIEVED %VENT 2EPORT 3ERVICE )NITIATED %VENT 2EPORT 4RANSFERRED %VENT 2EPORT #ALL 3NAPSHOT 3ERVICE $EVICE3NAPSHOT 3ERVICE 2OUTING 0ROCEDURE %SCAPE 3ERVICES -ODEL 3YSTEM 3TATUS -AINTENANCE 3ERVICES
List of Tables
0AGE XI
43!0) 3IMPLE #ALL 3TATES #AUSE #ODE $EFINITIONS #34! %VENT 2EPORT#AUSE 2ELATIONSHIPS 3YSTEM 3TATUS #AUSE #ODES /VERALL 3YSTEM 3TATUS #AUSE #ODES %NUM 3ETTINGS IN -ACINTOSH #OMPILERS 3TRUCTURE !LIGNMENT 3ETTINGS IN -ACINTOSH #OMPILERS
0AGE XII
Chapter
Abstract
Telephony Services integrates server-based telephony control with desktop (client) or server applications on enterprise-wide networks. More specifically, Telephony Services logically integrates the existing telephones currently on the users desktop (analog, ISDN, or those specific to a switch) with telephony-enabled applications running in a client or server. Server and client software create and maintain this logical association; no special telephones, special telephone connectors, PC boards, or other hardware are necessary at a clients desktop. Server hardware terminates the physical control link between the server and the switch (typically a Private Branch Exchange, or PBX) that provides telephony services to the user. The link between Telephony Services and the switch is a Computer Telephony Integration (CTI) link. Software integration gives customers flexibility in deploying CTI applications in environments as varied as the multimedia desktop and call centers. The Telephony Services Application Programming Interface (TSAPI) supports telephony applications for many different environments. Telephony Services and TSAPI support telephony control capabilities in a generic, switch-independent way (e.g., support PBXs from various vendors). The architecture allows the incorporation of vendor-specific switch drivers to deliver Telephony Services across various switch environments. The Telephony Services API is based on international standards for CTI telephony services. Specifically, the European Computer Manufacturers Association (ECMA) CTI standard definition of Computer-Supported Telecommunications Applications (CSTA) is the foundation for TSAPI. The CSTA standard is a technical agreement reached by an open, multi-vendor consortium of major switch and computer vendors. Since CSTA Services and
Protocol definitions are the basis for TSAPI, TSAPI provides a generic, switch-independent API. Various vendors may support a subset of the TSAPI programming interface on their CTI links. Programmers should consult corresponding vendor documentation for application development. The TSAPI programming interface definition incorporates ECMA CSTA telephony call control services, call/device monitoring services, query services, and services. CSTA services logically integrate the two most common pieces of equipment on users desktops: the telephone and personal computer. Security administration for Telephony Services allows administrators to restrict user access to TSAPI features in various ways. For example, an administrator may restrict a user to control and monitoring of the telephone at their desktop. Similarly, an administrator can restrict a user to call control and monitoring of the telephone at any desktop where they log in. Expanded security permissions can increase a users control in support of work group or departmental telephony applications. Administrators can expand user permissions even further to include any telephone or device that it is possible to control on a CTI link. An administrator might assign an unrestricted security permission level to a server application that processes calls before call delivery to user desktops in a call center environment. Of course, an administrator can assign different users different permissions. The Telephony Services API is compatible with the following clients: Microsoft Windows, Microsoft Windows 95, Microsoft Windows NT, Novell NetWare, IBM OS/2, Apple Macintosh, UnixWare, and HP-UX UNIX clients. The Telephony Services API is also compatible with Novell NetWare and Microsoft Windows NT server environments. The Telephony architecture permits future growth into other client and server environments while preserving the TSAPI programming interface. Future releases might extend Telephony Services to include desktop communication services available from non-switch servers. Possible enhancements could provide desktop voice messaging capabilities from a voice messaging server, facsimile capabilities from a fax server, voice response capabilities from a voice response server, etc.
Chapter
Introduction
The native network operating systems (NOS) provide APIs that allow client and server applications to offer users a variety of computing services (for example, file and print services). Telephony Services expand the set of NOS services and bring together the two most common pieces of equipment on an end users desktop, the telephone and personal computer. These two environments are integrated using TSAPI, a switch-independent standardsbased API.
0URPOSE
This document specifies Telephony Services Application Programming Interface (TSAPI) services and C programming language syntax. TSAPI is compatible with Microsoft Windows, Microsoft Windows 95, Microsoft Windows NT, Novell NetWare, IBM OS/2, Apple Macintosh, UnixWare, and HP-UX UNIX clients. TSAPI is also compatible with Novell NetWare and Microsoft Windows NT server environments. The Telephony architecture permits future growth into other client and server environments while preserving the TSAPI programming interface. The reader should be familiar with telephony and the ECMA ComputerSupported Telecommunications Application (CSTA) service, and protocol definitions, i.e., ECMA-179 and ECMA-180. The ECMA CSTA standard is the basis for TSAPI service and parameter definition. Write to ECMA at the address below to obtain copies of these standards.
European Computer Manufacturers Association 114 Rue du Rhne CH-1204 Geneva Switzerland Telephone: 41 22 735 36 34
.OTE
"41" above is the United States International Calling code for Switzerland.
0RODUCT !RCHITECTURE
This NOS environment, along with Telephony Services, supports stand-alone or distributed telephony applications on multiple clients/servers. In the case of a distributed application, client and server platforms contain the appropriate application components. For example, the client platform may embody the user interface and local control of the user's telephone. The server platform may use call information to route calls or look up caller information before the switch delivers calls to users' telephones. The NOS supports the client/server communication and interaction between Telephony Services and the application (client or server based). Since Telephony Services provides a standard API (TSAPI), it facilitates the development and use of telephony- enabled client and server applications. Figure 2-1 illustrates the architecture of Telephony Services. Note that a switch-specific driver terminates the CTI link, thereby making the other Telephony Services modules switch-independent.
Figure 2-1
3WITCH $RIVER
G3EQii 8xgsyx 3HAEesxq 5RADsxu6isgi 6si
5RADsxu@ehei
D3F3hei5eh $
Riviryx
#4) ,INK
Qii
Telephony Services consists of the following hardware and software components (refer to Figure 2-1): u CTI Link a link that supports the Computer Telephony Integration (CTI) protocol that logically integrates the telephone and the client
workstation at users desktops. A CTI link connects link-specific hardware in the server and the switch. It provides sessions between TSAPI applications and the call processing software within the switch. The CTI link is PBX-specific. u u CTI Link Hardware server hardware that terminates the CTI link to a switch. This hardware is PBX-vendor-specific. Switch Driver a set of software modules that supports and terminates the switch-specific CTI link and protocol; maps the CTI protocol to the TSAPI (if required); supports any Administration and Maintenance capabilities of the switch driver (if any); and supports a driver interface to the CTI Link Hardware. The Switch Driver modules are PBX-vendor-specific. Switch Driver Interface a software interface between the Switch Driver and the Telephony Services module that passes messages between applications and the switch driver. Typically, the messages consist of CSTA service requests, responses, and events for TSAPI clients. The messages may also be administration and maintenance requests, responses, and events for an application doing PBX Driver Administration or Maintenance. The Switch Driver Interface is PBXindependent and supports any Telephony Services compliant driver. Telephony Services module a software module that provides communication between multiple telephony-enabled applications and the switch driver. The Telephony Services module routes messages from the Switch Driver to the applications waiting for telephony events and passes the messages received from applications (TSAPI Service Requests) to the Switch Driver. All messages between client applications and a PBX Switch Driver pass across the Switch Driver Interface. The Telephony Services module enforces user restrictions administered in the Telephony Server's security database. This module is switch-independent and supports any Telephony Services-compliant driver. Telephony Server an instance of the Telephony Services module software running on a particular NOS server. Telephony Services API (TSAPI) the CSTA-based, C language definition of the functions (services), data types (parameters and structures), and event messages that telephony-enabled applications use
u u
to access Telephony Services. This document specifies TSAPI. TSAPI is switch-independent and supports any Telephony Services-compliant driver. u Telephony Services Library server-based applications use this software module to access TSAPI functions. This library accepts TSAPI Service Requests and delivers responses and events to server applications. This library can run on the same physical NOS server as Telephony Services or on any NOS server in the network. This module is switch-independent and supports any Telephony Services-compliant driver. Telephony Client Library client-based applications use this software module to access TSAPI functions. This library accepts TSAPI Service Requests and delivers responses and events to client applications. This module is switch-independent and supports any Telephony Services-compliant driver.
In summary, the following software modules and interfaces are switchindependent and support any Telephony Services-compliant driver: 3WITCH $RIVER )NTERFACE 4ELEPHONY 3ERVICES 4ELEPHONY 3ERVICES !0) 43!0) 4ELEPHONY 3ERVICES ,IBRARY 4ELEPHONY #LIENT ,IBRARY
The following software/hardware modules are switch-specific: #4) ,INK #4) ,INK (ARDWARE AND THE 3WITCH $RIVER
CALL SCREENING CALL LOGGING DIRECTORY DIALING FROM PERSONAL CLIENT WORKGROUP SERVER AND CORPORATE DIRECTORIES DIALING AND INTEGRATION WITH OTHER APPLICATIONS AND INTEGRATION OF MESSAGE WAITING INDICATOR FOR EMAIL OR OTHER MESSAGING APPLICATIONS Telephony-enabled applications can meet customer needs in many markets. For example, a customer service application can allow agents to interact with both the telephony" and "caller database" aspects of the job. An easy-to-use graphical user interface (GUI) application can include the caller information on a "screen pop" at agents PCs. Any server on the network (PC, minicomputer, or mainframe) can contain a caller database. The application integrates access to all the different information (voice and data) needed to support an inbound customer service center. Another example of such an application is call routing. Here, the switch requests that the server provide a destination for incoming calls. Applications may also request outbound calls for Outbound Call Management (OCM) applications such as predictive dialing.
Chapter
This chapter describes concepts from the ECMA CSTA standard that are important for TSAPI application programming. The information presented here is summarized from the CSTA specifications. The complete specification is available from ECMA at the address given in Chapter 2.
4ERMINOLOGY
The following sections provide TSAPI definitions and acronyms.
$EFINITIONS
ACD Agent: A telephony user that is a member of an inbound or outbound Automatic Call Distribution (ACD) group. ACD Agents first sign on (Login) to an ACD group and then the ACD will distribute calls to the agent. Active Call: The call (at a station) that is connected (in a talking state) at that station. More specifically, the Connection (see Connection) for the Active Call is in the Connected State (see TSAPI Connections section, Connection State definition).
Alerting Call: A call that is ringing at a Device. More specifically, the Connection (see Connection) for an Alerting Call is in the Alerting State. When the Device is a telephone, the Alerting Call is ringing the telephone instrument. Application: A cooperative process distributed between a Switching Function (see Switching Function) and a Computing Function (see Computing Function). Application Domain: The union of one Switching Sub-Domain (see Switching Sub-Domain) and one Computing Sub-Domain (see Computing Sub-Domain). Basic Call: A Call (see Call) between exactly two Devices (see Device). Call (TSAPI programming object): A Switching Function communications relationship. Typically, a Call is a communications relationship between two or more Devices. Note, however, during call set-up and release, there may be only one Device on the Call. A Call is a TSAPI programming object. Call Identifier: A TSAPI programming handle that identifies a Call. Complex Call: A Call between more than two Devices. Computing Domain: Those computers (and their Objects) accessible from a Switching Function. Where a switch has multiple CTI links to multiple computers, the Computing Domain is the union of all computers connected to the switch. Computing Function: A computer or other resource in a Computing Subdomain. Computing Sub-Domain: Those computers (and their Objects) accessible from the Switching Function using a specific CTI link. Where a switch has multiple CTI links to multiple computers, the Computing Sub-Domain is a subset of the Computing Domain. Where the switch has a single CTI link, the Computing Sub-Domain is equivalent to the Computing Domain.
Connection (TSAPI programming object): A relationship between a Call and a Device. A Connection is in one of a number of states (alerting, held, connected, etc.). Note that when a Call connects (for example) three Devices, there are three Connections for the Call. Each Connection reflects the state of the Call at one of the Devices. Connection Identifier (TSAPI programming handle): A TSAPI programming handle that identifies a Connection. A Call Identifier and a Device Identifier comprise a TSAPI Connection Identifier. Device (TSAPI programming object): An Object that abstracts the interface between a user and the communications signaling in the Switching Function. A Device can be a single endpoint (such as a telephone), or multiple endpoints that form a group (ACD group or trunk group). Device Identifier (TSAPI programming handle): A TSAPI programming handle that identifies a Device. Directory Number: The phone number for a Device. Directory Numbers typically denote telephone station Devices, but ACD groups and other Devices may have Directory Numbers also. Domain: The union of a Switching Domain and a Computing Domain. It is the switching and computing objects that an application can access. Event: A stimulus of interest to an Application that (typically) causes a change in the state of a Device object. Event Report: A message from a Switching Sub-Domain to a Computing Sub-Domain indicating that an Event has occurred. Held Call: A call (at a station) that is held (in a hold state) at that station. More specifically, the Connection (see Connection) for a Held Call is in the Hold State (see TSAPI Connections section, Connection State definition). Interconnection Service Boundary: An abstraction of the boundary between the Switching Domain and the Computing Domain. In practice, CTI links bridge the Interconnection Service Boundary. Object: TSAPI programming objects include Connections, Calls, and Devices. Each has a corresponding programming handle, or identifier.
Party: A telephony user. A Party may be a human, application, or other resource (such as a port on a voice response unit). Service: The benefit provided by an Application to a User. Service Boundary: A specific CTI interface between a Computing Function and a Switching Function. All Service boundaries cross the Interconnection Service Boundary. State: An objects current condition. Specifically, TSAPI Connections have an associated state. Switching Domain: Those switches (and their Objects) accessible from a Computing Function. Where a computer has multiple CTI links to multiple switches, the Switching Domain is the union of all switches connected to the computer. Switching Function: A switch in a Switching Sub-domain. Switching Sub-Domain: Those switches (and their Objects) accessible from a Computing Function using a specific CTI link. Where a computer has multiple CTI links to multiple switches, the Switching SubDomain is a subset of the Switching Domain. Where the computer has a single CTI link, the Switching Sub-Domain is equivalent to the Switching Domain. User: A person, process or piece of equipment that receives direct benefit (e.g. new feature, improved performance) from an Applications Services.
!CRONYMS
ACD: Automatic Call Distributor CSTA: Computer-Supported Telecommunications Applications ID: Identifier ISDN: Integrated Services Digital Network
!RCHITECTURE
This section summarizes the functional architecture underlying ECMA CSTA and TSAPI. CSTA defines the interworking between Computing and Switching Functions in a way that is independent of their physical implementation. This section introduces the concepts of u u u u distribution of Computing and Switching Functions TSAPI Service client/server model TSAPI objects
An Application is a cooperative process distributed between a Switching Function (switch) and a Computing Function (computer). This section describes the interactions between them.
Figure 3-1
!PPLICATION #OMPONENT
43!0) $EFINITIONS
!PPLICATION #OMPONENT
,OCAL REPRESENTATION OF 3ERVICE $EFINITIONS #OMMUNICATIONS #OMPONENT #OMMUNICATIONS 0ROTOCOL #OMMUNICATIONS #OMPONENT
.ETWORKING 3UPPORT
Figure 3-1 shows that distributed Application components use TSAPI definitions to interact with their peers. TSAPI defines the Service descriptions and provides the service interface between the Application functions and the Server providing communications with the switch. TSAPI supports various switches, and as a consequence, some of the TSAPI elements are optional and their use is implementation-dependent.
!0) 3ERVICES
Unless otherwise qualified, the TSAPI definition uses the term Service to refer to the benefit that an application server provides to a client application. TSAPI Services are independent of the specific CTI link connecting the switch with the application server. Since TSAPI is independent of the particular telephone terminal types, the Switching Function must determine how to support a given TSAPI request for its specific telephone types. For example, TSAPI does not specify how to provide the Make Call Service for analog or ISDN telephones. A Switching Function will use its existing service
definitions to provide TSAPI Services on telephones where that service already exists. TSAPI definitions do not embody the specific details of how the Switching Function accomplishes TSAPI Services. The Switching Function does provide an abstraction to the TSAPI Service requester, via Event Reports, of the steps taken to accomplish the Service.
&UNCTIONS
A Domain is the union of a Switching Domain and a Computing Domain. In other words, it is those switching and computing objects that an application can access. Figure 3-2 shows an example of a Domain. A heavy line divides the Domain into Switching and Computing Domains. The Switching Domain consists of Switching Functions S1, S2, and S3. Similarly, the Computing Domain consists of Computing Functions C1, C2, and C3. Each Function has a view of the Domain where it resides. Note that if multiple Functions provide an application with the same view, then the Functions are in the same SubDomain. TSAPI Applications (shown in Figure 3-2 as "Application Domains") are distributed across at least one Switching Sub-Domain and at least one Computing Sub-Domain.
Figure 3-2
#OMPUTING $OMAIN
3WITCHING $OMAIN
Switching Sub-Domain
Computing Sub-Domain
S
Application Domains
C S S C C
Computing Sub-Domain Switching Sub-Domain
(such as groups of devices, pilot numbers, and ACDs). Devices have associated attributes, which allow applications to monitor and control them. TSAPI Device attributes are: 1. Device Type - A Device has one of the following types: u !#$ !N !UTOMATIC #ALL $ISTRIBUTOR !#$ IS A 3WITCHING &UNCTION MECHANISM THAT DISTRIBUTES CALLS TO !#$ AGENTS !N !#$ AS OPPOSED TO !#$ GROUP CONSISTS ONLY OF THE DISTRIBUTION MECHANISM AND NOT THE !#$ AGENTS OR THEIR $EVICES TO WHICH THE MECHANISM CAN DISTRIBUTE CALLS ACD group - An Automatic Call Distributor (ACD) group is the mechanism that distributes calls within a Switching Function as well as the ACD agent Devices to which that mechanism distributes calls. Button - an instance of a call manipulation point at an individual station. Simple analog stations often have no physical buttons but behave as if they have one. Some advanced stations can emulate several analog stations and often represent those stations with several buttons. In some situations it is desirable to identify a given button on a multi-button station. Note that a station with several line appearance buttons could have either the same telephone number or different telephone numbers assigned to those buttons. Button group - two or more instances of a Button at an individual station. Line - a communications interface to one or more stations typically associated with a directory number. In some situations it may be impossible to identify individual stations that share a line (a single directory number). Line group - a set of communications interfaces to one or more stations. Operator - also known as Attendant, a device used to interact with a party to assist in call setup or to provide other telecommunications service. This device is different from other
u u
u u
devices in that it is often involved in setting up other calls, and is usually not part of the call after the call is connected. u u u u Operator group - two or more operator devices used interchangeably or addressed identically. Station - the traditional telephone device. A station is a physical unit of one or more buttons and one or more lines. Station group - two or more stations used interchangeably or addressed identically. Trunk - a device that spans switching sub-domains. In order to monitor and control calls that cross switching sub-domains, it may be desirable to address the point at which the call crosses the boundary. This point is generally a trunk or trunk group. Trunk group - often, many trunks connect to the same place. These trunks are often placed in groups and accessed using a single identifier. In such a configuration the individual trunks are used interchangeably.
2.
Device Class - An application may monitor or control TSAPI Devices in the various Device Classes in different ways. A Device must belong to one, and may belong to more than one, of the following classes: u Data - a device that is used to make digital data calls (either circuit switched or packet switched). This class includes computer interfaces and G4 facsimile machines. Image - a device that is used to make digital data calls involving imaging, or high-speed circuit-switched data in general. This class includes video telephones and CODECs. Voice - a device that is used to make audio calls. This class includes all normal telephones, as well as computer modems and G3 facsimile machines. Other - a type of device not covered by data, image, or voice.
3.
Device Identifier - a TSAPI programming handle for a Device that allows an application to identify uniquely each device at the API. Devices are identified using static and/or dynamic identifiers:
Static Device Identifier - A Static Device Identifier is stable over time. It remains constant and unique over calls. A Static Device Identifier is typically the dialed number for the Device known by both the Computing and Switching Functions. It is sometimes useful for the Switching Function to convert long phone number identifiers to another, usually shorter, static form for subsequent use in service interaction. An example of this would be the transformation of a Public Directory Number to a Private Directory Number. This transformation allows service interactions to be independent of the identification mechanism and allows reduction in the amount of data exchanged. This transformed number is known as a Short Form Static Device Identifier. Some Switching Functions allow the same dialed number to be assigned to Devices of different types. Thus, a TSAPI application may also need to use the Device Type to uniquely address the Device.
Dynamic Device Identifier - A Switching Function may not always make a Static Device Identifier available for every Device on a call. This may occur because a static identifier may not be available (there is no dialed number identifier for the device), or because a dialed number does not unambiguously refer to a single device (i.e. a group identifier). In these cases, the Switching Function assigns a Dynamic Device Identifier as a handle for the Device for the duration of the call. Management of the Dynamic Device Identifier is discussed in a later section, Dynamic Identifier Management.
4.
Device State - a list of the Connection States for all the calls associated with the Device. For information about Connection states see TSAPI Connections later in this chapter.
#ALL TSAPI applications can monitor and control calls (including call establishment and release). In certain operations, such as conference and transfer, one Device in a Call is replaced with another Device or two Calls merged into a single Call. In these situations, the TSAPI Call object is maintained as long as the communications relationship remains across each operation (i.e., the call survives transfer, conference, and forwarding operations). TSAPI Call object attributes are: 1. Call Identifier - a TSAPI programming handle that the Switching Function assigns to each Call. The Call ID may or may not be unique among all calls within a Switching Sub-Domain, but coupled with a Device ID, the pair will form a unique Connection ID within a Switching Sub-Domain. To allow reference to a nascent call, the switch will assign a Call ID before a call is fully established. For example, a switch will assign a Call ID to an incoming call when the called Device is Alerting (the assignment is done before the call is answered). Certain Services merge multiple calls into a single call. Examples of such TSAPI Services are Transfer and Conference. During operations of Services that merge multiple calls, the call identifier may change, but the call continues as a TSAPI object. The management of the call identifier is described in a later section, Dynamic Identifier Management. #ALL STATE A LIST OF THE #ONNECTION STATES FOR ALL THE $EVICES THAT ARE A PART OF THE #ALL &OR SIMPLICITY COMMON CALL STATES FOR TWO PARTY CALLS HAVE BEEN GIVEN A SINGLE DESCRIPTIVE NAME &OR EXAMPLE A TWO PARTY CALL WITH A #ONNECTION 3TATE OF #ONNECTED AT ONE STATION AND A #ONNECTION 3TATE OF !LERTING AT THE OTHER HAS A #ALL 3TATE OF $ELIVERED 4ABLE GIVES THE MAPPING OF DESCRIPTIVE NAMES TO #ONNECTION 3TATE LISTS FOR TWO PARTY CALLS 3IMPLE CALL STATES ARE PROVIDED AS SINGLE VALUES WHEREAS UNCOMMON CALL STATES ARE PROVIDED AS A LIST &OR MORE INFORMATION ON #ONNECTION 3TATES SEE THE FOLLOWING SECTION 43!0) #ONNECTIONS 4HE #ALL 3TATES SECTION OF THIS CHAPTER GIVES FURTHER INFORMATION ABOUT #ALL 3TATES
43!0) #ONNECTIONS A Connection is a relationship between a Call and a Device. A TSAPI application can monitor or control a Connection. For example, TSAPI Services Hold Call, Reconnect Call, and Clear Call all control Connections. Connections are TSAPI programming objects with the following attributes: 1. Connection Identifier is a TSAPI handle that is made up of a Call Identifier and Device Identifier. For a call, there are as many Connection identifiers as there are associated devices. Similarly, for a device there are as many Connection identifiers as there are associated calls. The Connection Identifier is unique within a Switching Sub-Domain and within a single TSAPI server. A TSAPI application cannot use a Connection Identifier until it has received the identifier from the Switching Function. Connection State - is the state of a call at a Device. The Connection state always refers to a single Call/Device relationship. Snapshot Services report Connection States for Calls and Devices. Monitors report Events, which are changes in Connection States for the monitored entity. Figure 3-3 shows a sample Connection state model. Note that since TSAPI is switch-independent, and since switch features vary from switch to switch (and therefore interact differently on different switches), there is no definitive TSAPI Connection State model to which all switches comply.
2.
Figure 3-3
Null Initiated
Alerting
Queued
Failed
Connected
Held
The transitions between states, shown by arrows, form the basis for providing Event Reports. The TSAPI Connection states are defined as follows. u u Null - the state where there is no relationship between the call and device. Initiated - the state where the device is requesting service. Usually this results in the creation of a call. Often this is thought of as the "dialing" state. Alerting - the state where a device is alerting (ringing). Connected - the state where a device can communicate with other Devices on a call (cannot be a held call).
u u
u u
Held - the call is "on hold" at the Device. Queued - the state where normal state progression has been stalled. For example, a call being processed by an ACD that is waiting for an ACD agent to become available is "queued." Failed - the state where normal state progression has been aborted. A "Failed" state can result because of failure to connect to the calling (originator) device, failure to connect the called (destination) device, failure to create the call, and other reasons.
#ALL 3TATUS %VENT 2EPORTS The Switching Sub-Domain model is an abstract view of call states and events. This abstract view is probably more detailed than most applications require, but it introduces a precise language for describing Event Reports, Call States, and Service functional descriptions. Connection state changes correspond to telecommunications signaling at a Device. ISDN specifications model network access as a distributed state machine. ECMA CSTA borrows from this ISDN model. One part of this access state machine resides in the Device. There is another similar distributed access state machine which resides across the ISDN network at the egress device. Thus, a call can be modeled as a collection of Connection state machines. Network signaling causes changes in the state machines across the network. When signaling occurs, a state change occurs at the affected Connection. Many simple Connection events are of interest to applications. Certain telecommunications operations involve changes to many Connections. TSAPI reports these compound events (such as Transfer, Conference and Clear Call) in a single Event Report. Each TSAPI Event Report defines which Connections have changed state. 43!0) #ALL 3TATES A Call State is defined as the list of Connection states for all the Devices involved in the call. This list is also called the Compound Call State. Listing the Connection states can describe any possible call state. However, most calls are often in a small number of widely recognized states.
TSAPI defines those states as the Simple Call States shown in Table 3-1. Note that Simple Call States can differ by the order of the Connection state list. Alerting-Connected is not equal to Connected-Alerting. The first is the Simple Call State "Received" and the second is "Delivered".
Null can be a known Connection state, so for a "newly created" call it is possible to have a Call state with only one non-Null Connection (see Table 3-1).
.OTE
For calls with two Connections, Table 3-1 summarizes the Simple Call States assigned to the combinations of Connection States. If there is no entry in Table 3-1 for the combination of Connection states, then TSAPI provides the list. For calls with more than two non-Null Connection states, the Call State is a compound call state. TSAPI (at times) simplifies the compound call state by relating it to a particular device. The Connection State related to a particular device in this way is called the Local Connection State. Other Connection States are not differentiated from one another. A three-party conference call that is on hold at a given Device and connected to the other two devices has a Local Connection State of "Held" at that given Device.
Table 3-1
The Switching Function provides Connection Identifiers when either a new Call or Device Identifier is needed. When a call is made, the switch provides a Connection Identifier. The switch then provides the Connection ID in any following Event Reports that pertain to that call. Similarly, the switch provides Connection IDs containing a Device ID for a device involved in a call. The switch updates identifiers when needed. If a Conference or Transfer (merging two calls) changes a Call ID, then the switch provides Event Reports containing Connection IDs that link the old call identifier to the new call identifier. Similarly, if a Dynamic Device Identifier is changed, the switch provides new Connection Identifiers for the devices in the call. Both Service Acknowledgments and Event Reports may contain information necessary to manage identifiers. Identifiers cease to be valid when their context vanishes. If a call ends, its call identifier is no longer valid. Similarly, if a device is removed from service or from a call, its dynamic device identifier becomes invalid. Many Event Reports and Services specify when a Connection Identifier has lost or will lose its context. Identifiers can be reused. Once an identifier has lost its context it may be reused to identify another object. Most implementations will not reuse identifiers immediately. Call and Device Identifiers can be, but are not guaranteed to be, globally unique. The TSAPI server ensures that the combination of Call and Device Identifier is globally unique within a Switching Sub-Domain. To accomplish this, compliant PBX drivers ensure that either the call identifier or the device identifier (or both) is globally unique. In many cases, the Connection Identifier requires the use of both the Call and Device Identifiers to uniquely refer to Connections in a call.
Chapter
Control Services
TSAPI provides two kinds of control services: API1 Control Services, or ACS, and CSTA Control Services. Applications use ACS to manage their interactions with Telephony Services. While most applications will use ACS to access CSTA services, applications that administer PBX drivers use ACS to interface to the PBX Driver. ACS functions manage the interface, while CSTA functions (chapters 5 through 9) provide the CSTA services. Applications use ACS to: u u u u u Open an ACS stream for CSTA services. Open an ACS stream to do PBX Driver administration. Close an ACS stream. Block or poll for events. Initialize an operating system event notification facility. On a Windows, Windows NT, OS/2, Macintosh, or NetWare client, this initializes an Event Service Routine (ESR). Get a list of available advertised services (PBX Driver Services and PBX Driver administration services). Select the TSAPI version for use on the stream. Select a private data version for use on the stream
u u u
Applications use the CSTA Control Services, discussed in the later sections of this chapter, to: u u u Query for the CSTA Services available on an open ACS Stream Query for a list of Devices that CSTA Services can monitor, control or route for on an open ACS Stream Query to determine if CSTA Call/Call Monitoring is available on an open ACS Stream.
ACS/PEN3TREAM IS A REQUEST TO ESTABLISH AN !#3 3TREAM WITH A 4ELEPHONY 3ERVER 4HE ACS/PEN3TREAM FUNCTION RETURNS AN ACS(ANDLE TO THE APPLICATION 4HE APPLICATION WILL USE THIS ACS(ANDLE TO ACCESS THE !#3 3TREAM MAKE REQUESTS AND RECEIVE EVENTS 4HE APPLICATION RECEIVES AN !#3/PEN3TREAM#ONF%VENT EVENT MESSAGE THAT CORRESPONDS TO THE ACS/PEN3TREAM REQUEST 4HE APPLICATION MONITORS THE ACS(ANDLE RETURNED FROM THE ACS/PEN3TREAM REQUEST FOR THE CORRESPONDING !#3/PEN3TREAM#ONF%VENT 4HE APPLICATION SHOULD NOT REQUEST SERVICES ON THE !#3 3TREAM UNTIL IT RECEIVES THIS CORRESPONDING !#3/PEN3TREAM#ONF%VENT After an application successfully receives the ACSOpenStreamConfEvent, it may request CSTA Services such as Device (telephone) monitoring.
The application should always check the ACSOpenStreamConfEvent to ensure that the ACS Stream has been successfully established before making any CSTA Service requests.
An application is responsible for releasing its ACS Stream(s). To release the system resources associated with an ACS Stream, the application may either close the stream or abort the stream. Failing to release the resources may corrupt the client system, resulting in client failure.
An acsHandle is a local process identifier and should not be shared across processes.
!FTER THE APPLICATION CALLS ACS#LOSE3TREAM TO CLOSE AN !#3 3TREAM THE APPLICATION MAY NOT REQUEST ANY FURTHER SERVICES ON THAT 3TREAM 4HE
ACS#LOSE3TREAM FUNCTION IS A NON
BLOCKING CALL 4HE APPLICATION PASSES AN ACS(ANDLE INDICATING WHICH !#3 3TREAM TO CLOSE !LTHOUGH THE APPLICATION CANNOT MAKE REQUESTS ON THAT 3TREAM THE ACS(ANDLE REMAINS VALID UNTIL THE APPLICATION RECEIVES THE CORRESPONDING !#3#LOSE3TREAM#ONF%VENT
After an application calls acsCloseStream( ), it may still receive events on the acsHandle for that ACS Stream. The application must continue to poll until it receives the ACSCloseStreamConfEvent so that the system releases all stream resources. The stream remains open until the application receives the ACSCloseStreamConfEvent.
4HE APPLICATION RECEIVES AN !#3#LOSE3TREAM#ONF%VENT EVENT MESSAGE THAT CORRESPONDS TO THE ACS#LOSE3TREAM REQUEST !N !#3#LOSE3TREAM#ONF%VENT INDICATES THAT THE ACS(ANDLE FOR THE 3TREAM IS NO LONGER VALID AND THAT THE SYSTEM HAS FREED ALL SYSTEM RESOURCES ASSOCIATED WITH THE !#3 3TREAM 4HE LAST EVENT THE APPLICATION WILL RECEIVE ON THE !#3 3TREAM IS THE !#3#LOSE3TREAM#ONF%VENT #LOSING AN !#3 3TREAM TERMINATES ANY #34! CALL CONTROL SESSIONS ON THAT 3TREAM 4ERMINATING #34! CALL CONTROL SESSIONS IN THIS WAY DOES NOT AFFECT THE SWITCH PROCESSING OF CONTROLLED CALLS 4HE APPLICATION CAN NO LONGER CONTROL THEM ON THIS 3TREAM
!N APPLICATION MAY USE ACS!BORT3TREAM TO UNILATERALLY AND SYNCHRONOUSLY TERMINATE AN !#3 3TREAM WHEN u u it does not require confirmation of successful Stream closure, and it does not need to receive any events that may be queued for it on that Stream.
4HE APPLICATION PASSES AN ACS(ANDLE INDICATING WHICH !#3 3TREAM TO ABORT 4HE ACS!BORT3TREAM FUNCTION IS NON BLOCKING AND RETURNS TO THE APPLICATION IMMEDIATELY 7HEN ACS!BORT3TREAM RETURNS THE ACS(ANDLE IS INVALID UNLIKE ACS#LOSE3TREAM 4HE SYSTEM FREES ALL RESOURCES ASSOCIATED WITH THE ABORTED !#3 3TREAM INCLUDING ANY EVENTS QUEUED ON THIS 3TREAM !BORTING AN !#3 3TREAM TERMINATES ANY #34!
CALL CONTROL ON THAT 3TREAM !BORTING #34! CALL CONTROL IN THIS WAY DOES NOT AFFECT THE SWITCH PROCESSING OF CONTROLLED CALLS )T TERMINATES THE APPLICATION S CONTROL OF THEM ON THIS 3TREAM 4HERE IS NO CONFIRMATION EVENT FOR AN ACS!BORT3TREAM CALL
Once an application specifies this invokeID type for an ACS stream, the application cannot change invokeID type for the stream.
In general, having the TSAPI library generate unique invokeIDs simplifies application design. However, when service requests correspond to entries in a data structure, it may simplify application design to use indexes into the data structure as invokeIDs. Application-generated invokeIDs might also point to window handles. Application-generated invokeIDs may take on any 32-bit value.
Receiving Events
When an application successfully opens an ACS Stream, the TSAPI Library queues the ACSOpenStreamConfEvent event message for the application. To receive this event, and subsequent event messages, the application must use one of two event reception methods: u a blocking mode, which blocks the application from executing until an event becomes available. Blocking is appropriate in threaded or preemptive operating system environments only (e.g., Windows NT, Novell, etc.). a non-blocking mode that returns control to the application regardless of whether an event is available.
Blocking on event reports may be appropriate for applications that monitor a Device and only require processing cycles when an event occurs. However, there may be operating system specific implications. For example, if a Windows application blocks waiting for CSTA events, then it cannot process events from its Windows event queue.
Regardless of the mode that an application uses to receive events, it may elect to receive an event either from a designated ACS Stream (that it opened) or from any ACS Stream (that it has opened). TSAPI gives the application the events in chronological order from the selected Stream(s). Thus, if the application receives events from all ACS Streams, then it receives the events in chronological order from all the Streams. Blocking Event Reception
1
1.
The application calls acsGetEventBlock( ) acsGetEventBlock( ) function gets the next event or blocks if no events are available. The application passes an acsHandle parameter containing the handle of an open ACS Stream or a zero value (indicating that it desires events from any open ACS Stream).
2.
4-6
4HE APPLICATION CALLS ACS'ET%VENT0OLL !PPLICATIONS USE ACS'ET%VENT0OLL TO POLL FOR EVENTS AT THEIR OWN PACE !N APPLICATION CALLS ACS'ET%VENT0OLL ANY TIME IT WANTS TO PROCESS AN EVENT 4HE APPLICATION PASSES AN ACS(ANDLE CONTAINING THE HANDLE OF AN OPEN !#3 3TREAM OR A ZERO VALUE INDICATING THAT IT DESIRES EVENTS FROM ANY OPEN !#3 3TREAM )N ADDITION THE NUMEVENTS PARAMETER TELLS THE APPLICATION HOW MANY EVENTS ARE ON THE QUEUE
ACS'ET%VENT0OLL A
RETURNS IMMEDIATELY
B
)F ONE OR MORE EVENTS ARE AVAILABLE ON THE !#3 3TREAM ACS'ET%VENT0OLL RETURNS THE NEXT EVENT FROM THE SPECIFIED 3TREAM OR FROM ANY 3TREAM IF THE APPLICATION SELECTED THAT OPTION 7HEN THE EVENT QUEUE IS EMPTY THE FUNCTION RETURNS IMMEDIATELY WITH A NO MESSAGE INDICATION
The application must receive events (using either the blocking or polling method) frequently enough so that the event queue does not overflow . TSAPI will stop acknowledging messages from the Telephony Server when the queue fills up, ultimately resulting in a loss of the stream. When a message is available, it does not matter which function an application uses to retrieve it.
In some operating system environments (Windows, Windows NT, OS/2, Macintosh, NetWare), an application can use an Event Service Routine (ESR) to receive asynchronous notification of arriving events. The ESR mechanism notifies the application of arriving events. It does not remove the events from the event queue. The application must use acsGetEventBlock( ), acsGetEventPoll( ), or eventNotify( ) to receive the message. The application can use an ESR to trigger a specific action when an event arrives in the event queue (i.e. post a Windows message for the application, or signal a semaphore in the NetWare environment). See the manual page for acsSetESR( ) for more information about ESR use in specific operating system environments.
TSAPI makes one other event handling function available to applications: acsFlushEventQueue( ). An application uses acsFlushEventQueue( ) to flush all events from an ACS Stream event queue (or, if the application selects, from all ACS Stream event queues).
A set of function calls and events comprise a TSAPI version. New TSAPI functions are given new names, and new events are assigned new event type values. It is the programmers responsibility to ensure that the program uses only TSAPI functions from the appropriate version set. Releases 2.10 and 2.21 of Telephony Services provide two TSAPI versions: TS1 and TS2. Versions also exist on a stream-type basis. In Releases 2.10 and 2.21, while there are two TSAPI stream versions (TS1 and TS2), there is a single OAM stream version, version TS1.
The Private Data in the ACSOpenStreamConfEvent indicates what vendor and version Private Data the PBX driver will provide on the stream. In the Private Data, the vendor field will contain the vendor name and the data field in the Private_Data_t structure contains a one byte discriminator PRIVATE_DATA_ENCODING followed by an ASCII string identifying the version of the private data that will be supplied. An application that does not use Private Data should not pass any private data to the acsOpenStream( ) request. Drivers that do private data version negotiation interpret the lack of private data in the open stream request to mean that the application does not want private data. They will then refrain from sending private data on that stream, thereby saving the LAN bandwidth that the private data would otherwise consume. Applications that do not send any private data in acsOpenStream( ) must be prepared to receive private data since they may request service from a PBX Driver that does not do private data version negotiation.
ACS/PEN3TREAM
An application uses acsOpenStream( ) to open an ACS stream to an advertised service. An application needs an ACS stream to access other ACS Control Services or CSTA Services. Thus, an application must call acsOpenStream( ) before requesting any other ACS or CSTA service. acsOpenStream( ) immediately returns an acsHandle; a confirmation event arrives later. 3YNTAX sxgvhi(egr0 sxgvhi(ger0
Pi5yhicegGixQiew 35Q@exhvic eg@exhvi P7RSPF AxyuiA6Ric sxyuiA6Ri AFHSR AxyuiA6c sxyuiA6 AFHSR QiewRic iewRi AFHSR QiiA6c iiA6 AFHSR DyqsxA6c vyqsxA6 AFHSR Hehc eh AFHSR 3Fewic evsgesyxFewi AFHSR Diivc egDiivPi AFHSR Tisyxc esTi AFHSR xsqxihry ixhIQsi AFHSR xsqxihry ixh7e4p AFHSR xsqxihry igIQsi AFHSR xsqxihry ig7e4p AFHSR Hsei6eec sei6ee' AFHSR
Parameters acsHandle ACS/PEN3TREAM RETURNS THIS VALUE THAT IDENTIFIES THE !#3 3TREAM THAT WAS OPENED 43!0) SETS THIS VALUE SO THAT IT IS UNIQUE TO THE !#3 3TREAM /NCE ACS/PEN3TREAM IS SUCCESSFUL THE APPLICATION MUST USE THIS ACS(ANDLE IN ALL OTHER FUNCTION CALLS TO 43!0) ON THIS STREAM )F ACS/PEN3TREAM IS SUCCESSFUL 43!0) GUARANTEES THAT THE APPLICATION HAS A VALID ACS(ANDLE )F ACS/PEN3TREAM IS NOT SUCCESSFUL THEN THE FUNCTION RETURN CODE GIVES THE CAUSE OF THE FAILURE
invokeIDType 4HE APPLICATION SETS THE TYPE OF INVOKE IDENTIFIERS USED ON THE STREAM BEING OPENED 4HE POSSIBLE TYPES ARE !PPLICATION 'ENERATED INVOKE)$S !00?'%.?)$ OR ,IBRARY GENERATED INVOKE)$S ,)"?'%.?)$ 7HEN !00?'%.?)$ IS SELECTED THEN THE APPLICATION WILL PROVIDE AN INVOKE)$ WITH EVERY 43!0) FUNCTION CALL THAT REQUIRES AN INVOKE)$ 43!0) WILL RETURN THE SUPPLIED INVOKE)$ VALUE TO THE APPLICATION IN THE CONFIRMATION EVENT FOR THE SERVICE REQUEST !PPLICATION GENERATED INVOKE)$ VALUES CAN BE ANY BIT VALUE 7HEN ,)"?'%.?)$ IS SELECTED THE !#3 ,IBRARY WILL AUTOMATICALLY GENERATE AN INVOKE)$ AND WILL RETURN ITS VALUE UPON SUCCESSFUL COMPLETION OF THE FUNCTION CALL 4HE VALUE WILL BE THE RETURN FROM THE FUNCTION CALL 2ET#ODE?T ,IBRARY GENERATED INVOKE )$S ARE ALWAYS IN THE RANGE TO invokeID 4HE APPLICATION SUPPLIES THIS HANDLE FOR MATCHING THE ACS/PEN3TREAM SERVICE REQUEST WITH ITS CONFIRMATION EVENT !N APPLICATION SUPPLIES A VALUE FOR INVOKE)$ ONLY WHEN THE INVOKE)$TYPE PARAMETER IS SET TO !00?'%.?)$ 43!0) IGNORES THE INVOKE)$ PARAMETER WHEN INVOKE)$TYPE PARAMETER IS SET TO ,)"?'%.?)$ streamType 4HE APPLICATION PROVIDES THE TYPE OF STREAM IN STREAM4YPE 4HE POSSIBLE VALUES ARE 34?#34! REQUESTS A #34! CALL CONTROL STREAM 4HIS STREAM CAN BE USED FOR 43!0) SERVICE REQUESTS AND RESPONSES WHICH BEGIN WITH THE PREFIX CSTA OR #34! 34?/!- REQUESTS AN /!- STREAM serverID 4HE APPLICATION PROVIDES A NULL TERMINATED STRING OF MAXIMUM SIZE !#3?-!8?3%26)#%)$ 4HIS STRING CONTAINS THE NAME OF AN ADVERTISED SERVICE IN !3#)) FORMAT 4HE APPLICATION MUST ENSURE THAT THE SERVER)$ PROVIDES SERVICES OF THE TYPE GIVEN IN THE STREAM4YPE PARAMETER
loginID 4HE APPLICATION PROVIDES A POINTER TO A NULL TERMINATED STRING OF MAXIMUM SIZE !#3?-!8?,/').)$ 4HIS STRING CONTAINS THE LOGIN )$ OF THE USER REQUESTING ACCESS TO THE ADVERTISED SERVICE GIVEN IN THE SERVICE)$ PARAMETER passwd 4HE APPLICATION PROVIDES A POINTER TO A NULL TERMINATED STRING OF MAXIMUM SIZE !#3?-!8?0!337/2$ 4HIS STRING CONTAINS THE PASSWORD OF THE USER GIVEN LOGIN)$ applicationName 4HE APPLICATION PROVIDES A POINTER TO A NULL TERMINATED STRING OF MAXIMUM SIZE !#3?-!8?!00.!-% 4HIS STRING CONTAINS AN APPLICATION NAME 4HE SYSTEM USES THE APPLICATION NAME ON CERTAIN ADMINISTRATION AND MAINTENANCE STATUS DISPLAYS acsLevelReq 4HIS VERSION OF 43!0) IGNORES THIS PARAMETER apiVer !N APPLICATION GIVES THE VERSION OF 43!0) THAT IT DESIRES IN API6ER 4HIS PARAMETER CONTAINS A STRING BEGINNING WITH THE CHARACTERS 43 FOLLOWED BY AN !3#)) ENCODING OF ONE OR MORE VERSION NUMBERS !N APPLICATION MAY USE THE HYPHEN CHARACTER TO SPECIFY A RANGE OF VERSIONS AND THE COLON CHARACTER TO SEPARATE A LIST OF VERSIONS &OR EXAMPLE THE STRING 43 SPECIFIES THAT THE APPLICATION IS WILLING TO ACCEPT 43!0) VERSIONS OR 3EE THE PRECEDING 43!0) 6ERSION #ONTROL SECTION FOR MORE INFORMATION ABOUT VERSION NEGOTIATION 2ELEASES AND OF 4ELEPHONY 3ERVICES SUPPORT VERSIONS 43 AND 43 ON #34! STREAMS AND VERSION 43 ON /!STREAMS 2ELEASE APPLICATIONS SHOULD SUPPLY THE 6ERSION VALUE FOR #34!?!0)?6%23)/. IN THE 6ERSION CSTAH HEADER FILE IN API6ER
sendQSize 4HE APPLICATION SPECIFIES IN SEND13IZE THE MAXIMUM NUMBER OF OUTGOING MESSAGES THE 43!0) #LIENT ,IBRARY WILL QUEUE BEFORE RETURNING !#3%22?15%5%?&5,, )F THE APPLICATION SUPPLIES A ZERO VALUE THEN A DEFAULT QUEUE SIZE WILL BE USED 4HE 5NIX7ARE 43!0) CLIENT LIBRARY DOES NOT USE THE SEND13IZE PARAMETER sendExtraBufs 4HE APPLICATION SPECIFIES THE NUMBER OF ADDITIONAL PACKET BUFFERS 43!0) ALLOCATES FOR THE SEND QUEUE )F SEND%XTRA"UFS IS SET TO ZERO THE NUMBER OF BUFFERS IS EQUAL TO THE QUEUE SIZE IE ONE BUFFER PER MESSAGE )F MESSAGES WILL EXCEED THE SIZE OF A NETWORK PACKET AS IN THE CASE WHERE PRIVATE DATA IS USED EXTENSIVELY OR THE APPLICATION FREQUENTLY SEES THE !#3%22?./"5&&%23 ERROR THEN THE APPLICATION DOES NOT USE SEND%XTRA"UF TO ALLOCATE ENOUGH BUFFERS 4HE 5NIX7ARE 43!0) CLIENT LIBRARY DOES NOT USE THE SEND%XTRA"UFS PARAMETER recvQSize 4HE APPLICATION SPECIFIES THE MAXIMUM NUMBER OF INCOMING MESSAGES THE 43!0) #LIENT ,IBRARY QUEUES BEFORE IT CEASES ACKNOWLEDGMENT TO THE 4ELEPHONY 3ERVER 43!0) USES A DEFAULT QUEUE SIZE WHEN RECV13IZE IS SET TO ZERO 4HE 5NIX7ARE 43!0) CLIENT LIBRARY DOES NOT USE THE RECV13IZE PARAMETER recvExtraBufs 4HE APPLICATION SPECIFIES THE NUMBER OF ADDITIONAL PACKET BUFFERS THAT 43!0) ALLOCATES FOR THE RECEIVE QUEUE )F RECV%XTRA"UFS IS SET TO ZERO THE NUMBER OF BUFFERS IS EQUAL TO THE QUEUE SIZE IE ONE BUFFER PER MESSAGE )F MESSAGES WILL EXCEED THE SIZE OF A NETWORK PACKET AS IN THE CASE WHERE PRIVATE DATA IS USED EXTENSIVELY OR THE APPLICATION FREQUENTLY SEES !#3%22?342%!-?&!),%$ THEN THE APPLICATION DOES NOT USE RECV%XTRA"UFS TO ALLOCATE ENOUGH BUFFERS 4HE 5NIX7ARE 43!0) CLIENT LIBRARY DOES NOT USE THE RECV%XTRA"UFS PARAMETER
privateData 4HE APPLICATION MAY PROVIDE A POINTER TO A DATA STRUCTURE THAT CONTAINS ANY IMPLEMENTATION SPECIFIC 0"8 $RIVER SPECIFIC INITIALIZATION 43!0) DOES NOT INTERPRET THE DATA IN THIS STRUCTURE 3OME 0"8 $RIVERS MAY USE 0RIVATE $ATA AS AN ESCAPE MECHANISM TO PROVIDE IMPLEMENTATION SPECIFIC INFORMATION BETWEEN THE APPLICATION AND THE 0"8 $RIVER !N APPLICATION GIVES A .5,, POINTER WHEN 0RIVATE $ATA IS NOT PRESENT )N AN OPEN STREAM REQUEST AN APPLICATION MAY USE THE PRIVATE DATA TO NEGOTIATE A SPECIFIC VERSION S OF A SPECIFIC VENDOR S PRIVATE DATA ON THE STREAM 4O INDICATE THAT THE PRIVATE DATA IS TO NEGOTIATE THE VERSION THE APPLICATION SETS THE VENDOR FIELD IN THE 0RIVATE$ATA STRUCTURE TO THE NULL TERMINATED STRING 6%23)/. 4HE APPLICATION SPECIFIES THE ACCEPTABLE VENDOR S AND VERSION S IN THE DATA FIELD OF THE PRIVATE DATA 4HE DATA FIELD CONTAINS A ONE BYTE MANIFEST CONSTANT 02)6!4%?$!4!?%.#/$).' FOLLOWED BY A NULL TERMINATED !3#)) STRING CONTAINING A LIST OF VENDORS AND VERSIONS 4HE STRING CONTAINS VENDORVERSION PAIRS WITH THE CHARACTER SEPARATING THE VENDOR AND VERSION 4HE CHARACTER ALSO DELIMITS THE VENDORVERSION PAIRS 4HE AND CHARACTERS ARE USED AS THEY ARE FOR 43!0) VERSION NEGOTIATION &OR EXAMPLE THE STRING 6%.$/2! 6%.$/2" INDICATES THAT THE APPLICATION REQUESTS 6%.$/2! PRIVATE DATA VERSIONS OR OR 6%.$/2" PRIVATE DATA VERSIONS OR .O PRIVATE DATA ON AN OPEN STREAM REQUEST IS A REQUEST TO THE 0"8 DRIVER NOT TO SEND ANY PRIVATE DATA /NLY THOSE 0"8 DRIVERS THAT SUPPORT PRIVATE DATA VERSION NEGOTIATION WILL HONOR THIS REQUEST 3EE THE PRECEDING 0RIVATE $ATA 6ERSION #ONTROL SECTION FOR INFORMATION ON PRIVATE DATA VERSION NEGOTIATION Return Values ACS/PEN3TREAM RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS
Library-generated invokeIDs - if the function call completes successfully it will return a positive value, i.e. the invoke identifier. If the call fails a negative error (<0) condition will be returned. For library-generated identifiers the return will never be zero (0). Application-generated invokeIDs - if the function call completes successfully it will return a zero (0) value. If the call fails a negative error (<0) condition will be returned. For application-generated identifiers the return will never be positive (>0). !N APPLICATION SHOULD ALWAYS CHECK THE !#3/PEN3TREAM#ONF%VENT MESSAGE TO ENSURE THAT THE 4ELEPHONY 3ERVER HAS ACKNOWLEDGED THE ACS/PEN3TREAM REQUEST ACS/PEN3TREAM RETURNS THE NEGATIVE ERROR CONDITIONS BELOW
!#3%22?!0)6%2$%.)%$ 4HE REQUESTED !0) VERSION API6ER IS INVALID OR THE CLIENT LIBRARY DOES NOT SUPPORT IT !#3%22?"!$0!2!-%4%2 /NE OR MORE OF THE PARAMETERS IS INVALID !#3%22?./$2)6%2 .O 43!0) #LIENT ,IBRARY $RIVER WAS FOUND OR INSTALLED ON THE SYSTEM !#3%22?./3%26%2 4HE ADVERTISED SERVICE SERVER)$ IS NOT AVAILABLE IN THE NETWORK !#3%22?./2%3/52#% 4HERE ARE INSUFFICIENT RESOURCES TO OPEN A !#3 3TREAM
Comments !N APPLICATION USES ACS/PEN3TREAM TO OPEN A NETWORK OR LOCAL COMMUNICATION CHANNEL !#3 3TREAM WITH AN ADVERTISED SERVICE 0"8 $RIVER 4HE STREAM WILL ESTABLISH AN !#3 CLIENTSERVER SESSION BETWEEN THE APPLICATION AND THE SERVER 4HE APPLICATION CAN USE THE !#3 STREAM TO ACCESS ALL THE SERVER PROVIDED SERVICES EG FOR A TYPICAL 0"8 $RIVER THIS WOULD INCLUDE CSTA-AKE#ALL CSTA4RANSFER#ALL ETC ACS/PEN3TREAM RETURNS AN ACS(ANDLE FOR THE STREAM 4HE APPLICATION USES THE ACS(ANDLE TO WAIT FOR A !#3/PEN3TREAM#ONF%VENT 4HE APPLICATION USES THE !#3/PEN3TREAM#ONF%VENT TO DETERMINE WHETHER THE STREAM OPENED SUCCESSFULLY 4HE APPLICATION THEN USES THE ACS(ANDLE IN ANY FURTHER REQUESTS THAT IT SENDS OVER THE STREAM !N APPLICATION SHOULD ONLY OPEN ONE STREAM FOR ANY ADVERTISED SERVICE 7HEN AN APPLICATION CALLS ACS/PEN3TREAM THE CALL MAY BLOCK FOR UP TO TEN SECONDS WHILE 43!0) OBTAINS NAMES AND ADDRESSES FROM THE NETWORK .AME 3ERVER !PPLICATIONS SHOULD NOT OPEN MULTIPLE STREAMS TO THE SAME ADVERTISED SERVICE SINCE THIS RESULTS IN INEFFICIENT USE OF SYSTEM RESOURCES
.OTE
The UnixWare TSAPI client library does not use the sendQsize, sendExtraBufs, recvQsize, or recvExtraBufs parameters.
Application Notes ! 4ELEPHONY 3ERVER ADVERTISES SERVICES FOR EACH REGISTERED 0"8 $RIVER ! 0"8 $RIVER MAY SUPPORT A SINGLE #4) LINK OR MULTIPLE #4) LINKS %ACH ADVERTISED SERVICE NAME IS UNIQUE ON THE NETWORK 43!0) GUARANTEES THAT THE !#3/PEN3TREAM#ONF%VENT IS THE FIRST EVENT THE APPLICATION WILL RECEIVE ON !#3 3TREAM IF NO ERRORS OCCURRED DURING THE !#3 3TREAM INITIALIZATION PROCESS 4HE APPLICATION IS RESPONSIBLE FOR TERMINATING !#3 STREAMS 4O DO SO AN APPLICATION EITHER CALLS ACS#LOSE3TREAM AND RECEIVES THE !#3#LOSE3TREAM#ONF%VENT OR CALLS ACS!BORT3TREAM )T IS IMPERATIVE THAT AN APPLICATION CLOSE ALL ACTIVE STREAM S DURING ITS EXIT OR CLEANUP ROUTINE IN ORDER TO FREE RESOURCES IN THE CLIENT AND SERVER FOR OTHER APPLICATIONS ON THE NETWORK
4HE APPLICATION MUST BE PREPARED TO RECEIVE AN !#35NIVERSAL&AILURE#ONF%VENT FOR ANY STREAM TYPE #34!5NIVERSAL&AILURE#ONF%VENT FOR A #34! STREAM TYPE OR AN !#35NIVERSAL&AILURE%VENT FOR ANY STREAM TYPE ANYTIME AFTER THE ACS/PEN3TREAM FUNCTION COMPLETES 4HESE EVENTS INDICATE THAT A FAILURE HAS OCCURRED ON THE STREAM
!#3/PEN3TREAM#ONF%VENT
This event is generated in response to the acsOpenStream( ) function and provides the application with status information regarding the requested open of an ACS Stream with the Telephony Server. The application may only perform the ACS functions acsEventNotify( ), acsSetESR( ), acsGetEventBlock( ), acsGetEventPoll( ), and acsCloseStream( ) on an acsHandle until this confirmation event has been received. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE SECTION !#3 $ATA 4YPES AND #34! $ATA 4YPES FOR A MORE COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 35QGixQiew5yxp7ixc ' eg5yxpswesyx' iix' 5QR37ixc' ihipg35QGixQiew5yxp7ixc Tisyxc esTi' Tisyxc vsfTi' Tisyxc Ti' Tisyxc hTi' 35QGixQiew5yxp7ixc'
egyix'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE !#3#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN !#3 CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE !#3?/0%.?342%!-?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN !#3/PEN3TREAM#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTION REQUEST WITH ITS CONFIRMATION EVENTS apiVer 4HIS PARAMETER INDICATES WHICH VERSION OF THE !0) WAS GRANTED 4HE VERSION BEGINS WITH THE LETTERS 34 THE 3 AND THE 4 ARE INTENTIONALLY REVERSED .OTE THAT THE APPLICATION SUPPLIED STRING HAD THE LETTERS IN THE ORDER 43 FOLLOWED BY A SINGLE 43!0) VERSION NUMBER )F THE CONTENTS OF THE API6ER FIELD DO NOT BEGIN WITH THE LETTERS 34 THEN THE APPLICATION SHOULD ASSUME 43!0) VERSION 3EE THE PRECEDING 0RIVATE $ATA 6ERSION #ONTROL SECTION FOR INFORMATION ON PRIVATE DATA VERSION NEGOTIATION libVer 4HIS PARAMETER INDICATES WHICH VERSION OF THE ,IBRARY IS RUNNING tsrvVer 4HIS PARAMETER INDICATES WHICH VERSION OF THE 43%26%2 IS RUNNING drvrVer 4HIS PARAMETER INDICATES WHICH VERSION OF THE $RIVER IS RUNNING
Comments 4HIS MESSAGE IS AN INDICATION THAT THE !#3 3TREAM REQUESTED BY THE APPLICATION VIA THE ACS/PEN3TREAM FUNCTION IS AVAILABLE TO PROVIDE COMMUNICATION WITH THE 4ELEPHONY 3ERVER 4HE APPLICATION MAY NOW REQUEST CALL CONTROL SERVICES FROM THE 4ELEPHONY 3ERVER ON THE ACS(ANDLE IDENTIFYING THIS !#3 3TREAM 4HIS MESSAGE CONTAINS THE ,EVEL OF THE STREAM OPENED THE IDENTIFICATION OF THE SERVER THAT IS PROVIDING SERVICE AND ANY 0RIVATE DATA RETURNED BY THE 4ELEPHONY 3ERVER 4HE 0RIVATE $ATA IN THE !#3/PEN3TREAM#ONF%VENT INDICATES WHAT VENDOR AND VERSION 0RIVATE $ATA THE 0"8 DRIVER WILL PROVIDE ON THE STREAM )N THE 0RIVATE $ATA THE VENDOR FIELD WILL CONTAIN THE VENDOR NAME AND THE DATA FIELD IN THE 0RIVATE?$ATA?T STRUCTURE CONTAINS A ONE BYTE DISCRIMINATOR 02)6!4%?$!4!?%.#/$).' FOLLOWED BY AN !3#)) STRING IDENTIFYING THE VERSION OF THE PRIVATE DATA THAT WILL BE SUPPLIED Application Notes 4HE !#3/PEN3TREAM#ONF%VENT IS GUARANTEED TO BE THE FIRST EVENT ON THE !#3 3TREAM THE APPLICATION WILL RECEIVE IF NO ERRORS OCCURRED DURING THE !#3 3TREAM INITIALIZATION
ACS#LOSE3TREAM
This function closes an ACS Stream to the Telephony Server. The application will be unable to request services from the Telephony Server after the acsCloseStream( ) function has returned. The acsHandle is valid on this stream after the acsCloseStream( ) function returns, but can only be used to receive events via the acsGetEventBlock( ) or acsGetEventPoll( ) functions. The application must receive the ACSCloseStreamConfEvent associated with this function call to indicate that the ACS Stream associated with the specified acsHandle has been terminated and to allow stream resources to be freed. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhiceg5vyiQiew 35Q@exhvic eg@exhvi AFHSR AxyuiA6c sxyuiA6 AFHSR Hsei6eec sei6ee' AFHSR
Parameters acsHandle 4HIS IS THE HANDLE FOR THE ACTIVE !#3 3TREAM WHICH IS TO BE CLOSED /NCE THE CONFIRMATION EVENT ASSOCIATED WITH THIS FUNCTION RETURNS THE HANDLE IS NO LONGER VALID invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S
privateData 4HIS POINTS TO A DATA STRUCTURE WHICH DEFINES ANY IMPLEMENTATION SPECIFIC INFORMATION NEEDED BY THE SERVER 4HE DATA IN THIS STRUCTURE IS NOT INTERPRETED BY THE !0) #LIENT ,IBRARY AND CAN BE USED AS AN ESCAPE MECHANISM TO PROVIDE IMPLEMENTATION SPECIFIC COMMANDS BETWEEN THE APPLICATION AND THE 4ELEPHONY 3ERVER Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE !#3#LOSE3TREAM#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH ACS#LOSE3TREAM RETURNS THE NEGATIVE ERROR CONDITIONS BELOW
!#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Comments /NCE THIS FUNCTION RETURNS THE APPLICATION MUST ALSO CHECK THE !#3#LOSE3TREAM#ONF%VENT MESSAGE TO ENSURE THAT THE !#3 3TREAM WAS CLOSED PROPERLY AND TO SEE IF ANY 0RIVATE $ATA WAS RETURNED BY THE SERVER
.O OTHER SERVICE REQUEST WILL BE ACCEPTED TO THE SPECIFIED ACS(ANDLE AFTER THIS FUNCTION SUCCESSFULLY RETURNS 4HE HANDLE IS AN ACTIVE AND VALID HANDLE UNTIL THE APPLICATION HAS RECEIVED THE !#3#LOSE3TREAM#ONF%VENT Application Notes 4HE #LIENT IS RESPONSIBLE FOR RECEIVING THE !#3#LOSE3TREAM#ONF% VENT WHICH INDICATES RESOURCES HAVE BEEN FREED 4HE APPLICATION MUST BE PREPARED TO RECEIVE MULTIPLE EVENTS ON THE !#3 3TREAM AFTER THE ACS#LOSE3TREAM FUNCTION HAS COMPLETED BUT THE !#3#LOSE3TREAM#ONF%VENT IS GUARANTEED TO BE THE LAST EVENT ON THE !#3 3TREAM 4HE ACS'ET%VENT"LOCK AND ACS'ET%VENT0OLL FUNCTIONS CAN ONLY BE CALLED AFTER THE ACS#LOSE3TREAM FUNCTION HAS RETURNED SUCCESSFULLY
!#3#LOSE3TREAM#ONF%VENT
This event is generated in response to the acsCloseStream( ) function and provides information regarding the closing of the ACS Stream The acsHandle is no longer valid after this event has been received by the application, so the ACSCloseStreamConfEvent is the last event the application will receive for this ACS Stream. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE SECTION !#3 $ATA 4YPES AND #34! $ATA 4YPES FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g AxyuiA6c xsyx eg@exhvi' iix5ve' iixRi'
iix@iehi'
sxyuiA6'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM
eventClass 4HIS IS A TAG WITH THE VALUE !#3#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN !#3 CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE !#3?#,/3%?342%!-?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN !#3#LOSE3TREAM#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION )T IS USED TO MATCH A SPECIFIC ACS#LOSE3TREAM FUNCTION REQUEST WITH ITS CONFIRMATION EVENT Comments 4HIS MESSAGE INDICATES THAT THE !#3 3TREAM TO THE 4ELEPHONY 3ERVER HAS CLOSED AND THAT THE ASSOCIATED ACS(ANDLE IS NO LONGER VALID 4HIS MESSAGE CONTAINS ANY 0RIVATE DATA RETURNED BY THE 4ELEPHONY 3ERVER
!#35NIVERSAL&AILURE#ONF%VENT
This event can occur at any time in place of a confirmation event for any of the CSTA functions which have their own confirmation event and indicates a problem in the processes of the requested function. It does not indicate a failure or loss of the ACS Stream with the Telephony Server. If the ACS Stream has failed, then an ACSUniversalFailureEvent (unsolicited version of this confirmation event) is sent to the application. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE SECTION !#3 $ATA 4YPES AND #34! $ATA 4YPES FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g xsyx 35QSxsiev8esvi5yxp7ixc ' eg5yxpswesyx' iix' 5QR37ixc' ihipg 35QSxsiev8esvic 35QSxsiev8esvi5yxp7ixc'
pesvi7ix'
iy'
eventClass 4HIS IS A TAG WITH THE VALUE !#3#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN !#3 CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE !#3?5.)6%23!,?&!),52%?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN !#35NIVERSAL&AILURE#ONF%VENT error 4HIS PARAMETER INDICATE THE CAUSE VALUE FOR THE FAILURE OF THE ORIGINAL 4ELEPHONY REQUEST 4HESE CAUSE VALUES ARE THE SAME SET AS THOSE SHOWN FOR !#35NIVERSAL&AILURE%VENT Comments 4HIS EVENT WILL OCCUR ANYTIME WHEN A NON TELEPHONY PROBLEM NO MEMORY 4SERVER 3ECURITY CHECK FAILED ETC IN PROCESSING A 4ELEPHONY REQUEST IN ENCOUNTERED AND IS SENT IN PLACE OF THE CONFIRMATION EVENT THAT WOULD NORMALLY BE RECEIVED FOR THAT FUNCTION IE #34!-AKE#ALL#ONF%VENT IN RESPONSE TO A CSTA-AKE#ALL REQUEST )F THE PROBLEM WHICH PREVENTS THE TELEPHONY FUNCTION FROM BEING PROCESSED IS TELEPHONY BASED THEN A #34!5NIVERSAL&AILURE#ONF%VENT WILL BE RECEIVED INSTEAD
ACS!BORT3TREAM
This function unilaterally closes an ACS Stream to the Telephony Server. The application will be unable to request services from the Telephony Server or receive events after the acsAbortStream( ) function has returned. The acsHandle is invalid on this stream after the acsAbortStream( ) function returns. There is no associated confirmation event for this function. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhiceg3fyQiew 35Q@exhvic eg@exhvi AFHSR Hsei6eec sei6ee' AFHSR
Parameters acsHandle 4HIS IS THE HANDLE FOR THE ACTIVE !#3 3TREAM WHICH IS TO BE CLOSED 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION /NCE THIS FUNCTION RETURNS SUCCESS THE !#3 3TREAM IS NO LONGER VALID privateData 4HIS POINTS TO A DATA STRUCTURE WHICH DEFINES ANY IMPLEMENTATION SPECIFIC INFORMATION NEEDED BY THE SERVER 4HE DATA IN THIS STRUCTURE IS NOT INTERPRETED BY THE !0) #LIENT ,IBRARY AND CAN BE USED AS AN ESCAPE MECHANISM TO PROVIDE IMPLEMENTATION SPECIFIC COMMANDS BETWEEN THE APPLICATION AND THE 4ELEPHONY 3ERVER Return Values 4HIS FUNCTION ALWAYS RETURNS ZERO IF SUCCESSFUL 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION
Comments /NCE THIS FUNCTION RETURNS THE !#3 STREAM IS DISMANTLED AND THE ACS(ANDLE IS INVALID
ACS'ET%VENT"LOCK
This function is used when an application wants to receive an event in a Blocking mode. In the Blocking mode, the application will be blocked until there is an event from the ACS Stream indicated by the acsHandle. If the acsHandle is set to zero (0), then the application will block until there is an event from any ACS stream opened by this application. The function will return after the event has been copied into the applications data space.
Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic 35Q@exhvic ysh xsqxihry Hsei6eec xsqxihry eg9i7ix4vygu eg@exhvi AFHSR iix4p AFHSR iix4pQsi AFHSRP7RSPF sei6ee P7RSPF xw7ix' P7RSPF
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM )F A HANDLE OF ZERO IS GIVEN THEN THE NEXT MESSAGE ON ANY OF THE OPEN !#3 3TREAMS FOR THIS APPLICATION IS RETURNED eventBuf 4HIS IS A POINTER TO AN AREA IN THE APPLICATION ADDRESS SPACE LARGE ENOUGH TO HOLD ONE INCOMING EVENT THAT IS RECEIVED BY THE APPLICATION 4HIS BUFFER SHOULD BE LARGE ENOUGH TO HOLD THE LARGEST EVENT THE APPLICATION EXPECTED TO RECEIVE 4YPICALLY THE APPLICATION WILL RESERVE A SPACE LARGE ENOUGH TO HOLD A #34!%VENT?T eventBufSize 4HIS PARAMETER INDICATES THE SIZE OF THE USER BUFFER POINTED TO BY EVENT"UF )F THE EVENT IS LARGER THE EVENT"UF THEN THIS PARAMETER WILL BE RETURNED WITH THE SIZE OF THE BUFFER REQUIRED TO RECEIVE THE EVENT 4HE APPLICATION SHOULD CALL THIS FUNCTION AGAIN WITH A LARGER BUFFER
privateData 4HIS PARAMETER POINTS TO A BUFFER WHICH WILL RECEIVE ANY PRIVATE DATA THAT ACCOMPANIES THIS EVENT 4HE LENGTH FIELD OF THE 0RIVATE$ATA?T STRUCTURE MUST BE SET TO THE SIZE OF THE DATA BUFFER )F THE APPLICATION DOES NOT WISH TO RECEIVE PRIVATE DATA THEN PRIVATE$ATA SHOULD BE SET TO .5,, numEvents 4HE LIBRARY WILL RETURN THE NUMBER OF EVENTS QUEUED FOR THE APPLICATION ON THIS !#3 3TREAM NOT INCLUDING THE CURRENT EVENT VIA THE NUM%VENTS PARAMETER )F THIS PARAMETER IS .5,, THEN NO VALUE WILL BE RETURNED /N A 5NIX7ARE CLIENT NUM%VENTS WILL HAVE A VALUE OF OR INDICATING THAT THE EVENT QUEUE IS EMPTY OR NON EMPTY RESPECTIVELY THIS VALUE ON A 5NIX7ARE CLIENT DOES NOT INDICATE THE NUMBER OF EVENTS IN THE QUEUE /N A 5NIX7ARE CLIENT WHEN ACS(ANDLE IS THE NUM%VENTS VALUE REFERS ONLY TO THE STREAM FOR WHICH THE EVENT WAS RETRIEVED AND IS NOT AN AGGREGATE COUNT Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION AND AN EVENT HAS BEEN COPIED TO THE APPLICATION DATA SPACE .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION !#3%22?5"5&3-!,, 4HE USER BUFFER SIZE INDICATED IN THE EVENT"UF3IZE PARAMETER WAS SMALLER THAN THE SIZE OF THE NEXT AVAILABLE EVENT FOR THE APPLICATION ON THE !#3 STREAM 4HE EVENT"UF3IZE VARIABLE HAS BEEN RESET BY THE !0) ,IBRARY TO THE SIZE OF THE NEXT MESSAGE ON THE !#3 STREAM 4HE APPLICATION SHOULD CALL
ACS'ET%VENT"LOCK AGAIN WITH A LARGER BUFFER 4HE !#3 EVENT IS STILL ON THE !0) ,IBRARY QUEUE Comments 4HE ACS'ET%VENT"LOCK AND ACS'ET%VENT0OLL FUNCTIONS CAN BE INTERMIXED BY THE APPLICATION &OR EXAMPLE IF BURSTY EVENT MESSAGE TRAFFIC IS EXPECTED AN APPLICATION MAY DECIDE TO BLOCK INITIALLY FOR THE FIRST EVENT AND WAIT UNTIL IT ARRIVES 7HEN THE FIRST EVENT ARRIVES THE BLOCKING FUNCTION RETURNS AT WHICH TIME THE APPLICATION CAN PROCESS THIS EVENT QUICKLY AND POLL FOR THE OTHER EVENTS WHICH MAY HAVE BEEN PLACED IN QUEUE WHILE THE FIRST EVENT WAS BEING PROCESSED 4HE POLLING CAN BE CONTINUED UNTIL A !#3%22?./-%33!'% IS RETURNED BY THE POLLING FUNCTION !T THIS TIME THE APPLICATION CAN THEN CALL THE BLOCKING FUNCTION AGAIN AND START THE WHOLE CYCLE OVER AGAIN 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION Application Notes 4HE APPLICATION IS RESPONSIBLE FOR CALLING THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION FREQUENTLY ENOUGH THAT THE !0) #LIENT ,IBRARY DOES NOT OVERFLOW ITS RECEIVE QUEUE AND REFUSE INCOMING EVENTS FROM THE 4ELEPHONY 3ERVER
ACS'ET%VENT0OLL
This function is used when an application wants to receive an event in a NonBlocking mode. In the Non-Blocking mode the oldest outstanding event from any active ACS Stream will be copied into the applications data space and control will be returned to the application. If no events are currently queued for the application, the function will return control immediately to the application with an error code indicating that no events were available.
Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic 35Q@exhvic ysh xsqxihry Hsei6eec xsqxihry eg9i7ixHyvv eg@exhvi iix4p iix4pQsi sei6ee xw7ix' AFHSR AFHSR AFHSRP7RSPF P7RSPF P7RSPF
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM )F A HANDLE OF ZERO IS GIVEN THEN THE NEXT MESSAGE ON ANY OF THE OPEN !#3 3TREAMS FOR THIS APPLICATION IS RETURNED eventBuf 4HIS IS A POINTER TO AN AREA IN THE APPLICATION ADDRESS SPACE LARGE ENOUGH TO HOLD ONE INCOMING EVENT THAT IS RECEIVED BY THE APPLICATION 4HIS BUFFER SHOULD BE LARGE ENOUGH TO HOLD THE LARGEST EVENT THE APPLICATION EXPECTED TO RECEIVE 4YPICALLY THE APPLICATION WILL RESERVE A SPACE LARGE ENOUGH TO HOLD A #34!%VENT?T eventBufSize 4HIS PARAMETER INDICATES THE SIZE OF THE USER BUFFER POINTED TO BY EVENT"UF )F THE EVENT IS LARGER THE EVENT"UF THEN THIS PARAMETER WILL BE RETURNED WITH THE SIZE OF THE BUFFER REQUIRED TO RECEIVE THE EVENT 4HE APPLICATION SHOULD CALL THIS FUNCTION AGAIN WITH A LARGER BUFFER
privateData 4HIS PARAMETER POINTS TO A BUFFER WHICH WILL RECEIVE ANY PRIVATE DATA THAT ACCOMPANIES THIS EVENT 4HE LENGTH FIELD OF THE 0RIVATE$ATA?T STRUCTURE MUST BE SET TO THE SIZE OF THE DATA BUFFER )F THE APPLICATION DOES NOT WISH TO RECEIVE PRIVATE DATA THEN PRIVATE$ATA SHOULD BE SET TO .5,, numEvents 4HE LIBRARY WILL RETURN THE NUMBER OF EVENTS QUEUED FOR THE APPLICATION ON THIS !#3 3TREAM NOT INCLUDING THE CURRENT EVENT VIA THE NUM%VENTS PARAMETER )F THIS PARAMETER IS .5,, THEN NO VALUE WILL BE RETURNED Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION AND AN EVENT HAS BEEN COPIED TO THE APPLICATION DATA SPACE .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION !#3%22?./-%33!'% 4HERE WERE NO MESSAGES AVAILABLE TO RETURN TO THE APPLICATION !#3%22?5"5&3-!,, 4HE USER BUFFER SIZE INDICATED IN THE EVENT"UF3IZE PARAMETER WAS SMALLER THAN THE SIZE OF THE NEXT AVAILABLE EVENT FOR THE APPLICATION ON THE !#3 STREAM 4HE EVENT"UF3IZE VARIABLE HAS BEEN RESET BY THE !0) ,IBRARY TO THE SIZE OF THE NEXT MESSAGE ON THE !#3 STREAM 4HE APPLICATION SHOULD CALL ACS'ET%VENT0OLL AGAIN WITH A LARGER BUFFER 4HE !#3 EVENT IS STILL ON THE !0) ,IBRARY QUEUE
Comments 7HEN THIS FUNCTION IS CALLED IT RETURNS IMMEDIATELY AND THE USER MUST EXAMINE THE RETURN CODE TO DETERMINE IF A MESSAGE WAS COPIED INTO THE USER S DATA SPACE )F AN EVENT WAS AVAILABLE THE FUNCTION WILL RETURN !#30/3)4)6%?!#+ )F NO EVENTS EXISTED ON THE !#3 3TREAM FOR THE APPLICATION THIS FUNCTION WILL RETURN !#3%22?./-%33!'% 4HE ACS'ET%VENT"LOCK AND ACS'ET%VENT0OLL FUNCTIONS CAN BE INTERMIXED BY THE APPLICATION &OR EXAMPLE IF BURSTY EVENT MESSAGE TRAFFIC IS EXPECTED AN APPLICATION MAY DECIDE TO BLOCK INITIALLY FOR THE FIRST EVENT AND WAIT UNTIL IT ARRIVES 7HEN THE FIRST EVENT ARRIVES THE BLOCKING FUNCTION RETURNS AT WHICH TIME THE APPLICATION CAN PROCESS THIS EVENT QUICKLY AND POLL FOR THE OTHER EVENTS WHICH MAY HAVE BEEN PLACED IN QUEUE WHILE THE FIRST EVENT WAS BEING PROCESSED 4HE POLLING MAY CONTINUE UNTIL THE !#3%22?./-%33!'% IS RETURNED BY THE POLLING FUNCTION !T THIS TIME THE APPLICATION CAN THEN CALL THE BLOCKING FUNCTION AGAIN AND START THE WHOLE CYCLE OVER AGAIN 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION Application Notes 4HE APPLICATION IS RESPONSIBLE FOR CALLING THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION FREQUENTLY ENOUGH THAT THE !0) #LIENT ,IBRARY DOES NOT OVERFLOW ITS RECEIVE QUEUE AND REFUSES INCOMING EVENTS FROM THE 4ELEPHONY 3ERVER
ACS'ET&ILE
5NIX7ARE AND (0
58
The acsGetFile( ) function returns the Unix file descriptor associated with an ACS stream. This is to enable multiplexing of input sources via, for example, the POLL system call. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhiceg9i8svi35Q@exhviceg@exhvi'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM WHOSE 5NIX FILE DESCRIPTOR IS TO BE RETURNED Return Values 4HIS FUNCTION RETURNS EITHER A 5NIX FILE DESCRIPTOR GREATER THAN OR EQUAL TO ZERO OR !#3%22?"!$($, IF THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM Application Notes 4HE ACS'ET&ILE FUNCTION RETURNS THE 5.)8 FILE DESCRIPTOR USED BY AN !#3 STREAM 4HIS ENABLES AN APPLICATION TO SIMULTANEOUSLY BLOCK ON THE STREAM AND ANY OTHER FILE ORIENTED INPUT SOURCES BY USING POLL SELECT 8T!DD)NPUT OR SIMILAR MULTIPLEXING FUNCTIONS 4HE APPLICATION SHOULD NEVER PERFORM ANY DIRECT )/ OPERATIONS ON THIS FILE DESCRIPTOR 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION
ACS3ET%32
Syntax (NetWare)
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic egQi7QP35Q@exhvic eg@exhvi yshixsqxihvyxqiHeew xsqxih vyxq iHeew 4yyviex xysp3vv'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED 3TREAM FOR WHICH THIS %32 ROUTINE WILL APPLY /NLY ONE %32 IS ALLOWED PER ACTIVE ACS(ANDLE esr 4HIS IS A POINTER TO THE %32 THE ADDRESS OF A FUNCTION !N APPLICATION PASSES A .5,, POINTER INDICATES TO CLEAR AN EXISTING %32 esrParam 4HIS IS A USER DEFINED PARAMETER WHICH WILL BE PASSED TO THE %32 WHEN IT IS CALLED
notifyAll )F THIS PARAMETER IS 425% THEN THE %32 WILL BE CALLED FOR EVERY EVENT )F IT IS &!,3% THEN THE %32 WILL ONLY BE CALLED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Comments 4HE %32 MECHANISM CAN BE USED BY THE APPLICATION TO RECEIVE AN ASYNCHRONOUS NOTIFICATION OF THE ARRIVAL OF AN INCOMING EVENT FROM THE !#3 3TREAM 4HE %32 ROUTINE WILL RECEIVE ONE USER DEFINED PARAMETER 7INDOWS CALLS THE %32 FUNCTION WITH INTERRUPTS DISABLED NOT NORMAL APPLICATION CONTEXT 4HE %32 SHOULD NOT CALL !#3 FUNCTIONS 43!0) FUNCTIONS AND MANY OF THE 7INDOWS !0)S OR THE RESULTS WILL BE INDETERMINATE 4HE %32 SHOULD NOTE THE ARRIVAL OF THE INCOMING EVENT AND COMPLETE ITS OPERATION AS QUICKLY AS POSSIBLE 4HE APPLICATION MUST STILL CALL ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL TO RETRIEVE THE EVENT FROM THE #LIENT !0) ,IBRARY QUEUE )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS3ET%32 IS CALLED THE ESR WILL BE CALLED FOR EACH OF THEM 4HE ESR IN THE ACS3ET%32 FUNCTION WILL REPLACE THE CURRENT %32 MAINTAINED BY THE !0) #LIENT ,IBRARY ! .5,, ESR WILL DISABLE THE CURRENT %32 MECHANISM
4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION Application Notes 4HE APPLICATION CAN USE THE %32 MECHANISM TO TRIGGER PLATFORM SPECIFIC EVENTS EG POST A 7INDOWS MESSAGE FOR THE APPLICATION OR SIGNAL A SEMAPHORE IN THE .ET7ARE ENVIRONMENT 4HE APPLICATION MAY USE THE %32 MECHANISM FOR ASYNCHRONOUS NOTIFICATION OF THE ARRIVAL OF INCOMING EVENTS BUT MOST !0) ,IBRARY ENVIRONMENTS PROVIDE OTHER MECHANISMS FOR RECEIVING ASYNCHRONOUS NOTIFICATION 4HE APPLICATION SHOULD NOT CALL !#3 FUNCTIONS FROM WITHIN THE %32 4HE APPLICATION SHOULD COMPLETE ITS %32 PROCESSING AS QUICKLY AS POSSIBLE 4HE %32 FUNCTION MAY BE CALLED WHILE SOME LEVEL OF INTERRUPTS ARE DISABLED 4HIS IS !0) IMPLEMENTATION SPECIFIC SO THE APPLICATION PROGRAMMER SHOULD CONSULT THE !0) DOCUMENTATION 5NDER 7INDOWS THE %32 FUNCTION MUST BE EXPORTED AND ITS ADDRESS OBTAINED FROM -AKE0ROC)NSTANCE Windows Client Note: 5SE ACS3ET%32 WITH CARE %32 CODE AND DATA MUST BE IMMUNE TO SWAPPING IE FIXED AND PAGE LOCKED 4HE %32 MUST RESIDE IN A $,, SO AS TO BE FIXED )NTERRUPTS ARE DISABLED WHEN AN %32 IS CALLED 7ITHIN THE %32 DO NOT CALL ANY FUNCTION THAT MAY ENABLE INTERRUPTS INCLUDING MOST 7INDOWS !0)S OR WHICH IS NOT NAILED DOWN
ACS3ET%32
7IN
The acsSetESR( ) function also allows the application to designate an Event Service Routine (ESR) that will be called when an incoming event is available. Syntax
sxgvhi(egr0 sxgvhi(ger0 ihipysh78xgxsqxihvyxqiHeew Pi5yhicegQi7QP 35Q@exhvic eg@exhvi 78xg i xsqxihvyxq iHeew 4yyviex xysp3vv'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED 3TREAM FOR WHICH THIS %32 ROUTINE WILL APPLY /NLY ONE %32 IS ALLOWED PER ACTIVE ACS(ANDLE esr 4HIS IS A POINTER TO THE %32 THE ADDRESS OF A FUNCTION !N APPLICATION PASSES A .5,, POINTER INDICATES TO CLEAR AN EXISTING %32 esrParam 4HIS IS A USER DEFINED PARAMETER WHICH WILL BE PASSED TO THE %32 WHEN IT IS CALLED notifyAll )F THIS PARAMETER IS 425% THEN THE %32 WILL BE CALLED FOR EVERY EVENT )F IT IS &!,3% THEN THE %32 WILL ONLY BE CALLED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION
Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Comments 4HE %32 MECHANISM CAN BE USED BY THE APPLICATION TO RECEIVE AN ASYNCHRONOUS NOTIFICATION OF THE ARRIVAL OF AN INCOMING EVENT FROM THE !#3 3TREAM 4HE %32 ROUTINE WILL RECEIVE ONE USER DEFINED PARAMETER 4HE %32 SHOULD NOT CALL 43!0) FUNCTIONS OR THE RESULTS WILL BE INDETERMINATE 4HE %32 SHOULD NOTE THE ARRIVAL OF THE INCOMING EVENT AND COMPLETE ITS OPERATION AS QUICKLY AS POSSIBLE 4HE APPLICATION MUST STILL CALL ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL TO RETRIEVE THE EVENT FROM THE #LIENT !0) ,IBRARY QUEUE 5SE ACS3ET%32 WITH CARE 4HE %32 CODE WILL BE EXECUTED IN THE CONTEXT OF A BACKGROUND THREAD CREATED BY THE !0) #LIENT ,IBRARY NOT AN APPLICATION THREAD )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS3ET%32 IS CALLED THE ESR WILL BE CALLED FOR EACH OF THEM 4HE ESR IN THE ACS3ET%32 FUNCTION WILL REPLACE THE CURRENT %32 MAINTAINED BY THE !0) #LIENT ,IBRARY ! .5,, ESR WILL DISABLE THE CURRENT %32 MECHANISM 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION
ACS3ET%32
-ACINTOSH
The acsSetESR( ) function allows application to designate an Event Service Routine (ESR) that will be called when an incoming event is available. Syntax
sxgvhi(egr0 sxgvhi(ger0 ihipegevysh78xgxsqxihvyxqiHeew ixw 7QP8xgHygAxpy)uHegevQegu4eih P7QSDRcQAX7QAX7c5G67 QR35CcPGSRAF7cH3P3E7R7PQAX7c5G67siypvyxq ' spSQ7QPGSRAF767Q5PAHRGPQ ihipSxsievHygH78xgSHH' hipsxiFi78xgHygiPysxi 78xgSHHFiPysxi6igsyHygHiPysxi 78xgHygAxpy9i5ixAQ3 ivi ihip78xg 78xgSHH' hipsxiFi78xgHygiPysxi 78xgSHHiPysxi ixhsp Pi5yhic egQi7QP 35Q@exhvic 78xgSHH i xsqxihvyxq iHeew 4yyviex xysp3vv' eg@exhvi
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED 3TREAM FOR WHICH THIS %32 ROUTINE WILL APPLY /NLY ONE %32 IS ALLOWED PER ACTIVE ACS(ANDLE esr 4HIS IS A UNIVERSAL PROCEDURE POINTER TO THE %32 THE ADDRESS OF A X FUNCTION OR ROUTINE DESCRIPTOR !N APPLICATION PASSES A .5,, POINTER INDICATES TO CLEAR AN EXISTING %32
esrParam 4HIS IS A USER DEFINED PARAMETER WHICH WILL BE PASSED TO THE %32 WHEN IT IS CALLED notifyAll )F THIS PARAMETER IS 425% THEN THE %32 WILL BE CALLED FOR EVERY EVENT )F IT IS &!,3% THEN THE %32 WILL ONLY BE CALLED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Comments 4HE %32 MECHANISM CAN BE USED BY THE APPLICATION TO RECEIVE AN ASYNCHRONOUS NOTIFICATION OF THE ARRIVAL OF AN INCOMING EVENT FROM THE !#3 3TREAM 4HE %32 ROUTINE WILL RECEIVE ONE USER DEFINED PARAMETER 4HE %32 SHOULD NOT CALL !#3 FUNCTIONS OTHERWISE THE RESULTS WILL BE INDETERMINATE 4HE %32 SHOULD NOTE THE ARRIVAL OF THE INCOMING EVENT AND COMPLETE ITS OPERATION AS QUICKLY AS POSSIBLE 4HE APPLICATION MUST STILL CALL ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL TO RETRIEVE THE EVENT FROM THE #LIENT !0) ,IBRARY QUEUE )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS3ET%32 IS CALLED THE ESR WILL BE CALLED FOR EACH OF THEM
4HE ESR IN THE ACS3ET%32 FUNCTION WILL REPLACE THE CURRENT %32 MAINTAINED BY THE !0) #LIENT ,IBRARY ! .5,, ESR WILL DISABLE THE CURRENT %32 MECHANISM 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION Application Notes 4HE APPLICATION MAY USE THE %32 MECHANISM FOR ASYNCHRONOUS NOTIFICATION OF THE ARRIVAL OF INCOMING EVENTS PARTICULARLY WHEN RAPID NOTIFICATION IS DESIRED "Y USING THE %32 TO SET AN APPLICATION GLOBAL THE APPLICATION MAY DETERMINE WHETHER EVENTS HAVE ARRIVED BY EXAMINING THAT GLOBAL RATHER THAN USING ACS'ET%VENT0OLL OR ACS'ET%VENT"LOCK 4HE %32 FUNCTION IS DEFINED AS A UNIVERSAL PROCEDURE POINTER 5NDER 00# PROVIDING A NATIVE OR FAT ROUTINE DESCRIPTOR WILL RESULT IN THE BEST PERFORMANCE AS THERE WILL BE NO MODE SWITCH INVOLVED WHEN CALLING THE %32 4HE APPLICATION MAY NOT CALL !#3 FUNCTIONS FROM WITHIN THE %32 4HE APPLICATION SHOULD COMPLETE ITS %32 PROCESSING AS QUICKLY AS POSSIBLE 4HE %32 FUNCTION MAY BE CALLED WHILE SOME LEVEL OF INTERRUPTS ARE DISABLED REFER TO )NSIDE -ACINTOSH FOR INFORMATION ABOUT PROGRAMMING WITH INTERRUPTS DISABLED %NSURE THAT THE %32 FUNCTION AND ROUTINE DESCRIPTOR UNDER 00# REMAIN LOADED AND PAGE LOCKED IN MEMORY )N PARTICULAR DO NOT MAKE SYNCHRONOUS )/ CALLS OR ACCESS MEMORY THAT IS NOT PAGE LOCKED /N -ACINTOSH AS WITH OTHER INTERRUPT SERVICE ROUTINES THE %32 IS PROHIBITED FROM USING THE -ACINTOSH MEMORY MANAGER DIRECTLY OR INDIRECTLY )N ADDITION THE %32 MUST SET ANY GLOBAL CONTEXT IT NEEDS /N THE X -ACINTOSH THIS MEANS THAT THE %32 MUST SET ! OR ! BEFORE ACCESSING APPLICATION GLOBALS OR MAKING INTER SEGMENT JUMPS BEFORE RETURNING THE %32 MUST RESTORE ! OR ! TO ITS VALUE ON ENTRY /N A 0OWER0# THE RUNTIME MODEL AUTOMATICALLY MANAGES THIS CONTEXT 3EE REFERENCES ;=AND ;= FOR MORE INFORMATION
ACS3ET%32
/3
The acsSetESR( ) function allows the application to designate an Event Service Routine (ESR) that will be called when an incoming event is available. Syntax
sxgvhi(yr0 sxgvhi(egr0 sxgvhi(ger0 ihipysh78xgxsqxihvyxqiHeew RQ3HA egQi7QP35Q@exhvic 78xg xsqxihvyxq xsqxihgre eg@exhvi i iHeew xysp3vv'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED 3TREAM FOR WHICH THIS %32 ROUTINE WILL APPLY /NLY ONE %32 IS ALLOWED PER ACTIVE ACS(ANDLE esr 4HIS IS A POINTER TO THE %32 THE ADDRESS OF A FUNCTION 4HE CALLING CONVENTION FOR THIS FUNCTION SHOULD BE SPECIFIED AS ?3YSTEM OR ?SYSCALL ! MULTI THREADED APPLICATION THAT REGISTERS THE SAME %32 FOR MULTIPLE OPEN STREAMS NEEDS TO ENSURE THAT THIS FUNCTION IS REENTRANT ! .5,, POINTER IS USED TO DISABLE THE CURRENT %32 MECHANISM esrParam 4HIS IS A USER DEFINED PARAMETER WHICH WILL BE PASSED TO THE %32 WHEN IT IS CALLED
notifyAll )F THIS PARAMETER IS 425% THEN THE %32 WILL BE CALLED FOR EVERY EVENT )F IT IS &!,3% THEN THE %32 WILL ONLY BE CALLED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Comments 4HE %32 MECHANISM CAN BE USED BY THE APPLICATION TO RECEIVE AN ASYNCHRONOUS NOTIFICATION OF THE ARRIVAL OF AN INCOMING EVENT FROM THE /PEN !#3 3TREAM 4HE APPLICATION CAN USE THE %32 MECHANISM TO TRIGGER SPECIFIC EVENTS EG POST AN EVENT SEMAPHORE 4HE %32 ROUTINE WILL RECEIVE ONE USER DEFINED PARAMETER 4HE %32 SHOULD NOT CALL !#3 FUNCTIONS OTHERWISE THE RESULTS WILL BE INDETERMINATE 4HE APPLICATION MUST STILL CALL ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL TO ACTUALLY RETRIEVE THE EVENT FROM THE #LIENT !0) ,IBRARY QUEUE )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS3ET%32 IS CALLED THE ESR WILL BE CALLED FOR EACH EVENT IF NOTIFY!LL HAS BEEN SET TO 425% OR ONLY ONCE IF NOTIFY!LL HAS BEEN SET TO &!,3% 4HE ESR IN THE ACS3ET%32 FUNCTION WILL REPLACE THE CURRENT %32 MAINTAINED BY THE !0) #LIENT ,IBRARY ! .5,, ESR WILL DISABLE THE CURRENT %32 MECHANISM 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION
ACS%VENT.OTIFY
7INDOWS
The acsEventNotify( ) function allows a Windows application to request that a message be posted to its application queue when an incoming ACS event is available. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic eg7ixFysp 35Q@exhvic eg@exhvi @UF6 rxh SAFR wq 4yyviex xysp3vv'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM FOR WHICH EVENT NOTIFICATION MESSAGES WILL BE POSTED hwnd 4HIS IS THE HANDLE OF THE WINDOW WHICH IS TO RECEIVE EVENT NOTIFICATION MESSAGES )F THIS PARAMETER IS .5,, EVENT NOTIFICATION IS DISABLED msg 4HIS IS THE USER
DEFINED MESSAGE TO BE POSTED WHEN AN INCOMING EVENT BECOMES AVAILABLE 4HE W0ARAM AND L0ARAM PARAMETERS OF THE MESSAGE WILL CONTAIN THE FOLLOWING MEMBERS OF THE !#3%VENT(EADER?T STRUCTURE
Heew eg@exhvi @AUGP6vHeew iix5ve DGUGP6vHeew iixRi
notifyAll )F THIS PARAMETER IS 425% THEN A MESSAGE WILL BE POSTED FOR EVERY EVENT )F IT IS &!,3% THEN A MESSAGE WILL ONLY BE POSTED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION OR THE LIKELIHOOD OF OVERFLOWING THE APPLICATION S MESSAGE QUEUE SEE BELOW Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Application Notes 4HIS FUNCTION ONLY ENABLES NOTIFICATION OF AN INCOMING EVENT 5SE ACS'ET%VENT0OLL TO ACTUALLY RETRIEVE THE COMPLETE EVENT STRUCTURE )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS%VENT.OTIFY IS CALLED A MESSAGE WILL BE POSTED FOR EACH OF THEM !PPLICATIONS WHICH PROCESS A HIGH VOLUME OF INCOMING EVENTS MAY CAUSE THE DEFAULT APPLICATION QUEUE MESSAGES MAX TO OVERFLOW )N THIS CASE USE THE 7INDOWS !0) CALL 3ET-ESSAGE1UEUE TO INCREASE THE SIZE OF THE APPLICATION QUEUE !LSO THE RATE OF NOTIFICATIONS MAY BE REDUCED BY SETTING NOTIFY!LL TO &!,3% 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION
Example 4HIS EXAMPLE USES THE ACS%VENT.OTIFY FUNCTION TO ENABLE EVENT NOTIFICATION
hipsxiUEc35Q7T7FRUEcSQ7P%% yiPiqsiUsxhyEieqi vyxq83PH3Q53D UxhHyg@UF6rxhSAFRwqUH3P3EHeewDH3P3E vHeew higveivygevesefvi sgrwq geiUEc5P73R7& yUEc35Q7T7FRyrssxhy rixiiex35Qiixesi eg7ixFyspeg@exhvirxhUEc35Q7T7FR RPS7' yrisxssevsesyxig ix' geiUEc35Q7T7FR& Heewgyxesxex35Q@exhvic @AUGP6vHeewgyxesxex7ix5vec DGUGP6vHeewgyxesxex7ixRic hsegrriiixyihipsxih rexhvipxgsyxrii ix' ygiyrisxhywieqi ix6ipUsxhyHygrxhwqHeewvHeew'
ACS%VENT.OTIFY
7IN
The acsEventNotify( ) function allows a Win32 application to request that a message be posted to its application queue when an incoming ACS event is available. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhiceg7ixFysp 35Q@exhvic eg@exhvi @UF6 rxh SAFR wq 4yyviex xysp3vv'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM FOR WHICH EVENT NOTIFICATION MESSAGES WILL BE POSTED hwnd 4HIS IS THE HANDLE OF THE WINDOW WHICH IS TO RECEIVE EVENT NOTIFICATION MESSAGES )F THIS PARAMETER IS .5,, EVENT NOTIFICATION IS DISABLED msg 4HIS IS THE USER
DEFINED MESSAGE TO BE POSTED WHEN AN INCOMING EVENT BECOMES AVAILABLE 4HE W0ARAM AND L0ARAM PARAMETERS OF THE MESSAGE WILL CONTAIN THE FOLLOWING MEMBERS OF THE !#3%VENT(EADER?T STRUCTURE
Heew @AUGP6vHeew DGUGP6vHeew eg@exhvi iix5ve iixRi
notifyAll )F THIS PARAMETER IS 425% THEN A MESSAGE WILL BE POSTED FOR EVERY EVENT )F IT IS &!,3% THEN A MESSAGE WILL ONLY BE POSTED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION OR THE LIKELIHOOD OF OVERFLOWING THE APPLICATION S MESSAGE QUEUE SEE BELOW Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Application Notes 4HIS FUNCTION ONLY ENABLES NOTIFICATION OF AN INCOMING EVENT 5SE ACS'ET%VENT0OLL TO ACTUALLY RETRIEVE THE COMPLETE EVENT STRUCTURE )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS%VENT.OTIFY IS CALLED A MESSAGE WILL BE POSTED FOR EACH OF THEM 4HE RATE OF NOTIFICATIONS MAY BE REDUCED BY SETTING NOTIFY!LL TO &!,3% 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION
Example 4HIS EXAMPLE USES THE ACS%VENT.OTIFY FUNCTION TO ENABLE EVENT NOTIFICATION
hipsxiUEc35Q7T7FRUEcSQ7P%% yiPiqsiUsxhyEieqi vyxq83PH3Q53D UxhHyg@UF6rxhSAFRwqUH3P3EHeewDH3P3E vHeew higveivygevesefvi sgrwq geiUEc5P73R7& yUEc35Q7T7FRyrssxhy rixiiex35Qiixesi eg7ixFyspeg@exhvirxhUEc35Q7T7FR RPS7' yrisxssevsesyxig ix' geiUEc35Q7T7FR& Heewgyxesxex35Q@exhvic @AUGP6vHeewgyxesxex7ix5vec DGUGP6vHeewgyxesxex7ixRic hsegrriiixyihipsxih rexhvipxgsyxrii ix' ygiyrisxhywieqi ix6ipUsxhyHygrxhwqHeewvHeew'
ACS%VENT.OTIFY
-ACINTOSH
The acsEventNotify( ) function allows a Macintosh application to request that it receive an Apple Event when an incoming ACS event is available. Syntax
sxgvhi(egr0 sxgvhi(ger0 sxgvhi(7HH5r0 py3vi7ixi
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM FOR WHICH EVENT NOTIFICATION MESSAGES WILL BE POSTED targetAddr 4HIS IS A POINTER TO AN !%!DDRESS$ESC DATA STRUCTURE 4HE EVENT NOTIFICATION !PPLE %VENTS WILL BE SENT TO THE ADDRESS SPECIFIED BY THE !%!DDRESS$ESC ! .5,, TARGET!DDR INDICATES NO NOTIFICATION notifyAll )F THIS PARAMETER IS 425% THEN A MESSAGE WILL BE POSTED FOR EVERY EVENT )F IT IS &!,3% THEN A MESSAGE WILL ONLY BE POSTED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION SEE BELOW Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED
0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Application Notes 4HE !PPLE %VENTS POSTED AS THE RESULT OF CALLING ACS%VENT.OTIFY HAVE THE FOLLOWING ATTRIBUTES %VENT #LASS %VENT )$ 2EQUIRED 0ARAMETER +EYWORD $ESCRIPTOR 4YPE $ATA
KEY43!0)%VENT#LASS TYPE3HORT)NTEGER K43!0)%VENT#LASS K43!0)%VENT!RRIVED
4HE !#3(ANDLE?T THAT MAY BE USED TO RETRIEVE THE INCOMING 43!0) EVENT
3EE REFERENCE ;= FOR INFORMATION ON HOW TO CREATE AN !%!DDRESS$ESC AND EXTRACT INFORMATION FROM THE NOTIFICATION !PPLE %VENTS
!FTER CALLING ACS%VENT.OTIFY PROPERLY DISPOSE OF THE !%!DDRESS$ESC SPECIFIED BY TARGET!DDR 4HIS FUNCTION ONLY ENABLES NOTIFICATION OF AN INCOMING EVENT 5SE ACS'ET%VENT0OLL TO ACTUALLY RETRIEVE THE COMPLETE EVENT STRUCTURE )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS%VENT.OTIFY IS CALLED AN !PPLE %VENT WILL BE SENT FOR EACH OF THEM !PPLICATIONS WHICH PROCESS A HIGH VOLUME OF INCOMING EVENTS SHOULD EITHER SET NOTIFY!LL TO 425% OR USE ACS3ET%32 THE CURRENT THEORETICAL UPPER BOUND ON SENDING !PPLE %VENTS IS SIXTY MESSAGES PER SECOND )N PRACTICE DEPENDING ON PROCESSOR SPEED AND AVAILABLE MEMORY THIS NUMBER MAY BE SIGNIFICANTLY LOWER 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION
Example 4HIS EXAMPLE USES THE ACS%VENT.OTIFY FUNCTION TO ENABLE EVENT NOTIFICATION
rexhviRQ3HA7ixsxevve3vi7ixrexhvigevvfegu fipyisxqeg7ixFysp egevGQ7 rexhviRQ3HA7ix gyx3vi7ix ri3vi7ix gyx3vi7ix iv vyxq rexhviPipgyx 7ix5vec riRQ3HA5ve' 7ixRic riRQ3HARi' 35Q@exhvic riQiew' 6igRi egevRi' gegr Qsi egevQsi' gegr GQ7 w7' yrivygevesefvi iegRQ3HAiixgve w7)379iHeewHri3vi7ixuiRQ3HA7ix5ve iQryAxiqiegevRi riRQ3HA5ve siypriRQ3HA5ve egevQsi' spw7)xy7 ixw7' iegRQ3HAiixi w7)379iHeewHri3vi7ixuiRQ3HA7ixRi iQryAxiqiegevRi riRQ3HARisiypriRQ3HARi egevQsi' spw7)xy7 ixw7' iegiewrexhvi w7)379iHeewHri3vi7ixuiQiew@exhvi iDyxqAxiqiegevRi riQiewsiypriQiew egevQsi' spw7)xy7 ixw7' 6segriixyihipsxihrexhvipxgsyxrii ixxy7'
iewvigyx GQ7 AxevvRQ3HA7ix@exhviysh Rrsgyhiyxvyurixgywsvihpy"$C'sxiihe ysxihigsypyrexhviRQ3HA7ixyyusrri EsihEyhiwexeqi ix37Axevv7ix@exhvi uRQ3HA7ix5ve uRQ3HA7ix3sih 377ix@exhviSHHrexhv 83DQ7'
iRQ3HA7ix
ACS%VENT.OTIFY
/3
The acsEventNotify( ) function allows an OS/2 PM application to request that a message be posted to its application queue when an incoming ACS event is available. Syntax
sxgvhi(yr0 sxgvhi(egr0 sxgvhi(ger0 Pi5yhiceg7ixFysp 35Q@exhvic eg@exhvi @UF6 rxh SDGF9 wq 4yyviex xysp3vv'
Parameter acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM FOR WHICH EVENT NOTIFICATION MESSAGES WILL BE POSTED hwnd 4HIS IS THE HANDLE OF THE WINDOW WHICH IS TO RECEIVE EVENT NOTIFICATION MESSAGES )F THIS PARAMETER IS .5,, EVENT NOTIFICATION IS DISABLED msg 4HIS IS THE USER
DEFINED MESSAGE TO BE POSTED WHEN AN INCOMING EVENT BECOMES AVAILABLE 4HE MP AND MP PARAMETERS OF THE MESSAGE WILL CONTAIN THE FOLLOWING MEMBERS OF THE !#3%VENT(EADER?T STRUCTURE
w Q@GPR8PGEEHw Q@GPR8PGEEHw eg@exhvi iix5ve iixRi
notifyAll )F THIS PARAMETER IS 425% THEN A MESSAGE WILL BE POSTED FOR EVERY EVENT )F IT IS &!,3% THEN A MESSAGE WILL ONLY BE POSTED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION OR THE LIKELIHOOD OF OVERFLOWING THE APPLICATION S MESSAGE QUEUE SEE BELOW Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Application Notes 4HIS FUNCTION ONLY ENABLES NOTIFICATION OF AN INCOMING EVENT 5SE ACS'ET%VENT0OLL TO ACTUALLY RETRIEVE THE COMPLETE EVENT STRUCTURE )F THERE ARE ALREADY EVENTS IN THE RECEIVE QUEUE WAITING TO BE RETRIEVED WHEN ACS%VENT.OTIFY IS CALLED A MESSAGE WILL BE POSTED FOR EACH OF THEM IF NOTIFY!LL HAS BEEN SET TO 425% OR A SINGLE MESSAGE WILL BE POSTED IF NOTIFY!LL HAS BEEN SET TO &!,3% !PPLICATIONS WHICH PROCESS A HIGH VOLUME OF INCOMING EVENTS MAY CAUSE THE DEFAULT APPLICATION QUEUE MESSAGES MAX TO OVERFLOW )N THIS CASE INCREASE THE SIZE OF THE APPLICATION QUEUE THAT IS CREATED BY SPECIFYING A LARGER SIZE IN THE 7IN#REATE-SG1UEUE FUNCTION 4HIS MAY NOT BE POSSIBLE IF AN APPLICATION FRAMEWORK IS GENERATING THE MESSAGE QUEUE FOR YOU !LSO THE RATE OF NOTIFICATIONS MAY BE REDUCED BY SETTING NOTIFY!LL TO &!,3% 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION
Example 4HIS EXAMPLE USES THE ACS%VENT.OTIFY FUNCTION TO ENABLE EVENT NOTIFICATION
hipsxiUEc35Q7T7FRUEcSQ7P%% EP7QSDR7VH7FRPW UxhHyg@UF6rxhSDGF9wqEH3P3EwEH3P3Ew higveivygevesefvi sgrwq geiUEc5P73R7& yUEc35Q7T7FRyrssxhy rixiiex35Qiixesi eg7ixFyspeg@exhvirxhUEc35Q7T7FRRPS7' yrisxssevsesyxig ix' geiUEc35Q7T7FR& wgyxesxex35Q@exhvic Q@GPR8PGEEHwgyxesxex7ix5vec Q@GPR8PGEEHwgyxesxex7ixRic hsegrriiixyihipsxih rexhvipxgsyxrii ix' ygiyrisxhywieqi ixUsx6ipUsxhyHygrxhwqww'
ACS&LUSH%VENT1UEUE
This function removes all events for the application on a ACS Stream associated with the given handle and maintained by the API Client Library. Once this function returns the application may receive any new events that arrive on this ACS Stream. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic35Q8vr7ixIii35Q@exhviceg@exhvi'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM )F THE ACS(ANDLE IS ZERO THEN 43!0) WILL FLUSH ALL ACTIVE !#3 3TREAMS FOR THIS APPLICATION Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Comments /NCE THIS FUNCTION RETURNS THE !0) #LIENT ,IBRARY WILL NOT HAVE ANY EVENTS QUEUED FOR THE APPLICATION ON THE SPECIFIED !#3 3TREAM 4HE APPLICATION IS READY TO START RECEIVING NEW EVENTS FROM THE 4ELEPHONY 3ERVER
4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION Application Notes 4HE APPLICATION SHOULD EXERCISE CAUTION WHEN CALLING THIS FUNCTION SINCE ALL EVENTS FROM THE SWITCH ON THE ASSOCIATED !#3 3TREAM HAVE BEEN DISCARDED 4HE APPLICATION HAS NO WAY TO DETERMINE WHAT KINDS OF EVENTS HAVE BEEN DESTROYED AND MAY HAVE LOST EVENTS THAT RELAY IMPORTANT STATUS INFORMATION FROM THE SWITCH 4HIS FUNCTION DOES NOT DELETE THE !#3#LOSE3TREAM#ONF%VENT SINCE THIS FUNCTION CAN NOT BE CALLED AFTER THE ACS#LOSE3TREAM FUNCTION 4HE ACS&LUSH%VENT1UEUE FUNCTION WILL DELETE ALL OTHER EVENTS QUEUED TO THE APPLICATION ON THE !#3 3TREAM 4HE !#35NIVERSAL&AILURE%VENT AND THE #34!5NIVERSAL&AILURE#ONF%VENT IN PARTICULAR WILL BE DELETED IF THEY ARE CURRENTLY QUEUED TO THE APPLICATION
ACS%NUM3ERVER.AMES
This function is used to enumerate the names of all the advertised services of a specified stream type. This function is a synchronous call and has no associated confirmation event. Syntax
sxgvhi(egr0 ihip4yyviex7xwQiiFewi54 gre iiFewi xsqxihvyxq vHeew' Pi5yhic eg7xwQiiFewi QiewRic iewRi 7xwQiiFewi54 gevvfegu xsqxihvyxq vHeew'
Parameters streamType INDICATES THE TYPE OF STREAM REQUESTED 4HE CURRENTLY DEFINED STREAM TYPES ARE 34?#34! AND 34?/!- callback 4HIS IS A POINTER TO A CALLBACK FUNCTION WHICH WILL BE INVOKED FOR EACH OF THE ENUMERATED SERVER NAMES ALONG WITH THE USER DEFINED PARAMETER L0ARAM )F THE CALLBACK FUNCTION RETURNS &!,3% ENUMERATION WILL TERMINATE lParam ! USER DEFINED PARAMETER WHICH IS PASSED ON EACH INVOCATION OF THE CALLBACK FUNCTION Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED
4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?5.+./7. 4HE REQUEST HAS FAILED DUE TO UNKNOWN NETWORK PROBLEMS !#3%22?./3%26%2 4HE REQUEST HAS FAILED BECAUSE THE CLIENT IS USING 4#0)0 AND )0 ADDRESSES ARE NOT CONFIGURED PROPERLY Comments 4HIS FUNCTION ENUMERATES ALL THE KNOWN ADVERTISED SERVICES INVOKING THE CALLBACK FUNCTION FOR EACH ADVERTISED SERVICE NAME 4HE SERVER.AME PARAMETER POINTS TO AUTOMATIC STORAGE THE CALLBACK FUNCTION MUST MAKE A COPY IF IT NEEDS TO PRESERVE THIS DATA 5NDER 7INDOWS THE CALLBACK FUNCTION MUST BE EXPORTED AND ITS ADDRESS OBTAINED FROM -AKE0ROC)NSTANCE !N ACTIVE !#3 3TREAM IS ./4 REQUIRED TO CALL THIS FUNCTION
ACS%NUM3ERVER.AMES
-ACINTOSH
This function is used to enumerate the names of all the advertised services of a specified stream type. This function is a synchronous call and has no associated confirmation event. Syntax
sxgvhi(egr0 spSQ7QPGSRAF767Q5PAHRGPQ ixw 7xwQiiFewiHygAxpy)uHegevQegu4eih P7QSDRcQAX7QAX7c5G67 QR35CcPGSRAF7cH3P3E7R7PQAX7c5G67siypxsqxih vyxq QR35CcPGSRAF7cH3P3E7R7PQAX7c5G67siypgre ihipSxsievHygH 7xwQiiFewi54'
hipsxiFi7xwQiiFewiHygiPysxi` 7xwQiiFewi54` FiPysxi6igsyHygHiPysxi` 7xwQiiFewiHygAxpy9i5ixAQ3 ivi ihipegev4yyviex7xwQiiFewi54 gre iiFewi xsqxihvyxq vHeew' ixhsp Pi5yhic eg7xwQiiFewi QiewRic iewRi 7xwQiiFewi54 gevvfegu xsqxihvyxq vHeew'
Parameters streamType INDICATES THE TYPE OF STREAM REQUESTED 4HE CURRENTLY DEFINED STREAM TYPES ARE 34?#34! AND 34?/!-
callback 4HIS IS A UNIVERSAL PROCEDURE POINTER TO THE CALLBACK FUNCTION THE ADDRESS OF A X FUNCTION OR ROUTINE DESCRIPTOR WHICH WILL BE INVOKED FOR EACH OF THE ENUMERATED SERVER NAMES ALONG WITH THE USER DEFINED PARAMETER L0ARAM )F THE CALLBACK FUNCTION RETURNS &!,3% ENUMERATION WILL TERMINATE lParam ! USER DEFINED PARAMETER WHICH IS PASSED ON EACH INVOCATION OF THE CALLBACK FUNCTION Return Values 4HIS FUNCTION RETURNS A POSITIVE ACKNOWLEDGMENT OR A NEGATIVE ERROR CONDITION 4HERE IS NO CONFIRMATION EVENT FOR THIS FUNCTION 4HE POSITIVE RETURN VALUE IS !#30/3)4)6%?!#+ 4HE FUNCTION COMPLETED SUCCESSFULLY AS REQUESTED BY THE APPLICATION .O ERRORS WERE DETECTED 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?5.+./7. 4HE REQUEST HAS FAILED DUE TO UNKNOWN NETWORK PROBLEMS Comments 4HIS FUNCTION ENUMERATES ALL THE KNOWN ADVERTISED SERVICES INVOKING THE CALLBACK FUNCTION FOR EACH ADVERTISED SERVICE NAME 4HE SERVER.AME PARAMETER POINTS TO AUTOMATIC STORAGE THE CALLBACK FUNCTION MUST MAKE A COPY IF IT NEEDS TO PRESERVE THIS DATA !N ACTIVE !#3 3TREAM IS ./4 REQUIRED TO CALL THIS FUNCTION
ACS1UERY!UTH)NFO
Use acsQueryAuthInfo( ) to determine the login and password requirements when opening an ACS stream to a particular advertised CSTA service. This function call places the result of a query in a user-provided structure before returning; there is no confirmation event. 3YNTAX sxgvhi(egr0
Pi5yhicegIi3rAxpy QiiA6c iiA6 35Q3rAxpyc erAxpy' AFHSR P7RSPF
Parameters serverID 4HE APPLICATION PROVIDES A NULL
TERMINATED STRING OF MAXIMUM SIZE !#3?-!8?3%26)#%)$ 4HIS STRING CONTAINS THE NAME OF AN ADVERTISED #34! SERVICE IN !3#)) FORMAT authInfo 4HE APPLICATION PROVIDES A POINTER TO A PRE
ALLOCATED STRUCTURE INTO WHICH THE ACS1UERY!UTH)NFO RETURNS AUTHENTICATION INFORMATION ABOUT THE #34! SERVICE NAMED IN SERVER)$ 4HE !#3!UTH)NFO?T STRUCTURE IS DEFINED AS FOLLOWS
ihipixw P7ISAP7Qc7VR7PF3Dc3SR@) 3SR@cDG9AFcA6cGFDW) 3SR@cDG9AFcA6cAQc6783SDR) F776cDG9AFcA6c3F6cH3QQU6) 3FWcDG9AFcA6) 35Q3rRic' ihipg 35Q3rRic DyqsxA6c 35Q3rAxpyc'
erRi' erDyqsxA6'
!#3%22?"!$0!2!-%4%2 /NE OR MORE OF THE PARAMETERS IS INVALID !#3%22?./$2)6%2 .O 43!0) #LIENT ,IBRARY $RIVER WAS FOUND OR INSTALLED ON THE SYSTEM !#3%22?./3%26%2 4HE ADVERTISED SERVICE SERVER)$ IS NOT AVAILABLE IN THE NETWORK !#3%22?./2%3/52#% 4HERE ARE INSUFFICIENT RESOURCES TO QUERY THE ADVERTISED SERVICE Background 4HE 4ELEPHONY 3ERVICES ARCHITECTURE ALLOWS NETWORK ADMINISTRATORS TO GRANT TELEPHONY PRIVILEGES TO USERS $EPENDING ON THE IMPLEMENTATION OF A TELEPHONY SERVER AND ITS CLIENT LIBRARIES A USER MAY CONVINCE TELEPHONY SERVERS OF HIS OR HER IDENTITY AUTHENTICATE BY DIFFERENT MEANS 6ERSION OF 43!0) REQUIRED APPLICATIONS TO SUPPLY A LOGIN NAME AND PASSWORD WHEN CALLING ACS/PEN3TREAM THE POINT AT WHICH A TELEPHONY SERVER MUST BE CONVINCED OF A USER S IDENTITY 6ERSION AND FUTURE VERSIONS OFFER SUPPORT FOR MULTIPLE TYPES OF AUTHENTICATION ! TELEPHONY SERVICE MAY STILL REQUIRE OR SIMPLY ACCEPT A LOGIN AND PASSWORD OR IT MAY RELY ON AN EXTERNAL AUTHENTICATION SERVICE TO ESTABLISH A USER S IDENTITY 4HE 4ELEPHONY 3ERVICES ARCHITECTURE OFFERS SUPPORT FOR BOTH METHODS IN ANY COMBINATION Usage #ALL ACS1UERY!UTH)NFO TO DETERMINE THE AUTHENTICATION REQUIREMENTS FOR AN ADVERTISED SERVICE 0"8 $RIVER 4HE CALLER MUST PROVIDE THE NAME OF THE ADVERTISED SERVICE AND A POINTER TO STORAGE INTO WHICH ACS1UERY!UTH)NFO WILL PLACE THE QUERY RESULTS
7HEN AN APPLICATION CALLS ACS1UERY!UTH)NFO THE APPLICATION MAY BLOCK WHILE THE TELEPHONY SERVICES LIBRARY QUERIES THE SPECIFIED SERVICE %XAMINE AUTH)NFOAUTH4YPE UPON RETURN FROM ACS1UERY!UTH)NFO TO DETERMINE WHAT LOGIN)$ AND PASSWD PARAMETERS TO SUPPLY TO ACS/PEN3TREAM FOR THE SERVICE QUERIED 2%15)2%3?%84%2.!,?!54( 4HE SERVICE SPECIFIED IN THE QUERY REQUIRES THE USER TO AUTHENTICATE WITH AN EXTERNAL AUTHENTICATION SERVICE BEFORE OPENING A STREAM )F AUTH)NFOAUTH4YPE CONTAINS THIS VALUE ACS/PEN3TREAM WILL FAIL FOR THE SERVICE QUERIED !54(?,/').?)$?/.,9 4HE APPLICATION CAN ONLY OPEN A STREAM USING THE LOGIN)$ RETURNED IN AUTH)NFOAUTH,OGIN)$ ACS/PEN3TREAM WILL IGNORE PASSWD FOR THE QUERIED SERVICE 4HE LOGIN)$ MUST CONTAIN THE SAME VALUE AS AUTH)NFOAUTH,OGIN)$ !N APPLICATION SHOULD NOT COLLECT A PASSWORD FROM ITS USER FOR THIS SERVICE !54(?,/').?)$?)3?$%&!5,4 4HE LOGIN)$ RETURNED IN AUTH)NFOAUTH,OGIN)$ IS THE DEFAULT USER FOR THIS SERVICE )F THE APPLICATION SUBSEQUENTLY SPECIFIES THIS LOGIN)$ OR A .5,, POINTER AS LOGIN)$ TO ACS/PEN3TREAM PASSWD WILL BE IGNORED AND MAY BE .5,, !LTERNATIVELY TO OPEN A STREAM AS A DIFFERENT USER THAN AUTH)NFOAUTH,OGIN)$ THE APPLICATION MUST SUPPLY LOGIN)$ AND PASSWD TO ACS/PEN3TREAM
An application should take care to not collect a password if its user wants to be identified as authInfo.authLoginID . If an application does not remember the last loginID selected by its user in a preferences file or other persistent storage, the application should use authInfo.authLoginID as the default loginID when prompting its user for login information.
.%%$?,/').?)$?!.$?0!337$ 4HE APPLICATION MUST SUPPLY LOGIN)$ AND PASSWD TO ACS/PEN3TREAM !.9?,/').?)$ 4HE APPLICATION MAY SUPPLY ANY LOGIN)$ TO ACS/PEN3TREAM PASSWD SHOULD NOT BE COLLECTED AND WILL BE IGNORED !PPLICATIONS SHOULD DEFAULT TO AUTH)NFOAUTH,OGIN)$ IF IT IS NON EMPTY
!#35NIVERSAL&AILURE%VENT
This event can occur at any time (unsolicited) and can indicate, among other things, a failure or loss of the ACS Stream with the Telephony Server. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE THE !#3 $ATA 4YPES AND #34! $ATA 4YPES SECTIONS FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g xsyx 35QSxsiev8esvi7ixcpesvi7ix' ' egSxyvsgsih' iix' 5QR37ixc' ihipg 35QSxsiev8esviciy' 35QSxsiev8esvi7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE !#35.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN !#3 UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE !#3?5.)6%23!,?&!),52% WHICH IDENTIFIES THIS MESSAGE AS AN !#35NIVERSAL&AILURE%VENT error 4HIS PARAMETER CONTAINS A 4SERVER OPERATION ERROR OR CAUSE VALUE 4SERVER SECURITY DATABASE ERROR OR DRIVER ERROR FOR THE !#3 3TREAM GIVEN IN ACS(ANDLE
Not all of the errors listed below will occur in an ACS Universal Failure message. Some of the errors occur only in error logs generated by the Tserver.
RQ7PT7PcAFQS88A5A7FRcH7PEAQQAGF)" RQ7PT7PcFGcP7QGSP57cR39)# RQ7PT7PcAFT3DA6cE7QQ397)$ RQ7PT7Pc7V57HRAGFcDAQR)% RQ7PT7PcFGRcGFcG3EcDAQR) RQ7PT7PcH4VcA6cFGRcAFcQ64) RQ7PT7PcSQ7PcDA57FQ7Qc7V577676) RQ7PT7PcG3Ec6PGHc5GFF75RAGF) RQ7PT7PcFGcT7PQAGFcP75GP6) RQ7PT7PcGD6cT7PQAGFcP75GP6) ! RQ7PT7Pc436cH35C7R) " RQ7PT7PcGH7Fc83AD76) # RQ7PT7PcG3EcAFcSQ7) $ RQ7PT7Pc67TA57cFGRcGFc@GE7cDAQR) % RQ7PT7Pc67TA57cFGRcGFc53DDc5GFRPGDcDAQR)! RQ7PT7Pc67TA57cFGRcGFc3U3WcDAQR)! RQ7PT7Pc67TA57cFGRcGFcPGSR7cDAQR)! RQ7PT7Pc67TA57cFGRcGFcEGFARGPc67TA57cDAQR)! RQ7PT7Pc67TA57cFGRcGFcEGFARGPc53DDc67TA57cDAQR)! RQ7PT7PcFGc53DDc53DDcEGFARGPcH7PEAQQAGF)!! RQ7PT7Pc@GE7c67TA57cDAQRc7EHRW)!" RQ7PT7Pc53DDc5GFRPGDcDAQRc7EHRW)!# RQ7PT7Pc3U3WcDAQRc7EHRW)!$ RQ7PT7PcPGSR7cDAQRc7EHRW)!% RQ7PT7PcEGFARGPc67TA57cDAQRc7EHRW)" RQ7PT7PcEGFARGPc53DDc67TA57cDAQRc7EHRW)" RQ7PT7PcSQ7Pc3Rc@GE7cUGPCRGH)" RQ7PT7Pc67TA57cDAQRc7EHRW)" RQ7PT7Pc436c97Rc67TA57cD7T7D)" RQ7PT7Pc6PAT7PcSFP79AQR7P76)"! RQ7PT7PcFGc35QcQRP73E)"" RQ7PT7Pc6PGHcG3E)"# RQ7PT7Pc754cRAE7GSR)"$ RQ7PT7Pc436c754)"% RQ7PT7Pc36T7PRAQ7c83AD76)# RQ7PT7PcF7RU3P7c83ADSP7)# RQ7PT7PcR6AcIS7S7c83SDR)# RQ7PT7Pc6PAT7Pc5GF97QRAGF)# RQ7PT7PcFGcR6Ac4S887PQ)# RQ7PT7PcGD6cAFTGC7A6)#! RQ7PT7Pc@UE3PCcRGcD3P97)#" RQ7PT7PcQ7Rc754cRGcDGU)## RQ7PT7PcFGcP75GP6cAFc8AD7)#$ RQ7PT7Pc754cGT7P6S7)#% RQ7PT7Pc436cHUc7F5PWHRAGF)$ RQ7PT7Pc436cRQ7PTcHPGRG5GD)$ RQ7PT7Pc436c6PAT7PcHPGRG5GD)$ RQ7PT7Pc436cRP3FQHGPRcRWH7)$ RQ7PT7PcH6ScT7PQAGFcEAQE3R5@)$ RQ7PT7PcT7PQAGFcEAQE3R5@)$! RQ7PT7PcDA57FQ7cEAQE3R5@)$" RQ7PT7Pc436c3RRPA4SR7cDAQR)$# RQ7PT7Pc436cRDAQRcRWH7)$$ RQ7PT7Pc436cHPGRG5GDc8GPE3R)$% RQ7PT7PcGD6cRQDA4)%
RQ7PT7Pc436cDA57FQ7c8AD7)% RQ7PT7PcFGcH3R5@7Q)% RQ7PT7PcQWQR7Ec7PPGP)% RQ7PT7PcG3EcDAQRc7EHRW)% RQ7PT7PcR5Hc83AD76)%! RQ7PT7PcQHVc6AQ34D76)%" RQ7PT7PcR5Hc6AQ34D76)%# RQ7PT7PcP7ISAP76cEG6SD7QcFGRcDG3676)%$ RQ7PT7PcRP3FQHGPRcAFcSQ7c4WcG3E)%% RQ7PT7PcFGcF6QcG3EcH7PEAQQAGF) RQ7PT7PcGH7FcQ64cDG9c83AD76) RQ7PT7PcAFT3DA6cDG9cQAX7) RQ7PT7PcUPAR7cQ64cDG9c83AD76) RQ7PT7PcFRc83ADSP7) RQ7PT7PcDG36cDA4c83AD76)! RQ7PT7PcAFT3DA6c6PAT7P)" RQ7PT7PcP79AQRPWc7PPGP)# RQ7PT7Pc6SHDA53R7c7FRPW)$ RQ7PT7Pc6PAT7PcDG3676)% 6PAT7Pc6SHDA53R7c35Q@3F6D7) 6PAT7PcAFT3DA6c35QcP7IS7QR) 6PAT7Pc35Qc@3F6D7cP7B75RAGF) 6PAT7PcAFT3DA6c5D3QQcP7B75RAGF) 6PAT7Pc97F7PA5cP7B75RAGF) 6PAT7PcP7QGSP57cDAEAR3RAGF)! 6PAT7Pc35Q@3F6D7cR7PEAF3RAGF)" 6PAT7PcDAFCcSF3T3AD34D7)# 6PAT7PcG3EcAFcSQ7)$
35QSxsiev8esvic'
Tserver Operation errors 4SERVER OPERATION ERRORS INDICATE THAT THERE IS AN ERROR IN THE 3ERVICE 2EQUEST 4HESE INCLUDE THE FOLLOWING SPECIFIC ERROR VALUES 43%26%2?342%!-?&!),%$ 4HE #LIENT ,IBRARY DETECTED THAT THE !#3 3TREAM FAILED 43%26%2?./?4(2%!$ /NE OR MORE THE THREADS PROCESSES THAT MAKE UP THE 4SERVER COULD NOT BE CREATED 43%26%2?"!$?$2)6%2?)$ /NE OF THE THREADS PROCESSES THAT MAKE UP THE 4SERVER ENCOUNTERED A BAD $RIVER )DENTIFICATION NUMBER DURING PROCESSING
43%26%2?$%!$?$2)6%2 ! $RIVER HAS NOT SENT A HEART BEAT MESSAGES TO THE 4SERVER FORM THE LAST THREE MINUTES 4HE $RIVER MAY BE IN AN INOPERABLE STATE 43%26%2?-%33!'%?()'(?7!4%2?-!2+ 4HE MESSAGE RATE BETWEEN A CLIENT AND THE 4SERVER OR THE 4SERVER AND A $RIVER HAS EXCEEDED THE HIGH WATER MARK RATE 43%26%2?&2%%?"5&&%2?&!),%$ 4HE 4SERVER WAS UNABLE TO FREE 4SERVER $RIVER )NTERFACE 4$) MEMORY 43%26%2?3%.$?4/?$2)6%2 4HE 4SERVER WAS UNABLE TO SEND A MESSAGE TO A $RIVER 43%26%2?2%#%)6%?&2/-?$2)6%2 4HE 4SERVER WAS UNABLE TO RECEIVE A MESSAGE FROM A $RIVER 43%26%2?2%')342!4)/.?&!),%$ ! $RIVER S ATTEMPT TO REGISTER WITH THE 4SERVER FAILED 43%26%2?308?&!),%$ ! .ET7ARE 308 CALL FAILED IN THE 4SERVER 43%26%2?42!#% 5SED BY THE 4SERVER FOR DEBUGGING PURPOSES ONLY 43%26%2?./?-%-/29 4HE 4SERVER WAS UNABLE TO ALLOCATE A PIECE OF MEMORY 43%26%2?%.#/$%?&!),%$ 4HE 4SERVER WAS UNABLE TO ENCODE A MESSAGE FOR SHIPMENT TO A CLIENT WORKSTATION 43%26%2?$%#/$%?&!),%$ 4HE 4SERVER WAS UNABLE TO DECODE A MESSAGE FROM A CLIENT WORKSTATION 43%26%2?"!$?#/..%#4)/. 4HE 4SERVER TRIED TO PROCESS A REQUEST WITH A BAD CLIENT CONNECTION )$ NUMBER
43%26%2?"!$?0$5 4HE 4SERVER S INTERNAL TABLE OF 0ROTOCOL $ESCRIPTOR 5NITS IS CORRUPTED 43%26%2?./?6%23)/. 4HE 4SERVER PROCESSED A !#3/PEN3TREAM#ONF%VENT FROM A $RIVER IN WHICH ONE OR MORE THE VERSION FIELDS WAS NOT SET 43%26%2?%#"?-!8?%8#%%$%$ 4HE 4SERVER CAN NOT PROCESS A MESSAGE FROM THE DRIVER BECAUSE THE MESSAGE IS LARGER THAN THE SUM OF THE %#"S ALLOCATED FOR THIS DRIVER 43%26%2?./?%#"3 4HE 4SERVER HAS NO AVAILABLE %#"S TO SEND EVENTS TO THE CLIENT 43%26%2?./?2%3/52#%?4!' 4HE 4SERVER WAS UNABLE TO GET A RESOURCE TAG FOR THE PURPOSE OF ALLOCATING MEMORY 43%26%2?).6!,)$?-%33!'% 4HE 4SERVER RECEIVED AN INVALID 4SERVER /!- MESSAGE 43%26%2?%#"?/6%2$5% 4HE 4ELEPHONY 3ERVER USES THIS ERROR CODE IN THE LOG FILE !N APPLICATION WILL NOT RECEIVE IT 43%26%2?"!$?07?%.#2904)/. 4HE 4ELEPHONY 3ERVER USES THIS ERROR CODE IN THE LOG FILE !N APPLICATION WILL NOT RECEIVE IT 43%26%2?"!$?42!.30/24?490% 4HE 4ELEPHONY 3ERVER USES THIS ERROR CODE IN THE LOG FILE !N APPLICATION WILL NOT RECEIVE IT 43%26%2?"!$?43%26?02/4/#/, 4HE APPLICATION HAS REQUESTED A 43!0) PROTOCOL VERSION THAT THE 4ELEPHONY 3ERVER DOES NOT PROVIDE
43%26%2?"!$?$2)6%2 02/4/#/, 4HE APPLICATION HAS REQUESTED A 43!0) PROTOCOL VERSION THAT THE 4ELEPHONY 3ERVER PROVIDES BUT THE 0"8 $RIVER DOES NOT PROVIDE 43%26%2?0$5?6%23)/.?-)3-!4#( 4HE APPLICATION HAS INVOKED A SERVICE THAT THE STREAM VERSION DOES NOT SUPPORT 4HIS RESULTED IN THE CLIENT LIBRARY SENDING THE 4ELEPHONY 3ERVER A 0ROTOCOL $ATA 5NIT 0$5 THAT IS NOT SUPPORTED IN THE 43!0) VERSION ON THAT STREAM 43%26%2?"!$?02/4/#/,?&/2-!4 4HE API6ER PARAMETER VALUE IS NOT IN THE PROPER SYNTAX 43%26%2?/,$?43,)" 4HE APPLICATION IS USING A 43,)" LIBRARY OF AN EARLIER VINTAGE THAN THE VERSION IT IS REQUESTING IN AN OPEN STREAM CALL 43%26%2?2%15)2%$?-/$5,%3?./4?,/!$%$ 43%26%2?42!.30/24?).?53%?"9?/!43%26%2?./?.$3?/!-?0%2-)33)/. 43%26%2?/0%.?3$"?,/'?&!),%$ 43%26%2?).6!,)$?,/'?3):% 43%26%2?72)4%?3$"?,/'?&!),%$ 43%26%2?.4?&!),52% 43%26%2?,/!$?,)"?&!),%$ 43%26%2?).6!,)$?$2)6%2 43%26%2?2%')3429?%22/2 43%26%2?$50,)#!4%?%.429 43%26%2?$2)6%2?,/!$%$ Tserver Security Data Base errors %RROR VALUES IN THIS CATEGORY INDICATE THAT THERE IS AN ERROR IN THE PROCESS OF AN EVENT WHICH REQUIRES A CHECK AGAINST THE 3ECURITY $ATA "ASE 4HIS TYPE INCLUDES ONE OF THE FOLLOWING SPECIFIC ERROR VALUES
43%26%2?./?3$" /NE OR MORE THE FILES THAT MAKEUP THE 3ECURITY $ATA "ASE IS NOT PRESENT ON THE SERVER OR CAN NOT BE OPENED 43%26%2?./?3$"?#(%#+?.%%$%$ 4HE REQUESTED SERVICE EVENT DOES NOT REQUIRE A 3ECURITY $ATA "ASE CHECK 43%26%2?3$"?#(%#+?.%%$%$ 4HE REQUESTED SERVICE EVENT DOES REQUIRE A 3ECURITY $ATA "ASE CHECK 43%26%2?"!$?3$"?,%6%, 4HE 4SERVER S INTERNAL TABLE OF !0) CALLS INDICATING WHICH LEVEL OF SECURITY TO PERFORM ON THE REQUEST IS CORRUPTED 43%26%2?"!$?3%26%2)$ 4HE 4SERVER REJECTED AN !#3/PEN3TREAM REQUEST BECAUSE THE 3ERVER )$ IN THE MESSAGE DID NOT MATCH A $RIVER SUPPORTED BY THIS 4SERVER 43%26%2?"!$?342%!-?490% 4HE STREAM TYPE AN !#3/PEN3TREAM REQUEST WAS INVALID 43%26%2?"!$?0!337/2$?/2?,/'). 4HE 0ASSWORD OR ,OGIN OR BOTH FROM AN !#3/PEN3TREAM REQUEST DID NOT MATCH AN ENTRY IN THE "INDERY ON THE SERVER THE 4SERVER IS RUNNING ON 43%26%2?./?53%2?2%#/2$ .O USER RECORD WAS FOUND IN THE 3ECURITY $ATA "ASE FOR THE LOGIN SPECIFIED IN THE !#3/PEN3TREAM REQUEST 43%26%2?./?$%6)#%?2%#/2$ .O DEVICE RECORD WAS FOUND IN THE 3ECURITY $ATA "ASE FOR THE DEVICE SPECIFIED IN THE !0) CALL 43%26%2?$%6)#%?./4?/.?,)34 4HE SPECIFIED DEVICE IN AN !0) CALL WAS NOT FOUND ON ANY DEVICE LIST ADMINISTERED FOR THIS USER
43%26%2?53%23?2%342)#4%$?(/-% 4HE 4SERVER IS ADMINISTERED TO RESTRICT USERS TO HOME WORKTOPS SO NO CHECKING IS DONE AGAINST AWAY WORKTOP DEVICES 43%26%2?./?!7!90%2-)33)/. 4HE 4SERVER REJECTED A SERVICE REQUEST BECAUSE THE DEVICE DID NOT MATCH A DEVICE ASSOCIATED WITH AN AWAY WORKTOP 43%26%2?./?(/-%0%2-)33)/. 4HE 4SERVER REJECTED A SERVICE REQUEST BECAUSE THE DEVICE DID NOT MATCH A DEVICE ASSOCIATED WITH A HOME WORKTOP 43%26%2?./?!7!9?7/2+4/0 4HE AWAY WORKTOP THE USER IS WORKING FROM IS NOT ADMINISTERED IN THE 3ECURITY $ATA "ASE 43%26%2?"!$?$%6)#%?2%#/2$ 4HE 4SERVER READ A DEVICE RECORD FROM THE 3ECURITY $ATA "ASE THAT CONTAINED CORRUPTED INFORMATION 43%26%2?$%6)#%?./4?3500/24%$ 4HE DEVICE IN THE !0) CALL IS ADMINISTERED TO BE SUPPORTED BY A DIFFERENT 4SERVER 43%26%2?).35&&)#)%.4?0%2-)33)/. 4HE DEVICE IN THE !0) CALL IS AT THE USERS AWAY WORKTOP AND THE DEVICE HAS A HIGHER PERMISSION LEVEL THAN THE USER PREVENTING THE USER FROM CONTROLLING THE DEVICE 43%26%2?%8#%04)/.?,)34 4HE DEVICE IN THE !0) CALL IS ON AN EXCEPTION LIST WHICH IS ADMINISTERED AS PART OF THE INFORMATION FOR THIS USER Driver Errors %RROR VALUES IN THIS CATEGORY INDICATE THAT THE DRIVER DETECTED AN ERROR 4HIS TYPE INCLUDES ONE OF THE FOLLOWING SPECIFIC ERROR VALUES $2)6%2?$50,)#!4%?!#3(!.$,% 4HE ACS(ANDLE GIVEN FOR AN !#3/PEN3TREAM REQUEST IS ALREADY IN USE FOR A SESSION 4HE ALREADY OPEN SESSION WITH THE ACS(ANDLE IS REMAINS OPEN
$2)6%2?).6!,)$?!#3?2%15%34 4HE !#3 MESSAGE CONTAINS AN INVALID OR UNKNOWN REQUEST 4HE REQUEST IS REJECTED $2)6%2?!#3?(!.$,%?2%*%#4)/. ! #34! REQUEST WAS ISSUED WITH NO PRIOR !#3/PEN3TREAM REQUEST 4HE REQUEST IS REJECTED $2)6%2?).6!,)$?#,!33?2%*%#4)/. 4HE DRIVER RECEIVED A MESSAGE CONTAINING AN INVALID OR UNKNOWN MESSAGE CLASS 4HE REQUEST IS REJECTED $2)6%2?'%.%2)#?2%*%#4)/. 4HE DRIVER DETECTED AN INVALID MESSAGE FOR SOMETHING OTHER THAN MESSAGE TYPE OR MESSAGE CLASS 4HIS IS AN INTERNAL ERROR AND SHOULD BE REPORTED $2)6%2?2%3/52#%?,)-)4!4)/. 4HE DRIVER DID NOT HAVE ADEQUATE RESOURCES IE MEMORY ETC TO COMPLETE THE REQUESTED OPERATION 4HIS IS AN INTERNAL ERROR AND SHOULD BE REPORTED $2)6%2?!#3(!.$,%?4%2-).!4)/. $UE TO PROBLEMS WITH THE LINK TO THE SWITCH THE DRIVER HAS FOUND IT NECESSARY TO TERMINATE THE SESSION WITH THE GIVEN ACS(ANDLE 4HE SESSION WILL BE CLOSED AND ALL OUTSTANDING REQUESTS WILL TERMINATE $2)6%2?,).+?5.!6!),!",% 4HE DRIVER WAS UNABLE TO OPEN THE NEW SESSION BECAUSE NO LINK WAS AVAILABLE TO THE 0"8 4HE LINK MAY HAVE BEEN PLACED IN THE ",/#+%$ STATE OR IT MAY HAVE BEEN TAKEN OFF LINE $2)6%2?/!-?).?53% 4HERE IS ALREADY AN OPEN /!- TYPE STREAM TO THE 0"8 DRIVER ! DRIVER CAN ONLY HAVE A SINGLE /!- STREAM OPEN AT ANY TIME
.OTE
hipsxi35Q7PPc436H3P3E7R7P hipsxi35Q7PPc6SHQRP73E
hipsxi35Q7PPcFG6PAT7P
hipsxi35Q7PPcFGQ7PT7P
! riiiihQii
sxyiixsxri xiyu hipsxi35Q7PPcFGP7QGSP57 " riieisxppsgsix iygiyyixe 35QQiew # Rriifppisi ewevvirexri siyprixi eesvefviiix $ Rriiiixywieqi eesvefviyixy rievsgesyx % Rri35QQiewre ixgyxiihex xigspsihiy Rri35Q@exhvis sxevsh Rri35QQiewre pesvihhiy xiyuyfviw Fypri yiesyxei ysfviyxrs iew Rriiiixy ixyqrfppi eesvefviyvegi exyqysxqwieqi yxriixhii Fywieqirefiix ix Rriixhiis pvvFywieqi refiixix AxyuiA6c' evsgesyxsvvyshisxyuiA6' ex fievisviqev vsfesvvqixieisxyuiA6sx
hipsxi35Q7PPcS4S8QE3DD
hipsxi35Q7PPcFGE7QQ397
hipsxi35Q7PPcSFCFGUF
hipsxi35Q7PPc436@6D hipsxi35Q7PPcQRP73Ec83AD76
hipsxi35Q7PPcFG4S887PQ
hipsxi35Q7PPcIS7S7c8SDD
AxyuiA6Ric'
hipsxipy35Qiixgvei
ihipxsqxihry7ixRic' ihipgre4yyviex' ihipgreFvvi' hipsxi35QcGH7FcQRP73E hipsxi35QcGH7FcQRP73Ec5GF8 hipsxi35Qc5DGQ7cQRP73E hipsxi35Qc5DGQ7cQRP73Ec5GF8 hipsxi35Qc34GPRcQRP73E ! hipsxi35QcSFAT7PQ3Dc83ADSP7c5GF8 hipsxi35QcSFAT7PQ3Dc83ADSP7 # ihipixwQiewRic QRc5QR3) QRcG3E) QiewRic' ihipgreQiiA6cY %a' ihipgreDyqsxA6cY %a' ihipgreHehcY %a' ihipgre3FewicYa' ihipixwDiivc 35QcD7T7D) 35QcD7T7D) 35QcD7T7D) 35QcD7T7D ) Diivc' ihipgreTisyxcYa'
"
ihipg xsyx 35QSxsiev8esvi7ixcpesvi7ix' ' 35QSxyvsgsih7ix' ihipg AxyuiA6c xsyx 35QGixQiew5yxp7ixc 35Q5vyiQiew5yxp7ixc 35QSxsiev8esvi5yxp7ixc ' 35Q5yxpswesyx7ix'
CSTA'ET!0)#APS
cstaGetAPICaps( ) obtains the CSTA API function and event capabilities which are supported on an open CSTA stream. The stream could be a local PBX driver or a remote PBX Driver on a network. If a stream provides a CSTA service then it also provides the corresponding CSTA confirmation event. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic ge9i3HA5e 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM 4HIS SERVICE WILL RETURN IN ITS CONFIRMATION INFORMATION ABOUT THE #34! SERVICES AVAILABLE ON THIS STREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO
!PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!'ET!0)#APS#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION Comments )F THIS FUNCTION RETURNS WITH A 0/3)4)6%?!#+ THE REQUEST HAS BEEN FORWARDED TO THE 4ELEPHONY 3ERVER AND THE APPLICATION WILL RECEIVE AN INDICATION OF THE EXTENT OF #34! SERVICE SUPPORT IN THE #34!'ET!0)#APS#ONF%VENT !N ACTIVE !#3 3TREAM IS REQUIRED TO THE SERVER BEFORE THIS FUNCTION IS CALLED 4HE APPLICATION MAY USE THIS COMMAND TO DETERMINE WHICH FUNCTIONS AND EVENTS ARE SUPPORTED ON AN OPEN #34! STREAM 4HIS WILL AVOID UNNECESSARY NEGATIVE ACKNOWLEDGMENTS FROM THE 4ELEPHONY 3ERVER WHEN A SPECIFIC !0) FUNCTION OR EVENT IS NOT SUPPORTED
#34!'ET!0)#APS#ONF%VENT
This event is in response to the cstaGetAPICaps( ) function and it indicates which CSTA services are available on the CSTA stream. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE #34! $ATA 4YPES FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR39i3HA5e5yxp7ixcqi3HAge' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR39i3HA5e5yxp7ixc ryevixei5evv' ryexi5evv' rygevv5ywvisyx' rygvie5evv' rygvie5yxxigsyx' rygyxpiixgi5evv' rygyxvesyx5evv' ryhipvig5evv' rysgu5evv' ryqyHsgu5evv' ryryvh5evv' ryweui5evv' ryweuiHihsgsi5evv' ryiEs' ryi6xh' ryi8h' ryi3qixQei'
ryiDeFwfi' ryi6isgiAxpy' ryigyxxig5evv' ryisii5evv' ryiEs' ryi6xh' ryi8h' ryi3qixQei' ryexpi5evv' ryiixPiy' rygevv5vieih7ix' rygyxpiixgih7ix' rygyxxigsyx5vieih7ix' ryhivsiih7ix' ryhsiih7ix' ryiefvsrih7ix' rypesvih7ix' ryrivh7ix' ryxiyuPiegrih7ix' ryysqsxeih7ix' ryiih7ix' ryisiih7ix' ryisgiAxsseih7ix' ryexpiih7ix' rygevvAxpywesyx7ix' ryhyFy6sf7ix' rypyehsxq7ix' rywieqiUessxq7ix' ryvyqqihGx7ix' ryvyqqihGpp7ix' ryxyPieh7ix' ryieh7ix' ryyuFyPieh7ix' ryyuPieh7ix' ryfeguAxQisgi7ix' ryyGpQisgi7ix' rysei7ix' ryyiPii7ix' ryiPyi' ryyiQivig' ryyiSih7ix' ryyi7xh7ix' rywyxsy6isgi' rywyxsy5evv' rywyxsy5evvTse6isgi' rygrexqiEyxsy8svi' rywyxsyQy' rywyxsy7xhih' ryxery6isgiPi' ryxery5evvPi' ryigeiQisgi' ryseiQe7ix' ryigeiQisgi7ix' ryigeiQisgi5yxp' ryixhHsei7ix'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS A #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?'%4!0)?#!03?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!'ET!0)#APS#ONF%VENT getAPIcaps 4HIS STRUCTURE CONTAINS AN INTEGER FOR EACH POSSIBLE #34! CAPABILITY WHICH INDICATES WHETHER THE CAPABILITY IS SUPPORTED ! VALUE OF INDICATES THE CAPABILITY IS NOT SUPPORTED A POSITIVE VALUE INDICATES THAT IT IS SUPPORTED .OTE THAT DIFFERENT CAPABILITIES ARE SUPPORTED ON DIFFERENT STREAM VERSIONS 4HIS PARAMETER SHOWS WHAT CAPABILITIES ARE SUPPORTED ON THE STREAM WHERE THE CONFIRMATION HAS BEEN RECEIVED 3TREAMS USING OTHER VERSIONS MAY SUPPORT A DIFFERENT CAPABILITY SET Comments 4HIS EVENT WILL PROVIDE THE APPLICATION WITH COMPATIBILITY INFORMATION FOR A SPECIFIC 4ELEPHONY 3ERVER ON A COMMANDEVENT BASIS !LL THE COMMANDS AND EVENTS SUPPORTED BY A 4ELEPHONY 3ERVER MUST BE SUPPORTED AS DEFINED IN THIS DOCUMENT
CSTA'ET$EVICE,IST
This is used to obtain the list of Devices that can be controlled, monitored, queried or routed for the ACS Stream indicated by the acsHandle. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic ge9i6isgiDs 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 vyxq sxhi 5QR3Diivc viiv
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S index 4HE SECURITY DATA BASE COULD CONTAIN A LARGE NUMBER OF DEVICES THAT A USER HAS PRIVILEGE OVER SO THIS !0) CALL WILL RETURN ONLY #34!?-!8?'%4$%6)#% DEVICES IN ANY ONE #34!'ET$EVICE,IST#ONF%VENT WHICH MEANS SEVERAL CALLS TO CSTA'ET$EVICE,IST MAY BE NECESSARY TO RETRIEVE ALL THE DEVICES )NDEX SHOULD BE SET OF THE FIRST TIME THIS !0) IS CALLED AND THEN SET TO THE VALUE OF )NDEX RETURNED IN THE CONFIRMATION EVENT )NDEX WILL BE SET BACK TO IN THE #34!'ET$EVICE,IST#ONF%VENT WHICH CONTAINS THE LAST BATCH OF DEVICES
level 4HIS PARAMETER SPECIFIES THE CLASS OF SERVICE FOR WHICH THE USER WANTS TO KNOW THE SET OF DEVICES THAT CAN BE CONTROLLED VIA THIS !#3 STREAM LEVEL MUST BE SET TO ONE OF THE FOLLOWING
ihipixw5QR3Diivc 5QR3c@GE7cUGPCcRGH) 5QR3c3U3WcUGPCcRGH) 5QR3c67TA57c67TA57cEGFARGP) 5QR3c53DDc67TA57cEGFARGP) 5QR3c53DDc5GFRPGD)! 5QR3cPGSRAF9)" 5QR3c53DDc53DDcEGFARGP)# 5QR3Diivc'
.OTE
The level CSTA_CALL_CALL_MONITOR is not supported by the CSTAGetDeviceList() call. To determine if an ACS stream has permission to do call/call monitoring, use the API call CSTAQueryCallMonitor( ).
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!'ET$EVICE,IST#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION
!#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION
#34!'ET$EVICE,IST#ONF%VENT
This event is in response to the cstaGetDeviceList( ) function and it provide a list of the devices which can be controlled for the indicated ACS Level. It is also possible to receive an ACSUniversalFailureConf event in response to a cstaGetDeviceList() call. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR39i6isgiDs5yxp7ixcqi6isgiDs' ' ge5yxpswesyx' iix' 5QR37ixc' ihipixwQ64Diivc FGcQ64c5@75CAF9) 35QcGFDW) 35Qc3F6c5QR3c5@75CAF9) Q64Diivc' ihipg5QR39i6isgiDsc vyxqsxhi' 5QR3Diivcviiv' 5QR39i6isgiDsc' ihipg6isgiDs
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN !#3 CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?'%4?$%6)#%?,)34?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!'ET$EVICE,IST#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION )T IS USED TO MATCH A SPECIFIC FUNCTION REQUEST WITH ITS CONFIRMATION EVENTS driverSdbLevel 4HIS PARAMETER INDICATES THE 3ECURITY ,EVEL WITH WHICH THE $RIVER REGISTERED 0OSSIBLE VALUES ARE
FGcQ64c5@75CAF9 FySih 35QcGFDW 5rigu35QGixQiewiiyxv
35Qc3F6c5QR3c5@75CAF9
5rigu35QGixQiewexhevv evsgefvi5QR3wieqi
index 4HIS PARAMETER INDICATES TO THE CLIENT APPLICATION THE CURRENT INDEX THE 4SERVER IS USING FOR RETURNING THE LIST OF DEVICES 4HE CLIENT APPLICATION SHOULD RETURN THIS VALUE IN THE NEXT CALL TO #34!'ET$EVICE,IST TO CONTINUE RECEIVING DEVICES ! VALUE OF INDICATES THERE ARE NO MORE DEVICES IN THE LIST
devlist 4HIS PARAMETER IS A STRUCTURE WHICH CONTAINS AN ARRAY OF $EVICE)$?T WHICH CONTAIN THE DEVICES FOR THIS STREAM
CSTA1UERY#ALL-ONITOR
This is used to determine the if a given ACS stream has permission to do call/call monitoring in the security database. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic geIi5evvEyxsy 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE
4HE APPLICATION SHOULD ALWAYS CHECK THE #34!1UERY#ALL-ONITOR #ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN AC KNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS INDICATES THAT THE ACS(ANDLE BEING USED IS NOT A VALID HANDLE FOR AN ACTIVE !#3 3TREAM .O CHANGES OCCUR IN ANY EXISTING STREAMS IF A BAD HANDLE IS PASSED WITH THIS FUNCTION
#34!1UERY#ALL-ONITOR#ONF%VENT
This event is in response to the cstaQueryCallMonitor( ) function and it provide a list of the devices which can be controlled for the indicated ACS Level. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE THE !#3 $ATA 4YPES AND #34! $ATA 4YPES SECTIONS FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Ii5evvEyxsy5yxp7ixci5evvEyxsy' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Ii5evvEyxsy5yxp7ixc 4yyviexgevvEyxsy' 5QR3Ii5evvEyxsy5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN !#3 CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?15%29?#!,,?-/.)4/2? #/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UERY#ALL-ON ITOR#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION )T IS USED TO MATCH A SPECIFIC FUNCTION REQUEST WITH ITS CONFIRMATION EVENTS callMonitor 4HIS PARAMETER INDICATES WHETHER OR NOT 425% OR &!,3% THE !#3 3TREAM HAS CALLCALL MONITORING PRIVILEGE
The CSTAEvent_t structure then consists of a union of the four possible eventClass types; ACS confirmation, ACS unsolicited, CSTA confirmation or CSTA unsolicited event. Each eventClass type itself consists of a union of all the possible eventTypes for that class. Each eventClass may contain common information such as invokeID and monitorCrossRefID.
5QR35yxyvQisgi@iehi8svi(5QR3@0 sxgvhi(egr0 hipsxipy5QR3iixgvei hipsxi hipsxi hipsxi hipsxi 5QR3P7IS7QR 5QR3SFQGDA5AR76 5QR35GF8APE3RAGF 5QR37T7FRP7HGPR
! "
ihipg AxyuiA6c xsyx 5QR3PyiPii7ixc 5QR3PyiPii77ixc 5QR3PiPyiPiic 5QR37geiQgPi7ixc 5QR3QQePi7ixc ' 5QR3Pii7ix' ihipg xsyx 5QR3PyiPiqsi3fy7ixc 5QR3PyiSih7ixc 5QR3PyiSih77ixc 5QR3Pyi7xh7ixc 5QR3Hsei7ixc 5QR3QQe7ixc 5QR3QQe7xhih7ixc ' 5QR37ixPiy'
ihipg 5QR3Eyxsy5yPipA6cwyxsy5yPipAh' xsyx 5QR35evv5vieih7ixc 5QR35yxpiixgih7ixc 5QR35yxxigsyx5vieih7ixc 5QR36ivsiih7ixc 5QR36siih7ixc 5QR37efvsrih7ixc 5QR38esvih7ixc 5QR3@ivh7ixc 5QR3FiyuPiegrih7ixc 5QR3Gsqsxeih7ixc 5QR3Iiih7ixc 5QR3Pisiih7ixc 5QR3QisgiAxsseih7ixc 5QR3Rexpiih7ixc 5QR35evvAxpywesyx7ixc 5QR36yFy6sf7ixc 5QR38yehsxq7ixc 5QR3EieqiUessxq7ixc 5QR3DyqqihGx7ixc 5QR3DyqqihGpp7ixc 5QR3FyPieh7ixc 5QR3Pieh7ixc 5QR3UyuFyPieh7ixc 5QR3UyuPieh7ixc 5QR34eguAxQisgi7ixc 5QR3GGpQisgi7ixc 5QR3HseiQe7ixc 5QR3Eyxsy7xhih7ixc ' 5QR3Sxyvsgsih7ix'
gevv5vieih' gyxpiixgih' gyxxigsyx5vieih' hivsiih' hsiih' iefvsrih' pesvih' rivh' xiyuPiegrih' ysqsxeih' iih' isiih' isgiAxsseih' expiih' gevvAxpywesyx' hyFy6sf' pyehsxq' wieqiUessxq' vyqqihGx' vyqqihGpp' xyPieh' ieh' yuFyPieh' yuPieh' feguAxQisgi' yGpQisgi' seiQe' wyxsy7xhih'
ihipg AxyuiA6csxyuiA6' xsyx 5QR33vixei5evv5yxp7ixc 5QR33xi5evv5yxp7ixc 5QR35evv5ywvisyx5yxp7ixc 5QR35vie5evv5yxp7ixc 5QR35vie5yxxigsyx5yxp7ixc 5QR35yxpiixgi5evv5yxp7ixc 5QR35yxvesyx5evv5yxp7ixc 5QR36ipvig5evv5yxp7ixc 5QR3Hsgu5evv5yxp7ixc 5QR39yHsgu5evv5yxp7ixc 5QR3@yvh5evv5yxp7ixc 5QR3Eeui5evv5yxp7ixc 5QR3EeuiHihsgsi5evv5yxp7ixc 5QR3IiEs5yxp7ixc 5QR3Ii6xh5yxp7ixc 5QR3Ii8h5yxp7ixc 5QR3Ii3qixQei5yxp7ixc 5QR3IiDeFwfi5yxp7ixc 5QR3Ii6isgiAxpy5yxp7ixc 5QR3Pigyxxig5evv5yxp7ixc 5QR3Pisii5evv5yxp7ixc 5QR3QiEs5yxp7ixc 5QR3Qi6xh5yxp7ixc 5QR3Qi8h5yxp7ixc 5QR3Qi3qixQei5yxp7ixc 5QR3Rexpi5evv5yxp7ixc 5QR3Sxsiev8esvi5yxp7ixc 5QR3Eyxsy5yxp7ixc 5QR35rexqiEyxsy8svi5yxp7ixc 5QR3EyxsyQy5yxp7ixc 5QR3Qxery6isgi5yxp7ixc 5QR3Qxery5evv5yxp7ixc 5QR3PyiPiqsiPi5yxp7ixc 5QR3PyiPiqsi5exgiv5yxp7ixc 5QR37geiQg5yxp7ixc 5QR3QQePi5yxp7ixc 5QR3QQQeQe5yxp7ixc 5QR3QQeQy5yxp7ixc 5QR35rexqiQQe8svi5yxp7ixc 5QR39i3HA5e5yxp7ixc 5QR39i6isgiDs5yxp7ixc 5QR3Ii5evvEyxsy5yxp7ixc ' 5QR35yxpswesyx7ix' hipsxi5QR3cE3Vc@73H
evixei5evv' exi5evv' gevv5ywvisyx' gvie5evv' gvie5yxxigsyx' gyxpiixgi5evv' gyxvesyx5evv' hipvig5evv' sgu5evv' qyHsgu5evv' ryvh5evv' weui5evv' weuiHihsgsi5evv' iEs' i6xh' i8h' i3qixQei' iDeFwfi' i6isgiAxpy' igyxxig5evv' isii5evv' iEs' i6xh' i8h' i3qixQei' expi5evv' xsiev8esvi' wyxsyQe' grexqiEyxsy8svi' wyxsyQy' xery6isgi' xery5evv' yiPiqsi' yi5exgiv' igeiQisgi' QePi' QeQe' QeQy' grexqiQQe8svi' qi3HA5e' qi6isgiDs' i5evvEyxsy'
ihipg 35Q7ix@iehic iix@iehi' xsyx 35QSxyvsgsih7ix 35Q5yxpswesyx7ix 5QR3Pii7ix 5QR3Sxyvsgsih7ix 5QR35yxpswesyx7ix iix' grerieY5QR3cE3Vc@73Ha' 5QR37ixc
Chapter
This section describes Telephony Services. Applications use Telephony Services to control calls and activate switch features. Switching Functions Services are divided into Basic Call Control Services and Telephony Supplementary Services.
Each Basic Call Control Service request has an associated confirmation event message. The confirmation message returns the status and other servicespecific information to the application. TSAPI always returns confirmation event messages for successful function calls. If TSAPI cannot successfully process a function call then u u TSAPI does not send the service request to the PBX Driver TSAPI does not generate a confirmation event
As noted in Chapter 4, section Sending CSTA Requests and Responses, the application sets the invokeID type (when it opens the stream) to either library generated or application generated. As described in that section, applications may use application generated invokeIDs to index into data structures in various ways. The application may also use the invokeID to match results with specific service requests. When TSAPI successfully processes an application request, TSAPI sends the application a confirmation event. This conformation means that TSAPI has successfully processed the request, not that the PBX driver or PBX has successfully processed the request. For example, TSAPI will send an application a CSTAMakeCallConfEvent after TSAPI (not the PBX) successfully processes a cstaMakeCall( ) request. Further information from the PBX Driver or PBX will arrive in call events or unsolicited status events. An application interested in the results of a request should check for a function confirmation event and any applicable unsolicited status events (see Status Reporting Services). To receive events, an application must have an active ACS Stream and an implement an event handling mechanism. Further, the reception of unsolicited events requires an active monitor. See the Control Services and Status Reporting Services sections for more information on events.
.OTE
Not every Driver implementation will support all Telephony functions. The application should use the cstaGetAPICaps function to determine which Telephony Services are supported.
#34!5NIVERSAL&AILURE#ONF%VENT
The CSTA universal failure confirmation event provides a generic negative response from the server/switch for a previous requested service. The CSTAUniversalFailureConfEvent will be sent in place of any confirmation event described in this section when the requested function fails. The confirmation events defined for each Switching Function in this section are only sent when that function completes successfully. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN #HAPTER FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Sxsiev8esvi5yxp7ixxsiev8esvi' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg Sxsiev8esvic iy' 5QR3Sxsiev8esvi5yxp7ixc' ihipixw5QR3Sxsiev8esvic 97F7PA5cSFQH75A8A76) 97F7PA5cGH7P3RAGF) P7IS7QRcAF5GEH3RA4D7cUAR@cG4B75R) T3DS7cGSRcG8cP3F97) G4B75RcFGRcCFGUF) AFT3DA6c53DDAF9c67TA57)!
AFT3DA6c53DD76c67TA57)" AFT3DA6c8GPU3P6AF9c67QRAF3RAGF)# HPATAD797cTAGD3RAGFcGFcQH75A8A76c67TA57)$ HPATAD797cTAGD3RAGFcGFc53DD76c67TA57)% HPATAD797cTAGD3RAGFcGFc53DDAF9c67TA57) AFT3DA6c5QR3c53DDcA67FRA8A7P) AFT3DA6c5QR3c67TA57cA67FRA8A7P) AFT3DA6c5QR3c5GFF75RAGFcA67FRA8A7P) AFT3DA6c67QRAF3RAGF) AFT3DA6c873RSP7)! AFT3DA6c3DDG53RAGFcQR3R7)" AFT3DA6c5PGQQcP78cA6)# AFT3DA6cG4B75RcRWH7)$ Q75SPARWcTAGD3RAGF)% 97F7PA5cQR3R7cAF5GEH3RA4ADARW) AFT3DA6cG4B75RcQR3R7) AFT3DA6c5GFF75RAGFcA6c8GPc35RAT7c53DD) FGc35RAT7c53DD) FGc@7D6c53DD)! FGc53DDcRGc5D73P)" FGc5GFF75RAGFcRGc5D73P)# FGc53DDcRGc3FQU7P)$ FGc53DDcRGc5GEHD7R7)% 97F7PA5cQWQR7EcP7QGSP57c3T3AD34ADARW) Q7PTA57c4SQW) P7QGSP57c4SQW) P7QGSP57cGSRcG8cQ7PTA57) F7RUGPCc4SQW)! F7RUGPCcGSRcG8cQ7PTA57)" GT7P3DDcEGFARGPcDAEARc7V577676)# 5GF87P7F57cE7E47PcDAEARc7V577676)$ 97F7PA5cQS4Q5PA476cP7QGSP57c3T3AD34ADARW) G4B75RcEGFARGPcDAEARc7V577676) 7VR7PF3DcRPSFCcDAEARc7V577676) GSRQR3F6AF9cP7IS7QRcDAEARc7V577676) 97F7PA5cH7P8GPE3F57cE3F397E7FR)! H7P8GPE3F57cDAEARc7V577676)! SFQH75A8A76cQ75SPARWc7PPGP)" Q7IS7F57cFSE47PcTAGD3R76)" RAE7cQR3EHcTAGD3R76)" H35cTAGD3R76)" Q73DcTAGD3R76)" 97F7PA5cSFQH75A8A76cP7B75RAGF)# 97F7PA5cGH7P3RAGFcP7B75RAGF)# 6SHDA53R7cAFTG53RAGFcP7B75RAGF)# SFP75G9FAX76cGH7P3RAGFcP7B75RAGF)# EAQRWH76c3P9SE7FRcP7B75RAGF)# P7QGSP57cDAEAR3RAGFcP7B75RAGF)#! 35Qc@3F6D7cR7PEAF3RAGFcP7B75RAGF)#" Q7PTA57cR7PEAF3RAGFcP7B75RAGF)## P7IS7QRcRAE7GSRcP7B75RAGF)#$ P7IS7QRQcGFc67TA57c7V577676cP7B75RAGF)#% SFP75G9FAX76c3H6ScP7B75RAGF)$ EAQRWH76c3H6ScP7B75RAGF)$ 436DWcQRPS5RSP76c3H6ScP7B75RAGF)$
AFARA3RGPcP7D73QAF9cP7B75RAGF)$ SFP75G9FAX76cDAFC76A6cP7B75RAGF)$ DAFC76cP7QHGFQ7cSF7VH75R76cP7B75RAGF)$! SF7VH75R76c5@AD6cGH7P3RAGFcP7B75RAGF)$" EAQRWH76cP7QSDRcP7B75RAGF)$# SFP75G9FAX76c7PPGPcP7B75RAGF)$$ SF7VH75R76c7PPGPcP7B75RAGF)$% EAQRWH76cH3P3E7R7PcP7B75RAGF)% FGFcQR3F63P6) 5QR3Sxsiev8esvic'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS TAG WITH A VALUE #34!?5.)6%23!,?&!),52%?#/.& IDENTIFIES THIS MESSAGE AS AN #34!5NIVERSAL&AILURE#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE THAT HAS FAILED AT THE SERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE error 4HIS PARAMETER CONTAINS AN ERROR VALUE FROM ONE OF THE FOLLOWING CLASSES 5NSPECIFIED /PERATION 3TATE )NCOMPATIBILITY 3YSTEM 2ESOURCE 3UBSCRIBED 2ESOURCE 0ERFORMANCE -ANAGEMENT OR 3ECURITY 4HE HEADINGS THE FOLLOW CONTAIN THE SPECIFIC ERRORS IN THESE CLASSES Unspecified Errors %RROR VALUES IN THIS CATEGORY INDICATE THAT AN ERROR HAS OCCURRED THAT IS NOT AMONG THE OTHER ERROR TYPES 4HIS TYPE INCLUDES THE FOLLOWING SPECIFIC ERROR VALUES
'%.%2)#?5.30%#)&)%$ '%.%2)#?5.30%#)&)%$?2%*%#4)/. Operation errors %RROR VALUES IN THIS CATEGORY INDICATE THAT THERE IS AN ERROR IN THE 3ERVICE 2EQUEST 4HIS TYPE INCLUDES ONE OF THE FOLLOWING SPECIFIC ERROR VALUES '%.%2)#?/0%2!4)/. '%.%2)#?/0%2!4)/.?2%*%#4)/. 4HIS ERROR INDICATE THAT THE SERVER HAS DETECTED AN ERROR IN THE OPERATION CLASS BUT THAT IT IS NOT ONE OF THE DEFINED ERRORS OR THE SERVER CANNOT BE ANY MORE SPECIFIC 2%15%34?).#/-0!4)",%?7)4(?/"*%#4 4HE REQUEST IS NOT COMPATIBLE WITH THE OBJECT $50,)#!4%?).6/#!4)/. 4HE INVOKE)$ VIOLATES 8 OR 8 ASSIGNMENT RULES 5.2%#/'.):%$?/0%2!4)/.?2%*%#4)/. 4HE OPERATION IS NOT DEFINED IN 43!0) 6!,5%?/54?/&?2!.'% 4HE PARAMETER HAS A VALUE THAT IS NOT IN THE RANGE DEFINED FOR THE SERVER /"*%#4?./4?+./7. 4HE PARAMETER HAS A VALUE THAT IS NOT KNOWN TO THE SERVER ).6!,)$?#!,,).'?$%6)#% 4HE CALLING DEVICE IS NOT VALID ).6!,)$?#!,,%$?$%6)#% 4HE CALLED DEVICE IS NOT VALID 02)6),%'%?6)/,!4)/.?/.?30%#)&)%$?$%6)#% 4HE REQUEST CANNOT BE PROVIDED BECAUSE THE SPECIFIED DEVICE IS NOT AUTHORIZED FOR THE 3ERVICE
).6!,)$?&/27!2$).'?$%34).!4)/. 4HE REQUEST CANNOT BE PROVIDED BECAUSE THE FORWARDING DESTINATION DEVICE IS NOT VALID 02)6),%'%?6)/,!4)/.?/.?#!,,%$?$%6)#% 4HE REQUEST CANNOT BE PROVIDED BECAUSE THE CALLED DEVICE IS NOT AUTHORIZED FOR THE 3ERVICE 02)6),%'%?6)/,!4)/.?/.?#!,,).'?$%6)#% 4HE REQUEST CANNOT BE PROVIDED BECAUSE THE CALLING DEVICE IS NOT AUTHORIZED FOR THE 3ERVICE ).6!,)$?#34!?#!,,?)$%.4)&)%2 4HE CALL IDENTIFIER IS NOT VALID ).6!,)$?#34!?$%6)#%?)$%.4)&)%2 4HE $EVICE )DENTIFIER IS NOT VALID ).6!,)$?#34!?#/..%#4)/.?)$%.4)&)%2 4HE #ONNECTION IDENTIFIER IS NOT VALID ).6!,)$?$%34).!4)/. 4HE 3ERVICE 2EQUEST SPECIFIED A DESTINATION THAT IS NOT VALID ).6!,)$?&%!452% 4HE 3ERVICE 2EQUEST SPECIFIED A FEATURE THAT IS NOT VALID ).6!,)$?!,,/#!4)/.?34!4% 4HE 3ERVICE 2EQUEST INDICATED AN ALLOCATION CONDITION THAT IS NOT VALID ).6!,)$?#2/33?2%&?)$ 4HE 3ERVICE 2EQUEST SPECIFIED A #ROSS 2EFERENCE )D THAT IS NOT IN USE AT THIS TIME ).6!,)$?/"*%#4?490% 4HE 3ERVICE 2EQUEST SPECIFIED AN OBJECT TYPE THAT IS OUTSIDE THE RANGE OF VALID OBJECT TYPES FOR THE 3ERVICE 3%#52)49?6)/,!4)/. 4HE REQUEST VIOLATES A SECURITY REQUIREMENT
State incompatibility errors %RROR VALUES IN THIS CATEGORY INDICATE THAT THE 3ERVICE 2EQUEST WAS NOT COMPATIBLE WITH THE CONDITION OF A RELATED #34! OBJECT 4HIS TYPE INCLUDES THE FOLLOWING SPECIFIC ERROR VALUES '%.%2)#?34!4%?).#/-0!4)"),)49 4HE SERVER IS UNABLE TO BE ANY MORE SPECIFIC ).6!,)$?/"*%#4?34!4% 4HE OBJECT IS IN THE INCORRECT STATE FOR THE 3ERVICE 4HIS GENERAL ERROR VALUE MAY BE USED WHEN THE SERVER ISN T ABLE TO BE ANY MORE SPECIFIC ).6!,)$?#/..%#4)/.?)$?&/2?!#4)6%?#!,, 4HE #ONNECTION IDENTIFIER SPECIFIED IN THE !CTIVE #ALL PARAMETER OF THE REQUEST IS NOT IN THE CORRECT STATE ./?!#4)6%?#!,, 4HE REQUESTED 3ERVICE OPERATES ON AN ACTIVE CALL BUT THERE IS NO ACTIVE CALL ./?(%,$?#!,, 4HE REQUESTED 3ERVICE OPERATES ON A HELD CALL BUT THE SPECIFIED CALL IS NOT IN THE (ELD STATE ./?#!,,?4/?#,%!2 4HERE IS NO CALL ASSOCIATED WITH THE #34! #ONNECTION IDENTIFIER OF THE #LEAR #ALL REQUEST ./?#/..%#4)/.?4/?#,%!2 4HERE IS NO #ONNECTION FOR THE #34! #ONNECTION IDENTIFIER SPECIFIED AS #ONNECTION 4O "E #LEARED ./?#!,,?4/?!.37%2 4HERE IS NO CALL ACTIVE FOR THE #34! #ONNECTION IDENTIFIER SPECIFIED AS #ALL 4O "E !NSWERED ./?#!,,?4/?#/-0,%4% 4HERE IS NO CALL ACTIVE FOR THE #34! #ONNECTION IDENTIFIER SPECIFIED AS #ALL 4O "E #OMPLETED
System resource availability errors %RROR VALUES IN THIS CATEGORY INDICATE THAT THE 3ERVICE 2EQUEST CANNOT BE COMPLETED BECAUSE OF A LACK OF SYSTEM RESOURCES WITHIN THE SERVING SUB DOMAIN 4HIS TYPE INCLUDES ONE OF THE FOLLOWING SPECIFIC ERROR VALUES '%.%2)#?3934%-?2%3/52#%?!6!),!"),)49 4HE SERVER IS UNABLE TO BE ANY MORE SPECIFIC 3%26)#%?"539 4HE 3ERVICE IS SUPPORTED BY THE SERVER BUT IS TEMPORARILY UNAVAILABLE 2%3/52#%?"539 !N INTERNAL RESOURCE IS BUSY 4HERE IS HIGH PROBABILITY THAT THE 3ERVICE WILL SUCCEED IF RETRIED 2%3/52#%?/54?/&?3%26)#% 4HE 3ERVICE REQUIRES A RESOURCE THAT IS /UT /F 3ERVICE ! 3ERVICE 2EQUEST THAT ENCOUNTERS THIS CONDITION COULD INITIATE SYSTEM PROBLEM DETERMINATION ACTIONS EG NOTIFICATION OF THE NETWORK ADMINISTRATOR .%47/2+?"539 4HE SERVER SUB DOMAIN IS BUSY .%47/2+?/54?/&?3%26)#% 4HE SERVER SUB DOMAIN IS /UT /F 3ERVICE /6%2!,,?-/.)4/2?,)-)4?%8#%%$%$ 4HIS REQUEST WOULD EXCEED THE SERVER S OVERALL LIMIT OF MONITORS #/.&%2%.#%?-%-"%2?,)-)4?%8#%%$%$ 4HIS REQUEST WOULD EXCEED THE SERVER S LIMIT ON THE NUMBER OF MEMBERS OF A CONFERENCE Subscribed resource availability errors %RROR VALUES IN THIS CATEGORY INDICATE THAT THE 3ERVICE 2EQUEST CANNOT BE COMPLETED BECAUSE A REQUIRED RESOURCE MUST BE PURCHASED OR CONTRACTED BY THE CLIENT SYSTEM 4HIS TYPE INCLUDES THE FOLLOWING SPECIFIC ERROR VALUES
'%.%2)#?35"3#2)"%$?2%3/52#%?!6!),!"),)49 4HE SERVER IS UNABLE TO BE ANY MORE SPECIFIC /"*%#4?-/.)4/2?,)-)4?%8#%%$%$ 4HIS REQUEST WOULD EXCEED THE SERVER S LIMIT OF MONITORS FOR THE SPECIFIED OBJECT %84%2.!,?425.+?,)-)4?%8#%%$%$ 4HE LIMIT OF EXTERNAL TRUNKS WOULD BE EXCEEDED BY THIS REQUEST /5434!.$).'?2%15%34?,)-)4?%8#%%$%$ 4HE LIMIT OF OUTSTANDING REQUESTS WOULD BE EXCEEDED BY THIS REQUEST Performance management errors %RROR VALUES IN THIS CATEGORY INDICATE THAT AN ERROR HAS BEEN RETURNED AS A PERFORMANCE MANAGEMENT MECHANISM 4HIS TYPE INCLUDES THE FOLLOWING SPECIFIC ERROR VALUES '%.%2)#?0%2&/2-!.#%?-!.!'%-%.4 4HE SERVER IS UNABLE TO BE ANY MORE SPECIFIC 0%2&/2-!.#%?,)-)4?%8#%%$%$ ! PERFORMANCE LIMIT IS EXCEEDED Security errors %RROR VALUES IN THIS CATEGORY INDICATE THAT THERE IS A SECURITY ERROR 4HIS TYPE INCLUDES THE FOLLOWING SPECIFIC ERROR VALUES 5.30%#)&)%$?3%#52)49?%22/2 4HE SERVER IS UNABLE TO BE ANY MORE SPECIFIC 3%15%.#%?.5-"%2?6)/,!4%$ 4HIS ERROR INDICATES THAT THE SERVER HAS DETECTED AN ERROR IN THE 3EQUENCE .UMBER OF THE OPERATION 4)-%?34!-0?6)/,!4%$ 4HIS ERROR INDICATES THAT THE SERVER HAS DETECTED AN ERROR IN THE 4IME 3TAMP OF THE OPERATION
0!#?6)/,!4%$ 4HIS ERROR INDICATES THAT THE SERVER HAS DETECTED AN ERROR IN THE 0!# OF THE OPERATION 3%!,?6)/,!4%$ 4HIS ERROR INDICATES THAT THE SERVER HAS DETECTED AN ERROR IN THE 3EAL OF THE OPERATION CSTA Driver Interface Errors 4HESE ERRORS DERIVE FROM THE 2EMOTE /PERATIONS ##)44 3PECIFICATION 8 AND MAY OCCUR WHEN A 0"8 $RIVER USES THE #34! INTERFACE TO THE 4ELEPHONY 3ERVICES 5.2%#/'.):%$?!0$5?2%*%#4)/. 4HE GIVEN TYPE OF THE !0$5 IS NOT DEFINED IN THE PROTOCOL -)3490%$?!0$5?2%*%#4)/. 4HE STRUCTURE OF THE !0$5 DOES NOT CONFORM TO THE PROTOCOL "!$,9 3425#452%$?!0$5?2%*%#4)/. !0$5 DOES NOT CONFORM TO 8 OR 8 STANDARD ENCODING ).)4)!4/2 2%,%!3).'?2%*%#4)/. 4HE REQUESTER IS NOT WILLING TO DO THE INVOKED OPERATION BECAUSE IT IS ABOUT TO RELEASE THE STREAM 5.2%#/'.):%$?,).+%$)$?2%*%#4)/. 4HERE IS NO OPERATION IN PROGRESS WITH AN INVOKE )$ EQUAL TO THE SPECIFIED LINK )$ ,).+%$?2%30/.3%?5.%80%#4%$?2%*%#4)/. 4HE INVOKED OPERATION THAT THE LINKED )$ REFERS TO IS NOT A PARENT OPERATION 5.%80%#4%$?#(),$?/0%2!4)/.?2%*%#4)/. 4HE LINKED )$ REFERS TO A PARENT OPERATION THAT DOES NOT ALLOW THE INVOKED OPERATION
-)3490%$?2%35,4?2%*%#4)/. 4HE TYPE OF THE 2ESULT PARAMETER DOES NOT CONFORM TO THE PROTOCOL 5.2%#/'.):%$?%22/2?2%*%#4)/. 4HE REPORTED ERROR IS NOT IN THE PROTOCOL DEFINITION 5.%80%#4%$?%22/2?2%*%#4)/. 4HE REPORTED ERROR IS NOT ONE THAT THE OPERATION MAY REPORT -)3490%$?!2'5-%.4?2%*%#4)/. -)3490%$?0!2!-%4%2?2%*%#4)/. 4HE TYPE OF A SUPPLIED ERROR PARAMETER IS NOT CONSISTENT WITH THE PROTOCOL SPECIFICATION TSAPI 4HE ERROR CODES BELOW CAN OCCUR WITHIN THE 43!0) IMPLEMENTATION OF THE %#-! #34! STANDARDS 4HE %#-! STANDARDS DO NOT DEFINE THESE ERRORS 2%3/52#%?,)-)4!4)/.?2%*%#4)/. ! 4ELEPHONY 3ERVER OR 0"8 $RIVER RESOURCE LIMITATION PREVENTS THE SYSTEM FROM PROCESSING THE APPLICATION REQUEST !#3?(!.$,%?4%2-).!4)/.?2%*%#4)/. 3%26)#%?4%2-).!4)/.?2%*%#4)/. 2%15%34?4)-%/54?2%*%#4)/. 2%15%343?/.?$%6)#%?%8#%%$%$?2%*%#4)/. Private Data )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA!LTERNATE#ALL
4HE !LTERNATE #ALL 3ERVICE PROVIDES A HIGHER
LEVEL COMPOUND ACTION OF THE (OLD #ALL 3ERVICE FOLLOWED BY 2ETRIEVE #ALL 3ERVICE 4HIS FUNCTION WILL PLACE AN EXISTING ACTIVE CALL ON HOLD AND THEN EITHER RETRIEVES A PREVIOUSLY HELD CALL OR CONNECTS AN ALERTING CALL AT THE SAME DEVICE Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge3vixei5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c egsi5evv 5yxxigsyxA6c yri5evv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S activeCall 4HIS PARAMETER POINTS TO THE CONNECTION IDENTIFIER FOR THE #ONNECTED OR ACTIVE CALL WHICH IS TO BE ALTERNATED otherCall 4HIS PARAMETER POINTS TO THE CONNECTION IDENTIFIER FOR THE !LERTING OR (ELD CALL WHICH IS TO BE ALTERNATED
privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!!LTERNATE#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments ! SUCCESSFUL CALL TO THIS FUNCTION WILL CAUSES THE HELD OR DELIVERED CALL TO BE SWAPPED WITH THE ACTIVE CALL
!S SHOWN IN THE FIGURE BELOW THE !LTERNATE #ALL 3ERVICE PLACES THE USER S ACTIVE CALL TO DEVICE $ ON HOLD AND IN A COMBINED ACTION ESTABLISHES OR RETRIEVES THE CALL BETWEEN DEVICE $ AND DEVICE $ AS THE ACTIVE CALL $EVICE $ CAN BE CONSIDERED AS BEING AUTOMATICALLY PLACED ON HOLD IMMEDIATELY PRIOR TO THE RETRIEVALESTABLISHMENT OF THE HELDACTIVE CALL TO DEVICE $ &IGURE SHOWS THE OPERATION OF THE !LTERNATE #ALL 3ERVICE
Figure 5-1
D1
C1
* *
D2
D1
C1
* *
D2
h/a
C2
D3
C2
D3
Before
After
#34!!LTERNATE#ALL#ONF%VENT
The Alternate Call confirmation event provides the positive response from the server for a previous alternate call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR33vixei5evv5yxp7ixc ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR33vixei5evv5yxp7ixc Fvvixvv' 5QR33vixei5evv5yxp7ixc'
evixei5evv'
Parameters acsHandle 3TREAM 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3
eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?!,4%2.!4%?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!!LTERNATE#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA!NSWER#ALL
The Answer Call function will connect an alerting call at the device which is alerting. The call must be associated with a device that can answer a call without requiring physical user manipulation. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge3xi5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c evisxq5evv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S alertingCall 4HIS PARAMETER POINTS TO THE CONNECTION IDENTIFIER OF THE CALL TO BE ANSWERED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!!NSWER#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HE !NSWER #ALL 3ERVICE WORKS FOR AN INCOMING CALL THAT IS ALERTING A DEVICE )N THE FOLLOWING FIGURE THE CALL # IS DELIVERED TO DEVICE $ 4HE CSTA!NSWER#ALL IS TYPICALLY USED WITH TELEPHONES THAT HAVE ATTACHED SPEAKERPHONE UNITS TO ESTABLISH THE CALL IN A HANDS FREE OPERATION
Figure 5-2
D1
C1
D2
D1
C1
D2
Before
After
#34!!NSWER#ALL#ONF%VENT
The Answer Call confirmation event provides the positive response from the server for a previous answer call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR33xi5evv5yxp7ixc ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR33xi5evv5yxp7ixc Fvvixvv' 5QR33xi5evv5yxp7ixc'
exi5evv'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?!.37%2?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!!NSWER#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA#ALL#OMPLETION
The Call Completion Service invokes specific switch features that may complete a call that would otherwise fail. The feature to be activated is passed as a parameter to the function. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge5evv5ywvisyx 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 8ieic piei 5yxxigsyxA6c gevv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION
GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY
GENERATED INVOKE )$S feature 3PECIFIES THE CALL COMPLETION FEATURE THAT IS DESIRED 4HESE INCLUDE
53EHcGFiirigevvxsvrihisgiseesvefvi 53DDc435Ciirigevvihhisgiy ix ri gevv rix s ix
yshvi
hisgi
Rrspieiisirieyseiiigsviiveriii
call 4HIS IS A POINTER TO A CONNECTION IDENTIFIER FOR THE CALL TO BE COMPLETED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!#ALL#OMPLETION#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
Comments 'ENERALLY THIS 3ERVICE IS INVOKED WHEN A CALL IS ESTABLISHED AND IT ENCOUNTERS A BUSY OR NO ANSWER AT THE FAR DEVICE 4HE #AMP /N FEATURE ALLOWS QUEUING FOR AVAILABILITY OF THE FAR END DEVICE 'ENERALLY #AMP /N MAKES THE CALLER WAIT UNTIL THE CALLED PARTY FINISHES THE CURRENT CALL AND ANY PREVIOUSLY CAMPED ON CALLS #ALL "ACK ALLOWS REQUESTING THE CALLED DEVICE TO RETURN THE CALL WHEN IT RETURNS TO IDLE #ALL "ACK WORKS MUCH LIKE #AMP /N BUT THE CALLER IS ALLOWED TO HANG UP AFTER INVOKING THE SERVICE AND THE #34! 3WITCHING &UNCTION CALLS BOTH PARTIES WHEN THE CALLED PARTY BECOMES FREE )NTRUDE ALLOWS THE CALLER TO BE ADDED INTO AN EXISTING CALL AT THE CALLED DEVICE
#34!#ALL#OMPLETION#ONF%VENT
The Call Completion confirmation event provides the positive response from the server for a previous call completion request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR35evv5ywvisyx5yxp7ixc gevv5ywvisyx' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR35evv5ywvisyx5yxp7ixc Fvvixvv' 5QR35evv5ywvisyx5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?#!,,?#/-0,%4)/.?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!#ALL#OMPLETION#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA#LEAR#ALL
The Clear Call Service releases all of the devices from the specified call, and eliminates the call itself. The call ceases to exist and the connection identifiers used for observation and manipulation are released. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge5vie5evv 35Q@exhvic AxyuiA6c 5yxxigsyxA6c Hsei6eec eg@exhvi sxyuiA6 gevv sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S call 4HIS IS A POINTER TO THE CONNECTION IDENTIFIER FOR THE CALL TO BE CLEARED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS
,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!#LEAR#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HIS FUNCTION WILL CAUSE EACH DEVICE ASSOCIATED WITH A CALL TO BE RELEASED AND THE #34! #ONNECTION )DENTIFIERS AND THEIR COMPONENTS ARE FREED &IGURE ILLUSTRATES THE RESULTS OF A #LEAR #ALL #34! #ONNECTION )$ #$ WHERE CALL # CONNECTS DEVICES $ $ AND $
Figure 5-3
D1
C1
D2
D1
D2
D3
D3
Before
After
#34!#LEAR#ALL#ONF%VENT
The Clear Call confirmation event provides the positive response from the server for a previous clear call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR35vie5evv5yxp7ixc gvie5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR35vie5evv5yxp7ixc Fvvixvv' 5QR35vie5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?#,%!2?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!#LEAR#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS CONFIRMATION INDICATES THAT ALL INSTANCES OF THE !#3 #ONNECTION )DENTIFIERS FOR ALL THE ENDPOINTS IN THE CALL AND IN THE CURRENT ASSOCIATION HAVE BECOME INVALID 4HE INSTANCES OF IDENTIFIERS SHOULD NOT BE USED TO REQUEST ADDITIONAL SERVICES OF THE 4ELEPHONY 3ERVER
CSTA#LEAR#ONNECTION
The Clear Connection Service releases the specified device from the designated call. The Connection is left in the Null state. Additionally, the CSTA Connection Identifier provided in the Service Request is released. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge5vie5yxxigsyx 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c gevv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S call 4HIS IS A POINTER TO THE CONNECTION IDENTIFIER FOR THE CONNECTION TO BE CLEARED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!#LEAR#ONNECTION#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HIS 3ERVICE RELEASES THE SPECIFIED #ONNECTION AND #34! #ONNECTION )DENTIFIER INSTANCE FROM THE DESIGNATED CALL 4HE RESULT IS AS IF THE DEVICE HAD HUNG UP ON THE CALL )T IS INTERESTING TO NOTE THAT THE PHONE MAY NOT BE PHYSICALLY RETURNED TO THE SWITCH HOOK WHICH MAY RESULT IN SILENCE DIAL TONE OR SOME OTHER CONDITION 'ENERALLY IF ONLY TWO #ONNECTIONS ARE IN THE CALL THE EFFECT OF CSTA#LEAR#ONNECTION FUNCTION IS THE SAME AS CSTA#LEAR#ALL
&IGURE IS AN EXAMPLE OF THE RESULTS OF A #LEAR #ONNECTION #34! #ONNECTION )D #$ WHERE CALL # CONNECTS DEVICES $ $ AND $ .OTE THAT IT IS LIKELY THAT THE CALL IS NOT CLEARED BY THIS 3ERVICE IF IT IS SOME TYPE OF CONFERENCE
Figure 5-4
D1
C1
D2
D1
C1
D2
*
Before
D3
D3
After
#34!#LEAR#ONNECTION#ONF%VENT
The Clear Connection confirmation event provides the positive response from the server for a previous clear connection request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR35vie5yxxigsyx5yxp7ixcgvie5yxxigsyx' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR35vie5yxxigsyx5yxp7ixc Fvvixvv' 5QR35vie5yxxigsyx5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS TAG WITH THE VALUE #34!?#,%!2?#/..%#4)/.?#/.& IDENTIFIES THIS MESSAGE AS AN #34!#LEAR#ONNECTION#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS CONFIRMATION EVENT INDICATES THAT THE INSTANCE OF THE !#3 #ONNECTION )DENTIFIER FOR THE CLEARED #ONNECTION IS RELEASED 4HE IDENTIFIER SHOULD NOT BE USED TO REQUEST ADDITIONAL SERVICES OF THE 4ELEPHONY 3ERVER
CSTA#ONFERENCE#ALL
This function provides the conference of an existing held call and another active call at a device. The two calls are merged into a single call and the two Connections at the conferencing device resolve into a single Connection in the Connected state. The pre-existing CSTA Connection Identifiers associated with the device creating the conference are released, and a new CSTA Connection Identifier for the resulting conferenced Connection is provided. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge5yxpiixgi5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c rivh5evv 5yxxigsyxA6c egsi5evv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S heldCall 4HIS IS A POINTER TO THE CONNECTION IDENTIFIER FOR THE CALL WHICH IS ON HOLD AND IS TO BE CONFERENCED WITH AN ACTIVE CALL activeCall 4HIS IS A POINTER TO THE CONNECTION IDENTIFIER FOR THE CALL WHICH IS ACTIVE OR PROCEEDING AND IS TO BE CONFERENCED WITH THE HELD CALL
privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!#ONFERENCE#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments &IGURE IS AN EXAMPLE OF THE STARTING CONDITIONS FOR THE CSTA#ONFERENCE#ALL FUNCTION WHICH ARE THE CALL # FROM $ TO $ IS IN THE HELD STATE ! CALL # FROM $ TO $ IS IN PROGRESS OR ACTIVE
Figure 5-5
D1
C1
* *
D2
D1
*
c
D2
C2
D3
C3
D3
Before
After
$ $ AND $ ARE CONFERENCED OR JOINED TOGETHER INTO A SINGLE CALL # 4HE VALUE OF THE #ONNECTION IDENTIFIER $# MAY BE THAT OF ONE OF THE #34! #ONNECTION )DENTIFIERS PROVIDED IN THE REQUEST $# OR $#
#34!#ONFERENCE#ALL#ONF%VENT
The Conference Call confirmation event provides the positive response from the server for a previous conference call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR35yxpiixgi5evv5yxp7ixcgyxpiixgi5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5yxxigsyxc 5yxxigsyxA6ce' Qftig6isgiA6cesg6isgi' 5yxxigsyxc' ihipg5yxxigsyxDs sxgyx' 5yxxigsyxcgyxxigsyx' 5yxxigsyxDsc' ihipg5QR35yxpiixgi5evv5yxp7ixc 5yxxigsyxA6cxi5evv' 5yxxigsyxDscgyxxDs' 5QR35yxpiixgi5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?#/.&%2%.#%?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!#ONFERENCE#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE newCall 4HIS PARAMETER SPECIFIES THE RESULTING CONNECTION IDENTIFIER FOR THE CALLS WHICH WERE CONFERENCED AT THE #ONFERENCING DEVICE 4HIS CONNECTION IDENTIFIER REPLACES THE TWO PREVIOUS CONNECTION IDENTIFIER AT THAT DEVICE connList 3PECIFIES THE RESULTING NUMBER OF KNOWN DEVICES IN THE CONFERENCE 4HIS FIELD CONTAINS A COUNT COUNT OF THE NUMBER OF DEVICES IN THE CONFERENCE AND A POINTER
CONNECTION TO AN ARRAY OF #ONNECTION?T STRUCTURES WHICH DEFINE EACH CONNECTION IN THE CALL %ACH #ONNECTION?T RECORD CONTAINS THE FOLLOWING 0ARTY
INDICATES THE #ONNECTION )$ OF THE PARTY IN THE CONFERENCE $EVICE
PROVIDES THE STATIC REFERENCE FOR THE PARTY IN THE CONFERENCE 4HIS PARAMETER MAY HAVE A VALUE THAT INDICATES THE STATIC IDENTIFIER IS NOT KNOWN
privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA#ONSULTATION#ALL
The cstaConsultationCall( ) function will provide the compound or combined action of the Hold Call service followed by Make Call service. This service places an existing active call at a device on hold and initiates a new call from the same device using a single function call. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge5yxvesyx5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c egsi5evv 6isgiA6c gevvih6isgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S activeCall 4HIS IS A POINTER TO THE CONNECTION IDENTIFIER FOR THE ACTIVE CALL WHICH IS TO BE PLACED ON HOLD BEFORE THE NEW CALL IS ESTABLISHED calledDevice 4HIS IS A POINTER TO THE DESTINATION DEVICE ADDRESS FOR THE NEW CALL TO BE ESTABLISHED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!#ONSULTATION#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED #OMMENTS 4HIS COMPOUND SERVICE ALLOWS THE APPLICATION TO PLACE AN EXISTING CALL ON HOLD AND AT THE SAME TIME ESTABLISH A NEW CALL TO ANOTHER DEVICE )N THIS CASE AN ACTIVE CALL # EXISTS AT $ SEE &IGURE AND A CONSULTATIVE CALL IS DESIRED TO $ !FTER THIS FUNCTION IS CALLED THE ORIGINAL ACTIVE CALL # IS PLACED ON HOLD AND A NEW CALL # IS PLACED TO DEVICE $
Figure 5-6
D1
C1
D2
D1
C1
D2
C2
D3
Before
After
#34!#ONSULTATION#ALL#ONF%VENT
The Consultation Call confirmation event provides the positive response from the server for a previous consultation call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR35yxvesyx5evv5yxp7ixcgyxvesyx5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR35yxvesyx5evv5yxp7ixc 5yxxigsyxA6cxi5evv' 5QR35yxvesyx5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS TAG WITH THE VALUE #34!?#/.35,4!4)/.?#!,,?#/.& IDENTIFIES THIS MESSAGE AS AN #34!#ONSULTATION#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE newCall 3PECIFIES THE #ONNECTION )$ FOR THE ORIGINATING CONNECTION OF THE NEW CALL ORIGINATED BY THE #ONSULTATION #ALL REQUEST privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA$EFLECT#ALL
The cstaDeflectCall( ) service takes an alerting call at a device and redirects the call to a given number. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge6ipvig5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c hipvig5evv 6isgiA6c gevvih6isgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S deflectCall 4HIS IS A POINTER TO THE CONNECTION IDENTIFIER OF THE CALL WHICH IS TO BE DEFLECTED TO ANOTHER DEVICE WITHIN THE SWITCH calledDevice ! POINTER TO THE DEVICE IDENTIFIER WHERE THE ORIGINAL CALL IS TO BE DEFLECTED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!$EFLECT#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HE $EFLECT #ALL 3ERVICE TAKES A RINGING ALERTING CALL AT A DEVICE $ AND SENDS IT TO A NEW DESTINATION $ 4HIS FUNCTION REPLACES THE ORIGINAL CALLED DEVICE AS SPECIFIED IN THE DEFLECT#ALL PARAMETER WITH A DIFFERENT DEVICE WITHIN THE SWITCH AS SPECIFIED IN THE CALLED$EVICE PARAMETER
Figure 5-7
D1
C1
D2
D1
C1
D2
D3
D3
*
After
Before
#34!$EFLECT#ALL#ONF%VENT
The Deflect Call confirmation event provides the positive response from the server for a previous deflect call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR36ipvig5evv5yxp7ixchipvig5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR36ipvig5evv5yxp7ixc Fvvixvv' 5QR36ipvig5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?$%&,%#4?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!$EFLECT#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA'ROUP0ICKUP#ALL
The cstaGroupPickupCall( ) service moves an alerting call (at one or more devices in a device pickup group) to a specified device. 'ROUP 0ICKUP IS A 0"8 FEATURE WHERE A 0ICKUP 'ROUP IS DEFINED ON THE 0"8 INDEPENDENT OF 4ELEPHONY 3ERVICE $EVICE 'ROUPS 7HEN A CALL RINGS AT A STATION IN THE PICKUP GROUP A PICKUP GROUP MEMBER MAY INVOKE THE 0"8 S 'ROUP 0ICKUP FEATURE AND THEREBY REDIRECT THE RINGING CALL TO THEIR PHONE 4HE APPLICATION DOES NOT SPECIFY THE CALL THAT IS TO BE REDIRECTED Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicge9yHsgu5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c hipvig5evv TisyxQiewGxv 6isgiA6c sgu6isgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S deflectCall 43!0) 6ERSION 3TREAM 0OINTER TO THE CALL BEING PICKED UP 43!0) 6ERSION 3TREAM 4HIS PARAMETER IS IGNORED pickupDevice 4HIS IS A POINTER TO THE DEVICE WHICH IS PICKING UP CALLS FROM THE GROUP
privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!'ROUP0ICKUP#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HE CSTA'ROUP0ICKUP#ALL SERVICE REDIRECTS AN ALERTING CALL AT ONE OF MORE DEVICES IN A DEVICE PICKUP TO A SPECIFIED DEVICE THE PICKUP$EVICE
Figure 5-8
D1
C1
D2
D1
C1
D2
D3
D3
*
After
Before
#34!'ROUP0ICKUP#ALL#ONF%VENT
The Group Pickup Call confirmation event provides the positive response from the server for a previous Group Pickup call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR39yHsgu5evv5yxp7ixcqyHsgu5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR39yHsgu5evv5yxp7ixc Fvvixvv' 5QR39yHsgu5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE NEWLY OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?'2/50?0)#+50?#!,,? #/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!'ROUP0ICKUP #ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA(OLD#ALL
The cstaHoldCall( ) service places an existing Connection in the held state. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic ge@yvh5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c egsi5evv 4yyviex iiesyx Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S activeCall ! POINTER TO THE CONNECTION IDENTIFIER FOR THE ACTIVE CALL TO BE PLACED ON HOLD reservation 2ESERVES THE FACILITY FOR REUSE BY THE HELD CALL 4HIS OPTION IS NOT APPROPRIATE FOR MOST NON )3$. TELEPHONES 4HE DEFAULT IS NO CONNECTION RESERVATION privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!(OLD#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments ! CALL TO THIS FUNCTION WILL INTERRUPT COMMUNICATIONS FOR AN EXISTING CALL AT A DEVICE 4HE CALL IS USUALLY BUT NOT ALWAYS IN THE ACTIVE STATE ! CALL MAY BE PLACED ON HOLD BY THE USER SOME TIME AFTER COMPLETION OF DIALING 4HE ASSOCIATED CONNECTION FOR THE HELD CALL IS MADE AVAILABLE FOR OTHER USES DEPENDING ON THE RESERVATION OPTION )3$. CASE !S SHOWN IN &IGURE IF THE (OLD #ALL SERVICE IS INVOKED FOR DEVICE $ ON CALL # THEN CALL # IS PLACED ON HOLD AT DEVICE $ 4HE HOLD RELATIONSHIP IS AFFECTED AT THE HOLDING DEVICE
Figure 5-9
D1
C1
D2
D1
C1
D2
Before
After
4HE CSTA(OLD#ALL SERVICE MAINTAINS A RELATIONSHIP BETWEEN THE HOLDING DEVICE AND THE HELD CALL THAT LASTS UNTIL THE CALL IS RETRIEVED FROM THE HOLD STATUS OR UNTIL THE CALL IS CLEARED
#34!(OLD#ALL#ONF%VENT
The Hold Call confirmation event provides the positive response from the server for a previous Hold call request Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3@yvh5evv5yxp7ixcryvh5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3@yvh5evv5yxp7ixc Fvvixvv' 5QR3@yvh5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?(/,$?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!(OLD#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA-AKE#ALL
The cstaMakeCall( ) service originates a call between two devices. The originator must be on the switch. The service attempts to create a new call and establish a connection between the calling device (originator) and the called device (destination). The Make Call service also provides a CSTA Connection Identifier that indicates the Connection of the originating device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeEeui5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c gevvsxq6isgi 6isgiA6c gevvih6isgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S callingDevice ! POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE WHICH IS TO ORIGINATE THE NEW CALL calledDevice ! POINTER TO THE DEVICE IDENTIFIER FOR THE DESTINATION DEVICE FOR THE NEW CALL
privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!-AKE#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
Comments 4HE CSTA-AKE#ALL SERVICE ORIGINATES A CALL BETWEEN TWO APPLICATION DESIGNATED DEVICES 7HEN THE SERVICE IS INITIATED THE CALLING DEVICE IS PROMPTED IF NECESSARY AND WHEN THAT DEVICE ACKNOWLEDGES A CALL TO THE CALLED DEVICE IS ORIGINATED &IGURE ILLUSTRATES THE RESULTS OF A -AKE #ALL SERVICE REQUEST #ALLING DEVICE $ #ALLED DEVICE $ ! CALL IS ESTABLISHED AS IF $ HAD CALLED $ AND THE CLIENT IS RETURNED THE #ONNECTION ID #$
Figure 5-11
D1
D2
D1
C1
D2
Before
After
4HE ESTABLISHMENT OF A COMPLETE CALL CONNECTION CAN BE A MULTI STEPPED PROCESS DEPENDING ON THE DESTINATION OF THE CALL #ALL STATUS EVENT REPORTS SEE 3TATUS 2EPORTING 3ERVICE MAY BE SENT BY THE 4ELEPHONY 3ERVER TO THE SERVICE REQUESTING CLIENT APPLICATION AS THE CONNECTION ESTABLISHMENT PROGRESSES 4HESE EVENTS ARE IN ADDITION TO THE STANDARD CONFIRMATION EVENTS EG #34!-AKE#ALL#ONF%VENT WHICH ONLY INDICATES THAT THE SWITCH IS ATTEMPTING TO ESTABLISH A CONNECTION BETWEEN THE TWO DEVICES 4HE APPLICATION SHOULD BE AWARE THAT THE REQUESTED CALL IS NOT GUARANTEED TO SUCCEED EVEN AFTER A SUCCESSFUL -AKE #ALL SERVICE CONFIRMATION EVENT HAS BEEN RECEIVED 4HE APPLICATION MUST MONITOR STATUS EVENTS TO BE INFORMED OF THE CALL STATUS AS IT PROGRESSES 3TATUS EVENT REPORTS CAN BE ESTABLISHED BY USING THE CSTA-ONITOR3TART SERVICE SEE 3TATUS 2EPORTING 3ERVICES
#34!-AKE#ALL#ONF%VENT
The Make Call confirmation event provides the positive response from the server for a previous Make Call service request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Eeui5evv5yxp7ixc ' ge5yxpswesyx' iix' 5QR37ixc' ihipg 5yxxigsyxA6c xi5evv' 5QR3Eeui5evv5yxp7ixc'
weui5evv'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?-!+%?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!-AKE#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE newCall 3PECIFIES THE #ONNECTION )$ FOR THE ORIGINATING CONNECTION OF THE NEW CALL ORIGINATED BY THE -AKE #ALL REQUEST privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA-AKE0REDICTIVE#ALL
The cstaMakePredictiveCall( ) service originates a call between a group of devices or a logical device on behalf of an originating (calling) device. The service creates a new call and establishes a Connection with the terminating (called) device. The Make Predictive Call service also provides a CSTA Connection Identifier that indicates the Connection of the terminating (called) device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeEeuiHihsgsi5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c gevvsxq6isgi 6isgiA6c gevvih6isgi 3vvygesyxQeic evvygesyxQei' Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S callingDevice ! POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE WHICH IS TO ORIGINATE THE NEW CALL calledDevice ! POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE BEING CALL IE THE DESTINATION DEVICE
allocationState 4HIS PARAMETER SPECIFIES UNDER WHICH CONDITION THE CONNECTION WITH THE DESTINATION IS TO BE CONNECTED TO THE CALLING OR ORIGINATING DEVICE )F THIS PARAMETER IS NOT SPECIFIED BY THE APPLICATION THE #ALL $ELIVERED STATE WILL BE THE DEFAULT 4HIS PARAMETER MAY BE ONE OF THE FOLLOWING VALUES #ALL $ELIVERED THIS VALUE SPECIFIES THAT THE SWITCH SHOULD ATTEMPT TO CONNECT THE CALL TO THE CALLER ORIGINATING DEVICE IF THE !LERTING OR #ONNECTED STATE IS DETERMINED AT THE CALLED PARTY DESTINATION DEVICE #ALL %STABLISHED THIS VALUE SPECIFIES THAT THE SWITCH SHOULD ATTEMPT TO CONNECT THE CALL TO THE CALLER ORIGINATING DEVICE IF THE #ONNECTED STATE IS DETERMINED AT THE CALLED PARTY DESTINATION DEVICE privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!-AKE0REDICTIVE#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH
4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HIS SERVICE IS OFTEN USED TO INITIATE A CALL TO A CALLED DEVICE DESTINATION FROM A GROUP OF DEVICES OR A LOGICAL DEVICE WITHOUT FIRST ESTABLISHING A CONNECTION WITH A CALLING DEVICE ORIGINATOR 4HIS SERVICE ALLOCATES THE CALL TO A PARTICULAR DEVICE WITHIN THAT GROUP AT SOME TIME DURING THE PROGRESS OF THE CALL 4HE CSTA-AKE0REDICTIVE#ALL SERVICE FIRST INITIATES A CALL TO THE CALLED DEVICE DESTINATION $EPENDING ON THE CALL S PROGRESS THE CALL MAY BE CONNECTED WITH THE CALLING DEVICE ORIGINATOR DURING THE PROGRESS OF THE CALL 4HE POINT AT WHICH THE SWITCH WILL ATTEMPT TO CONNECT THE CALL TO THE ORIGINATING DEVICE IS DETERMINED BY THE ALLOCATION 3TATE PARAMETER )F THE ALLOCATION PARAMETER IS SET TO #ALL $ELIVERED THEN THE CALL IS ALLOCATED UPON DETECTION OF AN !LERTING OR #ONNECTED #ONNECTION STATE AT THE DESTINATION )F THE ALLOCATION PARAMETER IS SET TO #ALL %STABLISHED THEN THE CALL IS ALLOCATED UPON DETECTION OF A #ONNECTED #ONNECTION STATE AT THE RECIPIENT )N OTHER WORDS THE CALL IS CONNECTED TO THE ORIGINATING DEVICE IF THE CALL STATE IS EITHER ALERTING OR CONNECTED AT THE FAR END OR CONNECTED RESPECTIVELY &IGURE ILLUSTRATES THE RESULTS OF A -AKE 0REDICTIVE #ALL #ALLING DEVICE GROUP DEVICE $ #ALLED DEVICE $
Figure 5-12
D1
D2
D1
C1 a/c D2
Before
After
#34!-AKE0REDICTIVE#ALL#ONF%VENT
The Make Predictive Call confirmation event provides the positive response from the server for a previous cstaMakePredictiveCall( ) request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3EeuiHihsgsi5yxp7ixc weuiHihsgsi5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg 5yxxigsyxA6c xi5evv' 5QR3EeuiHihsgsi5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE -!+%?02%$)#4)6%?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!-AKE0REDICTIVE#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE newCall 3PECIFIES THE #ONNECTION )$ FOR THE FAR END CONNECTION OF THE NEW CALL ORIGINATED BY THE -AKE 0REDICTIVE #ALL REQUEST privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA0ICKUP#ALL
The cstaPickupCall( ) service takes a ringing (alerting) call at a device and redirects the call to a specified device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeHsgu5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c hipvig5evv 6isgiA6c gevvih6isgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S deflectCall 4HIS IS A POINTER TO THE CONNECTION IDENTIFIER OF THE CALL WHICH IS TO BE PICKED UP FROM ANOTHER DEVICE WITHIN THE SWITCH calledDevice ! POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE WHICH IS PICKING UP THE ORIGINAL CALL privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!0ICKUP#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HE CSTA0ICKUP#ALL SERVICE TAKES AN ALERTING CALL AT A DEVICE WITHIN THE SWITCH AND BRINGS IT TO A LOCAL DEVICE DESTINATION 4HIS FUNCTION PICKS UP A CALL DEFLECT#ALL AT THE DEVICE SPECIFIED IN THE CALLED$EVICE PARAMETER
Figure 5-13
D1
C1
D2
D1
C1
D2
D3
D3
*
After
Before
#34!0ICKUP#ALL#ONF%VENT
The Pickup Call confirmation event provides the positive response from the server for a previous pickup call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Hsgu5evv5yxp7ixcsgu5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Hsgu5evv5yxp7ixc Fvvixvv' 5QR3Hsgu5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?0)#+50?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!0ICKUP#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA2ECONNECT#ALL
The cstaReconnectCall( ) service provides the compound action (combination) of the cstaClearConnection( ) service followed by the cstaRetrieveCall( ) service. The service clears an existing Connection and then retrieves a previously Held Connection at the same device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgePigyxxig5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c egsi5evv 5yxxigsyxA6c rivh5evv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S activeCall ! POINTER TO THE CONNECTION IDENTIFIER OF THE ACTIVE CALL WHICH IS TO BE CLEARED heldCall ! POINTER TO THE CONNECTION IDENTIFIER OF THE HELD CALL WHICH IS TO BE RETRIEVED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!2ECONNECT#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments ! SUCCESSFUL REQUEST OF THIS SERVICE WILL CAUSE AN EXISTING ACTIVE CALL TO BE DROPPED /NCE THE ACTIVE CALL HAS BEEN DROPPED THE SPECIFIED HELD CALL AT THE DEVICE IS RETRIEVED AND BECOMES ACTIVE 4HIS SERVICE IS TYPICALLY USED TO DROP AN ACTIVE CALL AND RETURN TO A HELD CALL HOWEVER IT CAN ALSO BE USED TO CANCEL OF A CONSULTATION CALL BECAUSE OF NO ANSWER CALLED DEVICE BUSY ETC FOLLOWED BY RETURNING TO A HELD CALL
Figure 5-14
D1
C1
* *
D2
D1
C1
* *
D2
C2
D3
C2
D3
Before
After
#34!2ECONNECT#ALL#ONF%VENT
The Reconnect Call confirmation event provides the positive response from the server for a previous Reconnect call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Pigyxxig5evv5yxp7ixc igyxxig5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Pigyxxig5evv5yxp7ixc Fvvixvv' 5QR3Pigyxxig5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?2%#/..%#4?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!2ECONNECT#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA2ETRIEVE#ALL
The cstaRetrieveCall( ) service connects an existing Held Connection. The state of the specified call changes from held to active. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgePisii5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c rivh5evv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S heldCall ! POINTER TO THE CONNECTION IDENTIFIER OF THE HELD CALL WHICH IS TO BE RETRIEVED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS
,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!2ETRIEVE#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
Comments 4HE INDICATED HELD #ONNECTION IS RESTORED TO THE #ONNECTED STATE ACTIVE 4HE CALL STATE CAN CHANGE DEPENDING ON THE ACTIONS OF FAR END ENDPOINTS )F THE CSTA(OLD#ALL SERVICE RESERVED THE (ELD #ONNECTION AND THE CSTA2ETRIEVE#ALL SERVICE IS REQUESTED FOR THE SAME CALL THEN THE 2ETRIEVE #ALL SERVICE USES THE RESERVED #ONNECTION
Figure 5-15
D1
C1
D2
D1
C1
D2
Before
After
#34!2ETRIEVE#ALL#ONF%VENT
The Retrieve Call confirmation event provides the positive response from the server for a previous Retrieve call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Pisii5evv5yxp7ixcisii5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Pisii5evv5yxp7ixc Fvvixvv' 5QR3Pisii5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?2%42)%6%?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!2ETRIEVE#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA4RANSFER#ALL
The cstaTransferCall( ) service provides the transfer of a held call with an active call at the same device. The transfer service merges two calls with Connections to a single common device. Also, both of the Connections to the common device become Null and their Connections Identifiers are released. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeRexpi5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c rivh5evv 5yxxigsyxA6c egsi5evv Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S heldCall ! POINTER TO THE CONNECTION IDENTIFIER OF THE HELD CALL WHICH IS TO BE TRANSFERRED activeCall ! POINTER TO THE CONNECTION IDENTIFIER OF THE ACTIVE CALL TO WHICH THE HELD CALL IS TO BE TRANSFERRED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!4RANSFER#ALL#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 2EFERRING TO &IGURE THE STARTING CONDITIONS FOR THE CSTA4RANSFER#ALL SERVICE ARE THE CALL # FROM $ TO $ IS IN HELD STATE HELD#ALL ! CALL # FROM $ TO $ IS IN PROGRESS OR ACTIVE ACTIVE#ALL 4HIS SERVICE TRANSFERS THE EXISTING HELD CALL BETWEEN DEVICES $ AND $ INTO A NEW CALL WITH A NEW CALL IDENTIFIER FROM DEVICE $ TO A DEVICE $
Figure 5-16
D1
C1
* *
D2
D1
*
C3
D2
C2
D3
D3
Before
After
4HE REQUEST IS USED IN THE SITUATION WHERE THE CALL FROM $ TO $ IS ESTABLISHED ACTIVE OR IF THE CALL IS IN ANY STATE OTHER THAN &AILED OR .ULL STATE 4HE 4RANSFER #ALL SERVICE SUCCESSFULLY COMPLETES AND $ IS RELEASED FROM THE CALL
#34!4RANSFER#ALL#ONF%VENT
The Transfer Call confirmation event provides the positive response from the server for a previous transfer call request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Rexpi5evv5yxp7ixcexpi5evv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5yxxigsyxc 5yxxigsyxA6ce' Qftig6isgiA6cesg6isgi'FSDDpyxyiix 5yxxigsyxc' ihipg5yxxigsyxDs sxgyx' 5yxxigsyxcgyxxigsyx' 5yxxigsyxDsc' ihipg 5yxxigsyxA6cxi5evv' 5yxxigsyxDscgyxxDs' 5QR3Rexpi5evv5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?42!.3&%2?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!4RANSFER#ALL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE newCall 3PECIFIES THE RESULTING #ONNECTION )DENTIFIER FOR THE TRANSFERRED CALL connList 3PECIFIES THE RESULTING NUMBER OF KNOWN DEVICES IN THE TRANSFERRED CALL 4HIS FIELD CONTAINS A COUNT COUNT OF THE NUMBER OF DEVICES IN THE TRANSFERRED CALL AND A POINTER
CONNECTION TO AN ARRAY OF POINTERS THAT POINT TO #ONNECTION)$?T STRUCTURES WHICH DEFINE EACH CONNECTION IN THE CALL %ACH #ONNECTION)$?T RECORD CONTAINS THE FOLLOWING 0ARTY
INDICATES THE #ONNECTION )$ OF THE PARTY IN THE TRANSFERRED CALL $EVICE
PROVIDES THE STATIC REFERENCE FOR THE PARTY IN THE TRANSFERRED CALL 4HIS PARAMETER MAY HAVE A VALUE THAT INDICATES THE STATIC IDENTIFIER IS NOT KNOWN privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
.OTE
Applications can use the Telephony Supplementary Services (defined in this section) to manipulate telephony objects.. As with other TSAPI services already described, these function will generate associated confirmation events from the Telephony Server. Similarly (as described in Chapter 4, Sending CSTA Requests and Responses) applications can use the invokeID to match a specific confirmation event with the specific function call, or they may use application-generated invokeIDs to index into a data structure. To receive events, an application must have an active ACS Stream and an implement an event handling mechanism. Further, the reception of unsolicited events requires an active monitor. See the Control Services and Status Reporting Services sections for more information on events.
CSTA3ET-SG7AITING)ND
The cstaSetMsgWaitingInd( ) service provides the application with the ability to turns on and off a message waiting indicator on a telephony device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeQiEqUessxqAxh 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi 4yyviex wieqi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH TO SET THE MESSAGE WAITING INDICATOR messages 4HIS PARAMETER IDENTIFIES WHETHER TO TURN ON OR OFF THE MESSAGE WAITING INDICATOR AT THE DEVICE SPECIFIED BY DEVICE PARAMETER ! VALUE OF 425% INDICATES THAT THE MESSAGE WAITING INDICATOR SHOULD BE TUNED ON &!,3% INDICATES THAT THE INDICATOR SHOULD BE TURN OFF privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
2ETURN 6ALUES 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3ET-WI#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!3ET-WI#ONF%VENT
The Set Message Waiting Indicator confirmation event provides the positive response from the Telephony Server for a previous Set Message Waiting Indicator service request. When the application receives this event the message waiting indicator has been set as requested by the application. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3QiEs5yxp7ixciEs' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3QiEs5yxp7ixc Fvvixvv' 5QR3QiEs5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?3%4?-7)?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3ET-ESSAGE7AITING)ND#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA3ET$O.OT$ISTURB
The cstaSetDoNotDisturb( ) service activates the switch feature that prevents calls from alerting at a specified device by deflecting the calls from the original destination to other devices. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeQi6yFy6sf 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi 4yyviex hyFy6sf Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH THE $O .OT $ISTURB FEATURE IS TO BE ACTIVATED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER doNotDisturb 4HIS PARAMETER IDENTIFIES WHETHER TO TURN ON OR OFF THE $O .OT $ISTURB FEATURE AT THE DEVICE SPECIFIED BY DEVICE PARAMETER ! VALUE OF 425% INDICATES THAT THE $O .OT $ISTURB FEATURE SHOULD BE TUNED ON &!,3% INDICATES THAT THE FEATURE SHOULD BE TURN OFF
privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3ET$ND#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!3ET$ND#ONF%VENT
The Set Do Not Disturb confirmation event provides the positive response from the Telephony Server for a previous Set Do Not Disturb request. When the application receives this event the Do Not Disturb feature has been set as requested by the application. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Qi6xh5yxp7ixci6xh' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Qi6xh5yxp7ixc Fvvixvv' 5QR3Qi6xh5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?3%4?$.$?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3ET$ND#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA3ET&ORWARDING
The cstaSetForwarding( ) service activates and deactivates several types of forwarding features on a specified device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeQi8yehsxq 35Q@exhvic AxyuiA6c 6isgiA6c 8yehsxqRic 4yyviex 6isgiA6c Hsei6eec eg@exhvi sxyuiA6 hisgi pyehsxqRi pyehsxqGx pyehsxq6isxesyx sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S
device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH FORWARDING IS TO BE SET 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER forwardingType 4HIS PARAMETER SPECIFIES THE TYPE OF FORWARDING TO SET OR CLEAR AT THE REQUESTED DEVICE 4HE POSSIBLE TYPES INCLUDE )MMEDIATE "USY .O !NSWER "USY )NTERNAL "USY %XTERNAL .O !NSWER )NTERNAL .O !NSWER %XTERNAL &ORWARDING ALL CALLS &ORWARDING WHEN BUSY &ORWARDING AFTER NO ANSWER &ORWARDING WHEN BUSY FOR AN INTERNAL CALL &ORWARDING WHEN BUSY FOR AN EXTERNAL CALL &ORWARDING AFTER NO ANSWER FOR AN INTERNAL CALL &ORWARDING AFTER NO ANSWER FOR AN EXTERNAL CALL
forwardingOn 4HIS PARAMETER IDENTIFIES WHETHER TO TURN ON OR OFF THE FORWARDING FEATURE AT THE DEVICE SPECIFIED BY DEVICE PARAMETER ! VALUE OF 425% INDICATES THAT THE FORWARDING FEATURE SHOULD BE TUNED ON &!,3% INDICATES THAT THE FEATURE SHOULD BE TURN OFF forwardingDestination 4HIS IS A POINTER TO THE DEVICE IDENTIFIER FOR THE DEVICE TO WHICH THE CALLS ARE TO BE FORWARDED privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3ET&WD#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!3ET&WD#ONF%VENT
The Set Forwarding confirmation event provides the positive response from the server for a previous Set Forwarding service request. When this event is received by the application the forwarding feature has been set as requested. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Qi8h5yxp7ixci8h' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Qi8h5yxp7ixc Fvvixvv' 5QR3Qi8h5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?3%4?&7$?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3ET&WD#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA3ET!GENT3TATE
The cstaSetAgentState( ) service changes an ACD agents work mode to one specified by this service. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeQi3qixQei 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi 3qixEyhic eqixEyhi 3qixA6c eqixA6 3qix9yc eqix9y 3qixHeyhc eqixHeyh Hsei6eec sei6ee' ihipixw3qixEyhic 3EcDG9cAF) 3EcDG9cGSR) 3EcFGRcP736W) 3EcP736W) 3EcUGPCcFGRcP736W) 3EcUGPCcP736W)! 3qixEyhic' ihipgre3qixA6cYa' ihip6isgiA6c3qix9yc' ihipgre3qixHeyhcYa'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S
device 4HIS PARAMETER POINTS TO THE DEVICE IDENTIFIER FOR THE !#$ AGENT FOR WHICH THE WORK MODE IS TO BE CHANGED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER agentMode 4HIS PARAMETER SPECIFIES THE WORK MODE STATE WHICH THE AGENT WILL BE MOVED TO 4HIS COULD BE ONE OF THE FOLLOWING ,/'?). ,/'?/54 ./4?2%!$9 2%!$9 7/2+?./4?2%!$9 7/2+?2%!$9 agentID ! POINTER TO THE AGENT IDENTIFIER OF THE !#$ !GENT WHOSE WORK MODE IS TO BE CHANGED agentGroup ! POINTER TO THE AGENT GROUP IDENTIFIER FOR THE !#$ GROUP OR SPLIT IN WHICH THE AGENT WILL BE LOGGED INTO OR OUT OF 4HIS PARAMETER IS ONLY REQUIRED WHEN THE AGENT-ODE PARAMETER IS SET FOR THE ,/'?). AND ,/'?/54 WORK MODES agentPassword ! POINTER TO A PASSWORD THAT ALLOWS THE AGENT TO LOG INTO AN !#$ SPLIT OR GROUP 4HIS PARAMETER IS ONLY REQUIRED WHEN THE AGENT-ODE PARAMETER IS SET FOR THE ,/'?). AND ,/'?/54 WORK MODES privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS
,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3ET!GENT3TATE#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!3ET!GENT3TATE#ONF%VENT
The Set Agent State confirmation event provides the positive response from the server for a previous Set Agent State service request. When this event is received by the application the agent state has been set as requested. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Qi3qixQei5yxp7ixc i3qixQei' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Qi3qixQei5yxp7ixc Fvvixvv' 5QR3Qi3qixQei5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?3%4?!'%.4?34!4%?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3ET!GENT3TATE#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA1UERY-SG7AITING)ND
The cstaQueryMessageWaitingInd( ) service provides the current state of the message waiting indicator of a specified device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeIiEqUessxqAxh 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH THE MESSAGE WAITING INDICATOR IS BEING QUERIED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!1UERY-WI#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!1UERY-WI#ONF%VENT
The Query Message Waiting Indicator confirmation event provides the positive response from the server for a previous Query Message Waiting Indicator service request. This event informs the application whether there are any messages waiting, i.e. whether the message waiting indicator is turned on or off. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3IiEs5yxp7ixciEs' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3IiEs5yxp7ixc 4yyviexwieqi' 5QR3IiEs5yxp7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?15%29?-7)?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UERY-WI#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE messages 4HIS PARAMETER SPECIFIES WHETHER THERE ARE ANY MESSAGES WAITING AT THE REQUESTED DEVICE 425% INDICATES THAT THERE ARE MESSAGES WAITING &!,3% INDICATES THAT THERE ARE NONE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA1UERY$O.OT$ISTURB
The cstaQueryDoNotDisturb( ) service provides the current state of the do not disturb feature on a specific device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeIi6yFy6sf 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH THE $O .OT $ISTURB FEATURE IS BEING QUERIED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!1UERY$ND#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!1UERY$ND#ONF%VENT
The Query Do Not Disturb confirmation event provides the positive response from the server for a previous Query Do Not Disturb service request. This event informs the application whether the feature is turned on or off. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Ii6xh5yxp7ixci6xh' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg 4yyviexc 5QR3Ii6xh5yxp7ixc'
hyFy6sf'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?15%29?$.$?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UERY$ND#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE doNotDisturb 4HIS PARAMETER SPECIFIES WHETHER THE $O .OT $ISTURB FEATURE IS ACTIVE AT THE REQUESTED DEVICE 425% INDICATES THAT THE FEATURE IS TURNED ON &!,3% INDICATES THAT THE FEATURE IS TURNED OFF privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA1UERY&WD
The cstaQueryFwd( ) service provides the current state of the forwarding feature(s) on a specific device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeIi8h 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH THE FORWARDING FEATURE IS BEING QUERIED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!1UERY&WD#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!1UERY&WD#ONF%VENT
The Query Forwarding confirmation event provides the positive response from the server for a previous Query Forwarding service request. The event also informs the application of the forwarding type, whether forwarding is on or off, and the forwarding destination for each device requested. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g
iix@iehi'
i8h'
ihipixw8yehsxqRic 8U6cAEE76A3R7) 8U6c4SQW) 8U6cFGc3FQ) 8U6c4SQWcAFR) 8U6c4SQWc7VR) 8U6cFGc3FQcAFR)! 8U6cFGc3FQc7VR)" 8yehsxqRic' ihipg8yehsxqAxpyc 8yehsxqRic pyehsxqRi' 4yyviex pyehsxqGx'
6isgiA6c 8yehsxqAxpyc'
pyeh6F'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?15%29?&7$?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UERY&WD#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE queryFwd 4HIS PARAMETER IS A ,IST&ORWARD0ARAMETERS?T STRUCTURE WHICH CONTAINS THE FOLLOWING count 4HIS PARAMETER INDICATES HOW MANY FORWARDING LIST ENTRIES ARE PROVIDED %ACH ENTRY CORRESPONDS TO A DIFFERENT DEVICE param !N ARRAY OF &ORWARDING)NFO?T STRUCTURES EACH OF WHICH IS COMPOSED OF THE FOLLOWING ELEMENTS
forwardingType 3PECIFIES THE TYPE OF FORWARDING SET 4HE TYPES INCLUDE )MMEDIATE "USY .O !NSWER "USY )NTERNAL "USY %XTERNAL .O !NSWER )NTERNAL .O !NSWER %XTERNAL &ORWARDING ALL CALLS &ORWARDING WHEN BUSY &ORWARDING AFTER NO ANSWER &ORWARDING WHEN BUSY FOR AN INTERNAL CALL &ORWARDING WHEN BUSY FOR AN EXTERNAL CALL &ORWARDING AFTER NO ANSWER FOR AN INTERNAL CALL &ORWARDING AFTER NO ANSWER FOR AN EXTERNAL CALL
forwardingOn )NDICATES WHETHER FORWARDING IS ACTIVE OR INACTIVE 425% INDICATES FORWARDING IS ACTIVE &!,3% INDICATES FORWARDING IS INACTIVE forwardingDN 3PECIFIES THE FORWARD TO DESTINATION DEVICE FOR THE TYPE OF FORWARDING LISTED privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA1UERY!GENT3TATE
The cstaQueryAgentState( ) service will provide the application with the current agent state at a device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeIi3qixQei 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH THE AGENT STATE IS BEING QUERIED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!1UERY!GENT3TATE#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!1UERY!GENT3TATE#ONF%VENT
The Query Agent State confirmation event provides the positive response from the server for a previous Query Agent State service request. This event will provide the application with the current agent state. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Ii3qixQei5yxp7ixci3qixQei' ' ge5yxpswesyx' iix' 5QR37ixc' ihipixw3qixQeic 39cFGRcP736W) 39cFSDD) 39cP736W) 39cUGPCcFGRcP736W) 39cUGPCcP736W) 3qixQeic' ihipg5QR3Ii3qixQei5yxp7ixc 3qixQeiceqixQei' 5QR3Ii3qixQei5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?15%29?!'%.4?34!4%?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UERY!GENT3TATE#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE agentState 4HIS PARAMETER SPECIFIES THE CURRENT WORK MODE STATE OF THE AGENT 4HE POSSIBLE AGENT STATES ARE .ULL 4HIS INDICATES THAT AN AGENT IS LOGGED OUT OF THE GROUP OR DEVICE THAT THEY SERVE .OT 2EADY 4HIS STATE INDICATES THAT AN AGENT IS OCCUPIED WITH SOME TASK OTHER THAN THAT OF SERVING A CALL 2EADY 4HIS STATE INDICATES THAT AN AGENT IS READY TO ACCEPT CALLS 7ORK.OT 2EADY 4HIS STATE INDICATES THAT AN AGENT IS OCCUPIED WITH AFTER CALL WORK )T ALSO IMPLIES THAT THE AGENT SHOULD NOT RECEIVE ADDITIONAL !#$ CALLS 7ORK2EADY 4HIS STATE INDICATES THAT AN AGENT IS OCCUPIED WITH AFTER CALL WORK )T ALSO IMPLIES THAT THE AGENT MAY RECEIVE ADDITIONAL !#$ CALLS
privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA1UERY,AST.UMBER
The cstaQueryLastNumber( ) service provides the last number dialed by a specified device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeIiDeFwfi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE ON WHICH THE LAST NUMBER IS BEING QUERIED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!1UERY,AST.UMBER#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!1UERY,AST.UMBER#ONF%VENT
The Query Last Number confirmation event provides the positive response from the server for a previous Query Last Number request. This event provides the last number that was dialed from the requested device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3IiDeFwfi5yxp7ixciDeFwfi' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg 6isgiA6c veFwfi 5QR3IiDeFwfi5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?15%29?,!34?.5-"%2?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UERY,AST.UMBER#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE lastNumber 4HIS PARAMETER INDICATES THE LAST NUMBER DIALED AT THE REQUESTED DEVICE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
CSTA1UERY$EVICE)NFO
The cstaQueryDeviceInfo( ) service provides general information about a device. The confirmation event for this service will include information on the class and type of device being queried. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeIi6isgiAxpy 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HIS PARAMETER IS A POINTER TO THE DEVICE IDENTIFIER OF THE DEVICE FOR WHICH INFORMATION IS BEING REQUESTED 4HIS PARAMETER MAY BE DIFFERENT THAN THE ORIGINATING DEVICE DEPENDING ON THE SECURITY LEVEL DEFINED FOR THE ORIGINATING DEVICE IN THE 4ELEPHONY 3ERVER privateData 4HIS IS A POINTER TO THE PRIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!1UERY$EVICE)NFO#ONF%VENT MESSAGE TO ENSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
#34!1UERY$EVICE)NFO#ONF%VENT
The Query Device Info confirmation event provides the positive response from the server for a previous Query Device Info request. This event provides the application with type and class of the requested device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Ii6isgiAxpy5yxp7ixci6isgiAxpy' ' ge5yxpswesyx' iix' 5QR37ixc' ihipixw6isgiRic 6RcQR3RAGF) 6RcDAF7) 6Rc4SRRGF) 6Rc356) 6RcRPSFC) 6RcGH7P3RGP)! 6RcQR3RAGFc9PGSH)" 6RcDAF7c9PGSH)# 6Rc4SRRGFc9PGSH)$ 6Rc356c9PGSH)% 6RcRPSFCc9PGSH) 6RcGH7P3RGPc9PGSH) 6RcGR@7P)!! 6isgiRic'
ihipxsqxihgre6isgi5vec' hipsxi65cTGA57$ hipsxi65c63R3 hipsxi65cAE397 hipsxi65cGR@7P ihipg5QR3Ii6isgiAxpy5yxp7ixc 6isgiA6chisgi' 6isgiRichisgiRi' 6isgi5vechisgi5ve' 5QR3Ii6isgiAxpy5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?15%29?$%6)#%?).&/?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UERY$EVICE)NFO#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE deviceIdentifier -AY PROVIDE AN ALTERNATE SHORT FORM STATIC DEVICE IDENTIFIER FOR THE DEVICE REQUESTED deviceType 4HIS PARAMETER INDICATES THE TYPE OF DEVICE BEING QUERIED 4HE POSSIBLE DEVICE TYPES ARE !#$ !UTOMATIC #ALL $ISTRIBUTOR !#$ !#$ GROUP !UTOMATIC #ALL $ISTRIBUTOR !#$ GROUP "UTTON IS ONE INSTANCE OF A CALL MANIPULATION POINT AT AN INDIVIDUAL STATION
"UTTON GROUP IS TWO OR MORE INSTANCES OF A CALL MANIPULATION POINT AT AN INDIVIDUAL STATION ,INE IS A COMMUNICATIONS INTERFACE TO ONE OR MORE STATIONS ,INE GROUP IS A SET OF COMMUNICATIONS INTERFACES TO ONE OR MORE STATIONS /PERATOR ALSO KNOWN AS !TTENDANT /PERATOR GROUP TWO OR MORE OPERATOR DEVICES USED INTERCHANGEABLY OR ADDRESSED IDENTICALLY /THER IS ANY OTHER TYPE FOR WHICH THERE IS NO ENUMERATION DEFINED 3TATION IS THE TRADITIONAL TELEPHONE DEVICE EITHER SIMPLE OR FEATURED 3TATION GROUP IS TWO OR MORE STATIONS USED INTERCHANGEABLY OR ADDRESSED IDENTICALLY 4RUNK A DEVICE USED TO ACCESS OTHER SWITCHING SUB DOMAINS 4RUNK GROUP TYPICALLY TWO OR MORE TRUNKS PROVIDING CONNECTIONS TO THE SAME PLACE 3EE THE &UNCTIONAL #ALL -ODEL SECTION OF THIS DOCUMENT FOR MORE INFORMATION ON DEVICE TYPES .OT ALL SWITCH IMPLEMENTATIONS WILL SUPPORT ALL THE DEVICE TYPES LISTED deviceClass 4HIS PARAMETER INDICATES THE CLASS OF DEVICE BEING QUERIED 4HE POSSIBLE DEVICE CLASSES ARE 6OICE A DEVICE THAT IS USED TO MAKE AUDIO CALLS 4HIS CLASS INCLUDES ALL NORMAL TELEPHONES AS WELL AS COMPUTER MODEMS AND ' FACSIMILE MACHINES $ATA A DEVICE THAT IS USED TO MAKE DIGITAL DATA CALLS EITHER CIRCUIT SWITCHED OR PACKET SWITCHED 4HIS CLASS INCLUDES COMPUTER INTERFACES AND ' FACSIMILE MACHINES )MAGE A DEVICE THAT IS USED TO MAKE DIGITAL DATA CALLS INVOLVING IMAGING OR HIGH SPEED CIRCUIT SWITCHED DATA IN GENERAL 4HIS CLASS INCLUDES VIDEO TELEPHONES AND #/$%#S /THER A TYPE OF DEVICE NOT COVERED BY DATA IMAGE OR VOICE
3EE THE &UNCTIONAL #ALL -ODEL SECTION OF THIS DOCUMENT FOR MORE INFORMATION ON DEVICE CLASSES .OT ALL SWITCH IMPLEMENTATIONS WILL SUPPORT ALL THE DEVICE CLASSES LISTED privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
Chapter
TSAPI Status Services are those function calls and events that are related to unsolicited TSAPI event messages. External telephony activity on the switch, External telephony activity at a device, or human user activity can all cause unsolicited TSAPI events. Such events messages are asynchronous in nature. An application typically cannot anticipate their arrival. For example, an event informing the application of an incoming call to a device (e.g. a telephone station) is an unsolicited, asynchronous TSAPI event (since the application did not initiate the call and such a call can arrive at any time). Applications use the status reporting request function to turn-on or turn-off status event reporting for a CSTA device (e.g. a desktop telephone). An application can use this function to turn-on/turn-off status reporting for any stations on the switch where monitoring is required (assuming proper access permissions are administered at the Telephony Server).
An application calls the cstaMonitorDevice( ), cstaMonitorCall( ), or cstaMonitorCallsViaDevice( ) function to initiate event reporting for a specific device or call. Event reporting can be provided for a device, a call, or for calls at a monitored device. An application can request two different types of event monitors using these functions. The monitor types are: u Call-type monitor - call-type monitors provide monitoring (event reporting) for unsolicited events about a specific call from "cradle-tograve". In other words, a call-type monitor provides events for a specific call regardless of the devices at which the call may appear for the duration of the call. Using call-type monitoring, an application can determine the current state of the call using the TSAPI events. For example, if a call monitor exists for a specific call and that call transfers or forwards to other devices, the sending device ceases to participate in the call, but event reporting continues (telling the application about the new devices
participating in the call). Thus, a call-type monitor will provide call state information as the switch, other applications, and human users interact to route a call.
A switch may assign a new call identifier to a call as it is transferred or conferenced. The new call identifier will be provided in the event report associated with the conference or transfer function being requested by the controller of the call.
Device-type monitor - device-type monitors provide the application with call or connection state information about calls at a specific device (the monitored device). TSAPI reports any events about the calls at the monitored device on a device-type monitor. If a call is transfers drops, or forwards from the monitored device, TSAPI stops reporting events for that call. If an application begins monitoring a device when call(s) are already in progress at the monitored device, TSAPI may not provide events for those calls (this is switch specific). TSAPI will provide events for calls that arrive at the device after it sends the confirmation event for the device monitor request.
Each monitor must be either a call monitor, a device monitor, or monitor calls via device. An application may request multiple monitors, with various monitors being of various types. An application must setup multiple monitors if it wants to monitor multiple devices or calls at the same time. The switch may impose limitations on the maximum number of simultaneous monitors which can exist for any given switch, call, or device. TSAPI does not place any such restrictions on the application. When an application requests a device or call monitor, it can also specify an event filter. An event filter causes TSAPI to discard those events which the application is not interested in. An application may specify a filter when it establishes the monitor for a device or call. An application may also use the cstaChangeMonitorFilter( ) to change the filter after the monitor is active. To receive events, an application must have an active ACS Stream and an implement an event handling mechanism. Further, the reception of unsolicited events requires an active monitor. See the Control Services and Status Reporting Services sections for more information on events.
CSTA-ONITOR$EVICE
The Monitor Start service is used to initiate unsolicited event reporting for a device type monitoring on a device object. The unsolicited event reports will be provided for all endpoints within a CSTA switching sub-domain and optionally for endpoints outside of the CSTA switching sub-domain (implementation specific) which are involved with a monitored device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic geEyxsy6isgi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgiA6' 5QR3Eyxsy8svic wyxsy8svi Hsei6eec sei6ee
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S deviceID $EVICE )$ OF THE DEVICE TO BE MONITORED monitorFilter 4HIS PARAMETER IS USED TO SPECIFY A FILTER TYPE TO BE USED WITH THE OBJECT BEING MONITORED 3ETTING A BIT TO TRUE IN THE MONITOR&ILTER STRUCTURE CAUSES THE SPECIFIC EVENT TO BE FILTERED OUT SO THE APPLICATION WILL NEVER SEE THIS EVENT )NITIALIZE THE STRUCTURE TO ALL S TO RECEIVE ALL TYPES OF MONITOR EVENTS 3EE CSTA-ONITOR$EVICE#ONF%VENT FOR A DEFINITION OF A MONITOR&ILTER STRUCTURE
privateData 0RIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!-ONITOR#ONF%VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
Comments 4HIS FUNCTION IS USED TO START A DEVICE MONITOR ON A #34! DEVICE 4HE CONFIRMATION EVENT FOR THIS FUNCTION IE #34!-ONITOR#ONF%VENT WILL PROVIDE THE APPLICATION WITH THE #34! ASSOCIATION HANDLE TO THE MONITORED DEVICE OR CALL IE THE -ONITOR #ROSS 2EFERENCE )DENTIFIER MONITOR#ROSS2EF)$ WHICH DEFINES THE #34! ASSOCIATION ON WHICH THE MONITOR WILL EXIST
CSTA-ONITOR#ALL
The Monitor Start service is used to initiate unsolicited event reporting for a call type monitoring on a call object. The unsolicited event reports will be provided for all endpoints within a CSTA switching sub-domain and optionally for endpoints outside of the CSTA switching sub-domain (implementation specific) which are involved with a monitored device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic geEyxsy5evv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c gevv 5QR3Eyxsy8svic wyxsy8svi Hsei6eec sei6ee
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S call #ONNECTION )$ OF THE CALL TO BE MONITORED monitorFilter 4HIS PARAMETER IS USED TO SPECIFY A FILTER TYPE TO BE USED WITH THE OBJECT BEING MONITORED 3ETTING A BIT TO TRUE IN THE MONITOR&ILTER STRUCTURE CAUSES THE SPECIFIC EVENT TO BE FILTERED OUT SO THE APPLICATION WILL NEVER SEE THIS EVENT )NITIALIZE THE STRUCTURE TO ALL S TO RECEIVE ALL TYPES OF MONITOR EVENTS 3EE #34!-ONITOR#ONF%VENT FOR A DEFINITION OF A MONITOR&ILTER STRUCTURE
privateData 0RIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!-ONITOR#ONF%VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HIS FUNCTION IS USED TO START A CALL MONITOR ON A #34! DEVICE 4HE CONFIRMATION EVENT FOR THIS FUNCTION IE #34!-ONITOR#ONF%VENT WILL PROVIDE THE APPLICATION WITH THE #34! ASSOCIATION HANDLE TO THE MONITORED DEVICE OR CALL IE THE -ONITOR #ROSS 2EFERENCE )DENTIFIER MONITOR#ROSS2EF)$ WHICH DEFINES THE #34! ASSOCIATION ON WHICH THE MONITOR WILL EXIST
CSTA-ONITOR#ALLS6IA$EVICE
The Monitor Start service is used to initiate unsolicited event reporting for a call type monitoring on a device object. The unsolicited event reports will be provided for all endpoints within a CSTA switching sub-domain and optionally for endpoints outside of the CSTA switching sub-domain (implementation specific) which are involved with a monitored device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic geEyxsy5evvTse6isgi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c hisgiA6 5QR3Eyxsy8svic wyxsy8svi Hsei6eec sei6ee
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S device 4HE DEVICE)$ OF THE DEVICE FOR WHICH CALL MONITORING SHOULD BE STARTED
monitorFilter 4HIS PARAMETER IS USED TO SPECIFY A FILTER TYPE TO BE USED WITH THE OBJECT BEING MONITORED 3ETTING A BIT TO TRUE IN THE MONITOR&ILTER STRUCTURE CAUSES THE SPECIFIC EVENT TO BE FILTERED OUT SO THE APPLICATION WILL NEVER SEE THIS EVENT )NITIALIZE THE STRUCTURE TO ALL S TO RECEIVE ALL TYPES OF MONITOR EVENTS 3EE CSTA-ONITOR$EVICE#ONF%VENT FOR A DEFINITION OF A MONITOR&ILTER STRUCTURE privateData 0RIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!-ONITOR#ONF%VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
Comments 4HIS FUNCTION IS USED TO START A MONITOR ON A #34! OBJECT A DEVICE OR A CALL 4HE CONFIRMATION EVENT FOR THIS FUNCTION IE #34!-ONITOR#ONF%VENT WILL PROVIDE THE APPLICATION WITH THE #34! ASSOCIATION HANDLE TO THE MONITORED DEVICE OR CALL IE THE -ONITOR #ROSS 2EFERENCE )DENTIFIER MONITOR#ROSS2EF)$ WHICH DEFINES THE #34! ASSOCIATION ON WHICH THE MONITOR WILL EXIST 4HERE ARE TWO TYPES OF -ONITOR 3ERVICE CALL TYPE AND DEVICE TYPE
#34!-ONITOR#ONF%VENT
This event is in response to the cstaMonitorDevice( ), cstaMonitorCall or cstaMonitorCallsViaDevice function and contains the association handle being assigned to the CSTA association being used for status reporting. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx eg@exhvi' iix5ve' iixRi'
iix@iehi'
AxyuiA6c
sxyuiA6'
5QR3Eyxsy5yxp7ixcwyxsyQe' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Eyxsy5yxp7ixc 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' 5QR3Eyxsy8svic wyxsy8svi' 5QR3Eyxsy5yxp7ixc' ihipvyxq 5QR3Eyxsy5yPipA6c'
ihipxsqxihry5QR35evv8svic' hipsxi58c53DDc5D73P76$ hipsxi58c5GF87P7F576 hipsxi58c5GFF75RAGFc5D73P76 hipsxi58c67DAT7P76 hipsxi58c6AT7PR76$ hipsxi58c7QR34DAQ@76 hipsxi58c83AD76 hipsxi58c@7D6
hipsxi58cF7RUGPCcP735@76$ hipsxi58cGPA9AF3R76 hipsxi58cIS7S76 hipsxi58cP7RPA7T76 hipsxi58cQ7PTA57cAFARA3R76$ hipsxi58cRP3FQ87PP76 ihipxsqxihgre5QR38iei8svic' hipsxi88c53DDcAF8GPE3RAGF$ hipsxi88c6GcFGRc6AQRSP4 hipsxi88c8GPU3P6AF9 hipsxi88cE7QQ397cU3ARAF9 ihipxsqxihgre5QR33qix8svic' hipsxi38cDG9976cGF$ hipsxi38cDG9976cG88 hipsxi38cFGRcP736W hipsxi38cP736W hipsxi38cUGPCcFGRcP736W$ hipsxi38cUGPCcP736W ihipxsqxihgre5QR3Eesxixexgi8svic' hipsxiE8c435CcAFcQ7PTA57$ hipsxiE8cGSRcG8cQ7PTA57 ihipg5QR3Eyxsy8svic 5QR35evv8svic gevv' 5QR38iei8svic piei' 5QR33qix8svic eqix' 5QR3Eesxixexgi8svic wesxixexgi' vyxq sei8svi' 5QR3Eyxsy8svic'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?-/.)4/2?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!-ONITOR#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTIONS CALL REQUEST WITH ITS CONFIRMATION EVENTS 5NSOLICITED EVENTS WILL HAVE THIS PARAMETER SET TO ZERO
monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THE REQUESTED MONITOR HAS BEEN ESTABLISHED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION monitorFilter 4HIS PARAMETER IS USED TO SPECIFY THE FILTER TYPE WHICH IS ACTIVE ON THE OBJECT BEING MONITORED BY THE APPLICATION 0OSSIBLE CLASSES OF VALUES ARE #!,,?&),4%2 &%!452%?&),4%2 !'%.4?&),4%2 -!).4%.!.#%?&),4%2 AND 02)6!4%?&),4%2 privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HE APPLICATION SHOULD CHECK THIS CONFIRMATION EVENT TO OBTAIN THE MONITOR#ROSS2EF)$ BEING ASSIGNED BY THE SWITCH AND TO ENSURE THAT THE EVENT FILTER REQUESTED HAS BEEN ACTIVATED 4HE EVENT INFORMS THE APPLICATION WHICH FILTERS ARE ACTIVE ON THE GIVEN #34! ASSOCIATION
CSTA-ONITOR3TOP
The Monitor Stop Service is used to cancel a previously registered Monitor Service on an existing CSTA monitor association, i.e. an active monitorCrossRefID. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic geEyxsyQy 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5QR3Eyxsy5yPipA6c wyxsy5yPipA6 Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S monitorCrossRefID 4HIS PARAMETER IDENTIFIES THE ORIGINAL #34! MONITOR ASSOCIATION FOR WHICH UNSOLICITED EVENT MONITORING IS TO BE CANCELED 4HIS IDENTIFIER IS PROVIDED AS A RESULT OF A MONITOR START SERVICE REQUEST IN A #34!-ONITOR#ONF%VENT FOR A CALL OR DEVICE MONITOR WITHIN THE SWITCHING DOMAIN privateData 0RIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,,
Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!-ONITOR3TOP#ONF%VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments CSTA-ONITOR3TOP CANCELS A PREVIOUSLY REGISTERED MONITOR ASSOCIATION ON A #34! OBJECT A DEVICE OR A CALL OBJECT /NCE A CONFIRMATION EVENT IS ISSUED FOR THIS FUNCTION IE A #34!-ONITOR3TOP#ONF%VENT 43!0) TERMINATES THE PREVIOUSLY ACTIVE MONITORING ASSOCIATION AND THUS END EVENT REPORTING FOR THE MONITORED CALL OR DEVICE
#34!-ONITOR3TOP#ONF%VENT
This event is in response to the cstaMonitorStop( ) function and provides the application with a confirmation that the monitor association has been canceled. Once this confirmation event is issued all event reporting for the specific monitoring association will be discontinued. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3EyxsyQy5yxp7ix wyxsyQy' ' ge5yxpswesyx' iix' 5QR37ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?-/.)4/2?34/0?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!-ONITOR3TOP#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTIONS CALL REQUEST WITH ITS CONFIRMATION EVENTS 5NSOLICITED EVENTS WILL HAVE THIS PARAMETER SET TO ZERO privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS CONFIRMATION EVENT INDICATES A CANCELLATION OF A #34! MONITORING ASSOCIATION !FTER THIS EVENT IS ISSUED BY THE 4ELEPHONY 3ERVER NO FURTHER EVENTS WILL BE SENT TO THE APPLICATION ON THE MONITORING ASSOCIATION MONITOR#ROSS2EF)$ WHICH WAS CANCELED
CSTA#HANGE-ONITOR&ILTER
This function is used to request a change in the filter options for CSTA event reporting for a specific CSTA association. It allows the application to specify for which event category the application wishes to receive events. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhic ge5rexqiEyxsy8svi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5QR3Eyxsy5yPipA6c wyxsy5yPipA6 5QR3Eyxsy8svic psvivs Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIRMATION EVENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S monitorCrossRefID 4HIS PARAMETER IDENTIFIES THE #34! ASSOCIATION ASSOCIATION HANDLE FOR WHICH A CHANGE IN EVENT FILTERING IS REQUIRED 4HE ASSOCIATION IDENTIFIER IS PROVIDED BY THE SERVERSWITCH WHEN THE ASSOCIATION IS ESTABLISHED filterlist 4HIS PARAMETER IDENTIFIES THE FILTER TYPE BEING REQUESTED 0OSSIBLE CLASSES OF VALUES ARE #!,,?&),4%2 &%!452%?&),4%2 !'%.4?&),4%2 -!).4%.!.#%?&),4%2 AND 02)6!4%?&),4%2 4HIS PARAMETER ALSO IDENTIFIES THE EVENTS TO BE FILTERED
privateData 0RIVATE DATA EXTENSION MECHANISM 3ETTING THIS PARAMETER IS OPTIONAL )F THE PARAMETER IS NOT USED THE POINTER SHOULD BE SET TO .5,, Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!#HANGE-ONITOR&ILTER#ONF%VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments !N APPLICATION USES CSTA#HANGE-ONITOR&ILTER TO INFORM THE !0) #LIENT ,IBRARY AND THE SERVER THAT APPLICATION WISHES TO RECEIVE ONLY CERTAIN EVENTS 4HE SERVER FILTERS OUT ALL OTHER EVENTS
#34!#HANGE-ONITOR&ILTER#ONF%VENT
This event occurs as a result of the cstaChangeMonitorFilter( ) function and informs the application which event filter was set by the server. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6c' xsyx 5QR35rexqiEyxsy8svi5yxp7ixc grexqiEyxsy8svi' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR35rexqiEyxsy8svi5yxp7ixc 5QR3Eyxsy8svic wyxsypsvi' 5QR35rexqiEyxsy8svi5yxp7ixc
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34!#ONFIRMATION EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?#(!.'%?-/.)4/2?&),4%2?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!#HANGE-ONITOR&ILTER#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTION S CALL REQUEST WITH ITS CONFIRMATION EVENTS 5NSOLICITED EVENTS WILL HAVE THIS PARAMETER SET TO ZERO monitorFilter 4HIS PARAMETER IDENTIFIES THE FILTER TYPE BEING REQUESTED 0OSSIBLE CLASSES OF VALUES ARE #!,,?&),4%2 &%!452%?&),4%2 !'%.4?&),4%2 -!).4%.!.#%?&),4%2 AND 02)6!4%?&),4%2 4HIS PARAMETER ALSO IDENTIFIES THE EVENTS TO BE FILTERED privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS CONFIRMATION EVENT SHOULD BE CHECKED BY THE APPLICATION TO INSURE THAT THE EVENT FILTER REQUESTED HAS BEEN ACTIVATED AND WHICH FILTERS ARE ALREADY ACTIVE ON THE GIVEN #34! ASSOCIATION
#34!-ONITOR%NDED%VENT
This unsolicited indication is sent by the driver/switch to indicate to the application that the monitor associated with the monitorCrossRefID has been stopped. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE 3ECTIONS !#3 $ATA 4YPES AND #34! $ATA 4YPES FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3Eyxsy7xhihcwyxsy7xhih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg5QR3Eyxsy7xhih7ixc 5QR37ix5eicgei' 5QR3Eyxsy7xhih7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?-/.)4/2?%.$%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!-ONITOR%NDED%VENT monitorCrossRefID, 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION cause 4HE CAUSE CODE INDICATING THE REASON THE MONITOR WAS STOPPED privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT IS PROVIDED BY THE DRIVERSWITCH WHEN IT CAN NO LONGER PROVIDED THE REQUESTED EVENTS ASSOCIATED WITH THE MONITOR#ROSS2EF)D
#34!#ALL#LEARED%VENT
This event report indicates when a call is torn down. This can occur when the last device has disconnected from the call or when a call is dissolved by another party to the call - like a conference call being dissolved by the conference controller. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6cwyxsy5yPipA6' xsyx 5QR35evv5vieih7ixgevv5vieih' ' geSxyvsgsih' iix' 5QR37ixc' ihipixwDygev5yxxigsyxQeic 5QcFSDD) 5QcAFARA3R7) 5Qc3D7PRAF9) 5Qc5GFF75R) 5Qc@GD6) 5QcIS7S76)! 5Qc83AD)" Dygev5yxxigsyxQeic' ihipixw5QR37ix5eic 35RAT7cEGFARGP) 3DR7PF3R7) 4SQW)
53DDc435C) 53DDc53F57DD76)! 53DDc8GPU3P6c3DU3WQ)" 53DDc8GPU3P6c4SQW)# 53DDc8GPU3P6cFGc3FQU7P)$ 53DDc8GPU3P6)% 53DDcFGRc3FQU7P76) 53DDcHA5CSH) 53EHcGF) 67QRcFGRcG4R3AF34D7) 6GcFGRc6AQRSP4) AF5GEH3RA4D7c67QRAF3RAGF)! AFT3DA6c355GSFRc5G67)" C7Wc5GF87P7F57)# DG5CGSR)$ E3AFR7F3F57)% F7RUGPCc5GF97QRAGF) F7RUGPCcFGRcG4R3AF34D7) F7Uc53DD) FGc3T3AD34D7c397FRQ) GT7PPA67) H3PC)! GT7P8DGU)" P753DD)# P76AP75R76)$ P7GP67PcRGF7)% P7QGSP57QcFGRc3T3AD34D7) QAD7FRcEGFARGP) RP3FQ87P) RPSFCQc4SQW) TGA57cSFARcAFARA3RGP) 5QR37ix5eic' ihipg 5yxxigsyxA6c Dygev5yxxigsyxQeic 5QR37ix5eic 5QR35evv5vieih7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?#!,,?#,%!2%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!#ALL#LEARED%VENT
monitorCrossRefID, 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION clearedCall 4HIS PARAMETER IDENTIFIES THE CALL WHICH HAS BEEN CLEARED localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER IT HAS BEEN CLEARED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
Comments 4HIS EVENT IS USUALLY PROVIDED AFTER THE CSTA#LEAR#ALL FUNCTION HAS BEEN CALLED BY THE APPLICATION )T CAN ALSO OCCUR UNSOLICITED WHEN ANOTHER ENDPOINT DEVICE CLEARS A CALL AND THE DEVICE BEING MONITORED BY THE !0) IS PART OF THE CALL CLEARED BY THE ANOTHER ENDPOINT 4HE EVENT IS ALSO GENERATED WHEN THE LAST REMAINING DEVICE HAS DISCONNECTED FROM THE CALL
Figure 6-17
D1
C1
D2
D1
D2
*
Before
D3
D3
After
#34!#ONFERENCED%VENT
This event report provides indication that two separate calls have been conferenced (merged) into a single call. This occurs without either party being removed from the resulting call. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6cwyxsy5yPipA6' xsyx 5QR35yxpiixgih7ixcgyxpiixgih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c 5yxxigsyxA6c Qftig6isgiA6c Qftig6isgiA6c 5yxxigsyxDsc Dygev5yxxigsyxQeic 5QR37ix5eic 5QR35yxpiixgih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?#/.&%2%.#%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!#ONFERENCED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION primaryOldCall 4HIS PARAMETER IDENTIFIES THE PRIMARY KNOWN CALL TO BE CONFERENCED 4HIS IS USUALLY THE HELD CALL PENDING THE CONFERENCE secondaryOldCall 4HIS PARAMETER IDENTIFIES THE SECONDARY CALL EG THE CONSULTATIVE CALL WHICH IS TO BE CONFERENCED 4HIS IS USUALLY THE ACTIVE CALL WHICH IS TO BE CONFERENCED TO THE HELD CALL PENDING THE CONFERENCE confController 4HIS STRUCTURE IDENTIFIES THE DEVICE WHICH IS CONTROLLING THE CONFERENCE 4HIS IS THE DEVICE WHICH SETUP THE CONFERENCE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED addedParty 4HIS PARAMETER IDENTIFIES THE DEVICE WHICH IS BEING ADDED TO THE CONFERENCE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED conferenceConnections 4HIS IS A LIST OF CONNECTIONS PARTIES ON THE CALL WHICH RESULTED FROM THE CONFERENCE 4HE CALL )$ MAY BE DIFFERENT FROM EITHER THE PRIMARY OR SECONDARY OLD CALL OR BOTH
localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER IT HAS BEEN CONFERENCED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT PROVIDES INFORMATION REGARDING A CONFERENCE AFTER IS HAS BEEN REQUESTED BY THE APPLICATION USING THE #34!#ONFERENCE#ALL FUNCTION OR OTHER ENDPOINTS ON THE SWITCH 4HE CHANGES IN THE CALL STATES ARE AS FOLLOWS
Figure 6-18
D1
C1
* *
D2
D1
*
c
D2
C2
D3
C3
D3
Before
After
#34!#ONNECTION#LEARED%VENT
This event report indicates that a device associated with a call disconnects from the call or is dropped from the call. The event does not indicate that a transferring device has left a call through the act of transferring that call. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR35yxxigsyx5vieih7ixcgyxxigsyx5vieih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c hyih5yxxigsyx' Qftig6isgiA6c iviesxq6isgi' Dygev5yxxigsyxQeic vygev5yxxigsyxAxpy' 5QR37ix5eic gei' 5QR35yxxigsyx5vieih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?#/..%#4)/.?#,%!2%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!#ONNECTION#LEARED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION droppedConnection 4HIS PARAMETER IDENTIFIES THE #ONNECTION WHICH WAS DROPPED FROM THE CALL AS A RESULT OF A DEVICE DROPPING FROM THE CALL releasingDevice 4HIS PARAMETER IDENTIFIES THE DEVICE WHICH DROPPED THE CALL localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE CONNECTION HAS BEEN CLEARED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
Comments 4HIS EVENT IS USED TO DETERMINE WHICH DEVICE DISCONNECTS FROM A MULTI PARTY CALL 4HE DEVICE)$ IDENTIFIES THE DEVICES WHICH DISCONNECTED OR WAS DISCONNECTED FROM THE CALL 4HE ,OCAL#ONNECTION)NFO DEFINES THE STATE OF THE CALL AT THE MONITORED DEVICE AFTER THE DEVICE HAS BEEN DROPPED FROM THE CALL
Figure 6-19
D1
C1
D2
D1
C1
D2
*
Before
D3
D3
After
#34!$ELIVERED%VENT
This event report indicates that a call is alerting (e.g. ringing) at a specific device or that the server has detected that a call is alerting at a specific device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE #HAPTER $ATA 4YPES AND #34! $ATA 4YPES FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR36ivsiih7ixchivsiih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c Qftig6isgiA6c 5evvsxq6isgiA6c 5evvih6isgiA6c Pihsigsyx6isgic Dygev5yxxigsyxQeic 5QR37ix5eic 5QR36ivsiih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?$%,)6%2%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!$ELIVERED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION connection 4HIS PARAMETER IDENTIFIES THE #ONNECTION WHICH IS ALERTING alertingDevice 4HIS PARAMETER INDICATES WHICH DEVICE IS ALERTING )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED callingDevice 4HIS PARAMETER IDENTIFIES THE CALLING DEVICE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED calledDevice 4HIS PARAMETER IDENTIFIES THE ORIGINALLY CALLED DEVICE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED lastRedirectionDevice 4HIS PARAMETER WILL IDENTIFY THE PREVIOUSLY ALERTED DEVICE IN CASES WHERE THE CALL WAS REDIRECTED OR DIVERTED TO THE ALERTING DEVICE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE #ONNECTION HAS ALERTED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED
cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT PROVIDES ALL THE NECESSARY INFORMATION REQUIRED WHEN A NEW CALL ARRIVES AT A DEVICE 4HIS WILL INCLUDE THE CALLING AND CALLED NUMBERS
Figure 6-20
D1
C1
D2
D1
C1
D2
Before
After
#34!$IVERTED%VENT
This event report identifies a call which has been deflected or diverted from a monitored device. The call is no longer present or associated with the device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR36siih7ixchsiih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c Qftig6isgiA6c 5evvih6isgiA6c Dygev5yxxigsyxQeic 5QR37ix5eic 5QR36siih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?$)6%24%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!$IVERTED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION connection 4HIS PARAMETER INDICATES THE #ONNECTION WHICH WAS PREVIOUSLY ALERTING 4HIS CAN BE THE INTENDED #ONNECTION FOR THE CALL BEFORE IT WAS DIVERTED divertingDevice 4HIS PARAMETER INDICATES THE DEVICE FROM WHICH THE CALL WAS DIVERTED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED newDestination 4HIS PARAMETER INDICATES THE DEVICE TO WHICH THE CALL WAS DIVERTED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE DEVICE BEING MONITORED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T
privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT IS USED TO DETERMINE INFORMATION ABOUT A CALL WHICH HAS BEEN DIVERTED FROM A MONITORED DEVICE 4HIS INCLUDES INFORMATION ON WHICH DEVICE THE CALL IS BEING DIVERTED
Figure 6-21
D1
C1
D2
D1
C1
D2
D3
D3
*
After
Before
#34!%STABLISHED%VENT
This event report indicates that a device connects to a call. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR37efvsrih7ixciefvsrih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c iefvsrih5yxxigsyx' Qftig6isgiA6c 5evvsxq6isgiA6c 5evvih6isgiA6c Pihsigsyx6isgiA6c Dygev5yxxigsyxQeic 5QR37ix5eic 5QR37efvsrih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?%34!",)3(%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!%STABLISHED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION establishedConnection 4HIS PARAMETER IDENTIFIES THE #ONNECTION WHICH JOINED THE CALL AS A RESULT OF ANSWERING THE CALL answeringDevice 4HIS PARAMETER INDICATES THE DEVICE WHICH HAS JOINED THE CALL IE THE ANSWERING DEVICE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED callingDevice 4HIS INDICATES WHICH DEVICE MADE THE CALL IE THE CALLING DEVICE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED calledDevice 4HIS PARAMETER INDICATES THE ORIGINALLY CALLED DEVICE 4HIS MAY NOT ALWAYS BE THE DEVICE ANSWERING A CALL AS IS THE CASE WITH CALL FORWARDING OR COVERAGE IE CALL REDIRECTION )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED lastRedirectionDevice 4HIS PARAMETER INDICATES THE PREVIOUSLY ALERTED DEVICE IN CASES WHERE A CALL IS REDIRECTED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED
localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE DEVICE FOR THE CALL WHICH HAS BEEN ESTABLISHED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT IS TYPICALLY USED TO DETERMINED WHEN A CALL IS ANSWERED BY AN ENDPOINT BEING CALLED BY THE APPLICATION 4HIS INCLUDES THE CALLING AND CALLED NUMBER IDENTIFICATION
Figure 6-22
D1
C1
D2
D1
C1
D2
Before
After
#34!&AILED%VENT
This event report indicates that a call cannot be completed. The event applies only to a single Connection. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR38esvih7ixcpesvih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c Qftig6isgiA6c 5evvih6isgiA6c Dygev5yxxigsyxQeic 5QR37ix5eic 5QR38esvih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?&!),%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!&AILED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION failedConnection 4HIS PARAMETER INDICATES WHICH #ONNECTION HAS FAILED failingDevice 4HIS PARAMETER INDICATES WHICH DEVICE HAS FAILED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED calledDevice 4HIS PARAMETER INDICATES WHICH DEVICE WAS CALLED WHEN THE CALL FAILED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE #ONNECTION HAS FAILED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T
privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT OCCURS ANYTIME A CALL CANNOT BE COMPLETED FOR ANY REASON EG 3TATIONS "USY 2EORDER 4ONE 4RUNKS "USY ETC 4HE CAUSE PARAMETER CONTAINS THE REASON WHY THE CALL FAILED
Figure 6-23
D1
C1
D2
D1
C1
D2
Before
After
#34!(ELD%VENT
This event report indicates that the server has detected that communications on a particular Connection has be interrupted (i.e. put on hold) by one of the devices on the call. This event is usually associated with a call being placed on hold at a device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3@ivh7ixcrivh' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c Qftig6isgiA6c Dygev5yxxigsyxQeic 5QR37ix5eic 5QR3@ivh7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?(%,$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!(ELD%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION heldConnection 4HIS PARAMETER IDENTIFIES THE #ONNECTION WHICH WAS PUT ON HOLD BY THE DEVICE holdingDevice 4HIS PARAMETER IDENTIFIES THE DEVICE WHICH PLACED THE CONNECTION ON HOLD )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE #ONNECTION HAS BEEN PUT ON HOLD 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
Comments 4HIS EVENT OCCURS AFTER A CALL HAS BEEN PLACED ON HOLD AT A SPECIFIC DEVICE 4HIS INFORMS THE APPLICATION WHAT DEVICE PLACED THE CONNECTION ON HOLD
Figure 6-24
D1
C1
D2
D1
C1
D2
Before
After
#34!.ETWORK2EACHED%VENT
This event report informs the application that a call has left the switch on an outbound trunk and is being routed through the telephone network. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3FiyuPiegrih7ixcxiyuPiegrih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c Qftig6isgiA6c 5evvih6isgiA6c Dygev5yxxigsyxQeic 5QR37ix5eic 5QR3FiyuPiegrih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?.%47/2+?2%!#(%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!.ETWORK2EACHED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION connection 4HIS PARAMETER SPECIFIES THE #ONNECTION )$ FOR THE OUTBOUND CONNECTION ASSOCIATED WITH THE TRUNK AND ITS CONNECTION TO THE NETWORK SEE FIGURE BELOW trunkUsed 4HIS PARAMETER SPECIFIES THE TRUNK THAT WAS USED TO ESTABLISH THE #ONNECTION WITH THE TELEPHONE NETWORK )F THE DEVICE IE THE TRUNK IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED calledDevice 4HIS PARAMETER INDICATES THE DESTINATION DEVICE FOR THE CALL )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE #ONNECTION HAS CUT THROUGH INTO THE TELEPHONE NETWORK 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T
privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments /NCE THIS EVENT OCCURS THE LEVEL OF CALL RELATED STATUS INFORMATION MAY DECREASE DEPENDING ON THE TYPE OF TRUNK BEING USED TO ROUTE THE CALL TO IT S DESTINATION ACROSS THE TELEPHONE NETWORK 4HE AMOUNT OF CALL RELATED STATUS INFORMATION PROVIDED BY THE NETWORK WILL DEPEND ON THE TYPE OF TRUNK AND TELEPHONE NETWORK BEING USED TO COMPLETE THE CALL #ALL STATUS INFORMATION MAY BE LIMITED TO THE DISCONNECT OR DROP EVENT 4HIS ONLY APPLIES FOR CALLS TO OTHER NETWORK ENDPOINTS AND NOT TO CALLS WITHIN THE SWITCH BEING CONTROLLED BY THE SERVER
Figure 6-25
D1
C1
D2
Trunk
Before
After
#34!/RIGINATED%VENT
This event report informs the application that the switch is attempting to establish a call as a result of a completed request from the application. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3Gsqsxeih7ixcyqsxeih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c Qftig6isgiA6c 5evvih6isgiA6c Dygev5yxxigsyxQeic 5QR37ix5eic 5QR3Gqsxeih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?/2').!4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!/RIGINATED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION originatedConnection 4HIS PARAMETER IDENTIFIES THE #ONNECTION WHERE A CALL HAS BEEN ORIGINATED callingDevice 4HIS PARAMETER IDENTIFIES THE DEVICE FROM WHICH THE CALL HAS BEEN ORIGINATED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED calledDevice 4HIS PARAMETER IDENTIFIES THE DEVICE FOR WHICH THE ORIGINATED CALL IS INTENDED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE #ONNECTION HAS BEEN ORIGINATED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T
privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT INDICATES THAT A CALL IS BEING LAUNCHED BY THE SWITCH ON BEHALF OF THE REQUEST FROM THE APPLICATION 4HE EVENT ONLY INDICATES THAT THE SWITCH IS ATTEMPTING TO MAKE THE CALL 4HE APPLICATION SHOULD CHECK FOR ADDITIONAL EVENTS TO DETERMINE THE STATUS OF THE CALL AS IT PROCEEDS EITHER THROUGH THE SWITCH OR OUT TO THE TELEPHONE NETWORK
Figure 6-26
D1
D2
D1
C1
D2
Before
After
#34!1UEUED%VENT
This event report indicates that a call has been queued to an ACD Split, a hunt group, or others devices which support call queues. Call can also be queued during network re-routing without specifying a device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3Iiih7ixciih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c Qftig6isgiA6c Qftig6isgiA6c 5evvih6isgiA6c Pihsigsyx6isgiA6c sx Dygev5yxxigsyxQeic 5QR37ix5eic 5QR3Iiih7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?15%5%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!1UEUED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION queuedConnection 4HIS INDICATES THE #ONNECTION WAS QUEUED TO THE DEVICE queue 4HIS PARAMETER SPECIFIES THE DEVICE TO WHICH THE CALL HAS BEEN QUEUED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED callingDevice 4HIS PARAMETER INDICATES THE DEVICE WHO QUEUED THE CALL )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED calledDevice 4HIS PARAMETER INDICATES THE DEVICE WHICH WAS CALLED THE INTENDED RECIPIENT OF THE CALL )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED
lastRedirectionDevice 4HIS PARAMETER IDENTIFIES THE LAST DEVICE WHICH REDIRECTED THE CALL IF THE CALL HAS BEEN REDIRECTED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED numberQueued 4HIS PARAMETER INDICATES HOW MANY CALLS ARE QUEUED TO THE QUEUING DEVICE localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE CALL HAS BEEN QUEUED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT USUALLY OCCURS WHEN AN APPLICATION IS MONITORING A CALL A 6ECTOR $IRECTORY .UMBER 6$. AN !#$ 3PLIT OR A HUNT GROUP 4HE EVENT ALSO PROVIDES INFORMATION PERTAINING TO THE NUMBER OF CALLS THAT HAVE BEEN QUEUED TO A DEVICE 4HIS INFORMATION CAN BE USEFUL TO APPLICATIONS MANAGING THE QUEUE AT THE DEVICE
Figure 6-27
D1
C1
D2
D1
C1
D2
Before
After
#34!2ETRIEVE%VENT
This event report identifies a call which was previously on hold and has been retrieved at a device. This is equivalent to taking the call off the hold state and into the active state. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3Pisiih7ixcisiih' ' geSxyvsgsih' iix'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?2%42)%6%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!2ETRIEVED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION retrievedConnection 4HIS PARAMETER SPECIFIES THE #ONNECTION FOR WHICH THE CALL HAS BEEN TAKEN OFF THE HOLD STATE retrievingDevice 4HIS SPECIFIES THE DEVICE WHICH DE ACTIVATED THE CALL FROM THE HOLD STATE localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE CALL HAS BEEN RETRIEVED FROM THE HOLD STATE 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED
cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
Comments 4HIS EVENT INFORMS THE APPLICATION THAT A CALL IS NO LONGER ON HOLD 4HIS CAN OCCUR IF THE END USER PHYSICALLY TAKES THE CALL OFF THE HOLD STATE OR IN RESPONSE TO THE CSTA2ETRIEVE#ALL FUNCTION REQUEST
Figure 6-12
D1
C1
D2
D1
C1
D2
Before
After
#34!3ERVICE)NITIATED%VENT
This event report indicates to the application that telephony service was initiated at a device. The switch sends this event when it provides dial tone. Note that the user may be going off hook to invoke a feature using a feature access code, so call setup events do not necessarily follow. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN 3ECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3QisgiAxsseih7ixcisgiAxsseih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c sxsseih5yxxigsyx' Dygev5yxxigsyxQeic vygev5yxxigsyxAxpy' 5QR37ix5eic gei' 5QR3QisgiAxsseih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?3%26)#%?).)4)!4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!3ERVICE)NITIATED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION initiatedConnection 4HIS PARAMETER INDICATES THE #ONNECTION FOR WHICH SERVICE DIAL TONE HAS BEEN ESTABLISHED OR A FEATURE IS INVOKED 4HE SAME #ONNECTION IDENTIFIER WILL CONTINUE TO BE USED IF A CALL IS EVENTUALLY ESTABLISHED BY THE DEVICE localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE SERVICE HAS BEEN INITIATED 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
Comments #34! STATES THAT SWITCHES ARE NOT REQUIRED TO SEND THE SERVICE INITIATED EVENT FOR CALLS THAT ARE ORIGINATED FROM FUNCTIONAL TYPE DEVICES EG )3$. "2) DEVICES THAT DO EN BLOC DIALING OR FOR CALLS THAT OTHER APPLICATIONS ORIGINATE USING CSTA-AKE#ALL 4HUS SOME 0"8 DRIVERS MAY NOT PROVIDE THIS EVENT IN THESE CIRCUMSTANCES
Figure 6-13
D1
D1
C1
Before
After
#34!4RANSFERRED%VENT
This event report indicates that an existing call was transferred to another device and that the device which transferred the call is no longer part of the call, i.e. the transferring device has dropped from the call. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3Rexpi7ixcexpiih' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c 5yxxigsyxA6c Qftig6isgiA6c Qftig6isgiA6c 5yxxigsyxDsc Dygev5yxxigsyxQeic 5QR37ix5eic 5QR3Rexpiih7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?42!.3&%22%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34!4RANSFERRED%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION primaryOldCall 4HIS PARAMETER IDENTIFIES THE PRIMARY KNOWN CALL THAT WAS TRANSFERRED secondaryOldCall 4HIS PARAMETER IDENTIFIES THE SECONDARY CALL THAT WAS TRANSFERRED 4HIS WOULD IDENTIFY THE CONSULTATIVE CALL USED TO MAKE THE TRANSFER AFTER THE PRIMARY CALL WAS PLACED ON HOLD transferringDevice 4HIS INDICATES WHICH DEVICE TRANSFERRED THE CALL )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED transferredDevice 4HIS INDICATES TO WHICH DEVICE THE CALL WAS TRANSFERRED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED transferredConnections 4HIS IS A LIST OF CONNECTIONS PARTIES ON THE CALL WHICH RESULTED FROM THE TRANSFER 4HE CALL )$ MAY BE DIFFERENT FROM EITHER THE PRIMARY OR SECONDARY OLD CALL OR BOTH localConnectionInfo 4HIS PARAMETER DEFINES THE LOCAL CONNECTION STATE OF THE CALL AFTER THE CALLS HAVE BEEN TRANSFERRED FROM THE DEVICE WHICH PERFORMED THE TRANSFER 4HIS COULD BE NULL INITIATED ALERTING CONNECTED HELD QUEUED OR FAILED
cause 4HIS PARAMETER CONTAINS THE CAUSE VALUE WHICH INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 4HE POSSIBLE EVENTS ARE DEFINED BY #34!%VENT#AUSE?T privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT PROVIDES THE APPLICATION WITH ALL THE INFORMATION IT NEEDS REGARDING A CALL WHICH WAS TRANSFERRED FROM ONE DEVICE TO ANOTHER
Figure 6-14
D1
C1
* *
D2
D1
*
C3
D2
C2
D3
D3
Before
After
#34!#ALL)NFO%VENT
This event report is provided when a user account code feature has collected data for a party on the call. The event includes the account code and authorization information which was collected by the switch feature. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR35evvAxpy7ixcgevvAxpywesyx' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5yxxigsyxA6c gyxxigsyx' Qftig6isgiA6c hisgi' 3ggyxAxpyc eggyxAxpy' 3r5yhic erysesyx5yhi' 5QR35evvAxpy7ixc' ihipgre3ggyxAxpycYa' ihipgre3r5yhicYa'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?#!,,?).&/2-!4)/. WHICH IDENTIFIES THIS MESSAGE AS AN #34!#ALL)NFO%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION connection 4HIS PARAMETER IDENTIFIES THE PARTY THAT HAS ENTERED THE ACCOUNT CODE device )NDICATES FROM WHICH DEVICE WAS THE ACCOUNT CODE INFORMATION ENTERED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED accountInfo 3PECIFIES THE ACCOUNT CODE WHICH WAS ENTERED AT THE DEVICE authorizationCode 3PECIFIES THE AUTHORIZATION CODE WHICH WAS ENTERED AT THE DEVICE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
Comments 4HIS EVENT INFORMS THE APPLICATION WHEN AN ACCOUNT CODE FEATURE HAS BEEN ACTIVATED AND WHAT INFORMATION WAS COLLECTED BY THE SWITCH AS A RESULT OF THE FEATURE BEING ACTIVATED
#34!$O.OT$ISTURB%VENT
This event report indicates a change in the status of the Do Not Disturb feature for a specific device. The Do Not Disturb event will result in all calls to a device to be automatically forwarded to the device coverage path. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR36yFy6sf7ixchyFy6sf ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c 4yyviex 5QR36yFy6sf7ixc'
hisgi' hyFy6sfGx'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?$/?./4?$)3452" WHICH IDENTIFIES THIS MESSAGE AS AN #34!$O.OT$ISTURB%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION device 3PECIFIES THE DEVICE FOR WHICH THE $/ .OT $ISTURB FEATURE HAS BEEN ACTIVATEDDEACTIVATED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED doNotDisturbON 3PECIFIES WHETHER THE $/ .OT $ISTURB FEATURE IS ON OR OFF privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
#34!&ORWARDING%VENT
This event report will indicate a change in the state of the Forwarding feature for a specific device. The event will also indicate the type of forwarding being invoked when the feature is activated. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR38yehsxq7ixcpyehsxq' ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c 8yehsxqAxpyc 5QR38yehsxq7ixc'
hisgi' pyehsxqAxpywesyx'
ihipg8yehsxqAxpyc 8yehsxqRic pyehsxqRi' 4yyviex pyehsxqGx' 6isgiA6c pyeh6F' FSDDpyxy iix 8yehsxqAxpyc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?&/27!2$).' WHICH IDENTIFIES THIS MESSAGE AS AN #34!&ORWARDING%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION device 3PECIFIES THE DEVICE FOR WHICH THE &ORWARDING FEATURE HAS BEEN ACTIVATEDDEACTIVATED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED forwardingType 3PECIFIES THE TYPE OF FORWARDING BEING INVOKED FOR THE SPECIFIC DEVICE 4HIS MAY INCLUDE ONE OF THE FOLLOWING )MMEDIATE "USY .O !NSWER "USY )NTERNAL &ORWARDING ALL CALLS &ORWARDING WHEN BUSY &ORWARDING AFTER NO ANSWER &ORWARDING WHEN BUSY FOR AN INTERNAL CALL
&ORWARDING WHEN BUSY FOR AN EXTERNAL CALL &ORWARDING AFTER NO ANSWER FOR AN INTERNAL CALL &ORWARDING AFTER NO ANSWER FOR AN EXTERNAL CALL
forwardingON 3PECIFIES WHETHER THE &ORWARD FEATURE IS ON OR OFF forwardDN 3PECIFIES THE DESTINATION DEVICE TO WHICH THE CALLS ARE BEING FORWARDED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HE APPLICATION SHOULD BE AWARE THAT THE FORWARDING)NFO PARAMETER CAN INDICATE ANY OF THE DEFINED VALUES DEPENDING ON THE SWITCH IMPLEMENTATION OF THE FORWARDING FEATURE
#34!-ESSAGE7AITING%VENT
This event report is used to indicate whether the Message Waiting feature has been activated/deactivated. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3EieqiUessxq7ixcwieqiUessxq' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 5evvih6isgiA6c hisgi8yEieqi' Qftig6isgiA6c sxyusxq6isgi' 4yyviex wieqiUessxqGx' 5QR3EieqiUessxq7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?-%33!'%?7!)4).' WHICH IDENTIFIES THIS MESSAGE AS AN #34!-ESSAGE7AITING%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION deviceForMessage )NDICATES THE DEVICE WHERE THE MESSAGE IS WAITING IE ADDRESS OF DEVICE WHERE THE MESSAGE WAITING FEATURE WAS ACTIVATED )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED invokingDevice 3PECIFIES WHICH DEVICE INVOKED THE MESSAGE WAITING FEATURE IE ADDRESS OF THE DEVICE WHO ACTIVATED THE MESSAGE WAITING FEATURE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED messageWaitingOn 3PECIFIES WHETHER THE -ESSAGE 7AITING FEATURE IS ON OR OFF privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT CAN OCCUR FOR BOTH A DEVICE OR A CALL ASSOCIATION
#34!,OGGED/N%VENT
This event report informs the application that an agent has logged into a device (usually an ACD Split). Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3DyqqihGx7ixcvyqqihGx ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c eqix6isgi' 3qixA6c eqixA6' 3qix9yc eqix9y' 3qixHeyhc eyh' 5QR3DyqqihGx7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?,/''%$?/. WHICH IDENTIFIES THIS MESSAGE AS AN #34!,OGGED/N%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION agentDevice 3PECIFIES THE DEVICE FROM WHICH THE AGENT IS LOGGED ON TO THE SYSTEM )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED agentID 4HIS PARAMETER SPECIFIES THE AGENT IDENTIFIER OF THE AGENT WHO LOGGED INTO THE SYSTEM agentGroup 3PECIFIES THE GROUP OR !#$ 3PLIT TO WHICH THE AGENT IS LOGGING INTO password 4HIS PARAMETER SPECIFIES THE AGENT S PASSWORD USED TO LOG INTO THE SYSTEM privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments )N MOST CASES WHEN AN AGENT LOGS INTO A DEVICE IT USUALLY MEANS THAT THE AGENT IS READY TO START RECEIVING CALLS AT THE DEVICE 4HIS MAY NOT BE TRUE FOR SOME IMPLEMENTATIONS
#34!,OGGED/FF%VENT
This event report indicates that an agent has logged out of the device/ACD Split for which the agent had previously logged in and was providing service. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3DyqqihGpp7ixcvyqqihGpp' ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c 3qixA6c 3qix9yc 5QR3DyqqihGpp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?,/''%$?/&& WHICH IDENTIFIES THIS MESSAGE AS AN #34!,OGGED/FF%VENT agentDevice 3PECIFIES THE DEVICE FROM WHICH THE AGENT IS LOGGED OFF THE SYSTEM )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED agentID 4HIS PARAMETER SPECIFIES THE AGENT IDENTIFIER OF THE AGENT WHO LOGGED OFF THE SYSTEM agentGroup 3PECIFIES THE GROUP OR !#$ 3PLIT FROM WHICH THE AGENT IS LOGGING OUT privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
#34!.OT2EADY%VENT
This event report indicates that an agent is busy with tasks other than servicing an ACD call at the device. In most cases this will imply that the agent is not ready to receive a call or that the agent is taking a break. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3FyPieh7ixcxyPieh' ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c 3qixA6c 5QR3FyPieh7ixc'
eqix6isgi' eqixA6'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?./4?2%!$9 WHICH IDENTIFIES THIS MESSAGE AS AN #34!.OT2EADY%VENT agentDevice 3PECIFIES THE DEVICE FROM WHICH THE AGENT IS LOGGED ON TO THE SYSTEM )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED agentID 4HIS PARAMETER SPECIFIES THE IDENTIFIER OF THE AGENT WHO IN NOT READY TO RECEIVE CALLS privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
#34!2EADY%VENT
This event report indicates that an agent is ready to receive calls at the device. This event can occur even if the agent is busy on an active call at the device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3Pieh7ixcieh' ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c 3qixA6c 5QR3Pieh7ixc'
eqix6isgi' eqixA6'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?2%!$9 WHICH IDENTIFIES THIS MESSAGE AS AN #34!2EADY%VENT agentDevice 3PECIFIES THE DEVICE WHICH IS READY TO RECEIVE CALLS FROM THE !#$ )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED agentID 4HIS PARAMETER SPECIFIES THE IDENTIFIER OF THE AGENT WHO IN READY TO RECEIVE CALLS privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
#34!7ORK.OT2EADY%VENT
This event report indicates that the agent is in after call work mode completing the tasks involved in servicing a call after the connection has been disconnected. This will implies that the agents is no longer on the call but is completing the servicing of the last call and the agent should not receive any additional calls. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3UyuFyPieh7ixcyuFyPieh' ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c eqix6isgi' 3qixA6c eqixA6' 5QR3UyuFyPieh7ixc'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?7/2+?./4?2%!$9 WHICH IDENTIFIES THIS MESSAGE AS AN #34!7ORK.OT2EADY%VENT agentDevice 3PECIFIES THE DEVICE WHICH HAS INVOKED THE 7ORK .OT 2EADY MODE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED agentID 4HIS PARAMETER SPECIFIES THE IDENTIFIER OF THE AGENT WHO IS IN THE 7ORK .OT 2EADY MODE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments )N THE CASE OF THIS EVENT THE AGENT IS STILL WORKING ON COMPLETING THE AFTER CALL WORK FOR THE LAST CALL 4HE DIFFERENCE BETWEEN THIS EVENT AND THE #34!7ORK2EADY%VENT IS THAT THE AGENT HAS INDICATED THAT HESHE IS NOT READY TO RECEIVE ADDITIONAL CALLS
#34!7ORK2EADY%VENT
This event report indicates that the agent is in "after call work mode" completing the tasks involved in servicing a call after the connection has been disconnected. This implies that the agents is no longer on the call but is completing the servicing of the last call and the agent may receive any additional calls. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3UyuPieh7ixcyuPieh' ' geSxyvsgsih' iix' 5QR37ixc' ihipg Qftig6isgiA6c 3qixA6c 5QR3UyuPieh7ixc'
eqix6isgi' eqixA6'
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?7/2+?2%!$9 WHICH IDENTIFIES THIS MESSAGE AS AN #34!7ORK2EADY%VENT agentDevice 3PECIFIES THE DEVICE WHICH HAS INVOKED THE 7ORK 2EADY MODE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED agentID 4HIS PARAMETER SPECIFIES THE IDENTIFIER OF THE AGENT WHO IS IN THE 7ORK 2EADY MODE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments )N THE CASE OF THIS EVENT THE AGENT IS STILL WORKING ON COMPLETING THE AFTER CALL WORK FOR THE LAST CALL 4HE DIFFERENCE BETWEEN THIS EVENT AND THE #34!7ORK.OT2EADY%VENT IS THAT THE AGENT HAS INDICATED THAT HESHE IS READY TO RECEIVE ADDITIONAL CALLS
#34!-ONITOR&ILTER?T
This structure is used to identify the event type filters requested or available on a monitored CSTA association.
ihipxsqxihry5QR35evv8svic' hipsxi58c53DDc5D73P76$ hipsxi58c5GF87P7F576 hipsxi58c5GFF75RAGFc5D73P76 hipsxi58c67DAT7P76 hipsxi58c6AT7PR76$ hipsxi58c7QR34DAQ@76 hipsxi58c83AD76 hipsxi58c@7D6 hipsxi58cF7RUGPCcP735@76$ hipsxi58cGPA9AF3R76 hipsxi58cIS7S76 hipsxi58cP7RPA7T76 hipsxi58cQ7PTA57cAFARA3R76$ hipsxi58cRP3FQ87PP76 ihipxsqxihgre5QR38iei8svic' hipsxi88c53DDcAF8GPE3RAGF$ hipsxi88c6GcFGRc6AQRSP4 hipsxi88c8GPU3P6AF9 hipsxi88cE7QQ397cU3ARAF9 ihipxsqxihgre5QR33qix8svic' hipsxi38cDG9976cGF$ hipsxi38cDG9976cG88 hipsxi38cFGRcP736W hipsxi38cP736W hipsxi38cUGPCcFGRcP736W$ hipsxi38cUGPCcP736W ihipxsqxihgre5QR3Eesxixexgi8svic' hipsxiE8c435CcAFcQ7PTA57$ hipsxiE8cGSRcG8cQ7PTA57 ihipg5QR3Eyxsy8svic 5QR35evv8svicgevv' 5QR38iei8svicpiei' 5QR33qix8sviceqix' 5QR3Eesxixexgi8svicwesxixexgi' 4yyviexsei' 5QR3Eyxsy8svic'
CALL_FILTERS 4HESE VALUES INDICATE THAT A CALL EVENT FILTER SHOULD BE USED FOR PROCESSING EVENTS 4HE PROVIDED FILTER MAY BE DIFFERENT THAN THE ONE REQUESTED
FEATURE_FILTERS 4HESE VALUES INDICATE THAT A FEATURE EVENT FILTER SHOULD BE USED FOR PROCESSING EVENTS 4HE PROVIDED FILTER MAY BE DIFFERENT THAN THE ONE REQUESTED AGENT_FILTERS 4HESE VALUES INDICATE THAT A AGENT EVENT FILTER SHOULD BE USED FOR PROCESSING EVENTS 4HE PROVIDED FILTER MAY BE DIFFERENT THAN THE ONE REQUESTED MAINTENANCE_FILTERS 4HESE VALUES INDICATE THAT A MAINTENANCE EVENT FILTER SHOULD BE USED FOR PROCESSING EVENTS 4HE PROVIDED FILTER MAY BE DIFFERENT THAN THE ONE REQUESTED PRIVATE_FILTER 4HIS VALUE INDICATES THAT A PRIVATE FILTER SHOULD BE USED FOR PROCESSING EVENTS 4HE PROVIDED FILTER MAY BE DIFFERENT THAN THE ONE REQUESTED
#34!%VENT#AUSE?T
This structure contains an enumerated list of all the possible event causes which can occur with different events. The definitions of these event cause codes are also provided.
ihipixw5QR37ix5eic 75cFGF7) 75c35RAT7cEGFARGP) 75c3DR7PF3R7) 75c4SQW) 75c53DDc435C) 75c53DDc53F57DD76)! 75c53DDc8GPU3P6c3DU3WQ)" 75c53DDc8GPU3P6c4SQW)# 75c53DDc8GPU3P6cFGc3FQU7P)$ 75c53DDc8GPU3P6)% 75c53DDcFGRc3FQU7P76) 75c53DDcHA5CSH) 75c53EHcGF) 75c67QRcFGRcG4R3AF34D7) 75c6GcFGRc6AQRSP4) 75cAF5GEH3RA4D7c67QRAF3RAGF)! 75cAFT3DA6c355GSFRc5G67)" 75cC7Wc5GF87P7F57)# 75cDG5CGSR)$ 75cE3AFR7F3F57)% 75cF7RUGPCc5GF97QRAGF) 75cF7RUGPCcFGRcG4R3AF34D7) 75cF7Uc53DD) 75cFGc3T3AD34D7c397FRQ) 75cGT7PPA67) 75cH3PC)! 75cGT7P8DGU)" 75cP753DD)# 75cP76AP75R76)$ 75cP7GP67PcRGF7)% 75cP7QGSP57QcFGRc3T3AD34D7) 75cQAD7FRcEGFARGP) 75cRP3FQ87P) 75cRPSFCQc4SQW) 75cTGA57cSFARcAFARA3RGP) 5QR37ix5eic'
Certain cause codes will appear in events only if they make sense. The Table 6-1 gives cause code definitions. Table 6-2 illustrates which cause codes are possible for the each of the call events.
Table 6-1
Alternate
the call could not obtain the destination. the call encountered a Do Not Disturb condition.
4ELEPHONE NUMBERS ASSOCIATED PRIMARILY WITH ONE DEVICE OFTEN APPEAR ALSO ON A SECOND DEVICE /NE EXAMPLE IS A SECRETARY WHO S PHONE HAS MIRRORED OR BRIDGED LINES OF A BOSS S PHONE
indicates that the event was the result of action by automated equipment (voice mail device, voice response unit, announcement) rather than the result of action by a human user.
Table 6-2
Active Monitor Alternate Busy Call Back Call Canceled Call Forward Call Fd. Immediate Call Fd. - Busy Call Fd. - No Answer Call Not Answered Call Pickup Camp On Dest. not Obtainable Do Not Disturb Incpt. Destination Invalid Account Code y y y y y
y y y y y y y y y y y y y y y y y y y y y y y y y y
y y
y y
y y y
y y
y y
y y y y
y y
y y
y y
y y
y y y
y y
Maintenance Net Congestion Net Not Obtainable New Call No Available Agents Overflow Override Park Recall Redirected Reorder Tone Resrcs. not Available Silent Monitor Transfer Trunks Busy Voice Unit Initiator
y y y y y y y y y y y y y y
y y y
y y y y
y y
y y
y y
y y
y y y
y y
y y
y y y
y y
y y
y y
y y y y y y y y
y y y y y y
Chapter
Snapshot Services
An application uses CSTA Snapshot Services to query the current state of a CSTA Call or a Device object. Snapshot services query the switch to provide an application with information about the object. The information is a "snapshot" since the state of the Call or Device object changes over time. The Call Snapshot Services return a list of the Devices and Connections associated with a given Call, and the Connection States for each of those Devices. As Figure 7-1 illustrates, the union of the Connection States for the Call defines the overall Call State. Also refer to the definition of Call State in Chapter 3. Figure 7-1 shows a Call that has four associated devices. Recall from Chapter 3 that the relationship between a CSTA Call and a CSTA Device is a CSTA Connection (C1, C2, C3, and C4 are Connections). Each Connection has an associated Connection State. The Call Snapshot Services inform an application of each Device that is on a given Call and the associated Connection State for those Devices. The Call State is the union of all the Connection States associated with the Call. The application can use snapshot information to control Connections. For example, if Figure 7-1 shows a fourparty conference call, then an application can use the Call Snapshot Services together with the cstaClearConnection( ) service to disconnect any party from the conference. To disconnect connection C4, an application uses the Call Snapshot Services to obtain a Connection Identifier (for C4) that it then passes to the cstaClearConnection( ) service.
Figure 7-15
$EVICE
$EVICE
$EVICE
#
#
$EVICE
#ALL 3TATE # # # #
Device Snapshot Services return information about Calls that are associated with a given CSTA Device object. The information includes a list of Calls associated with the given Device and the Connection State of each Call (at that Device). Note the duality here: Call Snapshot Services return information about Connections at all Devices associated with a given Call, while Device Snapshot Services return information about all Connections at a given Device. Applications use the Device Snapshot Services when they need to know what is happening at a specific Device. As Figure 7-2 shows, Device Snapshot Services do not provide information about the other parties on those Calls connected to the given Device. An application can use Device Snapshot information to manipulate any Connection, (C1, C2, or C3 in Figure 7-2) at the given Device.
Figure 7-16
# #ALL
$EVICE 3TATE # # #
.OTE
Before an application requests the Call or Device Snapshot Services, it must have previously obtained a Call or Device identifier (that it will use as a parameter to request those services). The identifier specifies a Call or Device in the switching domain. Depending on the implemen tation, Snapshot Services may not provide information about devices or connections outside of that switching domain (devices not attached to that switch) .
CSTA3NAPSHOT#ALL2EQ
The cstaSnapshotCallReq( ) service provides information about a Call object in the switching domain. The service will return the Devices associated with a given Call and the Connection State for each Device. The Call State is the union of the Connection States. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeQxery5evvPi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5yxxigsyxA6c xeryGft Hsei6eec sei6ee
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM OVER WHICH THE REQUEST WILL BE MADE invokeID 4HIS IS AN APPLICATION PROVIDED HANDLE THAT THE APPLICATION USES TO MATCH A SPECIFIC INSTANCE OF A SERVICE REQUEST WITH ITS CONFIRMATION EVENT 4HE APPLICATION SUPPLIES THIS PARAMETER ONLY WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN ACS/PEN 3TREAM 4HE !#3 ,IBRARY IGNORES THIS PARAMETER WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S snapshotObj 4HIS IS A POINTER TO THE #ONNECTION )DENTIFIER IDENTIFYING THE #ALL OB JECT FOR WHICH 3NAPSHOT INFORMATION IS REQUESTED privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA Return Values CSTA3NAPSHOT#ALL2EQ RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED IN VOKE IDENTIFIERS
,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE THE INVOKE IDENTIFIER )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR APPLICATION GENERATED IDENTIFIERS THE RETURN IS NEVER POSITIVE !N APPLICATION SHOULD ALWAYS CHECK THE #34!3NAPSHOT#ALL#ONF% VENT MESSAGE TO INSURE THAT THE 4ELEPHONY 3ERVER AND SWITCH HAVE AC KNOWLEDGED AND PROCESSED THE CSTA3NAPSHOT#ALL2EQ REQUEST 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HE APPLICATION PROVIDED A BAD OR UNKNOWN ACS(ANDLE !#3%22?342%!-?&!),%$ ! PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments ! CALL TO CSTA3NAPSHOT#ALL2EQ RESULTS IN A CONFIRMATION EVENT #34!3NAPSHOT#ALL#ONF%VENT THAT RETURNS THE INFORMATION ABOUT THE CALL CSTA3NAPSHOT#ALL2EQ PROVIDES INFORMATION ABOUT CALLS THAT MAKE FURTHER MONITORING MEANINGFUL &OR EXAMPLE WHEN AN APPLICATION REQUESTS CSTA-ONITOR3TART THERE MAY ALREADY BE ACTIVE CALLS AT THE $EVICE BEING MONITORED 4HE APPLICATION CAN USE #ALL 3NAPSHOT INFORMATION TO OBTAIN INFORMATION ABOUT THOSE EXISTING CALLS PROCESS ADDITIONAL EVENTS ABOUT THEM IN A REASONABLE WAY CSTA3NAPSHOT#ALL2EQ IS PASSIVE AND DOES NOT AFFECT THE STATE OF ANY OBJECT IN THE SWITCHING DOMAIN
#34!3NAPSHOT#ALL#ONF%VENT
The Call Snapshot confirmation event returns call related information in response to the cstaSnapshotCallReq( ) service. The call information includes the static Device Identifiers, the Connection Identifiers, and Connection States for every endpoint in the specified call. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Qxery5evv5yxp7ixc xery5evv' ' ge5yxpswesyx iix' 5QR37ixc' ihipg5QR3Qxery5evv5yxp7ixc 5QR3Qxery5evv6eecxery6ee' 5QR3Qxery5evv5yxp7ixc' ihipg5QR3Qxery5evv6eec sx gyx' g 5QR3Qxery5evvPiyxiAxpycsxpy' 5QR3Qxery5evv6eec' ihipg5QR3Qxery5evvPiyxiAxpyc Qftig6isgiA6c hisgiGx5evv' 5yxxigsyxA6c gevvAhixspsi' Dygev5yxxigsyxQeic vygev5yxxigsyxQei' 5QR3Qxery5evvPiyxiAxpy7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM OVER WHICH THE CONFIRMATION ARRIVED 4HIS IS THE SAME AS THE !#3 3TREAM OVER WHICH THE REQUEST WAS MADE eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?3.!03(/4?#!,,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3NAPSHOT#ALL#ONF%VENT
invokeID 4HIS PARAMETER SPECIFIES THE SERVICE REQUEST INSTANCE FOR THE CSTA3NAPSHOT#ALL2EQ 4HE APPLICATION USES THIS PARAMETER TO CORRELATE RESPONSES WITH REQUESTS snapshotData #ONTAINS ALL THE SNAPSHOT INFORMATION FOR THE #ALL FOR WHICH THE QUERY WAS MADE COUNT ! COUNT OF THE NUMBER OF #34!3NAPSHOT#ALL2ESPONSE)NFO?T STRUCTURES %ACH STRUCTURE CONTAINS INFORMATION ABOUT ONE DEVICE ON THE CALL INFO ! POINTER TO AN ARRAY OF #34!3NAPSHOT#ALL2ESPONSE)NFO?T STRUCTURES EACH OF WHICH CONTAINS THE FOLLOWING FIELDS ! POINTER TO THE $EVICE )DENTIFIER DEVICE/N#ALL OF A DEVICE THAT IS A PARTY ON THE CALL FOR WHICH THE QUERY WAS MADE CALL)DENTIFIER 4HE #ONNECTION )DENTIFIER FOR THE #ONNECTION BETWEEN THE DEVICE/N#ALL AND THE CALL FOR WHICH THE QUERY WAS MADE LOCAL#ONNECTION3TATE 4HE #ONNECTION 3TATE FOR THE LOCAL #ONNECTION IN THE CALL)DENTIFIER PARAMETER privateData )F PRIVATE DATA ACCOMPANIES THIS EVENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!3NAPSHOT#ALL#ONF%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments 4HE #34!3NAPSHOT#ALL#ONF%VENT RETURNS AN ARRAY OR VARIABLE LENGTH SINCE THE NUMBER OF DEVICES ON A CALL CAN BE GREATER THAN ONE %ACH ARRAY ELEMENT IDENTIFIES A $EVICE ON THE CALL THE #ONNECTION BETWEEN THE $EVICE AND THE #ALL AND THE #ONNECTION 3TATE SEE &IGURE !N APPLICATION SHOULD USE COUNT TO DETERMINE THE NUMBER OF ARRAY ELEMENTS
CSTA3NAPSHOT$EVICE2EQ
The cstaSnapshotDeviceReq( ) service returns information about a Device object in the switching domain. The service returns a list of calls associated with the given Device and the Connection State of each of those calls at that Device. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgeQxery6isgiPi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c xeryGft Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM OVER WHICH THE REQUEST WILL BE MADE invokeID 4HIS IS AN APPLICATION PROVIDED HANDLE THAT THE APPLICATION USES TO MATCH A SPECIFIC INSTANCE OF A SERVICE REQUEST WITH ITS CONFIRMATION EVENT 4HE APPLICATION SUPPLIES THIS PARAMETER ONLY WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN ACS/PEN 3TREAM 4HE !#3 ,IBRARY IGNORES THIS PARAMETER WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S snapshotObj 4HIS PARAMETER IS A POINTER TO THE $EVICE )DENTIFIER FOR THE $EVICE OB JECT FOR WHICH 3NAPSHOT INFORMATION IS BEING REQUESTED privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS
,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE THE INVOKE IDENTIFIER )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR APPLICATION GENERATED IDENTIFIERS THE RETURN IS NEVER POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3NAPSHOT$EVICE#ONF%VENT MESSAGE TO INSURE THAT THE 4ELEPHONY 3ERVER AND THE SWITCH HAVE ACKNOWLEDGED AND PROCESSED THE CSTA3NAPSHOT$EVICE2EQ REQUEST 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?342%!-?&!),%$ 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments ! CALL TO CSTA3NAPSHOT$EVICE2EQ RESULTS IN A CONFIRMATION EVENT #34!3NAPSHOT$EVICE#ONF%VENT WHICH RETURNS INFORMATION ABOUT THE $EVICE CSTA3NAPSHOT$EVICE2EQ PROVIDES INFORMATION ABOUT $EVICES THAT PERMIT AN APPLICATION TO SYNCHRONIZE STATE WITH THE SWITCHING DOMAIN &OR EXAMPLE AN APPLICATION CAN CALL CSTA3NAP SHOT$EVICE2EQ TO FIND OUT ABOUT THE #ALLS PRESENT AT A $EVICE THEN CALL CSTA-ONITOR3TART TO MONITOR THE $EVICE 4HE INFORMATION FROM THE $EVICE QUERY PERMITS THE APPLICATION TO PROCESS THE MONITORING EVENTS IN A PROPER CONTEXT 4HE CSTA3NAPSHOT$EVICE2EQ IS PASSIVE AND DOES NOT AFFECT THE STATE OF ANY OBJECT WITHIN THE SWITCHING DOMAIN
#34!3NAPSHOT$EVICE#ONF%VENT
The Device Snapshot confirmation event returns Device related information in response to the cstaSnapshotDeviceReq( ) service. The Device information includes a Connection Identifier for each Call at the Device and the Connection State for each Call at the Device. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3Qxery6isgi5yxp7ixc xery6isgi' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3Qxery6isgi5yxp7ixc 5QR3Qxery6isgi6eecxery6ee' 5QR3Qxery6isgi5yxp7ixc' ihipg5QR3Qxery6isgi6eec sx gyx' g 5QR3Qxery6isgiPiyxiAxpycsxpy' 5QR3Qxery6isgi6eec' ihipg5QR3Qxery6isgiPiyxiAxpyc 5yxxigsyxA6c gevvAhixspsi' 5QR35evvQeic vygevgevvQei' 5QR3Qxery6isgiPiyxiAxpyc'
typedef struct CSTASnapshotDeviceResponseInfo_t { ConnectionID_t callIdentifier; CSTACallState_t localcallState; } CSTASnapshotDeviceResponseInfo_t; typedef struct CSTACallState_t { int count; LocalConnectionState_t } CSTACallState_t;
*state;
typedef enum CSTASimpleCallState_t { CALL_NULL = 0, CALL_PENDING = 1, CALL_ORIGINATED = 3, CALL_DELIVERED = 35, CALL_DELIVERED_HELD = 36, CALL_RECEIVED = 50, CALL_ESTABLISHED = 51, CALL_ESTABLISHED_HELD = 52, CALL_RECEIVED_ON_HOLD = 66, CALL_ESTABLISHED_ON_HOLD = 67, CALL_QUEUED = 83, CALL_QUEUED_HELD = 84, CALL_FAILED = 99, CALL_FAILED_HELD = 100 } CSTASimpleCallState_t; /* * */ #define SIMPLE_CALL_STATE(ccs) (ccs.stat[0]+(ccs.state[1] << 4)) typedef struct CSTACallState_t { int count; LocalConnectionState_t } CSTACallState_t;
*state;
Parameters acsHandle This is the handle for the ACS Stream over which the confirmation arrived. This is the same as the ACS Stream over which the request was made. eventClass This is a tag with the value CSTACONFIRMATION, which identifies this message as an CSTA confirmation event.
7-14
invokeID 4HIS PARAMETER SPECIFIES THE SERVICE REQUEST INSTANCE FOR THE CSTA3NAPSHOT$EVICE2EQ 4HE APPLICATION USES THIS PARAMETER TO CORRELATE RESPONSES WITH REQUESTS snapshotData #ONTAINS ALL THE SNAPSHOT INFORMATION FOR THE $EVICE FOR WHICH THE QUERY WAS MADE COUNT ! COUNT OF THE NUMBER OF #34!3NAPSHOT$EVICE2ESPONSE)NFO?T STRUCTURES %ACH CONTAINS INFORMATION ABOUT ONE #ALL AT THE $EVICE INFO ! POINTER TO AN ARRAY OF #34!3NAPSHOT$EVICE2ESPONSE)NFO?T STRUCTURES EACH OF WHICH CONTAINS THE FOLLOWING FIELDS CALL)DENTIFIER ! POINTER TO A #ONNECTION )DENTIFIER FOR EACH CALL AT THE DEVICE &OR SOME IMPLEMENTATIONS THIS PARAMETER POINTS TO THE DEVICE S DYNAMIC DEVICE IDENTIFIER FOR THE CALL OBJECT CALL3TATE 4HE #34! #ALL 3TATE 4HE #ALL 3TATE IS RETURNED AS A LIST OF LOCAL #ALL 3TATES privateData )F PRIVATE DATA ACCOMPANIES THIS EVENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!3NAPSHOT$EVICE#ONF%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments 4HE #34!3NAPSHOT$EVICE#ONF%VENT RETURNS A LINKED LIST SINCE THE NUMBER OF CALLS ON A DEVICE CAN BE GREATER THAN ONE %ACH MEMBER OF THE LIST IDENTIFIES A CALL AT THE DEVICE AND THE LOCAL CALL STATE OF THE #ONNECTION FOR THAT CALL AT THE DEVICE SEE &IGURE
!N APPLICATION SHOULD BE AWARE THAT THE NUMBER OF MEMBERS ON THE LIST IS NOT FIXED 4HE POINTER
NEXT WILL BE .5,, FOR THE LAST MEMBER CALL ON THE LIST
Chapter
CSTA Computing Functions are those functions where the switching domain is the client (service requester) and the computing domain is the server. Presently, Application Call Routing is the only CSTA Computing Function. A switch uses application call routing when it needs the application to supply call destinations on a call-by-call basis. Applications can use internal databases together with call information to determine a destination for each call. For Example, an application might use the callers number, caller-entered digits (provided as private data), or information in an application database to route incoming calls.
possible with the Version 1 APIs because they did not include an invokeID parameter (a PBX Driver may instead send a CSTARouteEndEvent to indicate an error, but doing so is not strictly in compliance with the CSTA standard). The enhancements in the routing event reports, CSTARouteRequestEvent and CSTARouteUsedEvent allow inclusion of ExtendedDeviceID_t type fields for certain event data instead of the currently defined DeviceID_t types. In version 2, the currentRoute and callingDevice members of CSTARouteRequestExtEvent are defined as CalledDeviceID_t and CallingDeviceID_t types, respectively. The routeUsed and callingDevice members of CSTARouteUsedEvent are defined as CalledDeviceID_t and CallingDeviceID_t types, respectively. The version 2 definitions align with the CSTA standard. Note that a routing server application that requests and gets the TSAPI version 2 (i.e., "TS2") will always receive the version 2 events. Existing applications that do not use version control to request the Version 2 API version will continue to receive the Version 1 events.
.OTE
At any one time, one, and only one application can be the routing server for a routing device. Similarly, one, and only one application can be the default routing server for an advertised service.
2OUTING 0ROCEDURE The registration above must occur before this procedure can take place. This procedure description uses the version 2 functions.
1
4HE SWITCH QUEUES AN INCOMING CALL AT A SPECIAL DEVICE OBJECT THE ROUTING DEVICE 4HE ROUTING DEVICE MAY BE A SOFT EXTENSION ON THE SWITCH FOR APPLICATION BASED ROUTING OR SIMILAR DEVICE DEFINED WITHIN THE SWITCHING DOMAIN 7HEN THE CALL ARRIVES AT THE ROUTING DEVICE THE SWITCH AND THE 4ELEPHONY 3ERVICES 0"8 DRIVER CREATE A #34! ROUTING DIALOG
FOR THE CALL 4HE 0"8 DRIVER ALLOCATES A ROUTING CROSS REFERENCE IDENTIFIER ROUTING#ROSS2EF)$ THAT REFERENCES THIS ROUTING DIALOG 4HE 0"8 $RIVER DIRECTS THE ROUTE REQUEST TO THE APPLICATION REGISTERED AS THE ROUTING SERVER FOR THE ROUTING DEVICE )F NO APPLICATION IS REGISTERED FOR THAT SPECIFIC ROUTING DEVICE THEN THE 0"8 $RIVER DIRECTS THE ROUTE REQUEST TO THE DEFAULT ROUTING SERVER APPLICATION FOR ITS ADVERTISED SERVICE 4HE ROUTING APPLICATION RECEIVES AN UNSOLICITED ROUTE REQUEST EVENT #34!2OUTE2EQUEST%VENT FOR THE CALL 4HIS EVENT CONTAINS THE ROUTING CROSS REFERENCE IDENTIFIER AND CALL INFORMATION SUCH AS CALLING AND CALLED NUMBERS 4HE APPLICATION WHICH PROVIDES THE CALL ROUTING DESTINATION IS CALLED THE ROUTING SERVER FOR THE ROUTING DEVICE THE ROUTING SERVER SENDS THE SWITCH A ROUTE SELECT MESSAGE CSTA2OUTE3ELECT)NV CONTAINING A DESTINATION FOR THE CALL 4HE ROUTING SERVER TYPICALLY USES INFORMATION FROM THE ROUTE REQUEST EVENT TOGETHER WITH INFORMATION FROM AN APPLICATION DATABASE TO DETERMINE THIS DESTINATION 4HE ROUTING SERVER MAY INCLUDE AN OPTIONAL FLAG IN THE ROUTE SELECT ROUTE5SED2EQ INSTRUCTING THE SWITCH TO INFORM IT OF THE FINAL DESTINATION FOR THE CALL 4HE FINAL DESTINATION MAY BE DIFFERENT THAN THE APPLICATION PROVIDED DESTINATION WHEN SWITCH FEATURES SUCH AS CALL FORWARDING REDIRECT THE CALL THE SWITCH RECEIVES THE ROUTE SELECT MESSAGE CSTA2OUTE3ELECT)NV AND ATTEMPTS TO ROUTE THE CALL TO THE APPLICATION PROVIDED DESTINATION )F THE DESTINATION IS VALID THE SWITCH ROUTES THE CALL TO THAT DESTINATION AND SENDS THE APPLICATION A ROUTE END EVENT CSTA2OUTE%ND)NV 4HIS TERMINATES THE ROUTING DIALOG FOR THAT CALL )F THE APPLICATION PROVIDED DESTINATION IS NOT VALID AN INVALID EXTENSION NUMBER THE DESTINATION IS BUSY ETC THEN THE SWITCH MAY SEND A RE ROUTE EVENT #34!2E2OUTE2EQUEST%VENT TO THE APPLICATION TO REQUEST ANOTHER ROUTE TO A DIFFERENT DESTINATION
)F THE APPLICATION RECEIVES A RE ROUTE EVENT #34!2E2OUTE2EQUEST%VENT IT CAN SELECT A DIFFERENT DESTINATION FOR THE CALL AND SEND THE SWITCH ANOTHER ROUTE SELECT MESSAGE CSTA2OUTE3ELECT)NV $EPENDING ON THE SWITCH IMPLEMENTATION THE RE ROUTING MESSAGE EXCHANGE CAN REPEAT UNTIL THE APPLICATION PROVIDES A VALID ROUTE 4HE ROUTING SERVER APPLICATION WILL FIND OUT ABOUT A SUCCESSFUL ROUTE IF THE SWITCH SENDS A ROUTE END EVENT CSTA2OUTE%ND)NV OR IF THE APPLICATION INCLUDED THE ROUTE5SED2EQ FLAG IN ITS LAST ROUTE SELECT MESSAGE CSTA2OUTE3ELECT)NV Either the switch or the routing server (application) may send a route end event (cstaRouteEndInv) to end the routing process and terminate the CSTA routing dialog (this releases the routing cross-reference identifier, routingCrossRefID for use in the future). Either endpoint may send a route end at any time. This message indicates that the routing server does not want to route the call, or the switch (usually in the absence of a cstaRouteSelectInv message) routed the call using some mechanism within the switching domain.
.OTE
Certain switch implementations may not support the optional flags de scribed above.
Figure 8-17
Routing Procedure
$RIVER3WITCH $OMAIN
egevvesieriysxqhisgi
ROUTING#ROSS2EF)$
gieihexh
5QR3PyiPii7ix six
e
OR
!e
OR
"eAp!erix !f
ROUTING#ROS2EF)$
sxy
CSTA2OUTE2EGISTER2EQ
An application uses cstaRouteRegisterReq( ) to register as a routing server for a specific routing device or as a default routing server for an advertised service. The application must register for routing services before it can receive any route requests for a routing device. An application may be a routing server for more than one routing device. However, only one application may be a routing server for any given routing device. Similarly, only one application may register as the default routing server for an advertised service. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgePyiPiqsiPi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 6isgiA6c ysxq6isgi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM OVER WHICH THE ROUTING DIALOG WILL TAKE PLACE invokeID 4HIS IS AN APPLICATION PROVIDED HANDLE THAT THE APPLICATION USES TO MATCH A SPECIFIC INSTANCE OF CSTA2OUTE2EGISTER2EQ REQUEST WITH ITS #34!2OUTE2EGISTER2EQ#ONF%VENT CONFIRMATION EVENT 4HE APPLICATION SUPPLIES THIS PARAMETER ONLY WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN ACS/PEN 3TREAM 4HE !#3 ,IBRARY IGNORES THIS PARAMETER WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S
routingDevice 4HIS IS A POINTER TO A DEVICE ID FOR THE ROUTING DEVICE FOR WHICH THE APPLICATION REQUESTS TO BE THE ROUTING SERVER 4HE ROUTING DEVICE CAN BE ANY DEVICE TYPE WHICH THE SWITCH IMPLEMENTATION SUPPORTS AS A ROUTING DEVICE ! .5,, VALUE INDICATES THAT THE REQUESTING APPLICATION WILL BE THE DEFAULT ROUTING SERVER FOR THE 3ERVER)$ AS SOCIATED WITH THE ACS(ANDLE IN THE CSTA2OUTE2EGISTER2EQ 4HE DEFAULT ROUTING SERVER WILL RECEIVE SWITCH ROUTING REQUESTS FOR ANY ROUTING DEVICES MAKING ROUTING REQUESTS ON THAT ADVERTISED SERVICE THAT DO NOT HAVE REGISTERED ROUTING SERVERS 4HUS THE DEFAULT ROUTING SERVER WILL RECEIVE ROUTE REQUESTS WHEN A ROUTING DEVICE SENDS A ROUTE REQUEST AND THERE IS NO CORRESPONDING REGISTERED ROUTING SERVER FOR THAT ROUTING DEVICE privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA Return Values CSTA2OUTE2EGISTER2EQ RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE THE INVOKE IDENTIFIER )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR APPLICATION GENERATED IDENTIFIERS THE RETURN IS NEVER POSITIVE !N APPLICATION SHOULD ALWAYS CHECK THE #34!2OUTE2EGISTER 2EQ#ONF%VENT MESSAGE TO ENSURE TO ENSURE THAT THE 4ELEPHONY 3ERVER AND SWITCH HAVE ACKNOWLEDGED THE CSTA2OUTE2EGISTER2EQ 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HE APPLICATION PROVIDED A BAD OR UNKNOWN ACS(ANDLE !#3%22?342%!-?&!),%$ ! PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
Comments )N ORDER FOR AN APPLICATION TO ROUTE CALLS THE APPLICATION MUST SUCCESS FULLY CALL CSTA2OUTE2EGISTER2EQ !N APPLICATION CAN REGISTER AS u A ROUTING SERVER FOR THE SPECIFIED ROUTING DEVICE OR u AS THE DEFAULT ROUTING SERVER FOR ALL ROUTING DEVICES MAKING REQUESTS OF A SPECIFIC 4ELEPHONY 3ERVER 4O REGISTER AS A DEFAULT ROUTING SERVER AN APPLICATION SETS THE ROUT ING$EVICE PARAMETER TO .5,, /NE AND ONLY ONE APPLICATION IS AL LOWED TO REGISTER AS THE ROUTING SERVER FOR A ROUTING$EVICE OR AS THE DEFAULT ROUTING 3ERVER FOR AN ADVERTISED SERVICE !PPLICATIONS MAY REGISTER FOR ROUTING SERVICES FOR A SPECIFIC DEVICE EVEN WHEN A DEFAULT ROUTING SERVER HAS REGISTERED ! DEFAULT ROUTING SERVER WILL NOT RECEIVE ANY ROUTING REQUESTS FROM ANY ROUTING DEVICE FOR WHICH THERE IS A REGISTERED ROUTING SERVER /NCE A ROUTING SERVER IS REGISTERED #34!2OUTE2EQUEST%VENTS CONVEY THE ROUTE REQUESTS TO THE ROUTING SERVER
#34!2OUTE2EGISTER2EQ#ONF%VENT
The RouteRegisterReqConfEvent indicates successful registration to an application. That application is now the call routing server for the requested routing device (or is the default routing server for the advertised service). Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3PyiPiqsiPi5yxp7ixcyiPiqsi' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg PyiPiqsiPiA6c yiPiqsiPiA6' 5QR3PyiPiqsiPi5yxp7ixc' ihipvyxqPyiPiqsiPiA6c'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM OVER WHICH THE 2OUTE2EGISTER2EQ#ONF%VENT CONFIRMATION ARRIVED 4HIS IS THE SAME AS THE !#3 3TREAM OVER WHICH THE APPLICATION MADE THE CORRESPONDING CSTA2OUTE2EGISTER2EQ REQUEST
eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?2/54%?2%')34%22%1?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!2OUTE2EGISTER2EQ#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE SERVICE REQUEST INSTANCE FOR THE CSTA2OUTE2EGISTER2EQ 4HE APPLICATION USES THIS PARAMETER TO CORRELATE 2OUTE2EGISTER2EQ#ONF%VENT RESPONSES WITH REQUESTS routeRegisterReqID 4HIS PARAMETER CONTAINS A HANDLE TO THE ROUTING REGISTRATION SESSION FOR A SPECIFIC ROUTING DEVICE OR FOR THE DEFAULT ROUTING SERVER DEPENDING ON THE REGISTRATION REQUEST !LL ROUTING DIALOGS ROUTING#ROSS2EF)$S FOR A ROUTING DEVICE OCCUR OVER THIS ROUTING REGISTRATION SESSION 4HE 0"8 $RIVER SELECTS ROUTE2EGISTER2EQ)$S SO THAT THEY WILL BE UNIQUE WITHIN THE ACS(ANDLE PRIVATE$ATA )F PRIVATE DATA ACCOMPANIES THIS EVENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!2OUTE2EGISTER2EQ#ONF%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments 4HIS EVENT PROVIDES THE APPLICATION WITH A POSITIVE CONFIRMATION TO A REQUEST FOR ROUTING REGISTRATION
CSTA2OUTE2EGISTER#ANCEL
Applications (routing servers) use cstaRouteRegisterCancel( ) to cancel a previously registered routing server session. This request terminates the routing session and the application receives no further routing messages for that session once it receives the confirmation to the cancel request. Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgePyiPiqsi5exgiv 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 PyiPiqsiPiA6c yiPiqsiPiA6 Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM OVER WHICH THE CSTA2OUTE2EGISTER#ANCEL REQUEST WILL BE MADE invokeID 4HIS IS AN APPLICATION PROVIDED HANDLE THAT THE APPLICATION USES TO MATCH A SPECIFIC INSTANCE OF A CSTA2OUTE2EGISTER#ANCEL REQUEST WITH ITS CONFIRMATION EVENT 4HE APPLICATION SUPPLIES THIS PARAMETER ONLY WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN ACS/PEN3TREAM 4HE !#3 ,IBRARY IGNORES THIS PARAMETER WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S routeRegisterReqID 4HIS PARAMETER IS THE HANDLE TO THE ROUTING REGISTRATION SESSION WHICH THE APPLICATION IS CANCELING 4HE APPLICATION RECEIVED THIS HANDLE IN THE CONFIRMATION EVENT FOR THE ROUTE REGISTER SERVICE REQUEST A #34!2OUTE2EGISTER2EQ#ONF%VENT privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA
Return Values CSTA2OUTE2EGISTER#ANCEL RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE THE INVOKE IDENTIFIER )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS IT WILL RETURN A NEGATIVE ERROR &OR APPLICATION GENERATED IDENTIFIERS THE RETURN IS NEVER POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!2OUTE2EGISTER#ANCEL#ONF%VENT MESSAGE TO ENSURE THAT THE 4ELEPHONY 3ERVER AND SWITCH HAVE ACKNOWLEDGED AND PROCESSED THE CSTA2OUTE2EGISTER#ANCEL REQUEST 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HE APPLICATION PROVIDED A BAD OR UNKNOWN ACS(ANDLE !#3%22?342%!-?&!),%$ ! PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments 4HE APPLICATION MUST CONTINUE TO PROCESS OUTSTANDING ROUTING REQUESTS FROM THE ROUTING DEVICE UNTIL IT RECEIVES #34!2OUTE2EGISTER#ANCEL#ONF%VENT 4HE 4ELEPHONY 3ERVER WILL NOT SEND ANY FURTHER REQUESTS ONCE IT HAS SENT THIS CONFIRMATION EVENT
#34!2OUTE2EGISTER#ANCEL#ONF%VENT
CSTARouteRegisterCancelConfEvent confirms a previously issued cstaRouteRegisterCancel( ) request for a routing registration. Once tan application receives this event, it invalidates the routing registration session. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx [ g [ AxyuiA6c sxyuiA6' xsyx 5QR3PyiPiqsi5exgiv5yxp7ixc yTE5exgiv' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg PyiPiqsiPiA6c yiPiqsiPiA6' 5QR3PyiPiqsi5exgiv5yxp7ixc' ihipvyxqPyiPiqsiPiA6c'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE !#3 3TREAM OVER WHICH THE #34!2OUTE2EGISTER#ANCEL#ONF%VENT CONFIRMATION ARRIVED 4HIS IS THE SAME AS THE !#3 3TREAM OVER WHICH THE CSTA2OUTE2EGISTER#ANCEL REQUEST WAS MADE eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?2/54%?2%')34%2?#!.#%,?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!2OUTE2EGISTER#ANCEL#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE SERVICE REQUEST INSTANCE FOR THE CSTA2OUTE2EGISTER#ANCEL 4HE APPLICATION USES THIS PARAMETER TO CORRELATE THE #34!2OUTE2EGISTER#ANCEL#ONF%VENT RESPONSES WITH REQUESTS routeRegisterReqID 4HIS PARAMETER CONTAINS THE HANDLE TO A ROUTING REGISTRATION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICATION OBTAINED THIS HANDLE FROM A #34!2OUTE2EGISTER2EQ#ONF%VENT 4HIS ROUTE2EGISTER2EQ)$ HANDLE IS NO LONGER VALID ONCE THE 4ELEPHONY 3ERVER SENDS #34!2OUTE2EGISTER#ANCEL#ONF%VENT privateData )F PRIVATE DATA ACCOMPANIES THIS EVENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!3NAPSHOT#ALL#ONF%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION
Comments #34!2OUTE2EGISTER#ANCEL#ONF%VENT CONFIRMS AN APPLICATION S CSTA2OUTE2EGISTER#ANCEL SERVICE REQUEST WHICH CANCELS A ROUTING REGISTRATION SESSION 4HE 4ELEPHONY 3ERVER WILL SEND ANY FURTHER RE QUESTS FROM THE ROUTING DEVICE TO THE DEFAULT ROUTING SERVER
#34!2OUTE2EGISTER!BORT%VENT
The Telephony Server sends an application an unsolicited CSTARouteRegisterAbortEvent to cancel an active routing dialog. This event invalidates a routing registration session. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx iqsi3fy'
iix@iehi'
5QR3PyiPiqsi3fy7ixc
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM 4HE ROUTING DIALOG BEING CANCELED IS OCCURRING ON THIS !#3 3TREAM
eventClass 4HIS IS A TAG WITH THE VALUE #34!%6%.42%0/24 WHICH IDENTIFIES THIS MESSAGE AS AN #34! EVENT REPORT eventType 4HIS IS A TAG WITH THE VALUE #34!?2/54%?2%')34%2?!"/24 WHICH IDENTIFIES THIS MESSAGE AS AN #34!2OUTE2EGISTER!BORT% VENT routeRegisterReqID 4HIS PARAMETER IS THE HANDLE TO A ROUTING REGISTRATION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICATION RECEIVED THIS HANDLE IN A #34!2OUTE2EGISTER2EQ#ONF%VENT 4HE #34!2OUTE2EGISTER!BORT%VENT INVALIDATES THIS HANDLE privateData )F PRIVATE DATA ACCOMPANIES #34!2OUTE2EGISTER!BORT%VENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!2OUTE2EGISTER!BORT%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments #34!2OUTE2EGISTER!BORT%VENT NOTIFIES THE APPLICATION THAT THE 0"8 DRIVER OR SWITCH ABORTED A ROUTING REGISTRATION SESSION
.OTE
If a call is not successfully routed by the routing server this does not necessarily mean that the call is cleared or not answered. Most switch implementations will have a default mechanism for handling a call at a routing device when the routing server has failed to provide a valid destination for the call.
#34!2OUTE2EQUEST%VENT
A routing server application receives a CSTARouteRequestEvent when the switch requests a route for a call. The application may have registered as the routing server for the routing device on the switch that is making the request, or it may have registered as the default routing server for the advertised service. The CSTARouteRequestEvent event includes call related information (such as the called and calling number, when available). A routing server application typically combines the call related information with an application database to determine a destination for the call. A routing server application receives a CSTARouteRequestEvent for every call queued at the routing device. TSAPI Version !PPLICATIONS USING 43!0) 6ERSION MUST USE THE #34!2OUTE2EQUEST%VENT?T STRUCTURE APPLICATIONS USING ANY OTHER VERSION MUST USE THE #34!2OUTE2EQUEST%XT%VENT?T STRUCTURE Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic'
yiPii'
isyxxsyxyxv 5QR3PyiPii77ixc yiPii7 ' gePii' iix' 5QR37ixc' RQ3HATisyx& ihipg PyiPiqsiPiA6c yiPiqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 6isgiA6c gixPyi' 6isgiA6c gevvsxq6isgi' 5yxxigsyxA6c yih5evv' QivigTevic yihQiv3vqysrw' 4yyviex sys' QiSTevic iAxpywesyx' 5QR3PyiPii7ixc' RQ3HATisyx& ihipg PyiPiqsiPiA6c yiPiqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 5evvih6isgiA6c gixPyi' 5evvsxq6isgiA6c gevvsxq6isgi' 5yxxigsyxA6c yih5evv' QivigTevic yihQiv3vqysrw' 4yyviex sys' QiSTevic iAxpywesyx' 5QR3PyiPii77ixc' T ihipixwQivigTevic QTcFGPE3D) QTcD73QRc5GQR) QTc7E7P97F5W) QTc356) QTcSQ7Pc678AF76) QivigTevic' ihipgQiSTevic sx vixqr' xsqxihgre evi' QiSTevic'
T T
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM ON WHICH THE ROUTE RE QUEST EVENT ARRIVES eventClass 4HIS IS A TAG WITH THE VALUE #34!2%15%34 WHICH IDENTIFIES THIS MESSAGE AS AN #34! REQUEST MESSAGE eventType 4HIS IS A TAG WITH THE VALUE #34!?2/54%?2%15%34 VERSION OR #34!?2/54%?2%15%34?%84 VERSION WHICH IDENTIFIES THIS MESSAGE AS AN #34!2OUTE2EQUEST%VENT routeRegisterReqID 4HIS PARAMETER CONTAINS THE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICA TION RECEIVED THIS HANDLE IN A #34!2OUTE2EGISTER2EQ#ONF%VENT CONFIRMATION TO A ROUTE REGISTER SERVICE REQUEST routingCrossRefID 4HE APPLICATION RECEIVES THIS NEW HANDLE FOR THE ROUTING DIALOG FOR THIS CALL 4HIS IDENTIFIER HAS A NEW UNIQUE VALUE WITHIN THE SCOPE OF THE ROUTING SESSION ROUTE2EGISTER2EQ)$ currentRoute 4HIS PARAMETER INDICATES THE ORIGINALLY REQUESTED DESTINATION FOR THE CALL BEING APPLICATION ROUTED /FTEN THIS IS THE $.)3 OR DIALED NUM BER callingDevice 4HIS IS THE ORIGINATING DEVICE OF THE CALL IE THE CALLING PARTY NUMBER WHEN AVAILABLE )F NOT AVAILABLE IT MAY BE TRUNK INFORMATION routedCall 4HIS PARAMETER IS A #34! #ONNECTION )$ THAT IDENTIFIES THE CALL BEING ROUTED routedSelAlgorithm 4HIS PARAMETER IDENTIFIES THE ROUTING ALGORITHM BEING USED
priority 4HIS PARAMETER INDICATES THE PRIORITY OF THE CALL SETUP)NFORMATION 4HIS PARAMETER INCLUDES AN )3$. CALL SETUP MESSAGE IF AVAILABLE PRIVATE$ATA )F PRIVATE DATA ACCOMPANIES #34!2OUTE2EQUEST%VENT THEN THE PRI VATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!2OUTE2EQUEST%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments #34!2OUTE2EQUEST%VENT INFORMS THE ROUTING SERVER APPLICATION THAT THE SWITCH IS REQUESTING A DESTINATION FOR A CALL QUEUED AT THE ROUTING DEVICE 4HE APPLICATION USES CSTA2OUTE3ELECT)NV OR CSTA2OUTE3ELECT TO RESPOND WITH A DESTINATION
.OTE
CSTA requires that all events contain an invoke ID. During routing, the RouteRegisterReqID and the RoutingCrossRefID identify the routing dialogue. The invokeID is not used.
#34!2E2OUTE2EQUEST%VENT
The switch sends an unsolicited CSTAReRouteRequestEvent to request an another destination for a call. Typically, the destination that the application previously sent was invalid or busy. The switch previously sent call related information (such as the called and calling numbers) in the CSTARouteRequestEvent; Call related information is not re-sent in the CSTAReRouteRequestEvent. The routing server application responds using the cstaRouteSelectInv( ) or cstaRouteSelect( ) service. Syntax
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx
iix@iehi'
AxyuiA6c
sxyuiA6'
5QR3PiPyiPiic iPyiPii' ' gePii7ix' iix' 5QR37ixc' ihipg PyiPiqsiPiA6c Pysxq5yPipA6c 5QR3PiPyiPiic'
yiPiqsiPiA6' ysxq5yPipA6'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM ON WHICH THE RE ROUTE REQUEST ARRIVES
eventClass 4HIS IS A TAG WITH THE VALUE #34!2%15%34 WHICH IDENTIFIES THIS MESSAGE AS A #34! REQUEST MESSAGE eventType 4HIS IS A TAG WITH THE VALUE #34!?2%?2/54%?2%15%34 WHICH IDENTIFIES THIS MESSAGE AS A #34!2E2OUTE2EQUEST%VENT routeRegisterReqID 4HIS PARAMETER CONTAINS THE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICA TION RECEIVED THIS HANDLE IN A #34!2OUTE2EGISTER2EQ#ONF%VENT CONFIRMATION TO A ROUTE REGISTER SERVICE REQUEST routingCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! CALL ROUTING DIALOG FOR THIS CALL 4HE APPLICATION PREVIOUSLY RECEIVED THIS HANDLE IN A #34!2OUTE2EQUEST%VENT FOR THE CALL privateData )F PRIVATE DATA ACCOMPANIES #34!2E2OUTE2EQUEST%VENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!2E2OUTE2EQUEST%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments 4HE SWITCH CAN SEND #34!2E2OUTE2EQUEST%VENT TO THE ROUTING SERVER APPLICATION WHEN THE APPLICATION PREVIOUSLY SENT A DESTINATION THAT WAS IS INVALID OR OTHER CIRCUMSTANCES EXIST WHERE ROUTING OF THE CALL TO THE DESTINATION IS NOT POSSIBLE EG THE DESTINATION IS BUSY 4HE SWITCH USES #34!2E2OUTE2EQUEST%VENT TO REQUEST ANOTHER DESTINATION FOR THE CALL QUEUED AT THE ROUTING DEVICE 4HE APPLICATION USES CSTA2OUTE3ELECT TO PROVIDE THE NEW DESTINATION 4HE NUMBER OF RE ROUTE REQUESTS THAT A SWITCH MAY SEND DEPENDS ON THE IMPLEMENTATION OR ADMINISTRATION WITHIN THE SWITCH 4HE APPLICA TION SHOULD BE PREPARED TO RESPOND TO ALL RE ROUTE REQUESTS OR TERMINATE THE ROUTING DIALOG BY USING THE CSTA2OUTE%ND SERVICE REQUEST WHEN IT CANNOT PROVIDE ADDITIONAL DESTINATIONS
.OTE
CSTA requires that all events contain an invoke ID. During routing, the RouteRegisterReqID and the RoutingCrossRefID identify the routing dialogue. The invokeID is not used.
CSTA2OUTE3ELECT
Parameters acsHandle 4HIS IS THE HANDLE TO THE !#3 3TREAM ON WHICH THE ROUTING DIALOG FOR THE CALL IS TAKING PLACE routeRegisterReqID 4HIS PARAMETER CONTAINS THE ACTIVE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICATION RECEIVED THIS HANDLE IN THE CONFIRMATION EVENT FOR THE ROUTE REGISTER SERVICE REQUEST#34!2OUTE2EGISTER2EQ#ONF%VENT FOR THE CALL routingCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! CALL ROUTING DIALOG FOR THIS CALL 4HE APPLICATION PREVIOUSLY RECEIVED THIS HANDLE IN THE #34!2OUTE2EQUEST%VENT FOR THE CALL
routeSelected 4HE APPLICATION PROVIDES THIS PARAMETER CONTAINING A $EVICE )$ THAT SPECIFIES THE DESTINATION FOR THE CALL remainRetry 4HE APPLICATION INDICATES THE NUMBER OF TIMES IT IS WILLING TO RECEIVE A #34!2E2OUTE2EQUEST%VENT FOR THIS CALL IN THE CASE THAT THE SWITCH NEEDS TO REQUEST AN ALTERNATE ROUTE 43!0) PROVIDES DEFINE VALUES THAT AN APPLICATION MAY USE TO INDICATE THAT IT DOES NOT KEEP COUNT OR THAT THERE IS NO LIMIT setupInformation 4HE APPLICATION PROVIDES THIS OPTIONAL PARAMETER THAT CONTAINS INFORMATION FOR THE )3$. CALL SETUP MESSAGE THAT THE SWITCH WILL USE TO ROUTE THE CALL 3OME SWITCHES MAY NOT SUPPORT THIS OPTION routeUsedReq 4HE ROUTING APPLICATION USES THIS PARAMETER TO REQUEST A #34!2OUTE5SED%VENT FOR THE CALL 4HE ROUTE USED EVENT INFORMS THE APPLICATION OF THE FINAL DESTINATION OF THE CALL ONCE IT HAS BEEN ROUTED privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA Return Values CSTA2OUTE3ELECT SUCCESSFULLY RETURNS A NON ZERO VALUE IF IT COMPLETES
4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HE APPLICATION PROVIDED A BAD OR UNKNOWN ACS(ANDLE !#3%22?342%!-?&!),%$ ! PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
.OTE
There is no confirmation event for this service request, however this service request can generate a universal failure event.
Comments !N APPLICATION SHOULD CALL CSTA2OUTE3ELECT ONLY IN RESPONSE TO A #34!2OUTE2EQUEST%VENT OR #34!2E2OUTE2EQUEST%VENT 4HE CSTA2OUTE3ELECT SERVICE REQUEST WILL FAIL IF THE APPLICATION DOES NOT PROVIDE VALID IDENTIFIERS FROM A PREVIOUS #34!2OUTE2EQUEST%VENT ACS(ANDLE ROUTE2EGISTER2EQ)$ AND ROUTING#ROSS2EF)$ 4HE APPLICATION SHOULD CHECK THE RETURN VALUE FOR THIS FUNCTION AND ANY RESULTING UNIVERSAL FAILURE EVENT FOR ERRORS
CSTA2OUTE3ELECT)NV
The routing server application uses cstaRouteSelectInv to send a routing destination to the switch in response to a CSTARouteRequestEvent for a call. The invoke identifier parameter lets the application correlate the route selection with a CSTAUniversalFailureConfEvent in the case of a failure. TSAPI Version !PPLICATIONS USING 43!0) 6ERSION MUST USE THE #34!2OUTE3ELECT FUNCTION APPLICATIONS USING ANY OTHER VERSION MUST USE THE #34!2OUTE3ELECT)NV FUNCTION Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgePyiQivigAx 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 Tisyx PyiPiqsiPiA6c yiPiqsiPiA6 Pysxq5yPipA6c ysxq5yPipA6 6isgiA6c yiQivigih PiTevic iwesxPi QiSTevic iAxpywesyx 4yyviex yiSihPi Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE HANDLE TO THE !#3 3TREAM ON WHICH THE ROUTING DIALOG FOR THE CALL IS TAKING PLACE invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ANY RESULTING #34!5NIVERSAL&AILURE#ONF%VENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S
routeRegisterReqID 4HIS PARAMETER CONTAINS THE ACTIVE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICATION RECEIVED THIS HANDLE IN THE CONFIRMATION EVENT FOR THE ROUTE REGISTER SERVICE REQUEST#34!2OUTE2EGISTER2EQ#ONF%VENT FOR THE CALL routingCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! CALL ROUTING DIALOG FOR THIS CALL 4HE APPLICATION PREVIOUSLY RECEIVED THIS HANDLE IN THE #34!2OUTE2EQUEST%VENT FOR THE CALL routeSelected 4HE APPLICATION PROVIDES THIS PARAMETER CONTAINING A $EVICE )$ THAT SPECIFIES THE DESTINATION FOR THE CALL remainRetry 4HE APPLICATION INDICATES THE NUMBER OF TIMES IT IS WILLING TO RECEIVE A #34!2E2OUTE2EQUEST%VENT FOR THIS CALL IN THE CASE THAT THE SWITCH NEEDS TO REQUEST AN ALTERNATE ROUTE 43!0) PROVIDES DEFINE VALUES THAT AN APPLICATION MAY USE TO INDICATE THAT IT DOES NOT KEEP COUNT OR THAT THERE IS NO LIMIT setupInformation 4HE APPLICATION PROVIDES THIS OPTIONAL PARAMETER THAT CONTAINS INFORMATION FOR THE )3$. CALL SETUP MESSAGE THAT THE SWITCH WILL USE TO ROUTE THE CALL 3OME SWITCHES MAY NOT SUPPORT THIS OPTION routeUsedReq 4HE ROUTING APPLICATION USES THIS PARAMETER TO REQUEST A #34!2OUTE5SED%VENT FOR THE CALL 4HE ROUTE USED EVENT INFORMS THE APPLICATION OF THE FINAL DESTINATION OF THE CALL ONCE IT HAS BEEN ROUTED privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA
Return Values CSTA2OUTE3ELECT)NV RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS Library-generated invokeIDs - if the function call completes successfully it will return a positive value, i.e. the invoke identifier. If the call fails a negative error (<0) condition will be returned. For library-generated identifiers the return will never be zero (0). Application-generated invokeIDs - if the function call completes successfully it will return a zero (0) value. If the call fails a negative error (<0) condition will be returned. For application-generated identifiers the return will never be positive (>0). 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HE APPLICATION PROVIDED A BAD OR UNKNOWN ACS(ANDLE !#3%22?342%!-?&!),%$ ! PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED
.OTE
There is no confirmation event for this service request, however this service request can generate a universal failure event.
Comments !N APPLICATION SHOULD CALL CSTA2OUTE3ELECT)NV ONLY IN RESPONSE TO A #34!2OUTE2EQUEST%VENT OR #34!2E2OUTE2EQUEST%VENT 4HE CSTA2OUTE3ELECT)NV SERVICE REQUEST WILL FAIL IF THE APPLICATION DOES NOT PROVIDE VALID IDENTIFIERS FROM A PREVIOUS #34!2OUTE2EQUEST%VENT OR #34!2E2OUTE2EQUEST%VENT ACS(ANDLE ROUTE2EGISTER2EQ)$ AND ROUTING#ROSS2EF)$ 4HE APPLICATION SHOULD CHECK THE RETURN VALUE FOR THIS FUNCTION AND ANY RESULTING UNIVERSAL FAILURE EVENT FOR ERRORS
#34!2OUTE5SED%VENT
The CSTARouteUsed event provides a routing server application with the actual destination of a call for which the application previously sent a cstaRouteSelect( ) or cstaRouteSelectInv( ). To receive a CSTARouteUsed, the application must set the cstaRouteSelect( ) or cstaRouteSelectInv( ) parameter routeUsedReq to TRUE. TSAPI Version !PPLICATIONS USING 43!0) 6ERSION MUST USE THE #34!2OUTE5SED%VENT?T STRUCTURE APPLICATIONS USING ANY OTHER VERSION MUST USE THE #34!2OUTE5SED%XT%VENT?T STRUCTURE Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g xsyx 5QR3PyiSih7ixc isyxyxv 5QR3PyiSih77ixc ' ge7ixPiy' iix' 5QR37ixc'
yiSih' yiSih7
RQ3HATisyx& ihipg PyiPiqsiPiA6c Pysxq5yPipA6c 6isgiA6c 6isgiA6c 4yyviex 5QR3PyiSih7ixc' RQ3HATisyx& ihipg PyiPiqsiPiA6c Pysxq5yPipA6c 5evvih6isgiA6c Tisyx 5evvsxq6isgiA6c Tisyx 4yyviex 5QR3PyiSih77ixc'
gevvsxq6isgi'
Parameters acsHandle 4HIS IS THE HANDLE TO THE !#3 3TREAM ON WHICH THE ROUTING DIALOG FOR THE CALL IS TAKING PLACE eventClass 4HIS IS A TAG WITH THE VALUE #34!%6%.42%0/24 WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?2/54%?53%$ VERSION OR #34!?2/54%?53%$?%84 VERSION WHICH IDENTIFIES THIS MESSAGE AS AN #34!2OUTE5SED%VENT routeRegisterReqID 4HIS PARAMETER CONTAINS THE ACTIVE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICATION RECEIVED THIS HANDLE IN THE CONFIRMATION EVENT FOR THE ROUTE REGISTER SERVICE REQUEST#34!2OUTE2EGISTER2EQ#ONF%VENT FOR THE CALL
routingCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! CALL ROUTING DIALOG FOR THIS CALL 4HE APPLICATION PREVIOUSLY RECEIVED THIS HANDLE IN THE #34!2OUTE2EQUEST%VENT FOR THE CALLROUTE5SED 4HIS PARAMETER IDENTIFIES THE SELECTED AND FINAL DESTINATION FOR THE CALL callingDevice 4HIS PARAMETER CONTAINS THE ORIGINATING DEVICE OF THE CALL IE THE CALLING PARTY NUMBER WHEN AVAILABLE domain 4HIS PARAMETER WILL INDICATE WHETHER THE CALL HAS LEFT THE SWITCHING DOMAIN ACCESSIBLE TO THE 4ELEPHONY 3ERVER THE 3ERVER)$ DEFINED IN THE ACTIVE ACS(ANDLE 4YPICALLY A CALL LEAVES A SWITCHING DOMAIN WHEN IT IS ROUTED TO A TRUNK CONNECTED TO ANOTHER SWITCH OR TO THE PUB LIC SWITCHED NETWORK privateData )F PRIVATE DATA ACCOMPANIES #34!2OUTE5SED%VENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET% VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!2OUTE5SED%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments !N APPLICATION USES #34!2OUTE5SED%VENT TO DETERMINE THE FINAL DESTINATION OF A CALL THAT IT ROUTED USING THE CSTA2OUTE3ELECT OR CSTA2OUTE3ELECT)NV 3WITCH FEATURES SUCH AS FORWARDING OR ROUTING TABLES MAY DIRECT THE CALL TO A DEVICE OTHER THAN THE APPLICATION SUPPLIED DESTINATION 4HE #34!2OUTE5SED%VENT INDICATES THE FINAL DESTINATION FOR THE CALL
#34!2OUTE%ND%VENT
The switch sends CSTARouteEndEvent to terminate a routing dialog. The event includes a cause value giving the reason for the dialog termination. Note that when an application wishes to terminate a routing interaction, it should use CSTARouteEnd( ) (version 1) or CSTARouteEndInv( ) (version 2). Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx
iix@iehi'
5QR3Pyi7xh7ixcyi7xh ' ge7ixPiy' iix' 5QR37ixc' ihipg PyiPiqsiPiA6c yiPiqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 5QR3Sxsiev8esvic iyTevi' 5QR3Pyi7xh7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM ON WHICH ROUTING DIALOG IS ENDING eventClass 4HIS IS A TAG WITH THE VALUE #34!%6%.42%0/24 WHICH IDENTIFIES THIS MESSAGE AS A #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?2/54%?%.$ WHICH IDENTIFIES THIS MESSAGE AS A #34!2OUTE%ND%VENT routeRegisterReqID 4HIS PARAMETER CONTAINS THE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICA TION RECEIVED THIS HANDLE IN A #34!2OUTE2EGISTER2EQ#ONF%VENT CONFIRMATION TO A ROUTE REGISTER SERVICE REQUEST routingCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! CALL ROUTING DIALOG FOR THIS CALL 4HE APPLICATION PREVIOUSLY RECEIVED THIS HANDLE IN THE #34!2OUTE2EQUEST%VENT FOR THE CALL errorValue 4HIS PARAMETER CONTAINS A CAUSE CODE WHICH GIVING THE REASON WHY THE ROUTING DIALOG ENDED privateData )F PRIVATE DATA ACCOMPANIES #34!2OUTE%ND%VENT THEN THE PRIVATE DATA WOULD BE STORED IN THE LOCATION THAT THE APPLICATION SPECIFIED AS THE PRIVATE$ATA PARAMETER IN THE ACS'ET%VENT"LOCK OR ACS'ET% VENT0OLL REQUEST )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE REQUESTS THEN #34!2OUTE%ND%VENT DOES NOT DELIVER PRIVATE DATA TO THE APPLICATION Comments 4HE SWITCH SENDS #34!2OUTE%ND%VENT WHEN A CALL HAS BEEN SUC CESSFULLY ROUTED CLEARED OR WHEN THE ROUTING SERVER HAS FAILED TO PRO VIDE A ROUTE SELECT WITHIN THE SWITCH S TIME LIMIT 4HIS EVENT IS UNSOLICITED AND CAN OCCUR AT ANY TIME
CSTA2OUTE%ND
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM ON WHICH THE APPLICA TION IS TERMINATING A ROUTING DIALOG FOR A CALL routeRegisterReqID 4HIS PARAMETER CONTAINS THE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICA TION RECEIVED THIS HANDLE IN A #34!2OUTE2EGISTER2EQ#ONF%VENT CONFIRMATION TO A ROUTE REGISTER SERVICE REQUEST routingCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! CALL ROUTING DIALOG FOR A CALL 4HE APPLICATION PREVIOUSLY RECEIVED THIS HANDLE IN THE #34!2OUTE2EQUEST%VENT FOR THE CALL 4HIS IS THE ROUTING DIALOG THAT THE APPLICATION IS ENDING
errorValue 4HE APPLICATION SUPPLIES THIS CAUSE CODE GIVING THE REASON WHY IT IS ENDING THE ROUTING DIALOG privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA Return Values CSTA2OUTE%ND RETURNS A NON NEGATIVE VALUE WHEN SUCCESSFUL 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HE APPLICATION PROVIDED A BAD OR UNKNOWN ACS(ANDLE !#3%22?342%!-?&!),%$ ! PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments ! ROUTING APPLICATION CAN USE CSTA2OUTE%ND A CALL 4HIS CAN OCCUR IF u WHEN IT CANNOT ROUTE
the application receives a routing request for a call without sufficient call information and it cannot determine a routing destination. the application has already routed calls to all available destinations and those calls remain active at those destinations. the application does not have access to a database necessary to route the call
)N THESE CASES THE APPLICATION USES CSTA2OUTE%ND TO INFORM THE SWITCH THAT IT WILL NOT ROUTE THE CALL IN QUESTION CSTA2OUTE%ND WILL TERMINATE THE #34! ROUTING DIALOG ROUTING#ROSS2EF)$ FOR THE CALL CSTA2OUTE%ND DOES NOT CLEAR THE CALL 4HE SWITCH WILL CONTINUE TO PROCESS THE CALL USING WHATEVER DEFAULT ROUTING ALGORITHM IS AVAILABLE IMPLEMENTATION SPECIFIC .OTE THAT WHEN THE SWITCH TERMINATES AN ACTIVE ROUTING DIALOG IT USES CSTA2OUTE%ND%VENT
CSTA2OUTE%ND)NV
4HE ROUTING SERVER APPLICATION USES CSTA2OUTE%ND TO CANCEL AN ACTIVE ROUTING DIALOG FOR A CALL 4HE SERVICE REQUEST INCLUDES A CAUSE VALUE GIVING THE REASON FOR THE ROUTING DIALOG TERMINATION .OTE THAT WHEN THE SWITCH TERMINATES AN ACTIVE ROUTING DIALOG IT USES CSTA2OUTE%ND%VENT
TSAPI Version !PPLICATIONS USING 43!0) 6ERSION MUST USE THE #34!2OUTE%ND FUNCTION APPLICATIONS USING ANY OTHER VERSION MUST USE THE #34!2OUTE%ND)NV FUNCTION Syntax
sxgvhi(egr0 sxgvhi(ger0 Pi5yhicgePyi7xh 35Q@exhvic AxyuiA6c PyiPiqsiPiA6c Pysxq5yPipA6c 5QR3Sxsiev8esvic Hsei6eec eg@exhvi sxyuiA6' Tisyx yiPiqsiPiA6 ysxq5yPipA6 iyTevi' sei6ee'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM ON WHICH THE APPLICA TION IS TERMINATING A ROUTING DIALOG FOR A CALL invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPECIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ANY RESULTING #34!5NIVERSAL&AILURE#ONF%VENT 4HIS PARAMETER IS ONLY USED WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S
routeRegisterReqID 4HIS PARAMETER CONTAINS THE HANDLE TO THE ROUTING REGISTRATION SESSION FOR WHICH THE APPLICATION IS PROVIDING ROUTING SERVICES 4HE APPLICA TION RECEIVED THIS HANDLE IN A #34!2OUTE2EGISTER2EQ#ONF%VENT CONFIRMATION TO A ROUTE REGISTER SERVICE REQUEST routingCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! CALL ROUTING DIALOG FOR A CALL 4HE APPLICATION PREVIOUSLY RECEIVED THIS HANDLE IN THE #34!2OUTE2EQUEST%VENT FOR THE CALL 4HIS IS THE ROUTING DIALOG THAT THE APPLICATION IS ENDING errorValue 4HE APPLICATION SUPPLIES THIS CAUSE CODE GIVING THE REASON WHY IT IS ENDING THE ROUTING DIALOG privateData 4HIS IS AN OPTIONAL POINTER TO #34! PRIVATE DATA Return Values CSTA2OUTE%ND)NV RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS Library-generated invokeIDs - if the function call completes successfully it will return a positive value, i.e. the invoke identifier. If the call fails a negative error (<0) condition will be returned. For library-generated identifiers the return will never be zero (0). Application-generated invokeIDs - if the function call completes successfully it will return a zero (0) value. If the call fails a negative error (<0) condition will be returned. For application-generated identifiers the return will never be positive (>0). 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HE APPLICATION PROVIDED A BAD OR UNKNOWN ACS(ANDLE
!#3%22?342%!-?&!),%$ ! PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED Comments ! ROUTING SERVER APPLICATION CAN USE CSTA2OUTE%ND)NV CANNOT ROUTE A CALL 4HIS CAN OCCUR IF u WHEN IT
the application receives a routing request for a call without sufficient call information and it cannot determine a routing destination. the application has already routed calls to all available destinations and those calls remain active at those destinations. the application does not have access to a database necessary to route the call
In these cases, the application uses cstaRouteEnd( ) to inform the switch that it will not route the call in question. cstaRouteEnd( ) will terminate the CSTA routing dialog (routingCrossRefID) for the call. cstaRouteEnd( ) does not clear the call. The switch will continue to process the call using whatever default routing algorithm is available (implementation specific). An application can use this function to respond to either a route request or a re-route request. Note that when the switch terminates an active routing dialog, it uses cstaRouteEndEvent.
Chapter
%SCAPE 3ERVICES
Switching domains use Escape Services to enhance TSAPI functions with "private" services which are specific to the switch or PBX Driver implementation (see Section 2.3). Each switch vendor may define functions within the CSTA private services framework, even though CSTA does not incorporate these services. Although the functions defined within escape services can vary from one implementation to the next, the way the application accesses these functions is consistent. Escape Services use the same programming model as all other CSTA services. Figure 9-18 illustrates this model.
When an application requests an escape service from a server it receives a confirmation event or a Universal Failure in the same fashion as for other TSAPI services. The Escape Service request parameters are an acsHandle (to the open stream), an invokeID and a private data parameter. The confirmation event includes the acsHandle, the invokeID, and the private data response. Escape Services also includes an unsolicited private event which a server can send to an application at any time a CSTA monitor association exists on a CSTA call or device object (see Section 6 - cstaMonitorStart( )).
Figure 9-18
!PPLICATION CLIENT
Applications can also send Escape Services requests to a switch. For most CSTA services the application is always a client in the computing domain. However, an escape service could operate in the opposite direction (such as routing does). Although the client/server role may change, services are always uni-directional where either the switch or application is always the requester for a service.
TSAPI includes escape service definitions for both the "Application as the Client" and the "Switch as the Client".
.OTE
See vendor specific documentation for more information on what, if any, Escape Services are supported by a specific vendor. Escape Service Functions are generally not portable across different vendor implementations. Some implementations may support Escape Services either bi-directionally or unidirectionally (one-way only) depending on the needs and capabilities of the switch driver
-AINTENANCE 3ERVICES
There are two different types of CSTA maintenance services: u u device status maintenance events which provide status information for device objects, and bi-directional system status maintenance services which provide information on the overall status of the system.
The device status events inform the application when the switch places a monitored device in or out of service. When a device object is removed from service, the application may monitor the device (e.g. cstaMonitorStart( ) or cstaDevSnapshotReq( )) but may not request services for that device. For example, an application request for a cstaMakeCall( ) returns an error when the device is out of service. System Status services inform applications or switches about the status of the switching or computing domains, respectively. Table 9-3 shows the System Status Services system status information (cause codes).
Table 9-3
the system is re-initializing or restarting. This status indicates that the system is temporarily unable to respond to any requests. If provided, this status message shall be followed by an Enable status message that indicates that the initialization process is completed. request and responses are enabled, usually after a disruption or restart. This status indication shall be sent after an initializing status indicator has been sent and my be sent under other conditions. This status indicates that there are no outstanding monitor requests. a System Status Event with this cause value can be sent at any time to indicate that the status is normal. This status has no effect on other services. this status indicates that a request, response, or event report may have been lost. this cause value indicates that active cstaMonitorStart( ) monitor requests via have been disabled. Other requests and responses may also be disabled, but, unlike monitors, reject responses are provided for those. the system (driver, switch, or application) is about to reach an overload condition. The "client" should shed load to remedy the situation. the system (driver, switch, or application) has reached an overload condition and may take action to shed load. The server (the application, driver, or switch) may then take action to decrease message traffic. This may include stopping existing monitors or rejecting any new requests sent by the client. the system (driver, switch, or application) has determined that the overload condition has passed and normal application operation may resume.
Enabled
Normal
Message Lost
Disabled
Overload Imminent
Overload Reached
Overload Relieved
The System Status services are bi-directional and thus can originate at the application domain or at the driver/switch domain. Figure 9-19 shows System Status Maintenance Services.
Figure 9-19
0"8 $RIVER 3WITCHING $OMAIN )MPLEMENTATION 3YSTEM 3TATUS 3ERVICE 2ESPONSE SERVER OR CLIENT DEPENDING ON 3YSTEM 3TATUS 3ERVICE DIRECTION OF 5NSOLICITED %VENT REQUEST
An application can obtain System Status information in one of two different ways : u the client can ask for the information using a request to the "server" and obtain the information in a confirmation event, or
the client can register for System Status messages and receive unsolicited events containing system status changes.
A switch or application may issue the System Status request (cstaSysStatReq( )) to obtain status information from the "server" (the application or switch, respectively, depending on the direction of the request). A System Status response (CSTASysStatReqConfEvent) provides the "client" with the current system status information for the "server". The "server" may send unsolicited events the client if the client used the cstaSysStatStart( ) service to register for System Status events. The System Status unsolicited event (CSTASysStatEvent) is the same in structure as the confirmation event (CSTASysStatReqConfEvent) except that the "server" sends it to the "client" automatically.
CSTA%SCAPE3ERVICE
This service allows the application to request a service which is not defined by the CSTA Standard but rather by a switch vendor. A service request made by this function will be specific to an implementation. Syntax
sxgvhi(ger0 sxgvhi(egr0 Pi5yhicge7geiQisgi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPE CIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIR MATION EVENT 4HIS PARAMETER IS ONLY VALID WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN 3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S privateData 4HIS IS A POINTER TO THE #34! PRIVATE DATA EXTENSION MECHANISM 4HIS PARAMETER IN ./4 OPTIONAL FOR THIS FUNCTION AND MUST BE PASSED BY THE APPLICATION )F THE PARAMETER IS .5,, AN ERROR WILL BE RETURNED TO THE APPLICATION AND THE !0) #LIENT ,IBRARY $RIVER WILL REJECT THE SERVICE REQUEST Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE
IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!%SCAPE3ERVICE#ONF%VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER !#3%22?.5,,0!2!-%4%2 4HIS ERROR INDICATES THAT THE POINTER TO THE #34! 0RIVATE $ATA INFORMATION IS .5,, AND THUS NO PRIVATE DATA IS AVAILABLE TO SEND TO THE DRIVERSWITCH .O ACTION IS TAKEN BY THE !0) #LIENT ,IBRARY $RIVER Comments 4HIS FUNCTION IS USED TO SEND PRIVATE DATA INFORMATION TO THE DRIVERSWITCH
#34!%SCAPE3ERVICE#ONF%VENT
This confirmation event is sent in response to the cstaEscapeService( ) service and provides the positive acknowledgment to the request. The event includes any private information that is to be provided as part of a confirmation event to the service request. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic 7ix5vec 7ixRic 35Q7ix@iehic' eg@exhvi' iix5ve' iixRi'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! CONFIRMATION EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?%3#!0%?3%26)#%?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!%SCAPE3ERVICE#ONF%VENT
invokeID 4HIS PARAMETER SPECIFIES THE FUNCTION SERVICE REQUEST INSTANCE FOR THE SERVICE WHICH WAS PROCESSED AT THE 4ELEPHONY 3ERVER OR AT THE SWITCH 4HIS IDENTIFIER IS PROVIDED TO THE APPLICATION WHEN A SERVICE REQUEST IS MADE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT ALWAYS OCCURS AS A RESULT OF A NORMAL POSITIVE SERVICE RE QUEST MADE THROUGH THE CSTA%SCAPE3ERVICE SERVICE 4HE INFORMA TION CONTAINED IN THE PRIVATE$ATA PARAMETER IS IMPLEMENTATION SPE CIFIC
#34!0RIVATE%VENT
This event report allows for unsolicited, implementation specific event reporting. The informational contents of this event will be defined by a specific implementation. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx iix@iehi'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!%6%.42%0/24 WHICH IDENTI FIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?02)6!4% WHICH IDENTIFIES THIS MESSAGE AS AN #34!0RIVATE%VENT
monitorCrossRefID $OES NOT APPLY TO THIS EVENT privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE $ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT IS TYPICALLY USED FOR PROVIDING UNSOLICITED IMPLEMENTATION SPECIFIC EVENT INFORMATION 4HIS EVENT CAN OCCUR AT ANY TIME AND DOES NOT HAVE BE SPECIFIC TO A MONITORED OBJECT 4HE EVENT CAN BE SENT BY THE DRIVERSWITCH EVEN THOUGH THE APPLICATION DOES NOT HAVE A MONITORED OBJECT 7HEN A MONITOR EXISTS THE 0RIVATE3TATUS%VENT IS USED BY THE DRIVERSWITCH TO SEND PRIVATE STATUS INFORMATION PERTAINING TO A MONITORED OBJECT 4HE 0RIVATE%VENT IS USED FOR ALL OTHER CASES OF UNSOLICITED PRIVATE EVENTS AND IS NOT ASSOCIATED WITH A MONITORING ASSOCIATION
#34!0RIVATE3TATUS%VENT
This event report allows for unsolicited, implementation specific event reporting for a monitored object. The informational contents of this event will be defined by a specific implementation. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' geSxyvsgsih' iix' 5QR37ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?02)6!4%?34!453 WHICH IDENTIFIES THIS MESSAGE AS AN #34!0RIVATE3TATUS%VENT
monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE $ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT IS TYPICALLY USED FOR PROVIDING IMPLEMENTATION SPECIFIC EVENT INFORMATION WHICH IS NOT DEFINED IN ANY OTHER EVENT IN THE !0) 4HE EVENT IS ALWAYS USED FOR PRIVATE INFORMATION ON A MONITORING AS SOCIATION ! MONITOR MUST BE ACTIVE ;CSTA-ONITOR$EVICE CSTA-ONITOR#ALL CSTA-ONITOR#ALLS6IA$EVICE = BEFORE THIS EVENT CAN BE SENT TO THE APPLICATION BY THE DRIVERSWITCH 4HIS EVENT IS ALWAYS SENT FROM THE DRIVERSWITCH TO THE APPLICATION AND IT IS NOT BI DIRECTIONAL
#34!%SCAPE3ERVICE2EQ
This unsolicited event is sent by the driver/switch to request a private service from the application. The event includes the service request as private information for which the application must provide a positive or negative acknowledgment. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g iix@iehi'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!2%15%34 WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?%3#!0%?36#?2%1 WHICH IDENTIFIES THIS MESSAGE AS AN #34!%SCAPE3ERVICE2EQ invokeID 4HIS PARAMETER DEFINES THE INVOKE IDENTIFIER SELECTED BY THE DRIVERSWITCH FOR THE SPECIFIC PRIVATE REQUEST 4HIS PARAMETER MUST BE RETURNED UNCHANGED IN THE RESPONSE TO THIS REQUEST IN ORDER FOR THE DRIVERSWITCH TO MATCH A SERVICE REQUEST WITH A SERVICE RESPONSE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT IS SENT BY THE DRIVERSWITCH TO REQUEST AN ESCAPE OR PRIVATE SERVICE WHEN THE APPLICATION IS PROVIDING THE SERVER FUNCTION IN THE CLIENTSERVER RELATIONSHIP 4HE RESPONSE TO THIS EVENT WILL BE ACCOM PLISHED VIA THE CSTA%SCAPE3ERVICE#ONF SERVICE
CSTA%SCAPE3ERVICE#ONF
This service allows the application to respond to a CSTAEscapeServiceEvent which originated at the driver/switch. A service response made by this function will be specific to an implementation. Syntax
sxgvhi(ger0 sxgvhi(egr0 Pi5yhicge7geiQisgi5yxp 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 5QR3Sxsiev8esvic iy xiqesi35C Hsei6eec sei6ee yssi35C
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID 4HE INVOKE IDENTIFIER USED IN THIS FUNCTION MUST BE THE SAME VALUE UNCHANGED AS THAT PROVIDED IN THE #34!%SCAPE3ERVICE2EQ FOR WHICH THIS SERVICES REQUEST IS BEING CALLED 4HE SAME INVOKE)$ VALUE MUST BE USED IN ORDER FOR THE DRIVERSWITCH TO MATCH THE INSTANCES OF A PREVIOUS SERVICE EVENT AND THE SERVICE CONFIRMATION TO THAT EVENT PRO VIDED BY THIS FUNCTION CALL error 4HIS PARAMETER IS USED TO PROVIDE A NEGATIVE ACKNOWLEDGMENT TO THE #34!%SCAPE3ERVICE2EQ 3EE #34!5NIVERSAL&AILURE#ONF%VENT FOR A DEFINITION OF THE POSSIBLE ERROR VALUES FOR THIS PARAMETER )F THE ERROR POINTER IS .5,, THIS WILL INDICATES THAT THE EVENT CONTAINS A POSITIVE ACKNOWLEDGMENT privateData 4HIS IS A POINTER TO THE #34! PRIVATE DATA EXTENSION MECHANISM WHICH CONTAINS THE POSITIVE ACKNOWLEDGMENT TO THE #34!%SCAPE3ERVICE%VENT )F THE PRIVATE POINTER IS .5,, THIS WILL INDICATE THAT THE EVENT CONTAINS A NEGATIVE ACKNOWLEDGMENT
Return Values 4HIS FUNCTION NEVER RETURNS AN INVOKE IDENTIFIER SINCE THERE IS NO CON FIRMATION EVENT FOR THIS SERVICE 4HE FUNCTION DOES RETURN ERRORS CONDITIONS DURING THE PROCESSING OF THE REQUEST BY THE !0) #LIENT ,IBRARY ! RETURN VALUE OF ZERO INDICATES THAT THE REQUEST HAS BEEN ACCEPTED BY THE ,IBRARY 4HIS FUNCTION NEVER RETURNS A POSITIVE VALUE 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER !#3%22?./.5,, 4HIS ERROR INDICATES THAT NEITHER THE ERROR OR PRIVATE$ATA POINTERS ARE .5,, /NE OF THESE POINTERS MUST BE .5,, TO INDICATE EITHER A POSITIVE OR NEGATIVE ACKNOWLEDGMENT TO THE REQUEST .O ACTION IS TAKEN BY THE !0) #LIENT ,IBRARY !#3%22?./2%30/.3% 4HIS ERROR INDICATES THAT BOTH THE ERROR OR THE PRIVATE$ATA POINTER ARE .5,, )N THIS CASE THE !0) #LIENT ,IBRARY HAS NOTHING TO SEND TO THE DRIVERSWITCH AND REJECTS THE RESPONSE 4HE REQUEST ASSOCIATED WITH THE INVOKE IDENTIFIER FROM THE DRIVERSERVER WILL STILL BE OUTSTANDING AND THE APPLICATION MUST RESPOND BY CALLING THIS FUNCTION WITH ACCEPTABLE PARAMETERS !#3%22?"!$).6/+%)$ 4HIS ERROR INDICATES THAT THE INVOKE IDENTIFIER BEING RETURNED BY THE APPLICATION IS NOT ONE THAT IS OUTSTANDING FROM THE DRIVERSWITCH 4HE !0) #LIENT ,IBRARY WILL KEEP TRACK OF THE DRIVERSWITCH BASED INVOKE ID S UNTIL THE APPLICATION RESPONDS TO THE SPECIFIC REQUEST FROM THE DRIVERSWITCH
Comments 4HIS FUNCTION IS USED TO SEND A RESPONSE TO A PRIVATE REQUEST FROM THE DRIVERSWITCH 4HE EVENT SUPPORTS BOTH A POSITIVE AND NEGATIVE AC KNOWLEDGMENT TO THE REQUEST /NE OF THE TWO POINTERS ERROR OR PRI VATE$ATA MUST BE .5,, IN ORDER FOR THE REQUEST TO BE SUCCESSFULLY PROCESSED BY THE !0) #LIENT ,IBRARY 4HIS WOULD INDICATE A POSITIVE OR NEGATIVE ACKNOWLEDGMENT TO THE REQUEST MADE BY THE DRIVERSWITCH
CSTA3END0RIVATE%VENT
This service allows the application to send an unsolicited private event to the driver/switch. An event sent by this function will be specific to an implementation. Syntax
sxgvhi(ger0 sxgvhi(egr0 Pi5yhicgeQixhHsei7ix 35Q@exhvic eg@exhvi Hsei6eec sei6ee
privateData 4HIS IS A POINTER TO THE #34! PRIVATE DATA EXTENSION MECHANISM 4HIS PARAMETER IN ./4 OPTIONAL FOR THIS FUNCTION AND MUST BE PASSED BY THE APPLICATION )F THE PARAMETER IS .5,, AN ERROR WILL BE RETURNED TO THE APPLICATION AND THE !0) #LIENT ,IBRARY $RIVER WILL REJECT THE SERVICE REQUEST Return Values 4HIS FUNCTION NEVER RETURNS AN INVOKE IDENTIFIER SINCE THERE IS NO CON FIRMATION EVENT FOR THIS SERVICE 4HE FUNCTION DOES RETURN ERRORS CONDITIONS DURING THE PROCESSING OF THE REQUEST BY THE !0) #LIENT ,IBRARY ! RETURN VALUE OF ZERO INDICATES THAT THE REQUEST HAS BEEN ACCEPTED BY THE ,IBRARY 4HIS FUNCTION NEVER RETURNS A POSITIVE VALUE 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION
!#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER !#3%22?.5,,0!2!-%4%2 4HIS ERROR INDICATES THAT THE POINTER TO THE #34! 0RIVATE $ATA INFORMATION IS .5,, AND THUS NO PRIVATE DATA IS AVAILABLE TO SEND TO THE DRIVERSWITCH .O ACTION IS TAKEN BY THE !0) #LIENT ,IBRARY $RIVER Comments 4HIS FUNCTION IS USED TO SEND UNSOLICITED PRIVATE DATA INFORMATION TO THE DRIVERSWITCH WHEN THE APPLICATION IS SUPPORTING THE SERVER ROLE IN THE CLIENTSERVER RELATIONSHIP
#34!"ACK)N3ERVICE%VENT
This event report indicates that a monitored device object has returned to services and operates normally. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR34eguAxQisgi7ixc feguAxQisgi' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 6isgiA6c hisgi' 5QR37ix5eic gei' 5QR34eguAxQisgi7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?"!#+?).?3%26)#% WHICH IDENTIFIES THIS MESSAGE AS AN #34!"ACK)N3ERVICE%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION device 3PECIFIES THE DEVICE WHICH IS BACK IN SERVICE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED cause 4HIS PARAMETER INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 3EE 3ECTION FOR MORE INFORMATION privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE $ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT INDICATES THAT A PREVIOUSLY INACTIVE DEVICE A DEVICE WHICH IS OUT SERVICE HAS RESUMED NORMAL OPERATION /NCE THIS EVENT HAS OC CURRED THE APPLICATION CAN THEN INITIATE AN ACTIVE SERVICE REQUEST EG CSTA-AKE#ALL FOR THAT SPECIFIC DEVICE ! PASSIVE SERVICE REQUEST CAN BE DONE WHILE A DEVICE IS OUT OF SERVICE IE MONITORING OR 3NAP SHOT 3ERVICES
#34!/UT/F3ERVICE%VENT
This event report indicates that a monitored device object has entered a maintenance state and can no longer accept calls or be actively manipulated by the application. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g 5QR3Eyxsy5yPipA6c wyxsy5yPipA6' xsyx 5QR3GGpQisgi7ixc yGpQisgi' ' geSxyvsgsih' iix' 5QR37ixc' ihipg 6isgiA6c hisgi' 5QR37ix5eic gei' 5QR3GGpQisgi7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM
eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?/54?/&?3%26)#% WHICH IDENTIFIES THIS MESSAGE AS AN #34!/UT/F3ERVICE%VENT monitorCrossRefID 4HIS PARAMETER CONTAINS THE HANDLE TO THE #34! ASSOCIATION FOR WHICH THIS EVENT IS ASSOCIATED 4HIS HANDLE IS TYPICALLY CHOSEN BY THE SWITCH AND SHOULD BE USED BY THE APPLICATION AS A REFERENCE TO A SPECIFIC ESTABLISHED ASSOCIATION device 4HIS PARAMETER INDICATES THE DEVICE WHICH HAS BEEN TAKEN OUT OF SERV ICE )F THE DEVICE IS NOT SPECIFIED THEN THE PARAMETER WILL INDICATE THAT THE DEVICE WAS NOT KNOWN OR THAT IT WAS NOT REQUIRED cause 4HIS PARAMETER INDICATES THE REASON OR EXPLANATION FOR THE OCCURRENCE OF THIS EVENT 3EE 3ECTION FOR MORE INFORMATION privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE $ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT INDICATES THAT A PREVIOUSLY ACTIVE DEVICE A DEVICE WHICH IS IN SERVICE HAS ENTERED INTO A MAINTENANCE STATE IE THE DEVICE HAS BEEN TAKEN OUT OF SERVICE /NCE THIS EVENT HAS OCCURRED THE APPLICATION CAN NOT INITIATE ANY NEW ACTIVE SERVICE REQUEST EG CSTA-AKE#ALL FOR THAT SPECIFIC DEVICE ! PASSIVE SERVICE REQUEST EG MONITORING OR 3NAPSHOT 3ERVICES CAN BE DONE WHILE A DEVICE IS OUT OF SERVICE
CSTA3YS3TAT2EQ
This service allows the application to request system status information from the driver/switch domain. Syntax
sxgvhi(ger0 sxgvhi(egr0 Pi5yhicgeQQePi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 Hsei6eec sei6ee'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPE CIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIR MATION EVENT 4HIS PARAMETER IS ONLY VALID WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN 3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S privateData 4HIS IS A POINTER TO THE #34! PRIVATE DATA EXTENSION MECHANISM 4HIS IS OPTIONAL Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO
!PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3YS3TAT2EQ#ONF% VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER Comments 4HIS FUNCTION IS USED TO REQUEST THE CURRENT OVERALL SYSTEM STATUS FOR THE DRIVERSWITCH
#34!3YS3TAT2EQ#ONF%VENT
This event is in response to the cstaSysStatReq( ) service and informs the application of the overall system status of the driver/switch. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6' xsyx 5QR3QQePi5yxp7ixc QePi' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3QQePi5yxp7ixc QiwQec iwQe' 5QR3QQeQePi5yxp7ixc' ihipixwQiwQec QQcAFARA3DAXAF9) QQc7F34D76) QQcFGPE3D) QQcE7QQ397QcDGQR) QQc6AQ34D76) QQcGT7PDG36cAEEAF7FR)! QQcGT7PDG36cP735@76)" QQcGT7PDG36cP7DA7T76)# QiwQec'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?393?34!4?2%1?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3YS3TAT2EQ#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTION CALL REQUEST WITH ITS CON FIRMATION EVENTS privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE $ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION systemStatus 4HIS PARAMETER PROVIDES THE APPLICATION WITH A CAUSE CODE DEFINING THE OVERALL SYSTEM STATUS AS FIN 4ABLE
Table 9-4
Enabled
Normal
Message Lost
Disabled
Overload Imminent
Overload Reached
Overload Relieved
Comments 4HIS CONFIRMATION EVENT PROVIDES THE APPLICATION WITH CERTAIN INFOR MATION REGARDING THE STATE OF THE OVERALL DRIVERSWITCH SYSTEM 4HIS EVENT IS IMPORTANT FOR PROPER APPLICATION OPERATION AND SHOULD BE PROCESSED ACCORDINGLY 4HIS IS ESPECIALLY IMPORTANT FOR CAUSE VALUES FOR THE OVERLOAD CONDITION )F THE DRIVERSWITCH HAS INFORMED THE APPLICATION THAT AN OVERLOAD CONDITION IS IMMINENT ALL APPLICATIONS SHOULD ATTEMPT TO DECREASE THE OVERALL TRAFFIC TO THE DRIVERSWITCH 4HIS CAN BE ACCOMPLISHED FOR EXAMPLE BY STOPPING ALL NON ESSENTIAL MONITORS ON CALL OR DEVICE OBJECTS ON THE SWITCH THUS REDUCING THE TRAFFIC BETWEEN THE SERVER AND THE SWITCH &REQUENT OCCURRENCE OF THE /VERLOAD )MMINENT CAUSE VALUE CAN BE A SYMPTOMS OF A POORLY ENGINEERED SYSTEM WHICH SHOULD REVIEWED FOR PROPER LOADING
CSTA3YS3TAT3TART
This services allows the application to register for System Status event reporting. It can be used by an application to automatically receive a CSTASysStatEvent each time the status of the driver/switch changes. Syntax
sxgvhi(ger0 sxgvhi(egr0 Pi5yhic geQQeQe 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 QiwQe8svic e8svi Hsei6eec sei6ee ihipxsqxihgreQiwQe8svic' hipsxiQ8cAFARA3DAXAF9$ hipsxiQ8c7F34D76 hipsxiQ8cFGPE3D hipsxiQ8cE7QQ397QcDGQR hipsxiQ8c6AQ34D76$ hipsxiQ8cGT7PDG36cAEEAF7FR hipsxiQ8cGT7PDG36cP735@76 hipsxiQ8cGT7PDG36cP7DA7T76
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPE CIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIR MATION EVENT 4HIS PARAMETER IS ONLY VALID WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN 3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S statusFilter 4HIS PARAMETER IS USED TO SPECIFY A FILTER FOR SPECIFIC CAUSE VALUES IN WHICH THE APPLICATION IS NOT INTERESTED 4HE PARAMETER CAN BE USED BY THE APPLICATION TO FILTER OUT UNWANTED STATUS INFORMATION EG THE .ORMAL STATUS
privateData 0RIVATE DATA EXTENSION MECHANISM 4HIS IS OPTIONAL Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3YS3TAT3TART#ONF% VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER
Comments 4HIS FUNCTION IS USED TO START A MONITOR FOR SYSTEM STATUS INFORMATION 4HE SYSTEM STATUS INFORMATION IS PROVIDED VIA THE #34!3YS3TAT% VENT /NLY ONE 3YSTEM 3TATUS REGISTER IS ALLOWED PER OPENED !#3 3TREAM
#34!3YS3TAT3TART#ONF%VENT
This event is in response to the cstaSysStatStart( ) function and confirms an active System Status monitor. Once this event is issued the application will start to automatically receive unsolicited System Status events. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6c' xsyx 5QR3QQeQe5yxp7ixc QeQe' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR3QQeQe5yxp7ixc QiwQe8svic e8svi' 5QR3QQeQeQe5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?393?34!4?34!24?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3YS3TAT3TART#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTIONS CALL REQUEST WITH ITS CONFIRMATION EVENTS statusFilter 4HIS PARAMETER IS USED TO SPECIFY THE FILTER TYPE WHICH IS ACTIVE ON THE 3YSTEM 3TATUS MONITOR REQUESTED BY THE APPLICATION 4HE PARAMETER IDENTIFIES WHICH FILTER WAS ACCEPTED BY THE DRIVERSWITCH .OTE THAT THE FILTER RETURNED BY THIS FUNCTION MAY BE DIFFERENT THAN THE FILTER RE QUESTED IN THE CSTA3YS3TAT3TART SERVICE REQUEST 4HIS CAN OCCUR WHEN THE DRIVERSWITCH REJECTED THE REQUEST FILTER AND SELECTED A DEFAULT FILTER privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS CONFIRMATION EVENT SHOULD BE CHECKED BY THE APPLICATION TO INSURE THAT THE 3YSTEM 3TATUS MONITOR HAS BEEN ACTIVATED AND THAT THE REQUESTED FILTER IS ACTIVE
CSTA3YS3TAT3TOP
This service is used to cancel a previously registered monitor for System Status information. Syntax
sxgvhi(ger0 sxgvhi(egr0 Pi5yhic geQQeQy 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 Hsei6eec sei6ee
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPE CIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIR MATION EVENT 4HIS PARAMETER IS ONLY VALID WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN 3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S privateData 0RIVATE DATA EXTENSION MECHANISM 4HIS IS OPTIONAL Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS ,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE
CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!3YS3TAT3TOP#ONF% VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN ACKNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER Comments 4HIS FUNCTION IS USED TO CANCEL A PREVIOUSLY REGISTERED 3YSTEM 3TATUS MONITOR /NCE A CONFIRMATION EVENT IS ISSUED FOR THIS FUNCTION IE A #34!3YS3TAT3TOP#ONF%VENT THE DRIVERSWITCH WILL TERMINATE AUTO MATIC 3YSTEM 3TATUS EVENT NOTIFICATION )F REQUIRED THE APPLICATION CAN STILL CONTINUE TO POLL FOR SYSTEM STATUS INFORMATION USING THE CSTA3YS3TAT2EQ SERVICE EVEN AFTER A 3YSTEM 3TATUS REGISTER IS CLOSED
#34!3YS3TAT3TOP#ONF%VENT
This event is in response to the cstaSysStatStop( ) function and confirms a cancellation of the active System Status monitor. Once this event is issued the application will not continue to receive unsolicited System Status events. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6c' ge5yxpswesyx' iix' 5QR37ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?393?34!4?34/0?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!3YS3TAT3TOP#ONF%VENT
invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTIONS CALL REQUEST WITH ITS CONFIRMATION EVENTS privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE $ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS CONFIRMATION EVENT SHOULD BE CHECKED BY THE APPLICATION TO INSURE THAT THE 3YSTEM 3TATUS MONITOR HAS BEEN DEACTIVATED /NCE THIS EVENT IS SENT AUTOMATIC NOTIFICATION OF 3YSTEM 3TATUS EVENTS WILL BE DISCONTINUED 4HE APPLICATION MUST POLL USING THE CSTA3YS3TAT2EQ SERVICE IN ORDER TO OBTAIN ANY 3YSTEM 3TATUS INFORMATION
CSTA#HANGE3YS3TAT&ILTER
This function is used to request a change in the filter options for automatic System Status event reporting for a specific ACS Stream. It allows the application to specify which System Status events it requires. Syntax
sxgvhi(ger0 sxgvhi(egr0 Pi5yhic ge5rexqiQQe8svi 35Q@exhvic eg@exhvi AxyuiA6c sxyuiA6 QiwQe8svic e8svi Hsei6eec sei6ee
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM invokeID ! HANDLE PROVIDED BY THE APPLICATION TO BE USED FOR MATCHING A SPE CIFIC INSTANCE OF A FUNCTION SERVICE REQUEST WITH ITS ASSOCIATED CONFIR MATION EVENT 4HIS PARAMETER IS ONLY VALID WHEN THE )NVOKE )$ MECHANISM IS SET FOR !PPLICATION GENERATED )$S IN THE ACS/PEN 3TREAM 4HE PARAMETER IS IGNORED BY THE !#3 ,IBRARY WHEN THE 3TREAM IS SET FOR ,IBRARY GENERATED INVOKE )$S statusFilter 4HIS PARAMETER IDENTIFIES THE NEW FILTER MASK TO BE APPLIED TO THE EXISTING ACTIVE 3YSTEM 3TATUS MONITOR 4HE NEW MASK WILL REPLACE THE EXISTING MASK privateData 0RIVATE DATA EXTENSION MECHANISM 4HIS IS OPTIONAL Return Values 4HIS FUNCTION RETURNS THE FOLLOWING VALUES DEPENDING ON WHETHER THE APPLICATION IS USING LIBRARY OR APPLICATION GENERATED INVOKE IDENTIFIERS
,IBRARY GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A POSITIVE VALUE IE THE INVOKE IDENTIFIER )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR LIBRARY GENERATED IDENTIFIERS THE RETURN WILL NEVER BE ZERO !PPLICATION GENERATED )DENTIFIERS IF THE FUNCTION CALL COMPLETES SUCCESSFULLY IT WILL RETURN A ZERO VALUE )F THE CALL FAILS A NEGATIVE ERROR CONDITION WILL BE RETURNED &OR APPLICATION GENERATED IDENTIFIERS THE RETURN WILL NEVER BE POSITIVE 4HE APPLICATION SHOULD ALWAYS CHECK THE #34!#HANGE3YS3TAT&IL TER#ONF%VENT MESSAGE TO INSURE THAT THE SERVICE REQUEST HAS BEEN AC KNOWLEDGED AND PROCESSED BY THE 4ELEPHONY 3ERVER AND THE SWITCH 4HE FOLLOWING ARE POSSIBLE NEGATIVE ERROR CONDITIONS FOR THIS FUNCTION !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER Comments 4HIS SERVICE IS USED WHENEVER THE APPLICATION WISHES TO CHANGE A PRE VIOUSLY DEFINED 3YSTEM 3TATUS EVENT FILTER .OTE THAT APPLICATION WILL NOT RECEIVE ANY 3YSTEM 3TATUS MESSAGE WHICH HAS ITS BIT MASK TURNED OFF
#34!#HANGE3YS3TAT&ILTER#ONF%VENT
This event occurs as a result of the cstaChangeSysStatFilter( ) service and informs the application which event filter was set by the server. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic iix@iehi' xsyx g AxyuiA6c sxyuiA6c' xsyx 5QR35rexqiQQe8svi5yxp7ixcgrexqiQQe8svi' ' ge5yxpswesyx' iix' 5QR37ixc' ihipg5QR35rexqiQQe8svi5yxp7ixc QiwQe8svic e8sviQivigih' QiwQe8svic e8svi3gsi' 5QR35rexqiQQe8svi5yxp7ixc'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!#/.&)2-!4)/. WHICH IDENTI FIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?#(!.'%?393?34!4?&),4%2?#/.& WHICH IDENTIFIES THIS MESSAGE AS AN #34!#HANGE3YS3TAT&ILTER#ONF%VENT invokeID 4HIS PARAMETER SPECIFIES THE REQUESTED INSTANCE OF THE FUNCTION OR EVENT )T IS USED TO MATCH A SPECIFIC FUNCTIONS CALL REQUEST WITH ITS CONFIRMATION EVENTS statusFilterSelected 4HIS PARAMETER SPECIFIES THE 3YSTEM 3TATUS EVENT FILTERS WHICH ARE AC TIVE AS A RESULT OF THE CSTA#HANGE3YS3TAT&ILTER SERVICE REQUEST 4HIS FILTER MAY BE DIFFERENT THAN THE ONE REQUESTED BY THE APPLICATION 4HIS CAN OCCUR IF THE IMPLEMENTATION REJECTS A PARTICULAR FILTER REQUEST eventFilterActive 4HIS PARAMETER INDICATES THE FILTERS WHICH ARE ALREADY ACTIVE ON THE GIVEN #34! ASSOCIATION privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS CONFIRMATION EVENT SHOULD BE CHECK BY THE APPLICATION TO INSURE THAT THE EVENT FILTER REQUESTED HAS BEEN ACTIVATED AND WHICH FILTERS ARE ALREADY ACTIVE ON THE GIVEN 3YSTEM 3TATUS MONITOR
#34!3YS3TAT%VENT
This unsolicited event informs the application of the overall system status of the driver/switch. The application must register for System Status events before this event is sent to the application. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx iix@iehi'
ihipixwQiwQec QQcAFARA3DAXAF9) QQc7F34D76) QQcFGPE3D) QQcE7QQ397QcDGQR) QQc6AQ34D76) QQcGT7PDG36cAEEAF7FR)! QQcGT7PDG36cP735@76)" QQcGT7PDG36cP7DA7T76)# QiwQec'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!%6%.42%0/24 WHICH IDENTI FIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT eventType 4HIS IS A TAG WITH THE VALUE #34!?393?34!4 WHICH IDENTIFIES THIS MESSAGE AS AN #34!3YS3TAT%VENT privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION systemStatus 4HIS PARAMETER PROVIDES THE APPLICATION WITH A CAUSE CODE DEFINING THE OVERALL SYSTEM STATUS 3EE 4ABLE FOR THE POSSIBLE VALUES OF THIS PARAMETER
Comments 4HIS EVENT PROVIDES THE APPLICATION WITH CERTAIN INFORMATION REGARDING THE STATE OF THE OVERALL DRIVERSWITCH SYSTEM 4HIS EVENT IS IMPORTANT FOR PROPER APPLICATION OPERATION AND SHOULD BE PROCESSED ACCORDINGLY 4HIS IS ESPECIALLY IMPORTANT FOR CAUSE VALUES FOR THE OVERLOAD CONDITION )F THE DRIVERSWITCH HAS INFORMED THE APPLICATION THAT AN OVERLOAD CONDITION IS IMMINENT ALL APPLICATIONS SHOULD ATTEMPT TO DECREASE THE OVERALL TRAFFIC TO THE DRIVERSWITCH 4HIS CAN BE ACCOMPLISHED FOR EXAMPLE BY STOPPING ALL NON ESSENTIAL MONITORS ON CALL OR DEVICE OBJECTS ON THE SWITCH THUS REDUCING THE TRAFFIC BETWEEN THE SERVER AND THE SWITCH &REQUENT OCCURRENCE OF THE /VERLOAD )MMINENT EVENT CAN BE A SYMPTOMS OF A POORLY ENGINEERED SYSTEM WHICH SHOULD REVIEWED FOR PROPER LOADING 0"8 DRIVERS THAT FOLLOW DRIVER PROGRAMMING RECOMMENDATIONS WILL SEND #34!3YS3TAT%VENT WHEN A #4) LINK GOES UP OR DOWN 7HEN A LINK THAT IS IN SERVICE GOES DOWN THE SYSTEM3TATUS WILL BE )NITIALIZING 7HEN A LINK ENTERS SERVICE THE SYSTEM3TATUS WILL BE %NABLED )F A DRIVER USES MULTIPLE #4) LINKS TO PROVIDE SERVICE THEN THE DRIVER MAY ONLY SEND THE )NITIALIZING MESSAGE WHEN THERE ARE NO #4) LINKS IN SERVICE AND MAY SEND THE %NABLED WHEN AT LEAST ONE LINK IS IN SERVICE #ERTAIN NON ESSENTIAL CAUSE VALUES CAN BE SENT AT ANY TIME OR DEPEND ING ON THE DRIVERSWITCH IMPLEMENTATION EVEN AT REGULAR INTERVALS EG THE .ORMAL CAUSE VALUE TO INDICATE THAT THE SYSTEM STATUS IS /+ AND OPERATING NORMALLY 4HIS CAN BE TURNED OFF BY THE APPLICATION TO AVOID THE OVERHEAD ASSOCIATED WITH PROCESSING THESE NORMAL MESSAGES 4HIS IS ACCOMPLISHED BY CHANGING THE EVENT FILTER TYPE BY USING THE CSTA#HANGE3YS3TAT&ILTER SERVICE 4HIS SERVICE CAN BE USED TO DIS CONTINUE THE DELIVERY OF NON ESSENTIAL SYSTEM STATUS EVENTS TO THE APPLICATION
#34!3YS3TAT%NDED%VENT
The driver uses this event to cancel a previously registered monitor for System Status information. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE !#3 $ATA 4YPES AND #34! $ATA 4YPES IN SECTION FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx Qe7xhih' iix@iehi'
5QR3QQe7xhih7ixc
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!%6%.42%0/24 WHICH IDENTI FIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?393?34!4?%.$%$ WHICH IDENTIFIES THIS MESSAGE AS A #34!3YS3TAT3TOP%VENT monitorCrossRefID 4HIS PARAMETER IS UNUSED IN THIS MESSAGE privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION
#34!3YS3TAT2EQ%VENT
This unsolicited event is sent by the driver/switch to request system status information from the application. Syntax 4HE FOLLOWING STRUCTURE SHOWS ONLY THE RELEVANT PORTIONS OF THE UNIONS FOR THIS MESSAGE 3EE SECTION !#3 $ATA 4YPES AND #34! $ATA 4YPES FOR A COMPLETE DESCRIPTION OF THE EVENT STRUCTURE
ihipg 35Q@exhvic eg@exhvi' 7ix5vec iix5ve' 7ixRic iixRi' 35Q7ix@iehic' ihipg 35Q7ix@iehic xsyx g xsyx iix@iehi'
AxyuiA6c
sxyuiA6'
Parameters acsHandle 4HIS IS THE HANDLE FOR THE OPENED !#3 3TREAM eventClass 4HIS IS A TAG WITH THE VALUE #34!5.3/,)#)4%$ WHICH IDENTIFIES THIS MESSAGE AS AN #34! UNSOLICITED EVENT
eventType 4HIS IS A TAG WITH THE VALUE #34!?393?34!4?2%1 WHICH IDENTI FIES THIS MESSAGE AS AN #34!3YS3TAT2EQ%VENT InvokeID 4HIS PARAMETER IDENTIFIES THE INSTANCE OF THE REQUEST GENERATED BY THE SWITCHDRIVER 4HIS SAME VALUE MUST BE USED UNCHANGED IN THE RE SPONSE TO THIS EVENT CSTA3YS3TAT2EQ#ONF privateData )F PRIVATE DATA ACCOMPANIED THIS EVENT THEN THE PRIVATE DATA WOULD BE COPIED TO THE LOCATION POINTED TO BY THE PRIVATE$ATA POINTER IN THE ACS'ET%VENT"LOCK OR ACS'ET%VENT0OLL FUNCTION )F THE PRIVATE$ATA POINTER IS SET TO .5,, IN THESE FUNCTIONS THEN NO PRIVATE DATA WILL BE DELIVERED TO THE APPLICATION Comments 4HIS EVENT IS SENT BY THE DRIVERSWITCH TO REQUEST STATUS INFORMATION PERTAINING TO THE APPLICATION )T IS THE BI DIRECTIONAL EQUIVALENT OF THE CSTA3YS3TAT2EQ FUNCTION WHICH IS ISSUED BY THE APPLICATION TO RE QUEST STATUS INFORMATION FROM THE DRIVERSWITCH 4HE APPLICATION RE SPONDS TO THIS UNSOLICITED EVENT REQUEST UTILIZING THE CSTA3YS3TA T2EQ#ONF FUNCTION
CSTA3YS3TAT2EQ#ONF
This service is used to respond to a CSTASysStatReqEvent unsolicited event from the driver/switch. It provides the driver/switch with information regarding the status of the application. Syntax
sxgvhi(ger0 Pi5yhic geQQePi5yxp eg@exhvi sxyuiA6 iwQe sei6ee' 35Q@exhvic AxyuiA6c QiwQec Hsei6eec ihipixwQiwQec QQcAFARA3DAXAF9) QQc7F34D76) QQcFGPE3D) QQcE7QQ397QcDGQR) QQc6AQ34D76) QQcGT7PDG36cAEEAF7FR)! QQcGT7PDG36cP735@76)" QQcGT7PDG36cP7DA7T76)# QiwQec'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM InvokeID 4HE VALUE OF THIS PARAMETER MUST BE THE SAME UNCHANGED AS THAT PROVIDED IN THE CSTA3YS3TAT2EQ%VENT SO THAT THE DRIVERSWITCH CAN MATCH AN INSTANCE OF A SERVICE REQUEST WITH THE RESPONSE TO THAT RE QUEST systemStatus 4HIS PARAMETER PROVIDES THE DRIVERSWITCH WITH A CAUSE CODE DEFINING THE OVERALL SYSTEM STATUS 3EE 4ABLE FOR THE POSSIBLE VALUES OF THIS PARAMETER privateData 0RIVATE DATA EXTENSION MECHANISM 4HIS IS OPTIONAL
Return Values 4HIS FUNCTION NEVER RETURNS AN INVOKE IDENTIFIER SINCE THERE IS NO CON FIRMATION EVENT FOR THIS SERVICE 4HE FUNCTION DOES RETURN ERRORS CONDITIONS DURING THE PROCESSING OF THE REQUEST BY THE !0) #LIENT ,IBRARY ! RETURN VALUE OF ZERO INDICATES THAT THE REQUEST HAS BEEN ACCEPTED BY THE ,IBRARY 0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER Comments 4HIS CONFIRMATION RESPONSE PROVIDES THE DRIVERSWITCH WITH CERTAIN IN FORMATION REGARDING THE STATE OF THE OVERALL APPLICATION 4HE INFORMA TION CAN BE USED BY THE DRIVERSWITCH TO DETERMINE THE OVERALL STATE OF THE APPLICATION 4HE DRIVERSWITCH MAY ACT ON THIS INFORMATION IN ORDER TO INSURE PROPER END TO END SYSTEM OPERATION AND PERFORMANCE &REQUENT OCCURRENCE OF THE /VERLOAD )MMINENT CAUSE VALUE CAN BE A SYMPTOMS OF A POORLY ENGINEERED APPLICATION SYSTEM WHICH SHOULD REVIEWED FOR PROPER LOADING
CSTA3YS3TAT%VENT
This service is used to send application system status information in the form of an unsolicited event to the driver/switch without a formal request for the information. This status information can be sent at any time. Syntax
sxgvhi(ger0 Pi5yhic geQQe7ix 35Q@exhvic eg@exhvi QiwQec iwQe Hsei6eec sei6ee' ihipixwQiwQec QQcAFARA3DAXAF9) QQc7F34D76) QQcFGPE3D) QQcE7QQ397QcDGQR) QQc6AQ34D76) QQcGT7PDG36cAEEAF7FR)! QQcGT7PDG36cP735@76)" QQcGT7PDG36cP7DA7T76)# QiwQec'
Parameters acsHandle 4HIS IS THE HANDLE TO AN ACTIVE !#3 3TREAM systemStatus 4HIS PARAMETER PROVIDES THE DRIVERSWITCH WITH A CAUSE CODE DEFINING THE OVERALL SYSTEM STATUS 3EE 4ABLE FOR THE POSSIBLE VALUES OF THIS PARAMETER privateData 0RIVATE DATA EXTENSION MECHANISM 4HIS IS OPTIONAL Return Values 4HIS FUNCTION NEVER RETURNS AN INVOKE IDENTIFIER SINCE THERE IS NO CON FIRMATION EVENT FOR THIS SERVICE 4HE FUNCTION DOES RETURN ERRORS CONDITIONS DURING THE PROCESSING OF THE REQUEST BY THE !0) #LIENT ,IBRARY ! RETURN VALUE OF ZERO INDICATES THAT THE REQUEST HAS BEEN ACCEPTED BY THE ,IBRARY
0OSSIBLE LOCAL ERROR RETURNS ARE NEGATIVE RETURNS !#3%22?"!$($, 4HIS RETURN VALUE INDICATES THAT A BAD OR UNKNOWN ACS(ANDLE WAS PROVIDED BY THE APPLICATION !#3%22?./#/.. 4HIS RETURN VALUE INDICATES THAT A PREVIOUSLY ACTIVE !#3 3TREAM HAS BEEN ABNORMALLY ABORTED !#3%22?2%1$%.)%$ 4HIS RETURN VALUE INDICATES THAT A !#3 3TREAM IS ESTABLISHED BUT A REQUESTED CAPABILITY HAS BEEN DENIED BY THE #LIENT ,I BRARY 3OFTWARE $RIVER Comments 4HIS UNSOLICITED SERVICE EVENT IS SENT TO THE DRIVERSWITCH IN ORDER TO INFORM IT OF THE STATE OF THE OVERALL APPLICATION SYSTEM 4HE DRIVERSWITCH MAY ACT ON THIS INFORMATION IN ORDER TO INSURE PROPER END TO END SYSTEM OPERATION AND PERFORMANCE &REQUENT OCCURRENCE OF THE /VERLOAD )MMINENT CAUSE VALUE CAN BE A SYMPTOMS OF A POORLY ENGINEERED APPLICATION SYSTEM WHICH SHOULD REVIEWED FOR PROPER LOADING
Chapter
10
Programming Notes
This chapter contains information about using the TSAPI libraries on various operating system platforms.
43!0) ON -ACINTOSH
-ACINTOSH 0ROGRAMMING /VERVIEW
Read this section for information on developing TSAPI applications on Macintosh. You need not be familiar with the CSTA call model or API before reading further, but you should read Chapter 4, ACS Control Services.
Table 10-1
u 43!0) STRUCTURES REQUIRE MACK ALIGNMENT TSAPI requires 68k Macintosh compilers to use two-byte structure alignment. For Macintosh compilers targeting PowerPC, TSAPI declares all structures using the PRAGMA OPTIONS ALIGNMACK directive. If your PowerPC compiler does not support this pragma or does not define either POWERC or ??POWERC, you must manually specify 2-byte alignment. Table 10-2 describes compiler settings necessary to enable 2-byte structure alignment:
Table 10-2
$YNAMIC ,INKING
This section describes how to dynamically link with the Telephony Services library on Macintosh.
X -ACINTOSH $YNAMIC ,INKING On other TSAPI platforms, client applications use inherent operating system facilities to dynamically link with the Telephony Services library. The Macintosh 68k runtime model does not provide such a facility. Instead, Apple provides several methods for achieving runtime linking drivers, the Component Manager and the Apple Shared Library Manager. The Macintosh Telephony Services library is a faceless background application that exports TSAPI using the Component Manager. The SDK contains static link libraries in MPW .o, THINK/Symantec library and Metrowerks library object formats that translate from TSAPI to the Component Manager calls necessary for using the Telephony Services library's CSTA component. You need not use Gestalt to determine if the 68k Telephony Services library is running before using any TSAPI functions. If you do not use Gestalt, you should verify that you are running on a 68020 or better processor before making TSAPI calls. Refer to your compiler documentation for instructions on linking MPW .o format object modules with your 68k code. 0OWER0# -ACINTOSH $YNAMIC ,INKING On Power Macintosh, the Telephony Services application is supplemented by an import library that exports TSAPI to PowerPC-native applications. The Telephony Services application is still used to export TSAPI through the Component Manager to 68k applications.
.OTE
You must use Gestalt as described above to determine if the PowerPC Telephony Services application is running before using any TSAPI functions. Failure to do so may result in crashing the host Macintosh.
The SDK contains the Telephony Services import library in XCOFF format for use with PPCC. Metrowerks projects should include the shared library from the Macintosh Client package. See reference [7] for more information on the Code Fragment Manager and shared libraries.
%VENT .OTIFICATION
On Macintosh both ACS%VENT.OTIFY and ACS3ET%32 and are analogous to their Windows counterparts. are available
To use ACS%VENT.OTIFY , you should understand how to receive and interpret Apple Events in your application. You can find information on using Apple Events in reference [4]. As with its counterparts on other platforms, ACS%VENT.OTIFY can post a message to your application whenever any message is received from the Telephony Server (notifyAll = TRUE) or simply whenever a previously empty stream receives an event (notifyAll = FALSE). The special feature of ACS%VENT.OTIFY on Macintosh is that the process identifier is an !%!DDRESS$ESC. This allows your program to specify any legal address for an AppleEvent network visible PPC entities included. The Telephony Services library will send notification AppleEvents using the K!%.EVER)NTERACT flag; if the target application you specify is on a server to which the Macintosh is not authenticated, notification will fail. All notification events are sent with the K!%.O2EPLY flag.
.OTE
If you are using acsEventNotify( ), you should use notifyAll = FALSE. Otherwise, the performance lag caused by processing Apple Events may unacceptably slow your application. The ability to post a message for every received event has been preserved for compatibility with TSAPI on other platforms.
To optimize your application for speed, you should use ACS3ET%32 to increment or set a variable in your application. Examine this variable to determine when to retrieve incoming events.
The following example demonstrates acsSetESR() being used to "preempt" an arbitrary lengthy processing task without polling for events an important speed optimization. The example uses no global variables under 68k and hence may be easily implemented in any standalone code resource.
6iwyxesyxypsxqegQi7QPyevvygywifyxh euyrexhviiviryxeppsgsryyvvsxq yqvyfevesefvi esgegevyshixsqxihvyxqiHeew' spSQ7QPGSRAF767Q5PAHRGPQ esgPysxi6igsyiP6) 4SAD6cPGSRAF7c67Q5PAHRGP78xgHygAxpyi' ixhsp 7QPiewvi esgegevysh ixsqxihvyxqiHeew iHeewysxyriiih7ixesefvi xsqxihryiih7ixH) xsqxihryiHeew' sxgiwixqvyfevesefvi qIiih7ixH'
ysh gywiUrsviUegrsxqQiew35Q@exhvicriQiew Pi5yhic g' ry iih7ix' gyxsxqiweryire eguxwfiypiixre reifiixigisihfxy ygiih iqsigevvfeguiixyspsgesyxpyiegriix spSQ7QPGSRAF767Q5PAHRGPQ g)egQi7QPriQiewiP6iih7ixRPS7' ivi g)egQi7QPriQiewiiih7ixRPS7' ixhsp spg)35QHGQARAT7c35C rigevvfegugyvhxyfiiqsiihypesvexh ix ix' fiqsxsiesigywesyxygi rsviQGE7cD7F9R@Wc5GEHSR3RAGFcAFcHPG9P7QQ spiih7ix)
Pisiiiixriiyfieuyypvyy ig
ygiyxiiypevixqrgywesyx
2ECEIVING %VENTS
This section discusses event reception using ACS'ET%VENT0OLL ACS'ET%VENT"LOCK on Macintosh. "LOCKING 6ERSUS 0OLLING Macintosh applications should generally use ACS'ET%VENT0OLL of ACS'ET%VENT"LOCK . instead and
Whereas ACS'ET%VENT"LOCK prevents most system activity from continuing until the calling application receives an event, ACS'ET%VENT0OLL returns control immediately if no event is waiting for the caller. Calling ACS'ET%VENT0OLL frequently particularly from 68k applications can unduly consume processor time and resources. Instead of using polling as a method of determining whether messages are waiting in your application's receive queue, consider using event notification to trigger a polling call to receive events.
.OTE
Neither acsGetEventBlock() nor acsGetEventBlock() may be called from a callback procedure registered with acsSetESR(). See the overview of event notification for an example of implementing a callback procedure to reduce polling.
2ECEIVING %VENTS &ROM !NY 3TREAM An application may specify a NULL stream handle when calling ACS'ET%VENT0OLL or ACS'ET%VENT"LOCK to request that the Telephony Services library return the first event available on any of that application's streams. When using a NULL stream handle with ACS'ET%VENT0OLL or ACS'ET%VENT"LOCK , your application or code resource must have a valid global context. For 68k applications, this requires a valid A5-world. For
68k standalone code, A4 must be valid. No code using the MPW no globals .o static link library may use a NULL stream handle. This restriction does not apply to PowerPC applications and standalone code.
43!0) ON /3
TSAPI is fully supported under OS/2. Application developers can program to TSAPI to develop both Presentation Manager (PM) and non PM OS/2 applications. The IBM CSet++ 2.1, Borland C/C++ 1.5 and Watcom C/C++ 10.0 OS/2 compilers are all supported. Using any other compiler may require user modification or conversion of header files. Two TSAPI calls acsEnumServerNames() and acsSetESR() require the user to specify a callback function. These callback functions need to be defined with the _System calling convention. OS/2 applications open ACS streams to the Telephony Server using the standard procedure outlined in this document. Once an ACS stream has been successfully opened, there are two ways for an OS/2 application to be notified that a TSAPI event is available to be retrieved. PM applications can use the acsEventNotify() TSAPI call to designate a user defined message be posted to its application queue when a TSAPI event is available. PM and non-PM applications can use the acsSetESR() TSAPI call to designate an Event Service Routine to be called whenever a TSAPI event is available. Alternatively, both PM and non-PM applications can forego event notification and receive events by creating a separate thread that uses acsGetEventBlock() or acsGetEventPoll() directly, to block until an event is received or to poll for events. Both acsEventNotify() and acsSetESR() only signal the availability of a TSAPI message. The application must still call acsGetEventBlock() or acsGetEventPoll( ) to actually retrieve the event from the Client API Library queue.
ACS%VENT.OTIFY
sxgvhi(yr0 sxgvhi(egr0 sxgvhi(ger0 Pi5yhiceg7ixFysp 35Q@exhvic eg@exhvi @UF6 rxh SDGF9 wq 4yyviex xysp3vv'
acsHandle IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED !#3 3TREAM FOR WHICH EVENT NOTIFICATION MESSAGES WILL BE POSTED hwnd IS THE HANDLE OF THE WINDOW WHICH IS TO RECEIVE EVENT NOTIFICATION MESSAGES )F THIS PARAMETER IS .5,, EVENT NOTIFICATION IS DISABLED msg IS THE USER
DEFINED MESSAGE TO BE POSTED WHEN AN INCOMING EVENT BECOMES AVAILABLE 4HE MP AND MP PARAMETERS OF THE MESSAGE WILL CONTAIN THE FOLLOWING MEMBERS OF THE !#3%VENT(EADER?T STRUCTURE
w Q@GPR8PGEEHw Q@GPR8PGEEHw
eg@exhvi
iix5ve
iixRi
notifyAll SPECIFIES WHETHER A MESSAGE WILL BE POSTED FOR EVERY EVENT )F THIS PARAMETER IS 425% THEN A MESSAGE WILL BE POSTED FOR EVERY EVENT )F IT IS &!,3% THEN A MESSAGE WILL ONLY BE POSTED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION OR THE LIKELIHOOD OF OVERFLOWING THE APPLICATION S MESSAGE QUEUE %XAMPLE 4HIS EXAMPLE USES THE ACS%VENT.OTIFY FUNCTION TO ENABLE EVENT NOTIFICATION
sgrwq geiUEc5P73R7& yUEc35Q7T7FRyrssxhy rixiiex35Qiixesi eg7ixFyspeg@exhvirxhUEc35Q7T7FRRPS7' yrisxssevsesyxig ix' geiUEc35Q7T7FR& wgyxesxex35Q@exhvic Q@GPR8PGEEHwgyxesxex7ix5vec Q@GPR8PGEEHwgyxesxex7ixRic hsegrriiixyihipsxih rexhvipxgsyxrii ix' ygiyrisxhywieqi ixUsx6ipUsxhyHygrxhwqww'
ACS3ET%32
The ESR mechanism can be used by the application to receive an asynchronous notification of the arrival of an incoming event from the Open ACS Stream. The application can use the ESR mechanism to trigger specific events (e.g. post an event semaphore). The ESR routine will receive one userdefined parameter. The ESR should not call ACS functions, otherwise the results will be indeterminate. The syntax of acsSetESR() is as follows:
sxgvhi(yr0 sxgvhi(egr0 sxgvhi(ger0 ihipysh78xgSDGF9iHeew Pi5yhic egQi7QP 35Q@exhvic 78xg i SDGF9 4yyviex eg@exhvi iHeew xysp3vv'
acsHandle IS THE VALUE OF THE UNIQUE HANDLE TO THE OPENED 3TREAM FOR WHICH THIS %32 ROUTINE WILL APPLY /NLY ONE %32 IS ALLOWED PER ACTIVE ACS(ANDLE esr POINTS TO THE %32 THE ADDRESS OF A FUNCTION 4HIS FUNCTION MUST USE THE ?3YSTEM CALLING CONVENTION ! MULTI THREADED APPLICATION THAT REGISTERS THE SAME %32 FOR MULTIPLE OPEN STREAMS NEEDS TO ENSURE THAT THIS FUNCTION IS REENTRANT ! .5,, POINTER IS USED TO DISABLE THE CURRENT %32 MECHANISM esrParam DEFINES PARAMETER WHICH WILL BE PASSED TO THE %32 WHEN IT IS CALLED notifyAll SPECIFIES WHETHER THE %32 WILL BE CALLED FOR EVERY EVENT )F THIS PARAMETER IS 425% THEN THE %32 WILL BE CALLED FOR EVERY EVENT )F IT IS &!,3% THEN THE %32 WILL ONLY BE CALLED EACH TIME THE RECEIVE QUEUE BECOMES NON EMPTY IE THE QUEUE COUNT CHANGES FROM ZERO TO ONE 4HIS OPTION MAY BE USED TO REDUCE THE OVERHEAD OF NOTIFICATION
43!0) ON 7IN
0ROGRAMMING /VERVIEW
Read this section for information on developing TSAPI applications for Windows NT or Windows 95. You do not need to be familiar with the CSTA call model or API before reading further, but you should read Chapter 4, ACS Control Services.
$EVELOPMENT 0LATFORMS
The TSAPI header files and import libraries in this SDK are compatible with the Microsoft Visual C++ Development System. Using another compiler may require you to modify the header files, for example, to account for differences in structure alignment, size of enumerated data types, etc. The Win32 TSAPI library assumes the default 8-byte structure packing and an ENUM size of 4 bytes.
%VENT .OTIFICATION
ACS%VENT.OTIFY enables asynchronous notification of incoming events via Windows messages. ACS3ET%32 enables asynchronous notification of incoming events via an application-defined callback routine. This routine will be called in the context of a background thread created by the TSAPI Library, not a thread created by the application. The callback should not invoke TSAPI Library functions.
2ECEIVING %VENTS
This section discusses event reception using ACS'ET%VENT0OLL ACS'ET%VENT"LOCK on Win32. "LOCKING 6ERSUS 0OLLING ACS'ET%VENT"LOCK suspends the calling thread until it receives an event. ACS'ET%VENT0OLL returns control immediately if no event is available, allowing the application to query other input sources or events. Calling ACS'ET%VENT0OLL repetitively can unduly consume processor time and resources, to the detriment of other applications. Instead of polling, consider creating a separate thread which calls ACS'ET%VENT"LOCK , or use ACS%VENT.OTIFY to receive asynchronous notifications. 2ECEIVING %VENTS &ROM !NY 3TREAM An application may specify a NULL stream handle when calling ACS'ET%VENT0OLL or ACS'ET%VENT"LOCK to request that the Telephony Services library return the first event available on any of that applications streams. and
-ESSAGE 4RACE
The TSSPY32.EXE program may be used to obtain a trace of messages flowing between applications and the Telephony Server.
43!0) ON 5NIX7ARE
0ROGRAMMING /VERVIEW
Read this section for information on developing TSAPI applications on UnixWare. You do not need to be familiar with the CSTA call model or API before reading further, but you should read Chapter 4, ACS Control Services.
$EVELOPMENT 0LATFORMS
Telephony Services applications must be built with an environment that supports the Executable and Linking Format (ELF) and dynamic linking. The TSAPI header files in this SDK are compatible with the C Optimized Compilation System provided with the UnixWare Software Development Kit. Using another compiler may require you to modify the header files, for example, to account for differences in structure alignment, size of enumerated data types, etc. TSAPI works with both UnixWare 1.x and UnixWare 2.x, and is thread-safe for 2.x applications.
%VENT .OTIFICATION
The ACS%VENT.OTIFY and ACS3ET%32 on the UnixWare platform. functions are not provided
Unlike other Telephony Services platforms, UnixWare does not directly promote an event-driven programming model, but rather a file-oriented one. To work most effectively in the UnixWare environment, the TSAPI event stream should appear as a file. The ACS'ET&ILE function returns the STREAMS file descriptor associated with an ACS stream handle. The returned value may be used like any other file descriptor in an I/O multiplexing call, such as POLL or SELECT , to determine the availability of TSAPI events. Alternatively, an application may register to receive the 3)'0/,, signal using the )?3%43)' IOCTL call. Refer to Programming with UNIX System Calls - STREAMS Polling and Multiplexing in the UnixWare SDK documentation.
Do not perform other I/O or control operations directly on this file descriptor. Doing so may lead to unpredictable results from the TSAPI library.
2ECEIVING %VENTS
This section discusses event reception using ACS'ET%VENT0OLL ACS'ET%VENT"LOCK on UnixWare. "LOCKING 6ERSUS 0OLLING ACS'ET%VENT"LOCK suspends the calling application until it receives an event. If your application has no other work to perform in the meantime, this is the simplest and most efficient way to receive events from the TSAPI. and
Typically, however, an application needs to respond to input from the user or other sources, and cannot afford to wait exclusively for TSAPI events. ACS'ET%VENT0OLL returns control immediately if no event is available, allowing the application to query other input sources or events. Calling ACS'ET%VENT0OLL repetitively can unduly consume processor time and resources, to the detriment of other applications. Instead of polling, consider multiplexing your input sources via the POLL system call, or installing a 3)'0/,, handler. 2ECEIVING %VENTS &ROM !NY 3TREAM An application may specify a NULL stream handle when calling ACS'ET%VENT0OLL or ACS'ET%VENT"LOCK to request that the Telephony Services library return the first event available on any of that applications streams.
-ESSAGE 4RACE
To create a log file of TSAPI messages sent to and received from the Telephony Server, set the shell environment variable #34!42!#% to the pathname of the desired file, prior to starting your application. The log file will be created if necessary, or appended to if it already exists.
3AMPLE #ODE
The following pseudo-code illustrates the use of the ACS'ET&ILE function to set up an asynchronous event handler.
sx7ixAHixhsxq)' rexhvi7ixgevvihrixQA9HGDDsigisih ysh rexhvi7ixsxsq 7ixAHixhsxq' ysh wesxysh
35Q@exhvic eg@exhvi' sx egcph' sxevvrisqxevrexhvi sqxevQA9HGDDrexhvi7ix' yixex35Qiew egGixQieweg@exhviig' qispsvihigsy egcph)eg9i8svieg@exhvi' ixefviQA9HGDDyxxyweviehiix sygvegcphAcQ7RQA9QcP6FGPE' ygiihsrevsgesyxygisxq rsvixy6yxi sp7ixAHixhsxq0 isiieRQ3HAiix eg9i7ixHyvveg@exhviig' 7ixAHixhsxq)' iixefvirexhvi sqxevQA9HGDDrexhvi7ix' ipywyrifeguqyxhygisxq
43!0) ON (0
58
0ROGRAMMING /VERVIEW
Read this section for information on developing TSAPI applications on HP-UX. You do not need to be familiar with the CSTA call model or API before reading further, but you should read Chapter 4, ACS Control Services.
$EVELOPMENT 0LATFORMS
The TSAPI header files in this SDK are compatible with the HP-UX C Compiler. Using another compiler may require you to modify the header files, for example, to account for differences in structure alignment, size of enumerated data types, etc.
%VENT .OTIFICATION
The ACS%VENT.OTIFY on the HP-UX platform. and ACS3ET%32 functions are not provided
Unlike other Telephony Services platforms, HP-UX does not directly promote an event-driven programming model, but rather a file-oriented one. To work most effectively in the HP-UX environment, the TSAPI event stream should appear as a file. The ACS'ET&ILE function returns the file descriptor associated with an ACS stream handle. The returned value may be used like any other file descriptor in an I/O multiplexing call, such as POLL or SELECT , to determine the availability of TSAPI events.
Do not perform other I/O or control operations directly on this file descriptor. Doing so may lead to unpredictable results from the TSAPI library.
2ECEIVING %VENTS
This section discusses event reception using ACS'ET%VENT0OLL ACS'ET%VENT"LOCK on HP-UX. "LOCKING 6ERSUS 0OLLING
ACS'ET%VENT"LOCK suspends the calling application until it receives an event. If your application has no other work to perform in the meantime, this is the simplest and most efficient way to receive events from the TSAPI. Typically, however, an application needs to respond to input from the user or other sources, and cannot afford to wait exclusively for TSAPI events. ACS'ET%VENT0OLL returns control immediately if no event is available, allowing the application to query other input sources or events. Calling ACS'ET%VENT0OLL repetitively can unduly consume processor time and resources, to the detriment of other applications. Instead of polling, consider multiplexing your input sources via the POLL or SELECT system calls. and
2ECEIVING %VENTS &ROM !NY 3TREAM An application may specify a NULL stream handle when calling ACS'ET%VENT0OLL or ACS'ET%VENT"LOCK to request that the Telephony Services library return the first event available on any of that applications streams.
-ESSAGE 4RACE
To create a log file of TSAPI messages sent to and received from the Telephony Server, set the shell environment variable #34!42!#% to the pathname of the desired file, prior to starting your application. The log file will be created if necessary, or appended to if it already exists.
Chapter
11
4HIS SECTION DESCRIBES THE DATA TYPES USED BY THE FUNCTIONS AND MESSAGES DE FINED FOR THE 43!0) 4HE DATA TYPE ARE DIVIDED INTO TWO CATEGORIES #34! $ATA 4YPE WHICH ARE ASSOCIATED WITH TELEPHONY FUNCTIONS AND )NTERFACE $ATA 4YPES WHICH ARE ASSOCIATED WITH THE !0) ITSELF AND THE 4ELEPHONY 3ERVICES CLIENTSERVER INTERFACE
$EVICE )DENTIFIERS
ihipgre Fvvi'
ihipgre6isgiA6cY" a' ihipixw5yxxigsyxA6c6isgic QR3RA5cA6) 6WF3EA5cA6) 5yxxigsyxA6c6isgic' ihipg5yxxigsyxA6c vyxqgevvA6' 6isgiA6chisgiA6' 5yxxigsyxA6c6isgichiA6Ri' 5yxxigsyxA6c'
#34!!NSWER#ALL#ONF%VENT STRUCTURES
ihipg5QR33xi5evv5yxp7ixc Fvvixvv' 5QR33xi5evv5yxp7ixc' ihipixw8ieic 8Rc53EHGF) 8Rc53DD435C) 8RcAFRPS67) 8ieic'
#34!#ALL#OMPLETION#ONF%VENT STRUCTURES
ihipg5QR35evv5ywvisyx5yxp7ixc Fvvixvv' 5QR35evv5ywvisyx5yxp7ixc'
#34!#LEAR#ALL#ONF%VENT STRUCTURES
ihipg5QR35vie5evv5yxp7ixc Fvvixvv' 5QR35vie5evv5yxp7ixc'
#34!#LEAR#ONNECTION#ONF%VENT STRUCTURES
ihipg5QR35vie5yxxigsyx5yxp7ixc Fvvixvv' 5QR35vie5yxxigsyx5yxp7ixc'
#34!#ONFERENCE#ONF%VENT STRUCTURES
ihipg5yxxigsyxc 5yxxigsyxA6ce' 6isgiA6cesg6isgi'FSDDpyxyiix 5yxxigsyxc' ihipg5yxxigsyxDs sxgyx' 5yxxigsyxcgyxxigsyx' 5yxxigsyxDs' ihipg5QR35yxpiixgi5evv5yxp7ixc 5yxxigsyxA6cegsi5evv' 5yxxigsyxDsgyxxDs' 5QR35yxpiixgi5evv5yxp7ixc'
#34!#ONSULTATION#ALL#ONF%VENT STRUCTURES
ihipg5QR35yxvesyx5evv5yxp7ixc 5yxxigsyxA6cxi5evv' 5QR35yxvesyx5evv5yxp7ixc'
#34!$EFLECT#ALL#ONF%VENT STRUCTURES
ihipg5QR36ipvig5evv5yxp7ixc Fvvixvv' 5QR36ipvig5evv5yxp7ixc'
#34!'ROUP0ICKUP#ALL#ONF%VENT STRUCTURES
ihipg5QR39yHsgu5evv5yxp7ixc Fvvixvv' 5QR39yHsgu5evv5yxp7ixc'
#34!(OLD#ALL#ONF%VENT STRUCTURES
ihipg5QR3@yvh5evv5yxp7ixc Fvvixvv' 5QR3@yvh5evv5yxp7ixc'
#34!-AKE#ALL#ONF%VENT STRUCTURES
ihipg5QR3Eeui5evv5yxp7ixc 5yxxigsyxA6cxi5evv' 5QR3Eeui5evv5yxp7ixc'
#34!-AKE0REDICITIVE#ALL#ONF%VENT STRUCTURES
ihipixw3vvygesyxQeic 3Qc53DDc67DAT7P76) 3Qc53DDc7QR34DAQ@76) 3vvygesyxQeic' ihipg5QR3EeuiHihsgsi5evv5yxp7ixc 5yxxigsyxA6cxi5evv' 5QR3EeuiHihsgsi5evv5yxp7ixc'
#34!0ICKUP#ALL#ONF%VENT STRUCTURES
ihipg5QR3Hsgu5evv5yxp7ixc Fvvixvv' 5QR3Hsgu5evv5yxp7ixc'
#34!2ECONNECT#ALL#ONF%VENT STRUCTURES
ihipg5QR3Pigyxxig5evv5yxp7ixc 5QR3Pigyxxig5evv5yxp7ixc'
#34!2ETRIEVE#ALL#ONF%VENT STRUCTURES
ihipg5QR3Pisii5evv5yxp7ixc Fvvixvv' 5QR3Pisii5evv5yxp7ixc'
#34!4RANSFER#ALL#ONF%VENT STRUCTURES
ihipg5QR3Rexpi5evv5yxp7ixc 5yxxigsyxA6civsxq5evv' 5yxxigsyxDsgyxxDs' 5QR3Rexpi5evv5yxp7ixc'
#34!5NIVERSAL&AILURE%VENT STRUCTURES
ihipixw5QR3Sxsiev8esvic 97F7PA5cSFQH75A8A76) 97F7PA5cGH7P3RAGF) P7IS7QRcAF5GEH3RA4D7cUAR@cG4B75R) T3DS7cGSRcG8cP3F97) G4B75RcFGRcCFGUF) AFT3DA6c53DDAF9c67TA57)! AFT3DA6c53DD76c67TA57)" AFT3DA6c8GPU3P6AF9c67QRAF3RAGF)# HPATAD797cTAGD3RAGFcGFcQH75A8A76c67TA57)$ HPATAD797cTAGD3RAGFcGFc53DD76c67TA57)% HPATAD797cTAGD3RAGFcGFc53DDAF9c67TA57) AFT3DA6c5QR3c53DDcA67FRA8A7P) AFT3DA6c5QR3c67TA57cA67FRA8A7P) AFT3DA6c5QR3c5GFF75RAGFcA67FRA8A7P) AFT3DA6c67QRAF3RAGF) AFT3DA6c873RSP7)! AFT3DA6c3DDG53RAGFcQR3R7)" AFT3DA6c5PGQQcP78cA6)# AFT3DA6cG4B75RcRWH7)$ Q75SPARWcTAGD3RAGF)% 97F7PA5cQR3R7cAF5GEH3RA4ADARW) AFT3DA6cG4B75RcQR3R7) AFT3DA6c5GFF75RAGFcA6) FGc35RAT7c53DD) FGc@7D6c53DD)! FGc53DDcRGc5D73P)" FGc5GFF75RAGFcRGc5D73P)# FGc53DDcRGc3FQU7P)$ FGc53DDcRGc5GEHD7R7)% 97F7PA5cQWQR7EcP7QGSP57c3T3AD34ADARW) Q7PTA57c4SQW) P7QGSP57c4SQW) P7QGSP57cGSRcG8cQ7PTA57) F7RUGPCc4SQW)! F7RUGPCcGSRcG8cQ7PTA57)" GT7P3DDcEGFARGPcDAEARc7V577676)# 5GF87P7F57cE7E47PcDAEARc7V577676)$ 97F7PA5cQS4Q5PA476cP7QGSP57c3T3AD34ADARW) G4B75RcEGFARGPcDAEARc7V577676) 7VR7PF3DcRPSFCcDAEARc7V577676) GSRQR3F6AF9cP7IS7QRcDAEARc7V577676) 97F7PA5cH7P8GPE3F57cE3F397E7FR)! H7P8GPE3F57cDAEARc7V577676)! Q7IS7F57cFSE47PcTAGD3R76)" RAE7cQR3EHcTAGD3R76)" H35cTAGD3R76)" Q73DcTAGD3R76)" 5QR3Sxsiev8esvic' ihipg5QR3Sxsiev8esvi5yxp7ixc
5QR3Sxsiev8esviciy' 5QR3Sxsiev8esvi5yxp7ixc'
#34!3ET$ND#ONF%VENT STRUCTURES
ihipg5QR3Qi6xh5yxp7ixc Fvvixvv' 5QR3Qi6xh5yxp7ixc'
#34!3ET&WD#ONF%VENT STRUCTURES
ihipixw8yehsxqRic 8U6cAEE76A3R7) 8U6c4SQW) 8U6cFGc3FQ) 8U6c4SQWcAFR) 8U6c4SQWc7VR) 8U6cFGc3FQcAFR)! 8U6cFGc3FQc7VR)" 8yehsxqRic' ihipg8yehsxqAxpyc 8yehsxqRicpyehsxqRi' 4yyviexpyehsxqGx' 6isgiA6cpyeh6F'FSDDpyxyiix 8yehsxqAxpyc' ihipg5QR3Qi8h5yxp7ixc Fvvixvv' 5QR3Qi8h5yxp7ixc'
#34!3ET!GENT3TATE#ONF%VENT STRUCTURES
ihipixw3qixEyhic 3EcDG9cAF) 3EcDG9cGSR) 3EcFGRcP736W) 3EcP736W) 3EcUGPCcFGRcP736W) 3EcUGPCcP736W)! 3qixEyhic' ihipgre3qixA6cYa' ihip6isgiA6c3qix9yc' ihipgre3qixHeyhcYa' ihipg5QR3Qi3qixQei5yxp7ixc Fvvixvv' 5QR3Qi3qixQei5yxp7ixc'
#34!1UERY-WI#ONF%VENT STRUCTURES
ihipg5QR3IiEs5yxp7ixc 4yyviexwieqi' 5QR3IiEs5yxp7ixc'
#34!1UERY$ND#ONF%VENT STRUCTURES
ihipg5QR3Ii6xh5yxp7ixc 4yyviexhyFy6sf' 5QR3Ii6xh5yxp7ixc'
#34!1UERY&WD#ONF%VENT STRUCTURES
ihipixw8yehsxqRic 8U6cAEE76A3R7) 8U6c4SQW) 8U6cFGc3FQ) 8U6c4SQWcAFR) 8U6c4SQWc7VR) 8U6cFGc3FQcAFR)! 8U6cFGc3FQc7VR)" 8yehsxqRic' ihipg8yehsxqAxpyc 8yehsxqRicpyehsxqRi' 4yyviexpyehsxqGx' 6isgiA6cpyeh6F' 8yehsxqAxpyc' ihipgDs8yehHeewiic rygyx' 8yehsxqAxpyceewY#a' Ds8yehHeewiic' ihipg5QR3Ii8h5yxp7ixc Ds8yehHeewiicpyeh' 5QR3Ii8h5yxp7ixc'
#34!1UERY!GENT3TATE#ONF%VENT STRUCTURES
ihipixw3qixQeic 39cFGRcP736W) 39cFSDD) 39cP736W) 39cUGPCcFGRcP736W) 39cUGPCcP736W) 3qixQeic' ihipg5QR3Ii3qixQei5yxp7ixc 3qixQeiceqixQei' 5QR3Ii3qixQei5yxp7ixc'
#34!1UERY,AST.UMBER#ONF%VENT STRUCTURES
ihipg5QR3IiDeFwfi5yxp7ixc 6isgiA6cveFwfi' 5QR3IiDeFwfi5yxp7ixc'
#34!1UERY$EVICE)NFO#ONF%VENT STRUCTURES
ihipixw6isgiRic 6RcQR3RAGF) 6RcDAF7) 6Rc4SRRGF) 6Rc356) 6RcRPSFC) 6RcGH7P3RGP)! 6RcQR3RAGFc9PGSH)" 6RcDAF7c9PGSH)# 6Rc4SRRGFc9PGSH)$ 6Rc356c9PGSH)% 6RcRPSFCc9PGSH) 6RcGH7P3RGPc9PGSH) 6RcGR@7P)!! 6isgiRic' ihipxsqxihgre6isgi5vec' hipsxi65cTGA57$ hipsxi65c63R3 hipsxi65cAE397 hipsxi65cGR@7P ihipg5QR3Ii6isgiAxpy5yxp7ixc 6isgiA6chisgi' 6isgiRichisgiRi' 6isgi5vechisgi5ve' 5QR3Ii6isgiAxpy5yxp7ixc'
CSTA-ONITOR#ALL STRUCTURES 3EE CSTA-ONITOR$EVICE STRUCTURES CSTA-ONITOR#ALLS6IA$EVICE STRUCTURES 3EE CSTA-ONITOR$EVICE STRUCTURES #34!-ONITOR#ONF%VENT STRUCTURES
ihipg5QR3EyxsyQe5yxp7ixc 5QR3Eyxsy5yPipA6cwyxsy5yPipA6' 5QR3Eyxsy8svicwyxsy8svi' 5QR3EyxsyQe5yxp7ixc'
#34!#HANGE-ONITOR&ILTER#ONF%VENT STRUCTURES
ihipg5QR35rexqiEyxsy8svi5yxp7ixc 5QR3Eyxsy8svicpsviDs' 5QR35rexqiEyxsy8svi5yxp7ixc'
#34!-ONITOR3TOP#ONF%VENT STRUCTURES
ihipg5QR3EyxsyQy5yxp7ixc Fvvixvv' 5QR3EyxsyQy5yxp7ixc'
#34!-ONITOR3TOP%VENT STRUCTURES
ihipig5QR3EyxsyQy7ixc AxyuiA6c sxyuiA6' 5QR3EyxsyQy7ixc
#34!#ALL#LEARED%VENT STRUCTURES
ihipg5QR35evv5vieih7ixc 5yxxigsyxA6cgvieih5evv' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR35evv5vieih7ixc'
#34!#ONFERENCED%VENT STRUCTURES
ihipixw6isgiA6Ric 67TA57cA67FRA8A7P) AEHDA5ARcHS4DA5) 7VHDA5ARcHS4DA5cSFCFGUF) 7VHDA5ARcHS4DA5cAFR7PF3RAGF3D) 7VHDA5ARcHS4DA5cF3RAGF3D) 7VHDA5ARcHS4DA5cF7RUGPCcQH75A8A5) 7VHDA5ARcHS4DA5cQS4Q5PA47P) 7VHDA5ARcHS4DA5c344P7TA3R76)! AEHDA5ARcHPAT3R7) 7VHDA5ARcHPAT3R7cSFCFGUF)! 7VHDA5ARcHPAT3R7cD7T7DcP79AGF3DcFSE47P)! 7VHDA5ARcHPAT3R7cD7T7DcP79AGF3DcFSE47P)! 7VHDA5ARcHPAT3R7cD7T7DcP79AGF3DcFSE47P)! 7VHDA5ARcHPAT3R7cHRFcQH75A8A5cFSE47P)! 7VHDA5ARcHPAT3R7cDG53DcFSE47P)!! 7VHDA5ARcHPAT3R7c344P7TA3R76)!" GR@7PcHD3F)" 6isgiA6Ric' ihipixw6isgiA6Qec HPGTA676) FGRcCFGUF) FGRcP7ISAP76) 6isgiA6Qec' ihipg7ixhih6isgiA6c 6isgiA6chisgiA6' 6isgiA6RichisgiA6Ri' 6isgiA6QechisgiA6Qe' 7ixhih6isgiA6c' ihip7ixhih6isgiA6cQftig6isgiA6c' ihipg5QR35yxpiixgih7ixc 5yxxigsyxA6csweGvh5evv' 5yxxigsyxA6cigyxheGvh5evv' Qftig6isgiA6cgyxp5yxyvvi' Qftig6isgiA6cehhihHe' 5yxxigsyxDsgyxpiixgi5yxxigsyx' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR35yxpiixgih7ixc'
#34!#ONNECTION#LEARED%VENT STRUCTURES
ihipg5QR35yxxigsyx5vieih7ixc 5yxxigsyxA6chyih5yxxigsyx' Qftig6isgiA6civiesxq6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR35yxxigsyx5vieih7ixc'
#34!$ELIVERED%VENT STRUCTURES
ihip7ixhih6isgiA6c5evvsxq6isgiA6c' ihip7ixhih6isgiA6c5evvih6isgiA6c' ihip7ixhih6isgiA6cPihsigsyx6isgiA6c' ihipg5QR36ivsiih7ixc 5yxxigsyxA6cgyxxigsyx' Qftig6isgiA6cevisxq6isgi' 5evvsxq6isgiA6cgevvsxq6isgi' 5evvih6isgiA6cgevvih6isgi' Pihsigsyx6isgiA6cvePihsigsyx6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR36ivsiih7ixc'
#34!$IVERTED%VENT STRUCTURES
ihipg5QR36siih7ixc 5yxxigsyxA6cgyxxigsyx' Qftig6isgiA6chsisxq6isgi' 5evvih6isgiA6cxi6isxesyx' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR36siih7ixc'
#34!%STABLISHED%VENT STRUCTURES
ihipg5QR37efvsrih7ixc 5yxxigsyxA6ciefvsrih5yxxigsyx' Qftig6isgiA6cexisxq6isgi' 5evvsxq6isgiA6cgevvsxq6isgi' 5evvih6isgiA6cgevvih6isgi' Pihsigsyx6isgiA6cvePihsigsyx6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR37efvsrih7ixc'
#34!&AILED%VENT STRUCTURES
ihipg5QR38esvih7ixc 5yxxigsyxA6cpesvih5yxxigsyx' Qftig6isgiA6cpesvsxq6isgi' 5evvih6isgiA6cgevvih6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR38esvih7ixc'
#34!(ELD%VENT STRUCTURES
ihipg5QR3@ivh7ixc 5yxxigsyxA6crivh5yxxigsyx' Qftig6isgiA6cryvhsxq6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR3@ivh7ixc'
#34!.ETWORK2EACHED%VENT STRUCTURES
ihipg5QR3FiyuPiegrih7ixc 5yxxigsyxA6cgyxxigsyx' Qftig6isgiA6cxuSih' 5evvih6isgiA6cgevvih6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR3FiyuPiegrih7ixc'
#34!/RGINATED%VENT STRUCTURES
ihipg5QR3Gsqsxeih7ixc 5yxxigsyxA6cysqsxeih5yxxigsyx' Qftig6isgiA6cgevvsxq6isgi' 5evvih6isgiA6cgevvih6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR3Gsqsxeih7ixc'
#34!1UEUED%VENT STRUCTURES
ihipg5QR3Iiih7ixc 5yxxigsyxA6ciih5yxxigsyx' Qftig6isgiA6cii' 5evvsxq6isgiA6cgevvsxq6isgi' 5evvih6isgiA6cgevvih6isgi' Pihsigsyx6isgiA6cvePihsigsyx6isgi' sxxwfiIiih' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei'
5QR3Iiih7ixc'
#34!2ETRIEVED%VENT STRUCTURES
ihipg5QR3Pisiih7ixc 5yxxigsyxA6cisiih5yxxigsyx' Qftig6isgiA6cisisxq6isgi' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR3Pisiih7ixc'
#34!3ERVICE)NITIATED%VENT STRUCTURES
ihipg5QR3QisgiAxsseih7ixc 5yxxigsyxA6csxsseih5yxxigsyx' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR3QisgiAxsseih7ixc'
#34!4RANSFERRED%VENT STRUCTURES
ihipg5QR3Rexpiih7ixc 5yxxigsyxA6csweGvh5evv' 5yxxigsyxA6cigyxheGvh5evv' Qftig6isgiA6cexpisxq6isgi' Qftig6isgiA6cexpiih6isgi' 5yxxigsyxDsexpiih5yxxigsyx' Dygev5yxxigsyxQeicvygev5yxxigsyxAxpy' 5QR37ix5eicgei' 5QR3Rexpiih7ixc'
#34!$O.OT$ISTURB%VENT STRUCTURES
ihipg5QR36yFy6sf7ixc Qftig6isgiA6chisgi' 4yyviexhyFy6sfGx' 5QR36yFy6sf7ixc'
#34!&ORWARDING%VENT STRUCTURES
ihipg5QR38yehsxq7ixc Qftig6isgiA6chisgi' 8yehsxqAxpycpyehsxqAxpywesyx' 5QR38yehsxq7ixc' ihipg5QR3EieqiUessxq7ixc 5evvih6isgiA6chisgi8yEieqi' Qftig6isgiA6csxyusxq6isgi' 4yyviexwieqiUessxqGx' 5QR3EieqiUessxq7ixc'
#34!,OGGED/FF%VENT STRUCTURES
ihipg5QR3DyqqihGpp7ixc Qftig6isgiA6ceqix6isgi' 3qixA6ceqixA6' 3qix9yceqix9y' 5QR3DyqqihGpp7ixc'
#34!.OT2EADY%VENT STRUCTURES
ihipg5QR3FyPieh7ixc Qftig6isgiA6ceqix6isgi' 3qixA6ceqixA6' 5QR3FyPieh7ixc'
#34!2EADY%VENT STRUCTURES
ihipg5QR3Pieh7ixc Qftig6isgiA6ceqix6isgi' 3qixA6ceqixA6' 5QR3Pieh7ixc'
#34!7ORK.OT2EADY%VENT STRUCTURES
ihipg5QR3UyuFyPieh7ixc Qftig6isgiA6ceqix6isgi' 3qixA6ceqixA6' 5QR3UyuFyPieh7ixc'
#34!7ORK2EADY%VENT STRUCTURES
ihipg5QR3UyuPieh7ixc Qftig6isgiA6ceqix6isgi' 3qixA6ceqixA6' 5QR3UyuPieh7ixc'
3NAPSHOT 3ERVICES
#34!3NAPSHOT$EVICE#ONF%VENT STRUCTURES
ihipg5QR3Qxery6isgi6eec sxgyx' g5QR3Qxery6isgiPiyxiAxpycsxpy' 5QR3Qxery6isgi6eec' ihipg5QR3Qxery6isgi5yxp7ixc 5QR3Qxery6isgi6eecxery6ee' 5QR3Qxery6isgi5yxp7ixc'
#34!3NAPSHOT#ALL#ONF%VENT STRUCTURES
ihipg5QR3Qxery5evv6eec sxgyx' g5QR3Qxery5evvPiyxiAxpycsxpy' 5QR3Qxery5evv6eec' ihipg5QR3Qxery5evv5yxp7ixc 5QR3Qxery5evv6eecxery6ee' 5QR3Qxery5evv5yxp7ixc'
#34!3NAPSHOT$EVICE#ONF%VENT STRUCTURES
ihipixw5QR3Qswvi5evvQeic 53DDcFSDD) 53DDcH7F6AF9) 53DDcGPA9AF3R76) 53DDc67DAT7P76)! 53DDc67DAT7P76c@7D6)" 53DDcP757AT76)! 53DDc7QR34DAQ@76)! 53DDc7QR34DAQ@76c@7D6)! 53DDcP757AT76cGFc@GD6)"" 53DDc7QR34DAQ@76cGFc@GD6)"# 53DDcIS7S76)$ 53DDcIS7S76c@7D6)$ 53DDc83AD76)%% 53DDc83AD76c@7D6) 5QR3Qswvi5evvQeic' ihipg5QR35evvQeic sxgyx' Dygev5yxxigsyxQeicei' 5QR35evvQeic' Sihyeuie5QR35evvQeicrsgrgyxesxyxvy Dygev5yxxigsyxQeicexhwegrriwyriiyp 5QR3Qswvi5evvQeicefyi hipsxiQAEHD7c53DDcQR3R7gg ggeYaggeiYa (( ihipg5QR3Qxery6isgiPiyxiAxpyc 5yxxigsyxA6cgevvAhixspsi' 5QR35evvQeicgevvQei' 5QR3Qxery6isgiPiyxiAxpyc' ihipg5QR3Qxery5evvPiyxiAxpyc Qftig6isgiA6chisgiGx5evv' 5yxxigsyxA6cgevvAhixspsi' Dygev5yxxigsyxQeicvygev5yxxigsyxQei' 5QR3QxeryPiyxiAxpy7ixc'
CSTA2OUTE2EGISTER2EQ#ONF%VENT STRUCTURES
ihipvyxqPiqsiPiA6c' ihipg PiqsiPiA6c iqsiPiA6' 5QR3PyiPiqsiPi5yxp7ixc'
CSTA2OUTE2EGISTER#ANCEL STRUCTURES
hipg5QR3PyiPiqsi5exgivc PiqsiPiqA6c ysxqPiqA6' 5QR3PyiPiqsi5exgivc'
CSTA2OUTE2EGISTER#ANCEL#ONF%VENT STRUCTURES
ihipg PiqsiPiqA6c ysxqPiqA6' 5QR3PyiPiqsi5exgiv5yxp7ixc'
CSTA2OUTE2EQUEST%VENT STRUCTURES
ihipixwQivigTevic QTcFGPE3D) QTcD73QRc5GQR) QTc7E7P97F5W) QTc356) QTcSQ7Pc678AF76) QivigTevic' ihipgQiSTevic sxvixqr' xsqxihgreevi' QiSTevic' ihipg5QR3PyiPii7ixc PiqsiPiA6c iqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 6isgiA6c gixPyi' 6isgiA6c gevvsxq6isgi' 5yxxigsyxA6c yih5evv' QivigTevic yiQiv3vqysrw' 4yyviex sys' QiSTevic iAxpywesyx' 5QR3PyiPii7ixc'
CSTA2OUTE3ELECT STRUCTURES
ihipsxPiTevic' hipsxixyDs3esvefvi hipsxixy5yx3esvefvi
ihipg5QR3PyiQivigc PiqsiPiA6c iqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 6isgiA6c yiQivigih' PiTevic iwesxPi' QiSTevic iAxpywesyx' 4yyviex yiSihPi' 5QR3PyiQivigc'
#34!2E2OUTE2EQUEST%VENT STRUCTURES
ihipg5QR3PiPyi7ixc PiqsiPiA6c iqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 5QR3PiPyi7ixc'
CSTA2OUTE5SED%VENT STRUCTURES
ihipg5QR3PyiSih7ixc PiqsiPiA6c iqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 6isgiA6c yiSih' 6isgiA6c gevvsxq6isgi' 4yyviex hywesx' 5QR3PyiSih7ixc'
CSTA2OUTE%ND%VENT STRUCTURES
ihipg5QR3Pyi7xh7ixc PiqsiPiA6c iqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 5QR3Sxsiev8esvic iyTevi' 5QR3Pyi7xh7ixc'
CSTA2OUTE%ND STRUCTURES
ihipg5QR3Pyi7xhc PiqsiPiA6c iqsiPiA6' Pysxq5yPipA6c ysxq5yPipA6' 5QR3Sxsiev8esvic iyTevi' 5QR3Pyi7xhc'
%SCAPE 3ERVICES
CSTA%SCAPE3ERVICE STRUCTURES
ihipg5QR37geiQisgic Fvvixvv' 5QR37geiQisgic'
#34!%SCAPE3ERVICE#ONF%VENT STRUCTURES
ihipg5QR37geiQisgi5yxp7ixc Fvvixvv' 5QR37geiQisgi5yxp7ixc'
0RIVATE%VENT STRUCTURES
ihipg5QR3Hsei7ixc sxvixqr' xsqxihgrehee' 5QR3Hsei7ixc'
0RIVATE3TATUS%VENT STRUCTURES
ihipg5QR3HseiQe7ixc Fvvi xvv'
CSTA0RIVATE3TATUS%VENT STRUCTURES
ihipg5QR37geiQisgi7ix5yxpc Sxsiev8esvic iy' '
#34!%SCAPE3ERVICE%VENT STRUCTURES
ihipg5QR37geiQisgi7ixc Fvvixvv' '
CSTA%SCAPE3ERVICE#ONF STRUCTURES
ihipgge7geiQisgi5yxpc 5QR3Sxsiev8esvic iy' '
CSTA3END0RIVATE%VENT STRUCTURES
ihipggeQixhHsei7ixc Fvvixvv' '
-AINTENANCE 3ERVICES
#34!"ACK)N3ERVICE%VENT STRUCTURES
ihipg5QR34eguAxQisgi7ixc 6isgiA6chisgi' 5QR37ix5eicgei' 5QR34eguAxQisgi7ixc'
#34!/UT/F3ERVICE%VENT STRUCTURES
ihipg5QR3GGpQisgi7ixc 6isgiA6chisgi' 5QR37ix5eicgei' 5QR3GGpQisgi7ixc'
CSTA3YS3TAT2EQ STRUCTURES
ihipg5QR3QQePic Fvvi xvv' 5QR3QQePic
#34!3YS3TAT2EQ#ONF%VENT STRUCTURES
ihipixwQiwQec QQcAFARA3DAXAF9) QQc7F34D76) QQcFGPE3D) QQcE7QQ397QcDGQR) QQc6AQ34D76) QQcGT7PDG36cAEEAF7FR)! QQcGT7PDG36cP735@76)" QQcGT7PDG36cP7DA7T76)# QiwQec' ihipg5QR3QQePi5yxp7ixc QiwQec iwQe' 5QR3QQePi5yxp7ixc
CSTA3YS3TAT3TART STRUCTURES
ihipxsqxihgreQiwQe8svic' hipsxiQQcAxssevssxq hipsxiQQc7xefvih hipsxiQQcFywev hipsxiQQcEieqiDy hipsxiQQc6sfevih hipsxiQQcGivyehAwwsxix hipsxiQQcGivyehPiegrih hipsxiQQcGivyehPivsiih ihipg5QR3QQeQec QiwQe8svic e8svi' 5QR3QQeQec' $ $
#34!3YS3TAT3TART#ONF%VENT STRUCTURES
ihipg5QR3QQeQe5yxp7ixc QiwQe8svic iw8svi' 5QR3QQeQe5yxp7ixc
CSTA3YS3TAT3TOP STRUCTURES
ihipg5QR3QQeQyc Fvvi xvv' 5QR3QQeQyc'
#34!3YS3TAT3TOP#ONF%VENT STRUCTURES
ihipg5QR3QQeQy5yxp7ixc Fvvi xvv' 5QR3QQeQy5yxp7ixc
CSTA#HANGE3YS3TAT&ILTER STRUCTURES
ihipg5QR35rexqiQQe8svic QiwQe8svic e8svi' 5QR35rexqiQQe8svic'
#34!#HANGE3YS3TAT&ILTER#ONF%VENT STRUCTURES
ihipg5QR35rexqiQQe8svi5yxp7ixc QiwQe8svic e8sviQivigih' QiwQe8svic e8svi3gsi' 5QR35rexqiQQe8svi5yxp7ixc'
#34!3YS3TAT%VENT STRUCTURES
#34!3YS3TAT2EQ%VENT STRUCTURES
ihipg5QR3QQePi7ixc Fvvi xvv' 5QR3QQePi7ixc'
CSTA3YS3TAT2EQ#ONF STRUCTURES
ihipg5QR3QQePi5yxpc QiwQec iwQe' 5QR3QQePi5yxpc'
CSTA3YS3TAT%VENT3END STRUCTURES
ihipg5QR3QQe7ixQixhc QiwQec iwQe' 5QR3QQe7ixQixhc'
#34!'ET!0)#APS#ONF%VENT STRUCTURES
ihipg5QR39i3HA5e5yxp7ixc sxevixei5evv' sxexi5evv' sxgevv5ywvisyx' sxgvie5evv' sxgvie5yxxigsyx' sxgyxpiixgi5evv' sxgyxvesyx5evv' sxhipvig5evv' sxsgu5evv' sxqyHsgu5evv' sxryvh5evv' sxweui5evv' sxweuiHihsgsi5evv' sxiEs'
sxi6xh' sxi8h' sxi3qixQei' sxiDeFwfi' sxi6isgiAxpy' sxigyxxig5evv' sxisii5evv' sxiEs' sxi6xh' sxi8h' sxi3qixQei' sxexpi5evv' sxiixPiy' sxgevv5vieih7ix' sxgyxpiixgih7ix' sxgyxxigsyx5vieih7ix' sxhivsiih7ix' sxhsiih7ix' sxiefvsrih7ix' sxpesvih7ix' sxrivh7ix' sxxiyuPiegrih7ix' sxysqsxeih7ix' sxiih7ix' sxisiih7ix' sxisgiAxsseih7ix' sxexpiih7ix' sxgevvAxpywesyx7ix' sxhyFy6sf7ix' sxpyehsxq7ix' sxwieqiUessxq7ix' sxvyqqihGx7ix' sxvyqqihGpp7ix' sxxyPieh7ix' sxieh7ix' sxyuFyPieh7ix' sxyuPieh7ix' sxfeguAxQisgi7ix' sxyGpQisgi7ix' sxsei7ix' sxyiPii7ix' sxiPyi' sxyiQivig' sxyiSih7ix' sxyi7xh7ix' sxwyxsy6isgi' sxwyxsy5evv' sxwyxsy5evvTse6isgi' sxgrexqiEyxsy8svi' sxwyxsyQy' sxwyxsy7xhih' sxxery6isgiPi' sxxery5evvPi' sxigeiQisgi' sxseiQe7ix'
sxigeiQisgi7ix' sxigeiQisgi5yxp' sxixhHsei7ix' sxQePi' sxQeQe' sxQeQy' sxgrexqiQQe8svi' sxQePi7ix' sxQePi5yxp' sxQe7ix' 5QR39i3HA5e5yxp7ixc'
CSTA'ET$EVICE,IST STRUCTURES
ihipixw5QR3Diivc 5QR3cD7T7D) 5QR3cD7T7D) 5QR3cD7T7D) 5QR3cD7T7D ) 5QR3cD7T7D!)! 5QR3cD7T7D")" 5QR3Diivc'
#34!'ET$EVICE,IST#ONF%VENT STRUCTURES
ihipg5QR39i6isgiDs5yxp7ixc Diivc egDiivPi' sx yev6isgi' 6isgiA6c hisgiA6' 5QR39i6isgiDs5yxp7ixc'
yiPii'
wyxsy5yPipAh' gevv5vieih' gyxpiixgih' gyxxigsyx5vieih' hivsiih' hsiih' iefvsrih' pesvih' rivh' xiyuPiegrih' ysqsxeih' iih' isiih' isgiAxsseih' expiih' gevvAxpywesyx' hyFy6sf' pyehsxq' wieqiUessxq' vyqqihGx' vyqqihGpp' xyPieh' ieh' yuFyPieh' yuPieh' feguAxQisgi' yGpQisgi' seiQe' wyxsy7xhih'
evixei5evv' exi5evv' gevv5ywvisyx' gvie5evv' gvie5yxxigsyx' gyxpiixgi5evv' gyxvesyx5evv' hipvig5evv' sgu5evv' qyHsgu5evv' ryvh5evv' weui5evv' weuiHihsgsi5evv' iEs' i6xh' i8h' i3qixQei' iDeFwfi' i6isgiAxpy' igyxxig5evv' isii5evv' iEs' i6xh' i8h' i3qixQei' expi5evv' xsiev8esvi' wyxsyQe' grexqiEyxsy8svi' wyxsyQy' xery6isgi' xery5evv' yiPiqsi' yi5exgiv' igeiQisgi' QePi' QeQe' QeQy' grexqiQQe8svi'
Chapter
12
;= ;= ;= ;= ;= ;= ;=
References
%#-! 3TANDARD %#-! 3ERVICES FOR #OMPUTER 3UPPORTED 4ELECOMMUNICATIONS !PPLICATIONS #34! *UNE %#-! 3TANDARD %#-! 0ROTOCOL FOR #OMPUTER 3UPPORTED 4ELECOMMUNICATIONS !PPLICATIONS #34! *UNE !PPLE #OMPUTER )NSIDE -ACINTOSH 0OWER 0# 3YSTEM 3OFTWARE !DDISON 7ESLEY !PPLE #OMPUTER )NSIDE -ACINTOSH )NTERAPPLICATION #OMMUNICATION !DDISON 7ESLEY !PPLE #OMPUTER )NSIDE -ACINTOSH -EMORY !DDISON 7ESLEY !PPLE #OMPUTER )NSIDE -ACINTOSH /PERATING 3YSTEM 5TILITIES !DDISON 7ESLEY !PPLE #OMPUTER )NSIDE -ACINTOSH 0OWER0# 3YSTEM 3OFTWARE !DDISON 7ESLEY
Index
! !BSTRACT
!#$
!GENT
!#3
5NSOLICITED %VENTS
!#3 $ATA 4YPES
#OMMON
%VENT
!#3 STREAM !BORTING
!CCESS
#HECKING ESTABLISHMENT OF
#LOSING
#34! SERVICES AVAILABLE ON
&REEING ASSOCIATED RESOURCES
-ULTIPLE
/PENING
0ER ADVERTISED SERVICE
2ECEIVING EVENTS ON
2ELEASING
3ENDING REQUESTS AND RESPONSES OVER
ACS!BORT3TREAM
ACS!BORT3TREAM
ACS#LOSE3TREAM
ACS#LOSE3TREAM
!#3#LOSE3TREAM#ONF%VENT
ACS%NUM3ERVER.AMES
-ACINTOSH
ACS%VENT.OTIFY -ACINTOSH
7INDOWS
ACS%VENT.OTIFY 7INDOWS /3
ACS&LUSH%VENT1UEUE
ACS'ET%VENT"LOCK
ACS'ET%VENT"LOCK
ACS'ET%VENT0OLL
ACS'ET&ILE 5NIX7ARE
ACS(ANDLE
&REEING
ACS/PEN3TREAM
!#3/PEN3TREAM#ONF%VENT
ACS1UERY!UTH)NFO ACS3ET%32 -ACINTOSH 7INDOWS ACS3ET%32 /3 !#35NIVERSAL&AILURE#ONF%VENT !#35NIVERSAL&AILURE%VENT $RIVER ERRORS 0OSSIBLE VALUES 3ECURITY DATABASE ERRORS 4SERVER OPERATION ERRORS !DMINISTRATION ADVERTISED SERVICE !DVERTISED SERVICES 'ETTING LIST OF AVAILABLE !GENT &EATURE %VENT 2EPORTS 3EE &EATURE %VENT !GENT !0) #ONTROL 3ERVICES 3EE !#3 !PPLICATION #ALL 2OUTING !PPLICATION DOMAIN !PPLICATION 0ROGRAMMING )NTERFACE #ONTROL 3ERVICES 3EE !#3 !PPLICATIONS !RCHITECTURE !TTENDANT !UTOMATIC #ALL $ISTRIBUTION 3EE !#$ " "ASIC #ALL #ONTROL #ONFIRMATION %VENTS 3ERVICES "ASIC #ALL #ONTROL 3ERVICES # #ALL !CTIVE !LERTING "ASIC #OMPLEX (ELD )DENTIFIER -ANAGEMENT
)
5NIQUENESS -ODEL 3TATE #OMMON #OMPOUND 3IMPLE #ALL CONTROL SERVICE #ALL MONITORING SERVICE #ALL ORIGINATION #ALL ROUTING SERVICE 3EE 2OUTING #ALL 3NAPSHOT 3ERVICES #ALL STATUS EVENT REPORTS 3EE %VENT REPORTS #ALL TYPE MONITOR #AUSE CODE DEFINITIONS #LIENT ,IBRARY 3UPPORTED #LIENTSERVER MODEL #OMMUNICATIONS RELATIONSHIP 3EE #ALL #OMPUTER 4ELEPHONY )NTEGRATION 3EE #4) #OMPUTER 3UPPORTED 4ELECOMMUNICATIONS !PPLICATIONS 3EE #34! #OMPUTING $OMAIN &UNCTION 3UB DOMAIN #OMPUTING &UNCTION 3ERVICES #ONNECTION !TTRIBUTES )DENTIFIER )N EVENT REPORT )NVALID 2EUSE 5NIQUENESS 5PDATE 3TATE !LERTING #ONNECTED &AILED
(ELD )NITIATED ,OCAL .ULL 1UEUED #34! #OMPUTING &UNCTION 3ERVICES #ONFIRMATION %VENT STRUCTURE #ONFIRMATION %VENTS #ONTROL 3ERVICES $ATA TYPES %VENT 2EPORT STRUCTURE 3TRUCTURES 4YPES %VENT $ATA 4YPES %VENT?T STRUCTURE 2EQUEST %VENT STRUCTURE 3ERVICES !VAILABLE ON !#3 STREAM 5NSOLICITED %VENT STRUCTURE #34! 5NIVERSAL &AILURE #ONFERENCE -EMBER ,IMIT %XCEEDED #34! $RIVER )NTERFACE %RRORS $UPLICATE )NVOCATION %XTERNAL 4RUNK ,IMIT %XCEEDED 'ENERIC /PERATION 'ENERIC /PERATION 2EJECTION 'ENERIC 0ERFORMANCE -ANAGEMENT %RROR 'ENERIC 3TATE )NCOMPATIBILITY 'ENERIC 3UBSCRIBED 2ESOURCE !VAILABILITY %RROR 'ENERIC 3YSTEM 2ESOURCE !VAILABILITY %RROR )NCORRECT /BJECT 3TATE )NVALID !LLOCATION 3TATE )NVALID #ALLED $EVICE )NVALID #ALLING $EVICE )NVALID #ROSS 2EF )$ )NVALID #34! #ALL )DENTIFIER )NVALID #34! #ONNECTION )DENTIFIER )NVALID #34! #ONNECTION )DENTIFIER &OR !CTIVE #ALL )NVALID #34! $EVICE )DENTIFIER
)
)NVALID $ESTINATION )NVALID &EATURE )NVALID &ORWARDING $ESTINATION )NVALID /BJECT 4YPE .ETWORK "USY .ETWORK /UT /F 3ERVICE .O !CTIVE #ALL .O #ALL 4O !NSWER .O #ALL 4O #LEAR .O #ALL 4O #OMPLETE .O #ONNECTION 4O #LEAR .O (ELD #ALL /BJECT -ONITOR ,IMIT %XCEEDED /BJECT NOT +NOWN /PERATION ERRORS /VERALL -ONITOR ,IMIT %XCEEDED 0!# 6IOLATED 0ERFORMANCE ,IMIT %XCEEDED 0ERFORMANCE MANAGEMENT ERRORS 0RIVATE $ATA ERRORS 0RIVILEGE 6IOLATION ON #ALLED $EVICE 0RIVILEGE 6IOLATION ON #ALLING $EVICE 0RIVILEGE 6IOLATION ON 3PECIFIED $EVICE 2EQUEST )NCOMPATIBLE WITH /BJECT 2ESOURCE "USY 2ESOURCE /UT /F 3ERVICE 3EAL 6IOLATED 3ECURITY ERRORS 3ECURITY 6IOLATION 3EQUENCE .UMBER 6IOLATED 3ERVICE "USY 3TATE INCOMPATIBILITY ERRORS 3UBSCRIBED RESOURCE AVAILABILITY ERRORS 3YSTEM RESOURCE AVAILABILITY ERRORS 4IME 3TAMP %RROR 43!0) ERRORS 5NRECOGNIZED /PERATION 5NSPECIFIED ERRORS 5NSPECIFIED 3ECURITY %RROR 6ALUE /UT /F 2ANGE CSTA!LTERNATE#ALL #34!!LTERNATE#ALL#ONF%VENT #34!!LTERNATE#ALL#ONF%VENT STRUCTURES CSTA!NSWER#ALL
#34!!NSWER#ALL#ONF%VENT #34!"ACK)N3ERVICE%VENT #34!"ACK)N3ERVICE%VENT STRUCTURES CSTA#ALL#LEARED%VENT #34!#ALL#LEARED%VENT STRUCTURES #34!#ALL#OMPLETETION#ONF%VENT STRUCTURES CSTA#ALL#OMPLETION #34!#ALL#OMPLETION#ONF%VENT #34!#ALL)NFO%VENT #34!#ALL)NFORMATION%VENT STRUCTURES CSTA#HANGE-ONITOR&ILTER #34!#HANGE-ONITOR&ILTER#ONF%VENT #34!#HANGE-ONITOR&ILTER#ONF%VENT STRUCTURES CSTA#HANGE3YS3TAT&ILTER STRUCTURES CSTA#HANGE3YS3TAT&ILTER #34!#HANGE3YS3TAT&ILTER#ONF%VENT #34!#HANGE3YS3TAT&ILTER#ONF%VENT STRUCTURES CSTA#LEAR#ALL #34!#LEAR#ALL#ONF%VENT #34!#LEAR#ALL#ONF%VENT STRUCTURES CSTA#LEAR#ONNECTION #34!#LEAR#ONNECTION#ONF%VENT #34!#LEAR#ONNECTION#ONF%VENT STRUCTURES CSTA#ONFERENCE#ALL #34!#ONFERENCE#ALL#ONF%VENT #34!#ONFERENCE#ONF%VENT STRUCTURES CSTA#ONFERENCED%VENT #34!#ONFERENCED%VENT STRUCTURES #34!#ONNECTION#LEARED%VENT #34!#ONNECTION#LEARED%VENT STRUCTURES CSTA#ONSULTATION#ALL #34!#ONSULTATION#ALL#ONF%VENT #34!#ONSULTATION#ALL#ONF%VENT STRUCTURES CSTA$EFLECT#ALL #34!$EFLECT#ALL#ONF%VENT #34!$EFLECT#ALL#ONF%VENT STRUCTURES #34!$ELIVERED%VENT #34!$ELIVERED%VENT STRUCTURES #34!$IVERTED%VENT #34!$IVERTED%VENT STRUCTURES #34!$O.OT$ISTURB%VENT #34!$O.OT$ISTURB%VENT STRUCTURES
)
CSTA%SCAPE3ERVICE STRUCTURES CSTA%SCAPE3ERVICE CSTA%SCAPE3ERVICE#ONF STRUCTURES CSTA%SCAPE3ERVICE#ONF #34!%SCAPE3ERVICE#ONF%VENT #34!%SCAPE3ERVICE#ONF%VENT STRUCTURES #34!%SCAPE3ERVICE%VENT STRUCTURES #34!%SCAPE3ERVICE2EQ #34!%STABLISHED%VENT #34!%STABLISHED%VENT STRUCTURES #34!%VENT#AUSE?T #34!&AILED%VENT #34!&AILED%VENT STRUCTURES #34!&ORWARDING%VENT #34!&ORWARDING%VENT STRUCTURES CSTA'ET!0)#APS CSTA'ET!0)#APS STRUCTURES CSTA'ET!0)#APS #34!'ET!0)#APS#ONF%VENT #34!'ET!0)#APS#ONF%VENT STRUCTURES CSTA'ET$EVICE,IST STRUCTURES CSTA'ET$EVICE,IST #34!'ET$EVICE,IST#ONF%VENT #34!'ET$EVICE,IST#ONF%VENT STRUCTURES CSTA'ROUP0ICKUP#ALL #34!'ROUP0ICKUP#ALL#ONF%VENT #34!'ROUP0ICKUP#ALL#ONF%VENT STRUCTURES #34!(ELD%VENT #34!(ELD%VENT STRUCTURES CSTA(OLD#ALL #34!(OLD#ALL#ONF%VENT #34!(OLD#ALL#ONF%VENT STRUCTURES #34!,OGGED/FF%VENT #34!,OGGED/FF%VENT STRUCTURES #34!,OGGED/N%VENT #34!,OGGED/N%VENT STRUCTURES CSTA-AKE#ALL #34!-AKE#ALL#ONF%VENT #34!-AKE#ALL#ONF%VENT STRUCTURES #34!-AKE0REDICITIVE#ALL#ONF%VENT STRUCTURES CSTA-AKE0REDICTIVE#ALL #34!-AKE0REDICTIVE#ALL#ONF%VENT #34!-ESSAGE7AITING%VENT CSTA-ONITOR#ALL STRUCTURES
CSTA-ONITOR#ALL CSTA-ONITOR#ALLS6IA$EVICE STRUCTURE CSTA-ONITOR#ALLS6IA$EVICE #34!-ONITOR#ONF%VENT #34!-ONITOR#ONF%VENT STRUCTURES CSTA-ONITOR$EVICE #34!-ONITOR%NDED%VENT #34!-ONITOR&ILTER?T CSTA-ONITOR3TOP #34!-ONITOR3TOP#ONF%VENT #34!-ONITOR3TOP#ONF%VENT STRUCTURES #34!-ONITOR3TOP%VENT STRUCTURES #34!.ETWORK2EACHED%VENT #34!.ETWORK2EACHED%VENT STRUCTURES #34!.OT2EADY%VENT #34!.OT2EADY%VENT STRUCTURES #34!/RGINATED%VENT STRUCTURES #34!/RIGINATED%VENT #34!/UT/F3ERVICE%VENT #34!/UT/F3ERVICE%VENT STRUCTURES CSTA0ICKUP#ALL #34!0ICKUP#ALL#ONF%VENT #34!0ICKUP#ALL#ONF%VENT STRUCTURES #34!0RIVATE%VENT #34!0RIVATE3TATUS%VENT CSTA0RIVATE3TATUS%VENT STRUCTURES CSTA1UERY!GENT3TATE #34!1UERY!GENT3TATE#ONF%VENT #34!1UERY!GENT3TATE#ONF%VENT STRUCTURE CSTA1UERY#ALL-ONITOR #34!1UERY#ALL-ONITOR#ONF%VENT CSTA1UERY$EVICE)NFO #34!1UERY$EVICE)NFO#ONF%VENT #34!1UERY$EVICE)NFO#ONF%VENT STRUCTURES #34!1UERY$ND#ONF%VENT CSTA1UERY$O.OT$ISTURB #34!1UERY$O.OT$ISTURB#ONF%VENT STRUCTURES CSTA1UERY&WD #34!1UERY&WD#ONF%VENT #34!1UERY&WD#ONF%VENT STRUCTURES CSTA1UERY,AST.UMBER #34!1UERY,AST.UMBER#ONF%VENT #34!1UERY,AST.UMBER#ONF%VENT STRUCTURES
)
CSTA1UERY-SG7AITING)ND #34!1UERY-SG7AITING)ND#ONF%VENT STRUCTURES #34!1UERY-WI#ONF%VENT #34!1UEUED%VENT #34!1UEUED%VENT STRUCTURES #34!2EADY%VENT #34!2EADY%VENT STRUCTURES CSTA2ECONNECT#ALL #34!2ECONNECT#ALL#ONF%VENT #34!2ECONNECT#ALL#ONF%VENT STRUCTURES #34!2E2OUTE2EQUEST%VENT #34!2E2OUTE2EQUEST%VENT STRUCTURES CSTA2ETRIEVE#ALL #34!2ETRIEVE#ALL#ONF%VENT #34!2ETRIEVE#ALL#ONF%VENT STRUCTURES #34!2ETRIEVED%VENT #34!2ETRIEVED%VENT STRUCTURES CSTA2OUTE%ND STRUCTURES CSTA2OUTE%ND #34!2OUTE%ND%VENT CSTA2OUTE%ND%VENT STRUCTURES CSTA2OUTE%ND)NV #34!2OUTE2EGISTER!BORT%VENT CSTA2OUTE2EGISTER#ANCEL STRUCTURES CSTA2OUTE2EGISTER#ANCEL #34!2OUTE2EGISTER#ANCEL#ONF%VENT CSTA2OUTE2EGISTER#ANCEL#ONF%VENT STRUCTURES CSTA2OUTE2EGISTER2EQ STRUCTURES CSTA2OUTE2EGISTER2EQ #34!2OUTE2EGISTER2EQ#ONF%VENT CSTA2OUTE2EGISTER2EQ#ONF%VENT STRUCTURES #34!2OUTE2EQUEST%VENT CSTA2OUTE2EQUEST%VENT STRUCTURES CSTA2OUTE3ELECT STRUCTURES CSTA2OUTE3ELECT CSTA2OUTE3ELECT)NV #34!2OUTE5SED%VENT CSTA2OUTE5SED%VENT STRUCTURES CSTA3END0RIVATE%VENT STRUCTURES CSTA3END0RIVATE%VENT #34!3ERVICE)NITIATED%VENT #34!3ERVICE)NITIATED%VENT STRUCTURES CSTA3ET!GENT3TATE
#34!3ET!GENT3TATE#ONF%VENT #34!3ET!GENT3TATE#ONF%VENT STRUCTURES #34!3ET$ND#ONF%VENT #34!3ET$ND#ONF%VENT STRUCTURES CSTA3ET$O.OT$ISTURB CSTA3ET&ORWARDING #34!3ET&WD#ONF%VENT #34!3ET&WD#ONF%VENT STRUCTURES #34!3ET-SGE7AITING#ONF%VENT STRUCTURES CSTA3ET-SG7AITING)ND #34!3ET-WI#ONF%VENT #34!3NAPSHOT#ALL#ONF%VENT #34!3NAPSHOT#ALL#ONF%VENT STRUCTURES CSTA3NAPSHOT#ALL2EQ #34!3NAPSHOT$EVICE#ONF%VENT #34!3NAPSHOT$EVICE#ONF%VENT STRUCTURES CSTA3NAPSHOT$EVICE2EQ CSTA3YS3TAT%NDED%VENT #34!3YS3TAT%VENT #34!3YS3TAT%VENT STRUCTURES CSTA3YS3TAT%VENT3END STRUCTURES CSTA3YS3TAT%VENT3END CSTA3YS3TAT2EQ STRUCTURES CSTA3YS3TAT2EQ CSTA3YS3TAT2EQ#ONF STRUCTURES CSTA3YS3TAT2EQ#ONF #34!3YS3TAT2EQ#ONF%VENT #34!3YS3TAT2EQ#ONF%VENT STRUCTURES #34!3YS3TAT2EQ%VENT #34!3YS3TAT2EQ%VENT STRUCTURES CSTA3YS3TAT3TART STRUCTURES CSTA3YS3TAT3TART #34!3YS3TAT3TART#ONF%VENT #34!3YS3TAT3TART#ONF%VENT STRUCTURES CSTA3YS3TAT3TOP STRUCTURES CSTA3YS3TAT3TOP #34!3YS3TAT3TOP#ONF%VENT #34!3YS3TAT3TOP#ONF%VENT STRUCTURES CSTA4RANSFER#ALL #34!4RANSFER#ALL#ONF%VENT #34!4RANSFERED%VENT STRUCTURES #34!4RANSFERRED%VENT #34!5NIVERSAL&AILURE#ONF%VENT #34!5NIVERSAL&AILURE%VENT STRUCTURES
)
#34!7ORK.OT2EADY%VENT #34!7ORK.OT2EADY%VENT STRUCTURES #34!7ORK2EADY%VENT #34!7ORK2EADY%VENT STRUCTURES #4) ,INK ,INK HARDWARE #4) LINK $ $ATA 4YPES !#3 DEFAULT ROUTING SERVER 3EE 2OUTING $EFAULT 2OUTING 3ERVER $EVICE !TTRIBUTE #LASS $ATA )MAGE /THER 6OICE )DENTIFIER $YNAMIC )NVALID -ANAGEMENT 2EUSE 3TATIC 3TATIC 3HORT &ORM 5NIQUENESS 5PDATE )DENTIFIERS -ONITORING SERVICE 1UERY &OR CONTROLLABLE DEVICES 3TATE 3TATE CHANGE 4YPE !#$ !#$ GROUP "UTTON "UTTON GROUP ,INE ,INE GROUP /PERATOR /PERATOR GROUP 3TATION
3TATION GROUP 4RUNK 4RUNK GROUP $EVICE 3NAPSHOT 3ERVICE $EVICE TYPE MONITOR $IRECTORY NUMBER $ISTRIBUTION $OMAIN $RIVER !#3 (ANDLE 2EJECTION $RIVER !#3(ANDLE 4ERMINATION $RIVER ERRORS !#3 (ANDLE 2EJECTION !#3(ANDLE 4ERMINATION $UPLICATE !#3(ANDLE 'ENERIC 2EJECTION )NVALID !#3 2EQUEST )NVALID #LASS 2EJECTION ,INK 5NAVAILABLE /!- )N 5SE 2ESOURCE ,IMITATION % %#-! !DDRESS %RROR $RIVER 3EE $RIVER %RRORS 4SERVER 3EE 43ERVER %RRORS 4SERVER "AD $EVICE 2ECORD 4SERVER "AD 0ASSWORD /R ,OGIN 4SERVER "AD 3$" ,EVEL 4SERVER "AD 3ERVER )$ 4SERVER "AD 3TREAM 4YPE 4SERVER $EVICE .OT /N ,IST 4SERVER $EVICE .OT 3UPPORTED 4SERVER %XCEPTION ,IST 4SERVER )NSUFFICIENT 0ERMISSION 4SERVER .O !WAY 0ERMISSION 4SERVER .O !WAY 7ORKTOP 4SERVER .O $EVICE 2ECORD 4SERVER .O (OME 0ERMISSION 4SERVER .O 3$" 4SERVER .O 3$" #HECK .EEDED 4SERVER .O 5SER 2ECORD
)
4SERVER 3$" #HECK .EEDED 4SERVER 5SERS 2ESTRICTED (OME %SCAPE 3ERVICE %SCAPE 3ERVICE !PPLICATION AS #LIENT $RIVER3WITCH AS THE #LIENT -ODEL %UROPEAN #OMPUTER -ANUFACTURERS !SSOCIATION 3EE %#-! %VENT #AUSE 2ELATIONSHIPS $ATA 4YPES 5NSOLICITED 3ERVICE 2OUTINE %32 !LSO SEE ACS3ET%32 )NITIALIZING 5NSOLICITED %VENT REPORT %VENTS !SYNCHRONOUS "LOCKING FOR #HRONOLOGICAL ORDER #ONFIRMATION $ATA STRUCTURES &EATURE &ROM ALL STREAMS 0OLLING FOR 0REVENTING QUEUE OVERFLOW 5NSOLICITED & &EATURE %VENT !GENT !GENT 3TATUS 5NSOLICITED &EATURE EVENT &EATURE STATE ' 'ENERIC 3TATE )NCOMPATIBILITY ( (ANDLE 2EGISTER 2EQUEST )$ 2OUTING #ROSS 2EFERENCE )$ (OLD CALL REQUEST
) )DENTIFIER 3EE 43!0) 0ROGRAMMING (ANDLE )INVOKE)$ #ORRELATING RESPONSES )NTEGRATION )NTERCONNECTION 3ERVICE "OUNDARY )NTRODUCTION )NVOKE)$ !PPLICATION GENERATED #ORRELATING RESPONSES )N CONFIRMATION EVENT )N SERVICE REQUEST ,IBRARY GENERATED 4YPE )3$. , ,OGICAL !SSOCIATION $EVICE ,INK -AINTENANCE 3ERVICES . .ET7ARE ./3 / /BJECT 3EE 43!0) PROGRAMMING OBJECT /PERATING SYSTEM SPECIFICS -ACINTOSH /3 5NIX7ARE 7INDOWS .4 AND 7INDOWS /UTSTANDING 2EQUESTS ,IMIT %XCEEDED 0 0ARTY 0"8 DRIVER 0"8 $RIVERS 0ERMISSIONS 3EE !DMINISTRATION 0RIVATE%VENT STRUCTURES 0RIVATE3TATUS%VENT STRUCTURES 0ROGRAMMING HANDLE 3EE 43!0) PROGRAMMING HANDLE 0ROGRAMMING .OTES
)
1 1UERY #ALL#ALL -ONITORING 1UERY SERVICE 2 2EFERENCES 2EGISTER 2EQUEST )$ 2OUTE )NVALID 2EQUEST 2E ROUTE SUCCESSFUL ROUTE 5SED ROUTE2EGISTER2EQ)$ $URATION 5NIQUENESS 2OUTING !CTUAL DESTINATION #ANCEL #ROSS REFERENCE IDENTIFIER $EFAULT ROUTING SERVER $EVICE %VENTS &UNCTIONS 3WITCH DEFAULT ROUTE 4ERMINATING 2OUTING #ROSS 2EFERENCE )$ 2OUTING DEVICE 2OUTING 0ROCEDURE 2OUTING 2EGISTRATION 2OUTING 2EGISTRATION &UNCTIONS AND %VENTS 2OUTING SERVICE ROUTING#ROSS2EF)$ $URATION 5NIQUENESS 3 3ECURITY 3EE !DMINISTRATION 3ERVER ,IBRARY 3UPPORTED 3ERVICE "OUNDARY $ESCRIPTION 3ERVICES
,IBRARY 3NAPSHOT 3ERVICES 3TATE 3EE #ALL 3TATE 3EE #ONNECTION 3TATE 3EE $EVICE 3TATE 3TATUS 2EPORTING #ONFIRMATION %VENTS &UNCTIONS 3ERVICES 3WITCH $RIVER )NTERFACE )NDEPENDENT 3PECIFIC 3WITCHING $OMAIN &UNCTION 3UB DOMAIN -ODEL 3WITCHING &UNCTION 3ERVICES "ASIC #ALL #ONTROL 3ERVICES 3WITCHING&UNCTION3ERVICES 4ELEPHONY3UPPLEMENTARY3ERVICES 3YSTEM STATUS !PPLICATION AS THE CLIENT #AUSE CODES $RIVERSWITCH AS THE CLIENT -AINTENANCE SERVICES 4 4ELEPHONY 3UPPLEMENTARY #ONFIRMATION %VENTS 4ELEPHONY 3UPPLEMENTARY 3ERVICES 4RUNK GROUP 43!0) #ALL 3TATES 3EE #ALL 3TATE 0ROGRAMMING HANDLE 3EE #ALL )DENTIFIER 3EE #ONNECTION )DENTIFIER 3EE $EVICE )DENTIFIER 0ROGRAMMING OBJECT
)
3EE #ALL 3EE #ONNECTION 3EE $EVICE 4SERVER %RRORS "AD #ONNECTION "AD $EVICE 2ECORD "AD $RIVER )$ "AD $RIVER 0ROTOCOL "AD 0ASSWORD %NCRYPTION "AD 0ASSWORD /R ,OGIN "AD 0$5 "AD 0ROTOCOL "AD 0ROTOCOL &ORMAT "AD 3$" ,EVEL "AD 3ERVER )$ "AD 3TREAM 4YPE "AD 4RANSPORT 4YPE $EAD $RIVER $ECODE &AILED $EVICE .OT /N ,IST $EVICE .OT 3UPPORTED %#" -AX %XCEEDED %#" /VERDUE %NCODE &AILED %XCEPTION ,IST &REE "UFFER &AILED )NSUFFICIENT 0ERMISSION )NVALID -ESSAGE -ESSAGE (IGH 7ATER -ARK .O !WAY 0ERMISSION .O !WAY 7ORKTOP .O $EVICE 2ECORD .O %#"3 .O (OME 0ERMISSION .O -EMORY .O 2ESOURCE 4AG .O 3$" .O 3$" #HECK .EEDED .O 4HREAD .O 5SER 2ECORD .O 6ERSION /LD 4SLIB 0$5 6ERSION -ISMATCH 2ECEIVE &ROM $RIVER
5 5NIX7ARE VERSIONS SUPPORTED 5NSOLICITED %VENTS 5SER 7 7INDOWS #LIENTS (IGH -EMORY 5SE %RROR #ANNOT OPEN FILE REFERENCED ON PAGE
2EGISTRATION &AILED 3$" #HECK .EEDED 3END 4O $RIVER 3PX &AILED 3TREAM &AILED 4RACE 5SERS 2ESTRICTED (OME
)
)
Ease of Finding Information ..... Clarity ..... Completeness ..... Accuracy ..... Organization ..... Appearance ..... Examples ..... Illustrations ..... Overall Satisfaction .....
t t t t t t t t t t t t t t t
t t t t t t t t t
t t t t t t t t t
t t t t t t t t t
2.
Please check the ways you feel we could improve this document:
t t t t t t
Improve the overview/introduction Improve the table of contents Improve the organization Add more figures Add more examples Add more details
Make it more concise Add more step-by-step procedures/tutorials Add more troubleshooting information Make it less technical Add more/better quick reference aids Improve the index
3.
What did you like most about this document? ______________________ __________________________________________________________ __________________________________________________________ Feel free to write any comments below or on an attached sheet. _______ __________________________________________________________ __________________________________________________________
4.
If we may contact you concerning your comments, please complete the following: Name: ______________________________ Telephone Number: (_____) __________ Company/Organization ________________________________ Date: ______________ Address_______________________________________________________________