Presentation is loading. Please wait.

Presentation is loading. Please wait.

TSAPI APIs 沈婉婉 sww@itri.org.tw.

Similar presentations


Presentation on theme: "TSAPI APIs 沈婉婉 sww@itri.org.tw."— Presentation transcript:

1 TSAPI APIs 沈婉婉

2 Outline CSTA TSAPI Overview IOTS TSAPI Overview TSAPI Programming
IOTS TSAPI APIs

3 CSTA (Computer Supported Telecommunications Applications)
by ECMA Current version - Phase II Client-server architecture

4 CSTA Call Model Objects
Device lines, trunks, stations, ACD, ACD groups... Call Connection a relationship between a call and a CSTA device Each object has an identifier, state, other attributes

5 CSTA Call Model (cont.) Device, Call, Connection Call 1 Device 314 315
(connected) 315 Connection 2 (altering)

6 Connection State Alerting Failed Hold Connected Queued Null Initiated

7 Call State Call Device1 Device4 Device3 Device2 C1 C2 C3 C4
Connection State

8 Device State Call 1 C1 Device3 C2 Call 2 C3 Call 3 Connection State
C C C3 Device3 Call 1 Call 2 Call 3 C1 C2 C3 Connection State

9 CSTA Call Event Time Device D1 Call C1 Device D2 T1 Null Null Null T2
Initiated Service Initiated Null T3 Connected Originated Null Connected Delivered Alerting T4 T5 Connected Established Connected CSTA Connection States CSTA Event Reports CSTA Connection States

10 Agent State Model Agent Null Agent Not Ready Agent Working After Call
Busy

11 Agent State Model (extended)
Null Agent Not Ready Agent Working After Call Agent Not Work Not Ready Agent Busy Agent Ready Agent Pending

12 Voice Unit Operational Model
Speed Volume Level Speed Volume Level Speed Volume Level Stop next message Record Play Position Speed Level Volume Set Speed Suspend Record Position Suspend Play Position Set Speed Review Set Speed Position Speed Level Volume Speed Level Volume

13 Voice Unit Operational Model (partial)
Stop Play Record

14 TSAPI (Telephony Services Applications Programming Interface)
by Novell and AT&T. PBX Telephony Server

15 TSAPI (cont.) Client-server model Support different client platforms
Microsoft Windows Unix Macintosh OS/2 No special voice cards, or other hardwares is necessary at a client’s desktop Follow CSTA Phase I Currently, only have switching functions Current version - TSAPI Release 2.21

16 TSAPI Introduction (cont.)
Server-based Application Telephony Services Library CTI Link Hardware NetWare Telephony Services API Switch Driver .OA&M Server Functions .API Mapping .CTI Link Device Driver LAN Adapter Card Telephony Services Switch Driver Interface Applications Client Library NetWare Client Modules Windos OS NetWare OS Clients ... LAN Switch (PBX) CTI Link Telephony Server Analog, ISDN, or PBX-specific lines

17 IOTS TSAPI TSAPI-like application programming interface for IOTS IOTS
trunk or line interface IOTS Client

18 IOTS TSAPI (cont.) Follow TSAPI Release 2.21, excepts:
Escape services Maintenance services System services Server: Windows NT 4.0 Client: Windows NT 4.0

19 Server-based Application
IOTS TSAPI (cont.) Windows NT4.0 Server-based Application TSAPI Library Applications TSAPI Library TSAPI DLL Windos NT4.0 TSAPI DLL TRUNK IOTS Platform TSAPI Server Windows NT4.0 LSI / MSI LAN Adapter Card Clients ... LAN IOTS Analog lines

20 TSAPI Programming API Control Services (ACS) Stream CSTA Call Model
a logical link between application & TSAPI server applications request CSTA services and receive events over the stream CSTA Call Model TSAPI Events most APIs has an associated confirmation event when the state of calls or devices were changed, an unsolicited event reports

21 TSAPI Programming (cont.)
acsOpenStream() Open Stream Conf Event CSTA Service Requests Monitor CSTA Conf Events Unsolicited acsCloseStream() PBX TSAPI Server TSAPI Switch Function / Media Process Close Stream Conf Event

22 IOTS Supported TSAPI APIs
API control services Switching function services Status reporting services Snapshot services CSTA computing function services Media processing services IOTS extended services

23 Event Manipulation Each stream contains one event queue
confirmation events (service request) unsolicited events (monitor request) for swithing & media processing request events (route register request) for call routing request event report (route register request) for call routing status Retrieve event form queue acsGetEventBlock() acsGetEventPoll() Clear event queue acsFlushEventQueue()

24 API Control Services acsOpenStream acsCloseStream acsGetEventBlock
acsGetEventPool acsFlushEventQueue cstaGetDeviceList cstaGetAPICaps

