40
Integrated Office Telephony System1 TSAPI APIs 沈沈沈 [email protected]

TSAPI APIs

  • Upload
    paco

  • View
    82

  • Download
    1

Embed Size (px)

DESCRIPTION

TSAPI APIs. 沈婉婉 [email protected]. Outline. CSTA TSAPI Overview IOTS TSAPI Overview TSAPI Programming IOTS TSAPI APIs. CSTA (Computer Supported Telecommunications Applications). by ECMA Current version - Phase II Client-server architecture. CSTA Call Model. Objects Device - PowerPoint PPT Presentation

Citation preview

Page 1: TSAPI APIs

Integrated Office Telephony System 1

TSAPI APIs

沈婉婉[email protected]

Page 2: TSAPI APIs

Integrated Office Telephony System 2

Outline

CSTA TSAPI Overview IOTS TSAPI Overview TSAPI Programming IOTS TSAPI APIs

Page 3: TSAPI APIs

Integrated Office Telephony System 3

CSTA (Computer Supported Telecommunications Applications)

by ECMA Current version - Phase II Client-server architecture

Page 4: TSAPI APIs

Integrated Office Telephony System 4

CSTA Call Model Objects

Devicelines, trunks, stations, ACD, ACD groups...

Call Connection

a relationship between a call and a CSTA device

Each object has an identifier, state, other attributes

Page 5: TSAPI APIs

Integrated Office Telephony System 5

CSTA Call Model (cont.)

Device, Call, Connection

Call 1

Device314

Connection 1(connected)

Device315

Connection 2(altering)

Page 6: TSAPI APIs

Integrated Office Telephony System 6

Connection State

Alerting

Failed

HoldConnected

Queued

Null

Initiated

Page 7: TSAPI APIs

Integrated Office Telephony System 7

Call State

Call

Device1

Device4

Device3

Device2

C1

C2

C3

C4

Call State =

C1 C2 C3 C4

Connection State

Page 8: TSAPI APIs

Integrated Office Telephony System 8

Device State

Device State =

C1 C2 C3

Device3

Call 1

Call 2

Call 3

C1

C2

C3

Connection State

Page 9: TSAPI APIs

Integrated Office Telephony System 9

CSTA Call Event

Null Null

Initiated

Connected

Connected

Connected Connected

Alerting

Null

Null

Null

Service Initiated

Originated

Delivered

Established

Device D1 Call C1 Device D2Time

T1

T2

T3

T4

T5

CSTAConnection

States

CSTA EventReports

CSTAConnection

States

Page 10: TSAPI APIs

Integrated Office Telephony System 10

Agent State Model

AgentWorkingAfter Call

AgentBusy

AgentReady

AgentNot Ready

AgentNull

Page 11: TSAPI APIs

Integrated Office Telephony System 11

Agent State Model (extended)

AgentWorkingAfter Call

AgentBusy

AgentReady

AgentNot Ready

AgentNull

AgentPending

AgentNot WorkNot Ready

Page 12: TSAPI APIs

Integrated Office Telephony System 12

Voice Unit Operational Model

StopRecord

Play

SuspendPlay

Review

SuspendRecord

Speed

LevelVolume VolumeLevelSpeed

SpeedLevel

VolumePosition

Position

Set Speed

SpeedLevel

Volume

SpeedLevel

Volume

PositionSet Speed

PositionSet Speed

nextmessage

VolumeLevelSpeed

Page 13: TSAPI APIs

Integrated Office Telephony System 13

Voice Unit Operational Model (partial)

Stop

RecordPlay

Page 14: TSAPI APIs

Integrated Office Telephony System 14

TSAPI(Telephony Services Applications Programming Interface)

by Novell and AT&T.

PBX

TelephonyServer

Page 15: TSAPI APIs

Integrated Office Telephony System 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

Page 16: TSAPI APIs

Integrated Office Telephony System 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

TelephonyClient Library

NetWare ClientModules

Windos OS

NetWare OS

Clients ...

LAN

Switch(PBX)

CTI LinkTelephony Server

Analog, ISDN, or PBX-specific lines

Page 17: TSAPI APIs

Integrated Office Telephony System 17

IOTS TSAPI

TSAPI-like application programming interface for IOTS

trunk or line interface

IOTS

Client Client

Page 18: TSAPI APIs

Integrated Office Telephony System 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

Page 19: TSAPI APIs

Integrated Office Telephony System 19

IOTS TSAPI (cont.)

Server-based Application

TSAPI DLL

LSI / MSI

Windows NT4.0

TSAPI Library

IOTS Platform

LAN Adapter Card

TSAPI Server

Applications

TSAPI Library

TSAPI DLL

Windos NT4.0

Windows NT4.0

Clients ...

LANIOTS

Analog lines

TRUNK

Page 20: TSAPI APIs

Integrated Office Telephony System 20

TSAPI Programming

API Control Services (ACS) Stream 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

Page 21: TSAPI APIs

Integrated Office Telephony System 21

TSAPI Programming (cont.)

CloseStreamConf Event

acsOpenStream()

OpenStreamConf Event

CSTA ServiceRequests

MonitorRequests

CSTA ConfEvents

Monitor Conf Event

Unsolicited Events

acsCloseStream()

PBX

TSAPI Server

TSAPI

Switch Function/ Media ProcessRequests

Conf Event

Page 22: TSAPI APIs

Integrated Office Telephony System 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

