avaya交换机TSAPI接口开发Demo 查看源码: cstadefs.h

来源:互联网 发布:数据监控软件 编辑:程序博客网 时间:2024/06/05 08:38

src:http://www.verysource.com/code/4729137_1/cstadefs.h.html

cstadefs.h:

01./***********************************************************/
02./* Copyright (C) 2001 Avaya Inc.  All rights reserved.*/
03./***********************************************************/
04./* abstract syntax: csta_asn_tbl */
05./* last module in input: CSTA-route-end-request-invoke */
06./* created: Fri Aug  1 10:51:26 1997 */
07./* associated control file: cstadefs.c */
08.
09.#ifndef CSTADEFS_H
10.#define CSTADEFS_H
11.
12.#include "tsplatfm.h"
13.
14.
15.#define          CSTA_ALTERNATE_CALL 1
16.#define          CSTA_ALTERNATE_CALL_CONF 2
17.#define          CSTA_ANSWER_CALL 3
18.#define          CSTA_ANSWER_CALL_CONF 4
19.#define          CSTA_CALL_COMPLETION 5
20.#define          CSTA_CALL_COMPLETION_CONF 6
21.#define          CSTA_CLEAR_CALL 7
22.#define          CSTA_CLEAR_CALL_CONF 8
23.#define          CSTA_CLEAR_CONNECTION 9
24.#define          CSTA_CLEAR_CONNECTION_CONF 10
25.#define          CSTA_CONFERENCE_CALL 11
26.#define          CSTA_CONFERENCE_CALL_CONF 12
27.#define          CSTA_CONSULTATION_CALL 13
28.#define          CSTA_CONSULTATION_CALL_CONF 14
29.#define          CSTA_DEFLECT_CALL 15
30.#define          CSTA_DEFLECT_CALL_CONF 16
31.#define          CSTA_PICKUP_CALL 17
32.#define          CSTA_PICKUP_CALL_CONF 18
33.#define          CSTA_GROUP_PICKUP_CALL 19
34.#define          CSTA_GROUP_PICKUP_CALL_CONF 20
35.#define          CSTA_HOLD_CALL 21
36.#define          CSTA_HOLD_CALL_CONF 22
37.#define          CSTA_MAKE_CALL 23
38.#define          CSTA_MAKE_CALL_CONF 24
39.#define          CSTA_MAKE_PREDICTIVE_CALL 25
40.#define          CSTA_MAKE_PREDICTIVE_CALL_CONF 26
41.#define          CSTA_QUERY_MWI 27
42.#define          CSTA_QUERY_MWI_CONF 28
43.#define          CSTA_QUERY_DND 29
44.#define          CSTA_QUERY_DND_CONF 30
45.#define          CSTA_QUERY_FWD 31
46.#define          CSTA_QUERY_FWD_CONF 32
47.#define          CSTA_QUERY_AGENT_STATE 33
48.#define          CSTA_QUERY_AGENT_STATE_CONF 34
49.#define          CSTA_QUERY_LAST_NUMBER 35
50.#define          CSTA_QUERY_LAST_NUMBER_CONF 36
51.#define          CSTA_QUERY_DEVICE_INFO 37
52.#define          CSTA_QUERY_DEVICE_INFO_CONF 38
53.#define          CSTA_RECONNECT_CALL 39
54.#define          CSTA_RECONNECT_CALL_CONF 40
55.#define          CSTA_RETRIEVE_CALL 41
56.#define          CSTA_RETRIEVE_CALL_CONF 42
57.#define          CSTA_SET_MWI 43
58.#define          CSTA_SET_MWI_CONF 44
59.#define          CSTA_SET_DND 45
60.#define          CSTA_SET_DND_CONF 46
61.#define          CSTA_SET_FWD 47
62.#define          CSTA_SET_FWD_CONF 48
63.#define          CSTA_SET_AGENT_STATE 49
64.#define          CSTA_SET_AGENT_STATE_CONF 50
65.#define          CSTA_TRANSFER_CALL 51
66.#define          CSTA_TRANSFER_CALL_CONF 52
67.#define          CSTA_UNIVERSAL_FAILURE_CONF 53
68.#define          CSTA_CALL_CLEARED 54
69.#define          CSTA_CONFERENCED 55
70.#define          CSTA_CONNECTION_CLEARED 56
71.#define          CSTA_DELIVERED 57
72.#define          CSTA_DIVERTED 58
73.#define          CSTA_ESTABLISHED 59
74.#define          CSTA_FAILED 60
75.#define          CSTA_HELD 61
76.#define          CSTA_NETWORK_REACHED 62
77.#define          CSTA_ORIGINATED 63
78.#define          CSTA_QUEUED 64
79.#define          CSTA_RETRIEVED 65
80.#define          CSTA_SERVICE_INITIATED 66
81.#define          CSTA_TRANSFERRED 67
82.#define          CSTA_CALL_INFORMATION 68
83.#define          CSTA_DO_NOT_DISTURB 69
84.#define          CSTA_FORWARDING 70
85.#define          CSTA_MESSAGE_WAITING 71
86.#define          CSTA_LOGGED_ON 72
87.#define          CSTA_LOGGED_OFF 73
88.#define          CSTA_NOT_READY 74
89.#define          CSTA_READY 75
90.#define          CSTA_WORK_NOT_READY 76
91.#define          CSTA_WORK_READY 77
92.#define          CSTA_ROUTE_REGISTER_REQ 78
93.#define          CSTA_ROUTE_REGISTER_REQ_CONF 79
94.#define          CSTA_ROUTE_REGISTER_CANCEL 80
95.#define          CSTA_ROUTE_REGISTER_CANCEL_CONF 81
96.#define          CSTA_ROUTE_REGISTER_ABORT 82
97.#define          CSTA_ROUTE_REQUEST 83
98.#define          CSTA_ROUTE_SELECT_REQUEST 84
99.#define          CSTA_RE_ROUTE_REQUEST 85
100.#define          CSTA_ROUTE_USED 86
101.#define          CSTA_ROUTE_END 87
102.#define          CSTA_ROUTE_END_REQUEST 88
103.#define          CSTA_ESCAPE_SVC 89
104.#define          CSTA_ESCAPE_SVC_CONF 90
105.#define          CSTA_ESCAPE_SVC_REQ 91
106.#define          CSTA_ESCAPE_SVC_REQ_CONF 92
107.#define          CSTA_PRIVATE 93
108.#define          CSTA_PRIVATE_STATUS 94
109.#define          CSTA_SEND_PRIVATE 95
110.#define          CSTA_BACK_IN_SERVICE 96
111.#define          CSTA_OUT_OF_SERVICE 97
112.#define          CSTA_REQ_SYS_STAT 98
113.#define          CSTA_SYS_STAT_REQ_CONF 99
114.#define          CSTA_SYS_STAT_START 100
115.#define          CSTA_SYS_STAT_START_CONF 101
116.#define          CSTA_SYS_STAT_STOP 102
117.#define          CSTA_SYS_STAT_STOP_CONF 103
118.#define          CSTA_CHANGE_SYS_STAT_FILTER 104
119.#define          CSTA_CHANGE_SYS_STAT_FILTER_CONF 105
120.#define          CSTA_SYS_STAT 106
121.#define          CSTA_SYS_STAT_ENDED 107
122.#define          CSTA_SYS_STAT_REQ 108
123.#define          CSTA_REQ_SYS_STAT_CONF 109
124.#define          CSTA_SYS_STAT_EVENT_SEND 110
125.#define          CSTA_MONITOR_DEVICE 111
126.#define          CSTA_MONITOR_CALL 112
127.#define          CSTA_MONITOR_CALLS_VIA_DEVICE 113
128.#define          CSTA_MONITOR_CONF 114
129.#define          CSTA_CHANGE_MONITOR_FILTER 115
130.#define          CSTA_CHANGE_MONITOR_FILTER_CONF 116
131.#define          CSTA_MONITOR_STOP 117
132.#define          CSTA_MONITOR_STOP_CONF 118
133.#define          CSTA_MONITOR_ENDED 119
134.#define          CSTA_SNAPSHOT_CALL 120
135.#define          CSTA_SNAPSHOT_CALL_CONF 121
136.#define          CSTA_SNAPSHOT_DEVICE 122
137.#define          CSTA_SNAPSHOT_DEVICE_CONF 123
138.#define          CSTA_GETAPI_CAPS 124
139.#define          CSTA_GETAPI_CAPS_CONF 125
140.#define          CSTA_GET_DEVICE_LIST 126
141.#define          CSTA_GET_DEVICE_LIST_CONF 127
142.#define          CSTA_QUERY_CALL_MONITOR 128
143.#define          CSTA_QUERY_CALL_MONITOR_CONF 129
144.#define          CSTA_ROUTE_REQUEST_EXT 130
145.#define          CSTA_ROUTE_USED_EXT 131
146.#define          CSTA_ROUTE_SELECT_INV_REQUEST 132
147.#define          CSTA_ROUTE_END_INV_REQUEST 133
148.
149.typedef enum CSTAUniversalFailure_t {
150.    GENERIC_UNSPECIFIED = 0,
151.    GENERIC_OPERATION = 1,
152.    REQUEST_INCOMPATIBLE_WITH_OBJECT = 2,
153.    VALUE_OUT_OF_RANGE = 3,
154.    OBJECT_NOT_KNOWN = 4,
155.    INVALID_CALLING_DEVICE = 5,
156.    INVALID_CALLED_DEVICE = 6,
157.    INVALID_FORWARDING_DESTINATION = 7,
158.    PRIVILEGE_VIOLATION_ON_SPECIFIED_DEVICE = 8,
159.    PRIVILEGE_VIOLATION_ON_CALLED_DEVICE = 9,
160.    PRIVILEGE_VIOLATION_ON_CALLING_DEVICE = 10,
161.    INVALID_CSTA_CALL_IDENTIFIER = 11,
162.    INVALID_CSTA_DEVICE_IDENTIFIER = 12,
163.    INVALID_CSTA_CONNECTION_IDENTIFIER = 13,
164.    INVALID_DESTINATION = 14,
165.    INVALID_FEATURE = 15,
166.    INVALID_ALLOCATION_STATE = 16,
167.    INVALID_CROSS_REF_ID = 17,
168.    INVALID_OBJECT_TYPE = 18,
169.    SECURITY_VIOLATION = 19,
170.    GENERIC_STATE_INCOMPATIBILITY = 21,
171.    INVALID_OBJECT_STATE = 22,
172.    INVALID_CONNECTION_ID_FOR_ACTIVE_CALL = 23,
173.    NO_ACTIVE_CALL = 24,
174.    NO_HELD_CALL = 25,
175.    NO_CALL_TO_CLEAR = 26,
176.    NO_CONNECTION_TO_CLEAR = 27,
177.    NO_CALL_TO_ANSWER = 28,
178.    NO_CALL_TO_COMPLETE = 29,
179.    GENERIC_SYSTEM_RESOURCE_AVAILABILITY = 31,
180.    SERVICE_BUSY = 32,
181.    RESOURCE_BUSY = 33,
182.    RESOURCE_OUT_OF_SERVICE = 34,
183.    NETWORK_BUSY = 35,
184.    NETWORK_OUT_OF_SERVICE = 36,
185.    OVERALL_MONITOR_LIMIT_EXCEEDED = 37,
186.    CONFERENCE_MEMBER_LIMIT_EXCEEDED = 38,
187.    GENERIC_SUBSCRIBED_RESOURCE_AVAILABILITY = 41,
188.    OBJECT_MONITOR_LIMIT_EXCEEDED = 42,
189.    EXTERNAL_TRUNK_LIMIT_EXCEEDED = 43,
190.    OUTSTANDING_REQUEST_LIMIT_EXCEEDED = 44,
191.    GENERIC_PERFORMANCE_MANAGEMENT = 51,
192.    PERFORMANCE_LIMIT_EXCEEDED = 52,
193.    UNSPECIFIED_SECURITY_ERROR = 60,
194.    SEQUENCE_NUMBER_VIOLATED = 61,
195.    TIME_STAMP_VIOLATED = 62,
196.    PAC_VIOLATED = 63,
197.    SEAL_VIOLATED = 64,
198.    GENERIC_UNSPECIFIED_REJECTION = 70,
199.    GENERIC_OPERATION_REJECTION = 71,
200.    DUPLICATE_INVOCATION_REJECTION = 72,
201.    UNRECOGNIZED_OPERATION_REJECTION = 73,
202.    MISTYPED_ARGUMENT_REJECTION = 74,
203.    RESOURCE_LIMITATION_REJECTION = 75,
204.    ACS_HANDLE_TERMINATION_REJECTION = 76,
205.    SERVICE_TERMINATION_REJECTION = 77,
206.    REQUEST_TIMEOUT_REJECTION = 78,
207.    REQUESTS_ON_DEVICE_EXCEEDED_REJECTION = 79,
208.    UNRECOGNIZED_APDU_REJECTION = 80,
209.    MISTYPED_APDU_REJECTION = 81,
210.    BADLY_STRUCTURED_APDU_REJECTION = 82,
211.    INITIATOR_RELEASING_REJECTION = 83,
212.    UNRECOGNIZED_LINKEDID_REJECTION = 84,
213.    LINKED_RESPONSE_UNEXPECTED_REJECTION = 85,
214.    UNEXPECTED_CHILD_OPERATION_REJECTION = 86,
215.    MISTYPED_RESULT_REJECTION = 87,
216.    UNRECOGNIZED_ERROR_REJECTION = 88,
217.    UNEXPECTED_ERROR_REJECTION = 89,
218.    MISTYPED_PARAMETER_REJECTION = 90,
219.    NON_STANDARD = 100
220.} CSTAUniversalFailure_t;
221.
222.typedef enum CSTAEventCause_t {
223.    EC_NONE = -1,
224.    EC_ACTIVE_MONITOR = 1,
225.    EC_ALTERNATE = 2,
226.    EC_BUSY = 3,
227.    EC_CALL_BACK = 4,
228.    EC_CALL_CANCELLED = 5,
229.    EC_CALL_FORWARD_ALWAYS = 6,
230.    EC_CALL_FORWARD_BUSY = 7,
231.    EC_CALL_FORWARD_NO_ANSWER = 8,
232.    EC_CALL_FORWARD = 9,
233.    EC_CALL_NOT_ANSWERED = 10,
234.    EC_CALL_PICKUP = 11,
235.    EC_CAMP_ON = 12,
236.    EC_DEST_NOT_OBTAINABLE = 13,
237.    EC_DO_NOT_DISTURB = 14,
238.    EC_INCOMPATIBLE_DESTINATION = 15,
239.    EC_INVALID_ACCOUNT_CODE = 16,
240.    EC_KEY_CONFERENCE = 17,
241.    EC_LOCKOUT = 18,
242.    EC_MAINTENANCE = 19,
243.    EC_NETWORK_CONGESTION = 20,
244.    EC_NETWORK_NOT_OBTAINABLE = 21,
245.    EC_NEW_CALL = 22,
246.    EC_NO_AVAILABLE_AGENTS = 23,
247.    EC_OVERRIDE = 24,
248.    EC_PARK = 25,
249.    EC_OVERFLOW = 26,
250.    EC_RECALL = 27,
251.    EC_REDIRECTED = 28,
252.    EC_REORDER_TONE = 29,
253.    EC_RESOURCES_NOT_AVAILABLE = 30,
254.    EC_SILENT_MONITOR = 31,
255.    EC_TRANSFER = 32,
256.    EC_TRUNKS_BUSY = 33,
257.    EC_VOICE_UNIT_INITIATOR = 34,
258.    EC_NETWORKSIGNAL = 46,
259.    EC_ALERTTIMEEXPIRED = 60,
260.    EC_DESTOUTOFORDER = 65,
261.    EC_NOTSUPPORTEDBEARERSERVICE = 80,
262. EC_UNASSIGNED_NUMBER = 81,
263. EC_INCOMPATIBLE_BEARER_SERVICE = 87
264.} CSTAEventCause_t;
265.
266.typedef char            DeviceID_t[64];
267.
268.typedef enum DeviceIDType_t {
269.    DEVICE_IDENTIFIER = 0,
270.    IMPLICIT_PUBLIC = 20,
271.    EXPLICIT_PUBLIC_UNKNOWN = 30,
272.    EXPLICIT_PUBLIC_INTERNATIONAL = 31,
273.    EXPLICIT_PUBLIC_NATIONAL = 32,
274.    EXPLICIT_PUBLIC_NETWORK_SPECIFIC = 33,
275.    EXPLICIT_PUBLIC_SUBSCRIBER = 34,
276.    EXPLICIT_PUBLIC_ABBREVIATED = 35,
277.    IMPLICIT_PRIVATE = 40,
278.    EXPLICIT_PRIVATE_UNKNOWN = 50,
279.    EXPLICIT_PRIVATE_LEVEL3_REGIONAL_NUMBER = 51,
280.    EXPLICIT_PRIVATE_LEVEL2_REGIONAL_NUMBER = 52,
281.    EXPLICIT_PRIVATE_LEVEL1_REGIONAL_NUMBER = 53,
282.    EXPLICIT_PRIVATE_PTN_SPECIFIC_NUMBER = 54,
283.    EXPLICIT_PRIVATE_LOCAL_NUMBER = 55,
284.    EXPLICIT_PRIVATE_ABBREVIATED = 56,
285.    OTHER_PLAN = 60,
286.    TRUNK_IDENTIFIER = 70,
287.    TRUNK_GROUP_IDENTIFIER = 71
288.} DeviceIDType_t;
289.
290.typedef enum DeviceIDStatus_t {
291.    ID_PROVIDED = 0,
292.    ID_NOT_KNOWN = 1,
293.    ID_NOT_REQUIRED = 2
294.} DeviceIDStatus_t;
295.
296.typedef struct ExtendedDeviceID_t {
297.    DeviceID_t      deviceID;
298.    DeviceIDType_t  deviceIDType;
299.    DeviceIDStatus_t deviceIDStatus;
300.} ExtendedDeviceID_t;
301.
302.typedef ExtendedDeviceID_t CallingDeviceID_t;
303.
304.typedef ExtendedDeviceID_t CalledDeviceID_t;
305.
306.typedef ExtendedDeviceID_t SubjectDeviceID_t;
307.
308.typedef ExtendedDeviceID_t RedirectionDeviceID_t;
309.
310.typedef enum ConnectionID_Device_t {
311.    STATIC_ID = 0,
312.    DYNAMIC_ID = 1
313.} ConnectionID_Device_t;
314.
315.typedef struct ConnectionID_t {
316.    long            callID;
317.    DeviceID_t      deviceID;
318.    ConnectionID_Device_t devIDType;
319.} ConnectionID_t;
320.
321.typedef struct Connection_t {
322.    ConnectionID_t  party;
323.    SubjectDeviceID_t staticDevice;
324.} Connection_t;
325.
326.typedef struct ConnectionList_t {
327.    _Int             count;
328.    Connection_t    FAR *connection;
329.} ConnectionList_t;
330.
331.typedef enum LocalConnectionState_t {
332.    CS_NONE = -1,
333.    CS_NULL = 0,
334.    CS_INITIATE = 1,
335.    CS_ALERTING = 2,
336.    CS_CONNECT = 3,
337.    CS_HOLD = 4,
338.    CS_QUEUED = 5,
339.    CS_FAIL = 6
340.} LocalConnectionState_t;
341.
342.typedef long            CSTAMonitorCrossRefID_t;
343.
344.typedef unsigned short  CSTACallFilter_t;
345.#define                     CF_CALL_CLEARED 0x8000
346.#define                     CF_CONFERENCED 0x4000
347.#define                     CF_CONNECTION_CLEARED 0x2000
348.#define                     CF_DELIVERED 0x1000
349.#define                     CF_DIVERTED 0x0800
350.#define                     CF_ESTABLISHED 0x0400
351.#define                     CF_FAILED 0x0200
352.#define                     CF_HELD 0x0100
353.#define                     CF_NETWORK_REACHED 0x0080
354.#define                     CF_ORIGINATED 0x0040
355.#define                     CF_QUEUED 0x0020
356.#define                     CF_RETRIEVED 0x0010
357.#define                     CF_SERVICE_INITIATED 0x0008
358.#define                     CF_TRANSFERRED 0x0004
359.
360.typedef unsigned char   CSTAFeatureFilter_t;
361.#define                     FF_CALL_INFORMATION 0x80
362.#define                     FF_DO_NOT_DISTURB 0x40
363.#define                     FF_FORWARDING 0x20
364.#define                     FF_MESSAGE_WAITING 0x10
365.
366.typedef unsigned char   CSTAAgentFilter_t;
367.#define                     AF_LOGGED_ON 0x80
368.#define                     AF_LOGGED_OFF 0x40
369.#define                     AF_NOT_READY 0x20
370.#define                     AF_READY 0x10
371.#define                     AF_WORK_NOT_READY 0x08
372.#define                     AF_WORK_READY 0x04
373.
374.typedef unsigned char   CSTAMaintenanceFilter_t;
375.#define                     MF_BACK_IN_SERVICE 0x80
376.#define                     MF_OUT_OF_SERVICE 0x40
377.
378.typedef struct CSTAMonitorFilter_t {
379.    CSTACallFilter_t call;
380.    CSTAFeatureFilter_t feature;
381.    CSTAAgentFilter_t agent;
382.    CSTAMaintenanceFilter_t maintenance;
383.    long            privateFilter;
384.} CSTAMonitorFilter_t;
385.
386.typedef struct CSTACallState_t {
387.    _Int             count;
388.    LocalConnectionState_t FAR *state;
389.} CSTACallState_t;
390.
391.typedef struct CSTASnapshotDeviceResponseInfo_t {
392.    ConnectionID_t  callIdentifier;
393.    CSTACallState_t localCallState;
394.} CSTASnapshotDeviceResponseInfo_t;
395.
396.typedef struct CSTASnapshotDeviceData_t {
397.    _Int             count;
398.    CSTASnapshotDeviceResponseInfo_t FAR *info;
399.} CSTASnapshotDeviceData_t;
400.
401.typedef struct CSTASnapshotCallResponseInfo_t {
402.    SubjectDeviceID_t deviceOnCall;
403.    ConnectionID_t  callIdentifier;
404.    LocalConnectionState_t localConnectionState;
405.} CSTASnapshotCallResponseInfo_t;
406.
407.typedef struct CSTASnapshotCallData_t {
408.    _Int             count;
409.    CSTASnapshotCallResponseInfo_t FAR *info;
410.} CSTASnapshotCallData_t;
411.
412.typedef char            AccountInfo_t[32];
413.
414.typedef char            AgentID_t[32];
415.
416.typedef DeviceID_t      AgentGroup_t;
417.
418.typedef char            AgentPassword_t[32];
419.
420.typedef char            AuthCode_t[32];
421.
422.typedef enum ForwardingType_t {
423.    FWD_IMMEDIATE = 0,
424.    FWD_BUSY = 1,
425.    FWD_NO_ANS = 2,
426.    FWD_BUSY_INT = 3,
427.    FWD_BUSY_EXT = 4,
428.    FWD_NO_ANS_INT = 5,
429.    FWD_NO_ANS_EXT = 6
430.} ForwardingType_t;
431.
432.typedef struct ForwardingInfo_t {
433.    ForwardingType_t forwardingType;
434.    Boolean         forwardingOn;
435.    DeviceID_t      forwardDN;
436.} ForwardingInfo_t;
437.
438.typedef struct ListForwardParameters_t {
439.    short           count;
440.    ForwardingInfo_t param[7];
441.} ListForwardParameters_t;
442.
443.typedef enum SelectValue_t {
444.    SV_NORMAL = 0,
445.    SV_LEAST_COST = 1,
446.    SV_EMERGENCY = 2,
447.    SV_ACD = 3,
448.    SV_USER_DEFINED = 4
449.} SelectValue_t;
450.
451.typedef struct SetUpValues_t {
452.    _Int             length;
453.    unsigned char   FAR *value;
454.} SetUpValues_t;
455.
456.typedef short           RetryValue_t;
457.#define                     noListAvailable -1
458.#define                     noCountAvailable -2
459.
460.typedef long            RoutingCrossRefID_t;
461.
462.typedef long            RouteRegisterReqID_t;
463.
464.typedef struct CSTAAlternateCall_t {
465.    ConnectionID_t  activeCall;
466.    ConnectionID_t  otherCall;
467.} CSTAAlternateCall_t;
468.
469.typedef struct CSTAAlternateCallConfEvent_t {
470.    Nulltype        null;
471.} CSTAAlternateCallConfEvent_t;
472.
473.typedef struct CSTAAnswerCall_t {
474.    ConnectionID_t  alertingCall;
475.} CSTAAnswerCall_t;
476.
477.typedef struct CSTAAnswerCallConfEvent_t {
478.    Nulltype        null;
479.} CSTAAnswerCallConfEvent_t;
480.
481.typedef enum Feature_t {
482.    FT_CAMP_ON = 0,
483.    FT_CALL_BACK = 1,
484.    FT_INTRUDE = 2
485.} Feature_t;
486.
487.typedef struct CSTACallCompletion_t {
488.    Feature_t       feature;
489.    ConnectionID_t  call;
490.} CSTACallCompletion_t;
491.
492.typedef struct CSTACallCompletionConfEvent_t {
493.    Nulltype        null;
494.} CSTACallCompletionConfEvent_t;
495.
496.typedef struct CSTAClearCall_t {
497.    ConnectionID_t  call;
498.} CSTAClearCall_t;
499.
500.typedef struct CSTAClearCallConfEvent_t {
501.    Nulltype        null;
502.} CSTAClearCallConfEvent_t;
503.
504.typedef struct CSTAClearConnection_t {
505.    ConnectionID_t  call;
506.} CSTAClearConnection_t;
507.
508.typedef struct CSTAClearConnectionConfEvent_t {
509.    Nulltype        null;
510.} CSTAClearConnectionConfEvent_t;
511.
512.typedef struct CSTAConferenceCall_t {
513.    ConnectionID_t  heldCall;
514.    ConnectionID_t  activeCall;
515.} CSTAConferenceCall_t;
516.
517.typedef struct CSTAConferenceCallConfEvent_t {
518.    ConnectionID_t  newCall;
519.    ConnectionList_t connList;
520.} CSTAConferenceCallConfEvent_t;
521.
522.typedef struct CSTAConsultationCall_t {
523.    ConnectionID_t  activeCall;
524.    DeviceID_t      calledDevice;
525.} CSTAConsultationCall_t;
526.
527.typedef struct CSTAConsultationCallConfEvent_t {
528.    ConnectionID_t  newCall;
529.} CSTAConsultationCallConfEvent_t;
530.
531.typedef struct CSTADeflectCall_t {
532.    ConnectionID_t  deflectCall;
533.    DeviceID_t      calledDevice;
534.} CSTADeflectCall_t;
535.
536.typedef struct CSTADeflectCallConfEvent_t {
537.    Nulltype        null;
538.} CSTADeflectCallConfEvent_t;
539.
540.typedef struct CSTAPickupCall_t {
541.    ConnectionID_t  deflectCall;
542.    DeviceID_t      calledDevice;
543.} CSTAPickupCall_t;
544.
545.typedef struct CSTAPickupCallConfEvent_t {
546.    Nulltype        null;
547.} CSTAPickupCallConfEvent_t;
548.
549.typedef struct CSTAGroupPickupCall_t {
550.    ConnectionID_t  deflectCall;
551.    DeviceID_t      pickupDevice;
552.} CSTAGroupPickupCall_t;
553.
554.typedef struct CSTAGroupPickupCallConfEvent_t {
555.    Nulltype        null;
556.} CSTAGroupPickupCallConfEvent_t;
557.
558.typedef struct CSTAHoldCall_t {
559.    ConnectionID_t  activeCall;
560.    Boolean         reservation;
561.} CSTAHoldCall_t;
562.
563.typedef struct CSTAHoldCallConfEvent_t {
564.    Nulltype        null;
565.} CSTAHoldCallConfEvent_t;
566.
567.typedef struct CSTAMakeCall_t {
568.    DeviceID_t      callingDevice;
569.    DeviceID_t      calledDevice;
570.} CSTAMakeCall_t;
571.
572.typedef struct CSTAMakeCallConfEvent_t {
573.    ConnectionID_t  newCall;
574.} CSTAMakeCallConfEvent_t;
575.
576.typedef enum AllocationState_t {
577.    AS_CALL_DELIVERED = 0,
578.    AS_CALL_ESTABLISHED = 1
579.} AllocationState_t;
580.
581.typedef struct CSTAMakePredictiveCall_t {
582.    DeviceID_t      callingDevice;
583.    DeviceID_t      calledDevice;
584.    AllocationState_t allocationState;
585.} CSTAMakePredictiveCall_t;
586.
587.typedef struct CSTAMakePredictiveCallConfEvent_t {
588.    ConnectionID_t  newCall;
589.} CSTAMakePredictiveCallConfEvent_t;
590.
591.typedef struct CSTAQueryMwi_t {
592.    DeviceID_t      device;
593.} CSTAQueryMwi_t;
594.
595.typedef struct CSTAQueryMwiConfEvent_t {
596.    Boolean         messages;
597.} CSTAQueryMwiConfEvent_t;
598.
599.typedef struct CSTAQueryDnd_t {
600.    DeviceID_t      device;
601.} CSTAQueryDnd_t;
602.
603.typedef struct CSTAQueryDndConfEvent_t {
604.    Boolean         doNotDisturb;
605.} CSTAQueryDndConfEvent_t;
606.
607.typedef struct CSTAQueryFwd_t {
608.    DeviceID_t      device;
609.} CSTAQueryFwd_t;
610.
611.typedef struct CSTAQueryFwdConfEvent_t {
612.    ListForwardParameters_t forward;
613.} CSTAQueryFwdConfEvent_t;
614.
615.typedef struct CSTAQueryAgentState_t {
616.    DeviceID_t      device;
617.} CSTAQueryAgentState_t;
618.
619.typedef enum AgentState_t {
620.    AG_NOT_READY = 0,
621.    AG_NULL = 1,
622.    AG_READY = 2,
623.    AG_WORK_NOT_READY = 3,
624.    AG_WORK_READY = 4
625.} AgentState_t;
626.
627.typedef struct CSTAQueryAgentStateConfEvent_t {
628.    AgentState_t    agentState;
629.} CSTAQueryAgentStateConfEvent_t;
630.
631.typedef struct CSTAQueryLastNumber_t {
632.    DeviceID_t      device;
633.} CSTAQueryLastNumber_t;
634.
635.typedef struct CSTAQueryLastNumberConfEvent_t {
636.    DeviceID_t      lastNumber;
637.} CSTAQueryLastNumberConfEvent_t;
638.
639.typedef struct CSTAQueryDeviceInfo_t {
640.    DeviceID_t      device;
641.} CSTAQueryDeviceInfo_t;
642.
643.typedef enum DeviceType_t {
644.    DT_STATION = 0,
645.    DT_LINE = 1,
646.    DT_BUTTON = 2,
647.    DT_ACD = 3,
648.    DT_TRUNK = 4,
649.    DT_OPERATOR = 5,
650.    DT_STATION_GROUP = 16,
651.    DT_LINE_GROUP = 17,
652.    DT_BUTTON_GROUP = 18,
653.    DT_ACD_GROUP = 19,
654.    DT_TRUNK_GROUP = 20,
655.    DT_OPERATOR_GROUP = 21,
656.    DT_OTHER = 255
657.} DeviceType_t;
658.
659.typedef unsigned char   DeviceClass_t;
660.#define                     DC_VOICE 0x80
661.#define                     DC_DATA 0x40
662.#define                     DC_IMAGE 0x20
663.#define                     DC_OTHER 0x10
664.
665.typedef struct CSTAQueryDeviceInfoConfEvent_t {
666.    DeviceID_t      device;
667.    DeviceType_t    deviceType;
668.    DeviceClass_t   deviceClass;
669.} CSTAQueryDeviceInfoConfEvent_t;
670.
671.typedef struct CSTAReconnectCall_t {
672.    ConnectionID_t  activeCall;
673.    ConnectionID_t  heldCall;
674.} CSTAReconnectCall_t;
675.
676.typedef struct CSTAReconnectCallConfEvent_t {
677.    Nulltype        null;
678.} CSTAReconnectCallConfEvent_t;
679.
680.typedef struct CSTARetrieveCall_t {
681.    ConnectionID_t  heldCall;
682.} CSTARetrieveCall_t;
683.
684.typedef struct CSTARetrieveCallConfEvent_t {
685.    Nulltype        null;
686.} CSTARetrieveCallConfEvent_t;
687.
688.typedef struct CSTASetMwi_t {
689.    DeviceID_t      device;
690.    Boolean         messages;
691.} CSTASetMwi_t;
692.
693.typedef struct CSTASetMwiConfEvent_t {
694.    Nulltype        null;
695.} CSTASetMwiConfEvent_t;
696.
697.typedef struct CSTASetDnd_t {
698.    DeviceID_t      device;
699.    Boolean         doNotDisturb;
700.} CSTASetDnd_t;
701.
702.typedef struct CSTASetDndConfEvent_t {
703.    Nulltype        null;
704.} CSTASetDndConfEvent_t;
705.
706.typedef struct CSTASetFwd_t {
707.    DeviceID_t      device;
708.    ForwardingInfo_t forward;
709.} CSTASetFwd_t;
710.
711.typedef struct CSTASetFwdConfEvent_t {
712.    Nulltype        null;
713.} CSTASetFwdConfEvent_t;
714.
715.typedef enum AgentMode_t {
716.    AM_LOG_IN = 0,
717.    AM_LOG_OUT = 1,
718.    AM_NOT_READY = 2,
719.    AM_READY = 3,
720.    AM_WORK_NOT_READY = 4,
721.    AM_WORK_READY = 5
722.} AgentMode_t;
723.
724.typedef struct CSTASetAgentState_t {
725.    DeviceID_t      device;
726.    AgentMode_t     agentMode;
727.    AgentID_t       agentID;
728.    AgentGroup_t    agentGroup;
729.    AgentPassword_t agentPassword;
730.} CSTASetAgentState_t;
731.
732.typedef struct CSTASetAgentStateConfEvent_t {
733.    Nulltype        null;
734.} CSTASetAgentStateConfEvent_t;
735.
736.typedef struct CSTATransferCall_t {
737.    ConnectionID_t  heldCall;
738.    ConnectionID_t  activeCall;
739.} CSTATransferCall_t;
740.
741.typedef struct CSTATransferCallConfEvent_t {
742.    ConnectionID_t  newCall;
743.    ConnectionList_t connList;
744.} CSTATransferCallConfEvent_t;
745.
746.typedef struct CSTAUniversalFailureConfEvent_t {
747.    CSTAUniversalFailure_t error;
748.} CSTAUniversalFailureConfEvent_t;
749.
750.typedef struct CSTACallClearedEvent_t {
751.    ConnectionID_t  clearedCall;
752.    LocalConnectionState_t localConnectionInfo;
753.    CSTAEventCause_t cause;
754.} CSTACallClearedEvent_t;
755.
756.typedef struct CSTAConferencedEvent_t {
757.    ConnectionID_t  primaryOldCall;
758.    ConnectionID_t  secondaryOldCall;
759.    SubjectDeviceID_t confController;
760.    SubjectDeviceID_t addedParty;
761.    ConnectionList_t conferenceConnections;
762.    LocalConnectionState_t localConnectionInfo;
763.    CSTAEventCause_t cause;
764.} CSTAConferencedEvent_t;
765.
766.typedef struct CSTAConnectionClearedEvent_t {
767.    ConnectionID_t  droppedConnection;
768.    SubjectDeviceID_t releasingDevice;
769.    LocalConnectionState_t localConnectionInfo;
770.    CSTAEventCause_t cause;
771.} CSTAConnectionClearedEvent_t;
772.
773.typedef struct CSTADeliveredEvent_t {
774.    ConnectionID_t  connection;
775.    SubjectDeviceID_t alertingDevice;
776.    CallingDeviceID_t callingDevice;
777.    CalledDeviceID_t calledDevice;
778.    RedirectionDeviceID_t lastRedirectionDevice;
779.    LocalConnectionState_t localConnectionInfo;
780.    CSTAEventCause_t cause;
781.} CSTADeliveredEvent_t;
782.
783.typedef struct CSTADivertedEvent_t {
784.    ConnectionID_t  connection;
785.    SubjectDeviceID_t divertingDevice;
786.    CalledDeviceID_t newDestination;
787.    LocalConnectionState_t localConnectionInfo;
788.    CSTAEventCause_t cause;
789.} CSTADivertedEvent_t;
790.
791.typedef struct CSTAEstablishedEvent_t {
792.    ConnectionID_t  establishedConnection;
793.    SubjectDeviceID_t answeringDevice;
794.    CallingDeviceID_t callingDevice;
795.    CalledDeviceID_t calledDevice;
796.    RedirectionDeviceID_t lastRedirectionDevice;
797.    LocalConnectionState_t localConnectionInfo;
798.    CSTAEventCause_t cause;
799.} CSTAEstablishedEvent_t;
800.
801.typedef struct CSTAFailedEvent_t {
802.    ConnectionID_t  failedConnection;
803.    SubjectDeviceID_t failingDevice;
804.    CalledDeviceID_t calledDevice;
805.    LocalConnectionState_t localConnectionInfo;
806.    CSTAEventCause_t cause;
807.} CSTAFailedEvent_t;
808.
809.typedef struct CSTAHeldEvent_t {
810.    ConnectionID_t  heldConnection;
811.    SubjectDeviceID_t holdingDevice;
812.    LocalConnectionState_t localConnectionInfo;
813.    CSTAEventCause_t cause;
814.} CSTAHeldEvent_t;
815.
816.typedef struct CSTANetworkReachedEvent_t {
817.    ConnectionID_t  connection;
818.    SubjectDeviceID_t trunkUsed;
819.    CalledDeviceID_t calledDevice;
820.    LocalConnectionState_t localConnectionInfo;
821.    CSTAEventCause_t cause;
822.} CSTANetworkReachedEvent_t;
823.
824.typedef struct CSTAOriginatedEvent_t {
825.    ConnectionID_t  originatedConnection;
826.    SubjectDeviceID_t callingDevice;
827.    CalledDeviceID_t calledDevice;
828.    LocalConnectionState_t localConnectionInfo;
829.    CSTAEventCause_t cause;
830.} CSTAOriginatedEvent_t;
831.
832.typedef struct CSTAQueuedEvent_t {
833.    ConnectionID_t  queuedConnection;
834.    SubjectDeviceID_t queue;
835.    CallingDeviceID_t callingDevice;
836.    CalledDeviceID_t calledDevice;
837.    RedirectionDeviceID_t lastRedirectionDevice;
838.    short           numberQueued;
839.    LocalConnectionState_t localConnectionInfo;
840.    CSTAEventCause_t cause;
841.} CSTAQueuedEvent_t;
842.
843.typedef struct CSTARetrievedEvent_t {
844.    ConnectionID_t  retrievedConnection;
845.    SubjectDeviceID_t retrievingDevice;
846.    LocalConnectionState_t localConnectionInfo;
847.    CSTAEventCause_t cause;
848.} CSTARetrievedEvent_t;
849.
850.typedef struct CSTAServiceInitiatedEvent_t {
851.    ConnectionID_t  initiatedConnection;
852.    LocalConnectionState_t localConnectionInfo;
853.    CSTAEventCause_t cause;
854.} CSTAServiceInitiatedEvent_t;
855.
856.typedef struct CSTATransferredEvent_t {
857.    ConnectionID_t  primaryOldCall;
858.    ConnectionID_t  secondaryOldCall;
859.    SubjectDeviceID_t transferringDevice;
860.    SubjectDeviceID_t transferredDevice;
861.    ConnectionList_t transferredConnections;
862.    LocalConnectionState_t localConnectionInfo;
863.    CSTAEventCause_t cause;
864.} CSTATransferredEvent_t;
865.
866.typedef struct CSTACallInformationEvent_t {
867.    ConnectionID_t  connection;
868.    SubjectDeviceID_t device;
869.    AccountInfo_t   accountInfo;
870.    AuthCode_t      authorisationCode;
871.} CSTACallInformationEvent_t;
872.
873.typedef struct CSTADoNotDisturbEvent_t {
874.    SubjectDeviceID_t device;
875.    Boolean         doNotDisturbOn;
876.} CSTADoNotDisturbEvent_t;
877.
878.typedef struct CSTAForwardingEvent_t {
879.    SubjectDeviceID_t device;
880.    ForwardingInfo_t forwardingInformation;
881.} CSTAForwardingEvent_t;
882.
883.typedef struct CSTAMessageWaitingEvent_t {
884.    CalledDeviceID_t deviceForMessage;
885.    SubjectDeviceID_t invokingDevice;
886.    Boolean         messageWaitingOn;
887.} CSTAMessageWaitingEvent_t;
888.
889.typedef struct CSTALoggedOnEvent_t {
890.    SubjectDeviceID_t agentDevice;
891.    AgentID_t       agentID;
892.    AgentGroup_t    agentGroup;
893.    AgentPassword_t password;
894.} CSTALoggedOnEvent_t;
895.
896.typedef struct CSTALoggedOffEvent_t {
897.    SubjectDeviceID_t agentDevice;
898.    AgentID_t       agentID;
899.    AgentGroup_t    agentGroup;
900.} CSTALoggedOffEvent_t;
901.
902.typedef struct CSTANotReadyEvent_t {
903.    SubjectDeviceID_t agentDevice;
904.    AgentID_t       agentID;
905.} CSTANotReadyEvent_t;
906.
907.typedef struct CSTAReadyEvent_t {
908.    SubjectDeviceID_t agentDevice;
909.    AgentID_t       agentID;
910.} CSTAReadyEvent_t;
911.
912.typedef struct CSTAWorkNotReadyEvent_t {
913.    SubjectDeviceID_t agentDevice;
914.    AgentID_t       agentID;
915.} CSTAWorkNotReadyEvent_t;
916.
917.typedef struct CSTAWorkReadyEvent_t {
918.    SubjectDeviceID_t agentDevice;
919.    AgentID_t       agentID;
920.} CSTAWorkReadyEvent_t;
921.
922.typedef struct CSTARouteRegisterReq_t {
923.    DeviceID_t      routingDevice;
924.} CSTARouteRegisterReq_t;
925.
926.typedef struct CSTARouteRegisterReqConfEvent_t {
927.    RouteRegisterReqID_t registerReqID;
928.} CSTARouteRegisterReqConfEvent_t;
929.
930.typedef struct CSTARouteRegisterCancel_t {
931.    RouteRegisterReqID_t routeRegisterReqID;
932.} CSTARouteRegisterCancel_t;
933.
934.typedef struct CSTARouteRegisterCancelConfEvent_t {
935.    RouteRegisterReqID_t routeRegisterReqID;
936.} CSTARouteRegisterCancelConfEvent_t;
937.
938.typedef struct CSTARouteRegisterAbortEvent_t {
939.    RouteRegisterReqID_t routeRegisterReqID;
940.} CSTARouteRegisterAbortEvent_t;
941.
942.typedef struct CSTARouteRequestEvent_t {
943.    RouteRegisterReqID_t routeRegisterReqID;
944.    RoutingCrossRefID_t routingCrossRefID;
945.    DeviceID_t      currentRoute;
946.    DeviceID_t      callingDevice;
947.    ConnectionID_t  routedCall;
948.    SelectValue_t   routedSelAlgorithm;
949.    Boolean         priority;
950.    SetUpValues_t   setupInformation;
951.} CSTARouteRequestEvent_t;
952.
953.typedef struct CSTARouteSelectRequest_t {
954.    RouteRegisterReqID_t routeRegisterReqID;
955.    RoutingCrossRefID_t routingCrossRefID;
956.    DeviceID_t      routeSelected;
957.    RetryValue_t    remainRetry;
958.    SetUpValues_t   setupInformation;
959.    Boolean         routeUsedReq;
960.} CSTARouteSelectRequest_t;
961.
962.typedef struct CSTAReRouteRequest_t {
963.    RouteRegisterReqID_t routeRegisterReqID;
964.    RoutingCrossRefID_t routingCrossRefID;
965.} CSTAReRouteRequest_t;
966.
967.typedef struct CSTARouteUsedEvent_t {
968.    RouteRegisterReqID_t routeRegisterReqID;
969.    RoutingCrossRefID_t routingCrossRefID;
970.    DeviceID_t      routeUsed;
971.    DeviceID_t      callingDevice;
972.    Boolean         domain;
973.} CSTARouteUsedEvent_t;
974.
975.typedef struct CSTARouteEndEvent_t {
976.    RouteRegisterReqID_t routeRegisterReqID;
977.    RoutingCrossRefID_t routingCrossRefID;
978.    CSTAUniversalFailure_t errorValue;
979.} CSTARouteEndEvent_t;
980.
981.typedef struct CSTARouteEndRequest_t {
982.    RouteRegisterReqID_t routeRegisterReqID;
983.    RoutingCrossRefID_t routingCrossRefID;
984.    CSTAUniversalFailure_t errorValue;
985.} CSTARouteEndRequest_t;
986.
987.typedef struct CSTAEscapeSvc_t {
988.    Nulltype        null;
989.} CSTAEscapeSvc_t;
990.
991.typedef struct CSTAEscapeSvcConfEvent_t {
992.    Nulltype        null;
993.} CSTAEscapeSvcConfEvent_t;
994.
995.typedef struct CSTAEscapeSvcReqEvent_t {
996.    Nulltype        null;
997.} CSTAEscapeSvcReqEvent_t;
998.
999.typedef struct CSTAEscapeSvcReqConf_t {
1000.    CSTAUniversalFailure_t errorValue;
1001.} CSTAEscapeSvcReqConf_t;
1002.
1003.typedef struct CSTAPrivateEvent_t {
1004.    Nulltype        null;
1005.} CSTAPrivateEvent_t;
1006.
1007.typedef struct CSTAPrivateStatusEvent_t {
1008.    Nulltype        null;
1009.} CSTAPrivateStatusEvent_t;
1010.
1011.typedef struct CSTASendPrivateEvent_t {
1012.    Nulltype        null;
1013.} CSTASendPrivateEvent_t;
1014.
1015.typedef struct CSTABackInServiceEvent_t {
1016.    DeviceID_t      device;
1017.    CSTAEventCause_t cause;
1018.} CSTABackInServiceEvent_t;
1019.
1020.typedef struct CSTAOutOfServiceEvent_t {
1021.    DeviceID_t      device;
1022.    CSTAEventCause_t cause;
1023.} CSTAOutOfServiceEvent_t;
1024.
1025.typedef enum SystemStatus_t {
1026.    SS_INITIALIZING = 0,
1027.    SS_ENABLED = 1,
1028.    SS_NORMAL = 2,
1029.    SS_MESSAGES_LOST = 3,
1030.    SS_DISABLED = 4,
1031.    SS_OVERLOAD_IMMINENT = 5,
1032.    SS_OVERLOAD_REACHED = 6,
1033.    SS_OVERLOAD_RELIEVED = 7
1034.} SystemStatus_t;
1035.
1036.typedef unsigned char   SystemStatusFilter_t;
1037.#define                     SF_INITIALIZING 0x80
1038.#define                     SF_ENABLED 0x40
1039.#define                     SF_NORMAL 0x20
1040.#define                     SF_MESSAGES_LOST 0x10
1041.#define                     SF_DISABLED 0x08
1042.#define                     SF_OVERLOAD_IMMINENT 0x04
1043.#define                     SF_OVERLOAD_REACHED 0x02
1044.#define                     SF_OVERLOAD_RELIEVED 0x01
1045.
1046.typedef struct CSTAReqSysStat_t {
1047.    Nulltype        null;
1048.} CSTAReqSysStat_t;
1049.
1050.typedef struct CSTASysStatReqConfEvent_t {
1051.    SystemStatus_t  systemStatus;
1052.} CSTASysStatReqConfEvent_t;
1053.
1054.typedef struct CSTASysStatStart_t {
1055.    SystemStatusFilter_t statusFilter;
1056.} CSTASysStatStart_t;
1057.
1058.typedef struct CSTASysStatStartConfEvent_t {
1059.    SystemStatusFilter_t statusFilter;
1060.} CSTASysStatStartConfEvent_t;
1061.
1062.typedef struct CSTASysStatStop_t {
1063.    Nulltype        null;
1064.} CSTASysStatStop_t;
1065.
1066.typedef struct CSTASysStatStopConfEvent_t {
1067.    Nulltype        null;
1068.} CSTASysStatStopConfEvent_t;
1069.
1070.typedef struct CSTAChangeSysStatFilter_t {
1071.    SystemStatusFilter_t statusFilter;
1072.} CSTAChangeSysStatFilter_t;
1073.
1074.typedef struct CSTAChangeSysStatFilterConfEvent_t {
1075.    SystemStatusFilter_t statusFilterSelected;
1076.    SystemStatusFilter_t statusFilterActive;
1077.} CSTAChangeSysStatFilterConfEvent_t;
1078.
1079.typedef struct CSTASysStatEvent_t {
1080.    SystemStatus_t  systemStatus;
1081.} CSTASysStatEvent_t;
1082.
1083.typedef struct CSTASysStatEndedEvent_t {
1084.    Nulltype        null;
1085.} CSTASysStatEndedEvent_t;
1086.
1087.typedef struct CSTASysStatReqEvent_t {
1088.    Nulltype        null;
1089.} CSTASysStatReqEvent_t;
1090.
1091.typedef struct CSTAReqSysStatConf_t {
1092.    SystemStatus_t  systemStatus;
1093.} CSTAReqSysStatConf_t;
1094.
1095.typedef struct CSTASysStatEventSend_t {
1096.    SystemStatus_t  systemStatus;
1097.} CSTASysStatEventSend_t;
1098.
1099.typedef struct CSTAMonitorDevice_t {
1100.    DeviceID_t      deviceID;
1101.    CSTAMonitorFilter_t monitorFilter;
1102.} CSTAMonitorDevice_t;
1103.
1104.typedef struct CSTAMonitorCall_t {
1105.    ConnectionID_t  call;
1106.    CSTAMonitorFilter_t monitorFilter;
1107.} CSTAMonitorCall_t;
1108.
1109.typedef struct CSTAMonitorCallsViaDevice_t {
1110.    DeviceID_t      deviceID;
1111.    CSTAMonitorFilter_t monitorFilter;
1112.} CSTAMonitorCallsViaDevice_t;
1113.
1114.typedef struct CSTAMonitorConfEvent_t {
1115.    CSTAMonitorCrossRefID_t monitorCrossRefID;
1116.    CSTAMonitorFilter_t monitorFilter;
1117.} CSTAMonitorConfEvent_t;
1118.
1119.typedef struct CSTAChangeMonitorFilter_t {
1120.    CSTAMonitorCrossRefID_t monitorCrossRefID;
1121.    CSTAMonitorFilter_t monitorFilter;
1122.} CSTAChangeMonitorFilter_t;
1123.
1124.typedef struct CSTAChangeMonitorFilterConfEvent_t {
1125.    CSTAMonitorFilter_t monitorFilter;
1126.} CSTAChangeMonitorFilterConfEvent_t;
1127.
1128.typedef struct CSTAMonitorStop_t {
1129.    CSTAMonitorCrossRefID_t monitorCrossRefID;
1130.} CSTAMonitorStop_t;
1131.
1132.typedef struct CSTAMonitorStopConfEvent_t {
1133.    Nulltype        null;
1134.} CSTAMonitorStopConfEvent_t;
1135.
1136.typedef struct CSTAMonitorEndedEvent_t {
1137.    CSTAEventCause_t cause;
1138.} CSTAMonitorEndedEvent_t;
1139.
1140.typedef struct CSTASnapshotCall_t {
1141.    ConnectionID_t  snapshotObject;
1142.} CSTASnapshotCall_t;
1143.
1144.typedef struct CSTASnapshotCallConfEvent_t {
1145.    CSTASnapshotCallData_t snapshotData;
1146.} CSTASnapshotCallConfEvent_t;
1147.
1148.typedef struct CSTASnapshotDevice_t {
1149.    DeviceID_t      snapshotObject;
1150.} CSTASnapshotDevice_t;
1151.
1152.typedef struct CSTASnapshotDeviceConfEvent_t {
1153.    CSTASnapshotDeviceData_t snapshotData;
1154.} CSTASnapshotDeviceConfEvent_t;
1155.
1156.typedef struct CSTAGetAPICaps_t {
1157.    Nulltype        null;
1158.} CSTAGetAPICaps_t;
1159.
1160.typedef struct CSTAGetAPICapsConfEvent_t {
1161.    short           alternateCall;
1162.    short           answerCall;
1163.    short           callCompletion;
1164.    short           clearCall;
1165.    short           clearConnection;
1166.    short           conferenceCall;
1167.    short           consultationCall;
1168.    short           deflectCall;
1169.    short           pickupCall;
1170.    short           groupPickupCall;
1171.    short           holdCall;
1172.    short           makeCall;
1173.    short           makePredictiveCall;
1174.    short           queryMwi;
1175.    short           queryDnd;
1176.    short           queryFwd;
1177.    short           queryAgentState;
1178.    short           queryLastNumber;
1179.    short           queryDeviceInfo;
1180.    short           reconnectCall;
1181.    short           retrieveCall;
1182.    short           setMwi;
1183.    short           setDnd;
1184.    short           setFwd;
1185.    short           setAgentState;
1186.    short           transferCall;
1187.    short           eventReport;
1188.    short           callClearedEvent;
1189.    short           conferencedEvent;
1190.    short           connectionClearedEvent;
1191.    short           deliveredEvent;
1192.    short           divertedEvent;
1193.    short           establishedEvent;
1194.    short           failedEvent;
1195.    short           heldEvent;
1196.    short           networkReachedEvent;
1197.    short           originatedEvent;
1198.    short           queuedEvent;
1199.    short           retrievedEvent;
1200.    short           serviceInitiatedEvent;
1201.    short           transferredEvent;
1202.    short           callInformationEvent;
1203.    short           doNotDisturbEvent;
1204.    short           forwardingEvent;
1205.    short           messageWaitingEvent;
1206.    short           loggedOnEvent;
1207.    short           loggedOffEvent;
1208.    short           notReadyEvent;
1209.    short           readyEvent;
1210.    short           workNotReadyEvent;
1211.    short           workReadyEvent;
1212.    short           backInServiceEvent;
1213.    short           outOfServiceEvent;
1214.    short           privateEvent;
1215.    short           routeRequestEvent;
1216.    short           reRoute;
1217.    short           routeSelect;
1218.    short           routeUsedEvent;
1219.    short           routeEndEvent;
1220.    short           monitorDevice;
1221.    short           monitorCall;
1222.    short           monitorCallsViaDevice;
1223.    short           changeMonitorFilter;
1224.    short           monitorStop;
1225.    short           monitorEnded;
1226.    short           snapshotDeviceReq;
1227.    short           snapshotCallReq;
1228.    short           escapeService;
1229.    short           privateStatusEvent;
1230.    short           escapeServiceEvent;
1231.    short           escapeServiceConf;
1232.    short           sendPrivateEvent;
1233.    short           sysStatReq;
1234.    short           sysStatStart;
1235.    short           sysStatStop;
1236.    short           changeSysStatFilter;
1237.    short           sysStatReqEvent;
1238.    short           sysStatReqConf;
1239.    short           sysStatEvent;
1240.} CSTAGetAPICapsConfEvent_t;
1241.
1242.typedef enum CSTALevel_t {
1243.    CSTA_HOME_WORK_TOP = 1,
1244.    CSTA_AWAY_WORK_TOP = 2,
1245.    CSTA_DEVICE_DEVICE_MONITOR = 3,
1246.    CSTA_CALL_DEVICE_MONITOR = 4,
1247.    CSTA_CALL_CONTROL = 5,
1248.    CSTA_ROUTING = 6,
1249.    CSTA_CALL_CALL_MONITOR = 7
1250.} CSTALevel_t;
1251.
1252.typedef enum SDBLevel_t {
1253.    NO_SDB_CHECKING = -1,
1254.    ACS_ONLY = 1,
1255.    ACS_AND_CSTA_CHECKING = 0
1256.} SDBLevel_t;
1257.
1258.typedef struct CSTAGetDeviceList_t {
1259.    long            index;
1260.    CSTALevel_t     level;
1261.} CSTAGetDeviceList_t;
1262.
1263.typedef struct DeviceList_t {
1264.    short           count;
1265.    DeviceID_t      device[20];
1266.} DeviceList_t;
1267.
1268.typedef struct CSTAGetDeviceListConfEvent_t {
1269.    SDBLevel_t      driverSdbLevel;
1270.    CSTALevel_t     level;
1271.    long            index;
1272.    DeviceList_t    devList;
1273.} CSTAGetDeviceListConfEvent_t;
1274.
1275.typedef struct CSTAQueryCallMonitor_t {
1276.    Nulltype        null;
1277.} CSTAQueryCallMonitor_t;
1278.
1279.typedef struct CSTAQueryCallMonitorConfEvent_t {
1280.    Boolean         callMonitor;
1281.} CSTAQueryCallMonitorConfEvent_t;
1282.
1283.typedef struct CSTARouteRequestExtEvent_t {
1284.    RouteRegisterReqID_t routeRegisterReqID;
1285.    RoutingCrossRefID_t routingCrossRefID;
1286.    CalledDeviceID_t currentRoute;
1287.    CallingDeviceID_t callingDevice;
1288.    ConnectionID_t  routedCall;
1289.    SelectValue_t   routedSelAlgorithm;
1290.    Boolean         priority;
1291.    SetUpValues_t   setupInformation;
1292.} CSTARouteRequestExtEvent_t;
1293.
1294.typedef struct CSTARouteUsedExtEvent_t {
1295.    RouteRegisterReqID_t routeRegisterReqID;
1296.    RoutingCrossRefID_t routingCrossRefID;
1297.    CalledDeviceID_t routeUsed;
1298.    CallingDeviceID_t callingDevice;
1299.    Boolean         domain;
1300.} CSTARouteUsedExtEvent_t;
1301.
1302.typedef CSTARouteSelectRequest_t CSTARouteSelectInvRequest_t;
1303.
1304.typedef CSTARouteEndRequest_t CSTARouteEndInvRequest_t;
1305.
1306.
1307.extern void FAR *csta_asn_tbl;    /* encoder-decoder control table */
1308.
1309.#endif
1310.