25 Switching Function Services
cstaAlternateCall cstaAnswerCall cstaClearCall cstaClearConnection cstaConferenceCall cstaConsultationCall cstaDeflectCall cstaGroupPickupCall cstaHoldCall cstaMakeCall cstaMakePredictiveCall cstaPickupCall cstaReconnectCall cstaRetrieveCall cstaTransferCall

26 Switching Function Services (cont.)
cstaQueryAgentState cstaQueryDeviceInfo cstaQueryDoNotDisturb cstaQueryFwd cstaQueryLastNumber cstaSetAgentState cstaSetDnd cstaSetFwd

27 Status Reporting Services
cstaMonitorDevice cstaMonitorCall cstaMonitorCallsViaDevice cstaMonitorStop cstaChangeMonitorFilter

28 Snapshot Services cstaSnapshotCallReq Device3 Device1 C1 C3 Call
Connection State C1 C3 Call Device4 Device2 C2 C4 Call State = C C C C4

29 Snapshot Services (cont.)
cstaSnapshotDeviceReq Device State = C C C3 Device3 Call 1 Call 2 Call 3 C1 C2 C3 Connection State

30 CSTA Computing Function Services
cstaRouteRegisterReq cstaRouteRegisterCancel cstaRouteSelectInv cstaRouteEndInv

31 Application Routing Scenario
Driver / Switch Domain Routing Server (application) (1) a call arrives at the routing device, CSTARouteRequestEvent is sent (3) the switchh attempts to route the queued call to selected dest. a. if destination address is o.k. a CSTARouteEndEvent is sent b. if destination is invalid, then a CSTAReRouteEvent is sent (5) the switch attempts to route the a. if destination address o.k., a CSTARouteUsedEvent and b. if destionation is invalid then a (0) call cstaRouteRegisterReq() to be a routing server for a specified device (2) Application select a destination for for the call. A cstaRouteSelectInv() message is sent (Rout Used=off). (4a) If (3a) then route is completed as specified in (2). (4b) If (3b) then send a second cstaRouteSelectInv() with a different destination (Rout Used=on). (6a) If (5a) then route is completed as specified in (4b). (6b) If (5b) then send a second destination (Rout Used=on), or send a cstaRouteEndInv() handback to switch. (last) call cstaRouteRegisterCancel() before application exit. call related info is passed (1) (3a) or (3b) (2) (4b) (5a) (5b) ...

32 Media Processing Services
_cstaPlayMessage _cstaRecordMessage _cstaStopMessage _cstaDeleteMessage _cstaGetDTMFTones _cstaSendDTMFTones _cstaSendFAX _cstaReceiveFAX

33 IOTS Extended Services
_cstaAssociateData _cstaQueryCallInfo _cstaSingleStepTransferCall

34 CSTA Event - Unsolicited Event
CSTADoNotDisturb CSTAForwarding CSTALoggedOn CSTALoggedOff CSTANotReady CSTAReady CSTAWorkNotReady CSTAWorkReady CSTAMonitorEnded CSTAOutOfService CSTABackInService CSTAPlay CSTARecord CSTAStop CSTACallCleared CSTAConferenced CSTAConnectionCleared CSTADelivered CSTADiverted CSTAEstablished CSTAFailed CSTAHeld CSTANetworkReached CSTAOriginated CSTAQueued CSTARetrieved CSTAServiceInitiated CSTATransferred

35 CSTA Event - Request Event
CSTARouteRequest CSTARerouteRequest

36 CSTA Event - Event Report
CSTARegisterAbort CSTARouteUsedExt CSTARouteEnd

37 Events for Failure ACSUniversalFailureConf CSTAUniversalFailureConf
non-telephony problem sent in place of confirmation event CSTAUniversalFailureConf telephony-based problem ACSUniversalFailure a failure of ACS Stream with TSAPI server

38 Confirmation Events Confirmation events:
TSAPI has processed the request acsOpenStream() ACSOpenStreamConf cstaGetDeviceList() CSTAGetDeviceListConf

39 Unsolicited Events Another party drop call cstaAnswerCall()
Unsolicited events for switch function (that IOTS Platform/switch has processed) cstaMonitorDevive(StationDeviceID): CSTADelivered (delivered.connection) Another party drop call cstaAnswerCall() CSTAAnswerCallConf CSTAEstablished CSTAClearConnection cstaClearConnection() CSTAClearConnectionConf CSTAClearConnection

40 Request Events & Event Report
Unsolicited events for call routing (sent from IOTS platform/switch) cstaMonitorDevive(TrunkDeviceID) cstaRouteRegisterReq(TrunkDeviceID) CSTARouteRequestExt cstaRouteSelectInv() No confirmation event Another party drop call CSTARouteEnd /CSTAReRouteRequest CSTAClearConnection CSTARouteEnd Connected Busy No answer


Download ppt "TSAPI APIs 沈婉婉 sww@itri.org.tw."

Similar presentations


Ads by Google