Page 23: TSAPI APIs

Integrated Office Telephony System 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()

Page 24: TSAPI APIs

Integrated Office Telephony System 24

API Control Services

acsOpenStream acsCloseStream acsGetEventBlock acsGetEventPool acsFlushEventQueue cstaGetDeviceList cstaGetAPICaps

Page 25: TSAPI APIs

Integrated Office Telephony System 25

Switching Function Services

cstaAlternateCall cstaAnswerCall cstaClearCall cstaClearConnection cstaConferenceCall cstaConsultationCall cstaDeflectCall cstaGroupPickupCall

cstaHoldCall cstaMakeCall cstaMakePredictiveCall cstaPickupCall cstaReconnectCall cstaRetrieveCall cstaTransferCall

Page 26: TSAPI APIs

Integrated Office Telephony System 26

Switching Function Services (cont.)

cstaQueryAgentState cstaQueryDeviceInfo cstaQueryDoNotDisturb cstaQueryFwd cstaQueryLastNumber cstaSetAgentState cstaSetDnd cstaSetFwd

Page 27: TSAPI APIs

Integrated Office Telephony System 27

Status Reporting Services

cstaMonitorDevice cstaMonitorCall cstaMonitorCallsViaDevice cstaMonitorStop cstaChangeMonitorFilter

Page 28: TSAPI APIs

Integrated Office Telephony System 28

Snapshot Services cstaSnapshotCallReq

Call

Device1

Device4

Device3

Device2

C1

C2

C3

C4

Call State =

C1 C2 C3 C4

Connection State

Page 29: TSAPI APIs

Integrated Office Telephony System 29

Snapshot Services (cont.) cstaSnapshotDeviceReq

Device State = C1 C2 C3

Device3

Call 1

Call 2

Call 3

C1

C2

C3Connection State

Page 30: TSAPI APIs

Integrated Office Telephony System 30

CSTA Computing Function Services

cstaRouteRegisterReq cstaRouteRegisterCancel cstaRouteSelectInv cstaRouteEndInv

Page 31: TSAPI APIs

Integrated Office Telephony System 31

Application Routing ScenarioDriver / 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 queued call to selected dest. a. if destination address o.k., a CSTARouteUsedEvent and CSTARouteEndEvent is sent b. if destionation is invalid then a CSTAReRouteEvent is sent

(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 cstaRouteSelectInv() with a different 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)or (5b)

......

...

Page 32: TSAPI APIs

Integrated Office Telephony System 32

Media Processing Services

_cstaPlayMessage _cstaRecordMessage _cstaStopMessage _cstaDeleteMessage _cstaGetDTMFTones _cstaSendDTMFTones _cstaSendFAX _cstaReceiveFAX

Page 33: TSAPI APIs

Integrated Office Telephony System 33

IOTS Extended Services

_cstaAssociateData _cstaQueryCallInfo _cstaSingleStepTransferCall

Page 34: TSAPI APIs

Integrated Office Telephony System 34

CSTA Event - Unsolicited Event CSTACallCleared CSTAConferenced CSTAConnectionCleared CSTADelivered CSTADiverted CSTAEstablished CSTAFailed CSTAHeld CSTANetworkReached CSTAOriginated CSTAQueued CSTARetrieved CSTAServiceInitiated CSTATransferred

CSTADoNotDisturb CSTAForwarding CSTALoggedOn CSTALoggedOff CSTANotReady CSTAReady CSTAWorkNotReady CSTAWorkReady CSTAMonitorEnded CSTAOutOfService CSTABackInService CSTAPlay CSTARecord CSTAStop

Page 35: TSAPI APIs

Integrated Office Telephony System 35

CSTA Event - Request Event

CSTARouteRequest CSTARerouteRequest

Page 36: TSAPI APIs

Integrated Office Telephony System 36

CSTA Event - Event Report

CSTARegisterAbort CSTARouteUsedExt CSTARouteEnd

Page 37: TSAPI APIs

Integrated Office Telephony System 37

Events for Failure ACSUniversalFailureConf

non-telephony problem

sent in place of confirmation event

CSTAUniversalFailureConf telephony-based problem

sent in place of confirmation event

ACSUniversalFailure a failure of ACS Stream with TSAPI server

Page 38: TSAPI APIs

Integrated Office Telephony System 38

Confirmation Events Confirmation events:

TSAPI has processed the request acsOpenStream()

ACSOpenStreamConf

cstaGetDeviceList()

CSTAGetDeviceListConf

Page 39: TSAPI APIs

Integrated Office Telephony System 39

Unsolicited Events Unsolicited events for switch function

(that IOTS Platform/switch has processed)

cstaMonitorDevive(StationDeviceID):

CSTADelivered(delivered.connection)

cstaAnswerCall()CSTAAnswerCallConf

CSTAEstablished

cstaClearConnection()

CSTAClearConnection

CSTAClearConnection

CSTAClearConnectionConf

Another party drop call

Page 40: TSAPI APIs

Integrated Office Telephony System 40

Request Events & Event Report Unsolicited events for call routing

(sent from IOTS platform/switch)

cstaMonitorDevive(TrunkDeviceID)

cstaRouteRegisterReq(TrunkDeviceID)

CSTARouteRequestExt

cstaRouteSelectInv()No confirmation event

CSTARouteEnd /CSTAReRouteRequest

Busy

CSTAClearConnection

Another party drop call

CSTARouteEnd

No answerConnected