@webex/contact-center 0.0.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +81 -0
- package/__mocks__/workerMock.js +15 -0
- package/babel.config.js +15 -0
- package/dist/cc.js +1416 -0
- package/dist/cc.js.map +1 -0
- package/dist/config.js +72 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.js +58 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.js +142 -0
- package/dist/index.js.map +1 -0
- package/dist/logger-proxy.js +115 -0
- package/dist/logger-proxy.js.map +1 -0
- package/dist/metrics/MetricsManager.js +474 -0
- package/dist/metrics/MetricsManager.js.map +1 -0
- package/dist/metrics/behavioral-events.js +322 -0
- package/dist/metrics/behavioral-events.js.map +1 -0
- package/dist/metrics/constants.js +134 -0
- package/dist/metrics/constants.js.map +1 -0
- package/dist/services/WebCallingService.js +323 -0
- package/dist/services/WebCallingService.js.map +1 -0
- package/dist/services/agent/index.js +177 -0
- package/dist/services/agent/index.js.map +1 -0
- package/dist/services/agent/types.js +137 -0
- package/dist/services/agent/types.js.map +1 -0
- package/dist/services/config/Util.js +203 -0
- package/dist/services/config/Util.js.map +1 -0
- package/dist/services/config/constants.js +221 -0
- package/dist/services/config/constants.js.map +1 -0
- package/dist/services/config/index.js +607 -0
- package/dist/services/config/index.js.map +1 -0
- package/dist/services/config/types.js +334 -0
- package/dist/services/config/types.js.map +1 -0
- package/dist/services/constants.js +117 -0
- package/dist/services/constants.js.map +1 -0
- package/dist/services/core/Err.js +43 -0
- package/dist/services/core/Err.js.map +1 -0
- package/dist/services/core/GlobalTypes.js +6 -0
- package/dist/services/core/GlobalTypes.js.map +1 -0
- package/dist/services/core/Utils.js +126 -0
- package/dist/services/core/Utils.js.map +1 -0
- package/dist/services/core/WebexRequest.js +96 -0
- package/dist/services/core/WebexRequest.js.map +1 -0
- package/dist/services/core/aqm-reqs.js +246 -0
- package/dist/services/core/aqm-reqs.js.map +1 -0
- package/dist/services/core/constants.js +109 -0
- package/dist/services/core/constants.js.map +1 -0
- package/dist/services/core/types.js +6 -0
- package/dist/services/core/types.js.map +1 -0
- package/dist/services/core/websocket/WebSocketManager.js +187 -0
- package/dist/services/core/websocket/WebSocketManager.js.map +1 -0
- package/dist/services/core/websocket/connection-service.js +111 -0
- package/dist/services/core/websocket/connection-service.js.map +1 -0
- package/dist/services/core/websocket/keepalive.worker.js +94 -0
- package/dist/services/core/websocket/keepalive.worker.js.map +1 -0
- package/dist/services/core/websocket/types.js +6 -0
- package/dist/services/core/websocket/types.js.map +1 -0
- package/dist/services/index.js +78 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/task/AutoWrapup.js +88 -0
- package/dist/services/task/AutoWrapup.js.map +1 -0
- package/dist/services/task/TaskManager.js +369 -0
- package/dist/services/task/TaskManager.js.map +1 -0
- package/dist/services/task/constants.js +58 -0
- package/dist/services/task/constants.js.map +1 -0
- package/dist/services/task/contact.js +464 -0
- package/dist/services/task/contact.js.map +1 -0
- package/dist/services/task/dialer.js +60 -0
- package/dist/services/task/dialer.js.map +1 -0
- package/dist/services/task/index.js +1188 -0
- package/dist/services/task/index.js.map +1 -0
- package/dist/services/task/types.js +214 -0
- package/dist/services/task/types.js.map +1 -0
- package/dist/types/cc.d.ts +676 -0
- package/dist/types/config.d.ts +66 -0
- package/dist/types/constants.d.ts +45 -0
- package/dist/types/index.d.ts +178 -0
- package/dist/types/logger-proxy.d.ts +71 -0
- package/dist/types/metrics/MetricsManager.d.ts +223 -0
- package/dist/types/metrics/behavioral-events.d.ts +29 -0
- package/dist/types/metrics/constants.d.ts +127 -0
- package/dist/types/services/WebCallingService.d.ts +1 -0
- package/dist/types/services/agent/index.d.ts +46 -0
- package/dist/types/services/agent/types.d.ts +413 -0
- package/dist/types/services/config/Util.d.ts +19 -0
- package/dist/types/services/config/constants.d.ts +203 -0
- package/dist/types/services/config/index.d.ts +171 -0
- package/dist/types/services/config/types.d.ts +1113 -0
- package/dist/types/services/constants.d.ts +97 -0
- package/dist/types/services/core/Err.d.ts +119 -0
- package/dist/types/services/core/GlobalTypes.d.ts +33 -0
- package/dist/types/services/core/Utils.d.ts +36 -0
- package/dist/types/services/core/WebexRequest.d.ts +22 -0
- package/dist/types/services/core/aqm-reqs.d.ts +16 -0
- package/dist/types/services/core/constants.d.ts +85 -0
- package/dist/types/services/core/types.d.ts +47 -0
- package/dist/types/services/core/websocket/WebSocketManager.d.ts +34 -0
- package/dist/types/services/core/websocket/connection-service.d.ts +27 -0
- package/dist/types/services/core/websocket/keepalive.worker.d.ts +2 -0
- package/dist/types/services/core/websocket/types.d.ts +37 -0
- package/dist/types/services/index.d.ts +52 -0
- package/dist/types/services/task/AutoWrapup.d.ts +40 -0
- package/dist/types/services/task/TaskManager.d.ts +1 -0
- package/dist/types/services/task/constants.d.ts +46 -0
- package/dist/types/services/task/contact.d.ts +59 -0
- package/dist/types/services/task/dialer.d.ts +28 -0
- package/dist/types/services/task/index.d.ts +569 -0
- package/dist/types/services/task/types.d.ts +1041 -0
- package/dist/types/types.d.ts +452 -0
- package/dist/types/webex-config.d.ts +53 -0
- package/dist/types/webex.d.ts +7 -0
- package/dist/types.js +292 -0
- package/dist/types.js.map +1 -0
- package/dist/webex-config.js +60 -0
- package/dist/webex-config.js.map +1 -0
- package/dist/webex.js +99 -0
- package/dist/webex.js.map +1 -0
- package/jest.config.js +45 -0
- package/package.json +83 -0
- package/src/cc.ts +1618 -0
- package/src/config.ts +65 -0
- package/src/constants.ts +51 -0
- package/src/index.ts +220 -0
- package/src/logger-proxy.ts +110 -0
- package/src/metrics/MetricsManager.ts +512 -0
- package/src/metrics/behavioral-events.ts +332 -0
- package/src/metrics/constants.ts +135 -0
- package/src/services/WebCallingService.ts +351 -0
- package/src/services/agent/index.ts +149 -0
- package/src/services/agent/types.ts +440 -0
- package/src/services/config/Util.ts +261 -0
- package/src/services/config/constants.ts +249 -0
- package/src/services/config/index.ts +743 -0
- package/src/services/config/types.ts +1117 -0
- package/src/services/constants.ts +111 -0
- package/src/services/core/Err.ts +126 -0
- package/src/services/core/GlobalTypes.ts +34 -0
- package/src/services/core/Utils.ts +132 -0
- package/src/services/core/WebexRequest.ts +103 -0
- package/src/services/core/aqm-reqs.ts +272 -0
- package/src/services/core/constants.ts +106 -0
- package/src/services/core/types.ts +48 -0
- package/src/services/core/websocket/WebSocketManager.ts +196 -0
- package/src/services/core/websocket/connection-service.ts +142 -0
- package/src/services/core/websocket/keepalive.worker.js +88 -0
- package/src/services/core/websocket/types.ts +40 -0
- package/src/services/index.ts +71 -0
- package/src/services/task/AutoWrapup.ts +86 -0
- package/src/services/task/TaskManager.ts +420 -0
- package/src/services/task/constants.ts +52 -0
- package/src/services/task/contact.ts +429 -0
- package/src/services/task/dialer.ts +52 -0
- package/src/services/task/index.ts +1375 -0
- package/src/services/task/types.ts +1113 -0
- package/src/types.ts +639 -0
- package/src/webex-config.ts +54 -0
- package/src/webex.js +96 -0
- package/test/unit/spec/cc.ts +1985 -0
- package/test/unit/spec/metrics/MetricsManager.ts +491 -0
- package/test/unit/spec/metrics/behavioral-events.ts +102 -0
- package/test/unit/spec/services/WebCallingService.ts +416 -0
- package/test/unit/spec/services/agent/index.ts +65 -0
- package/test/unit/spec/services/config/index.ts +1035 -0
- package/test/unit/spec/services/core/Utils.ts +279 -0
- package/test/unit/spec/services/core/WebexRequest.ts +144 -0
- package/test/unit/spec/services/core/aqm-reqs.ts +570 -0
- package/test/unit/spec/services/core/websocket/WebSocketManager.ts +378 -0
- package/test/unit/spec/services/core/websocket/connection-service.ts +178 -0
- package/test/unit/spec/services/task/TaskManager.ts +1351 -0
- package/test/unit/spec/services/task/contact.ts +204 -0
- package/test/unit/spec/services/task/dialer.ts +157 -0
- package/test/unit/spec/services/task/index.ts +1474 -0
- package/tsconfig.json +6 -0
- package/typedoc.json +37 -0
- package/typedoc.md +240 -0
- package/umd/contact-center.min.js +3 -0
- package/umd/contact-center.min.js.map +1 -0
|
@@ -0,0 +1,1113 @@
|
|
|
1
|
+
import * as Agent from '../agent/types';
|
|
2
|
+
/**
|
|
3
|
+
* Events emitted on task objects
|
|
4
|
+
* @enum {string}
|
|
5
|
+
* @private
|
|
6
|
+
* @ignore
|
|
7
|
+
*/
|
|
8
|
+
export declare const CC_TASK_EVENTS: {
|
|
9
|
+
/** Event emitted when assigning contact to agent fails */
|
|
10
|
+
readonly AGENT_CONTACT_ASSIGN_FAILED: "AgentContactAssignFailed";
|
|
11
|
+
/** Event emitted when agent does not respond to contact offer */
|
|
12
|
+
readonly AGENT_CONTACT_OFFER_RONA: "AgentOfferContactRona";
|
|
13
|
+
/** Event emitted when contact is put on hold */
|
|
14
|
+
readonly AGENT_CONTACT_HELD: "AgentContactHeld";
|
|
15
|
+
/** Event emitted when putting contact on hold fails */
|
|
16
|
+
readonly AGENT_CONTACT_HOLD_FAILED: "AgentContactHoldFailed";
|
|
17
|
+
/** Event emitted when contact is taken off hold */
|
|
18
|
+
readonly AGENT_CONTACT_UNHELD: "AgentContactUnheld";
|
|
19
|
+
/** Event emitted when taking contact off hold fails */
|
|
20
|
+
readonly AGENT_CONTACT_UNHOLD_FAILED: "AgentContactUnHoldFailed";
|
|
21
|
+
/** Event emitted when consultation is created */
|
|
22
|
+
readonly AGENT_CONSULT_CREATED: "AgentConsultCreated";
|
|
23
|
+
/** Event emitted when consultation is offered */
|
|
24
|
+
readonly AGENT_OFFER_CONSULT: "AgentOfferConsult";
|
|
25
|
+
/** Event emitted when agent is consulting */
|
|
26
|
+
readonly AGENT_CONSULTING: "AgentConsulting";
|
|
27
|
+
/** Event emitted when consultation fails */
|
|
28
|
+
readonly AGENT_CONSULT_FAILED: "AgentConsultFailed";
|
|
29
|
+
/** Event emitted when consulting to queue (CTQ) fails */
|
|
30
|
+
readonly AGENT_CTQ_FAILED: "AgentCtqFailed";
|
|
31
|
+
/** Event emitted when CTQ is cancelled */
|
|
32
|
+
readonly AGENT_CTQ_CANCELLED: "AgentCtqCancelled";
|
|
33
|
+
/** Event emitted when CTQ cancellation fails */
|
|
34
|
+
readonly AGENT_CTQ_CANCEL_FAILED: "AgentCtqCancelFailed";
|
|
35
|
+
/** Event emitted when consultation ends */
|
|
36
|
+
readonly AGENT_CONSULT_ENDED: "AgentConsultEnded";
|
|
37
|
+
/** Event emitted when ending consultation fails */
|
|
38
|
+
readonly AGENT_CONSULT_END_FAILED: "AgentConsultEndFailed";
|
|
39
|
+
/** Event emitted when consultation conference ends */
|
|
40
|
+
readonly AGENT_CONSULT_CONFERENCE_ENDED: "AgentConsultConferenceEnded";
|
|
41
|
+
/** Event emitted when contact is blind transferred */
|
|
42
|
+
readonly AGENT_BLIND_TRANSFERRED: "AgentBlindTransferred";
|
|
43
|
+
/** Event emitted when blind transfer fails */
|
|
44
|
+
readonly AGENT_BLIND_TRANSFER_FAILED: "AgentBlindTransferFailed";
|
|
45
|
+
/** Event emitted when contact is transferred to virtual team */
|
|
46
|
+
readonly AGENT_VTEAM_TRANSFERRED: "AgentVteamTransferred";
|
|
47
|
+
/** Event emitted when virtual team transfer fails */
|
|
48
|
+
readonly AGENT_VTEAM_TRANSFER_FAILED: "AgentVteamTransferFailed";
|
|
49
|
+
/** Event emitted when consultation transfer is in progress */
|
|
50
|
+
readonly AGENT_CONSULT_TRANSFERRING: "AgentConsultTransferring";
|
|
51
|
+
/** Event emitted when consultation transfer completes */
|
|
52
|
+
readonly AGENT_CONSULT_TRANSFERRED: "AgentConsultTransferred";
|
|
53
|
+
/** Event emitted when consultation transfer fails */
|
|
54
|
+
readonly AGENT_CONSULT_TRANSFER_FAILED: "AgentConsultTransferFailed";
|
|
55
|
+
/** Event emitted when contact recording is paused */
|
|
56
|
+
readonly CONTACT_RECORDING_PAUSED: "ContactRecordingPaused";
|
|
57
|
+
/** Event emitted when pausing contact recording fails */
|
|
58
|
+
readonly CONTACT_RECORDING_PAUSE_FAILED: "ContactRecordingPauseFailed";
|
|
59
|
+
/** Event emitted when contact recording is resumed */
|
|
60
|
+
readonly CONTACT_RECORDING_RESUMED: "ContactRecordingResumed";
|
|
61
|
+
/** Event emitted when resuming contact recording fails */
|
|
62
|
+
readonly CONTACT_RECORDING_RESUME_FAILED: "ContactRecordingResumeFailed";
|
|
63
|
+
/** Event emitted when contact ends */
|
|
64
|
+
readonly CONTACT_ENDED: "ContactEnded";
|
|
65
|
+
/** Event emitted when ending contact fails */
|
|
66
|
+
readonly AGENT_CONTACT_END_FAILED: "AgentContactEndFailed";
|
|
67
|
+
/** Event emitted when agent enters wrap-up state */
|
|
68
|
+
readonly AGENT_WRAPUP: "AgentWrapup";
|
|
69
|
+
/** Event emitted when agent completes wrap-up */
|
|
70
|
+
readonly AGENT_WRAPPEDUP: "AgentWrappedUp";
|
|
71
|
+
/** Event emitted when wrap-up fails */
|
|
72
|
+
readonly AGENT_WRAPUP_FAILED: "AgentWrapupFailed";
|
|
73
|
+
/** Event emitted when outbound call fails */
|
|
74
|
+
readonly AGENT_OUTBOUND_FAILED: "AgentOutboundFailed";
|
|
75
|
+
/** Event emitted for general agent contact events */
|
|
76
|
+
readonly AGENT_CONTACT: "AgentContact";
|
|
77
|
+
/** Event emitted when contact is offered to agent */
|
|
78
|
+
readonly AGENT_OFFER_CONTACT: "AgentOfferContact";
|
|
79
|
+
/** Event emitted when contact is assigned to agent */
|
|
80
|
+
readonly AGENT_CONTACT_ASSIGNED: "AgentContactAssigned";
|
|
81
|
+
/** Event emitted when contact is unassigned from agent */
|
|
82
|
+
readonly AGENT_CONTACT_UNASSIGNED: "AgentContactUnassigned";
|
|
83
|
+
/** Event emitted when inviting agent fails */
|
|
84
|
+
readonly AGENT_INVITE_FAILED: "AgentInviteFailed";
|
|
85
|
+
};
|
|
86
|
+
/**
|
|
87
|
+
* Events emitted on Contact Center agent operations
|
|
88
|
+
* @enum {string}
|
|
89
|
+
* @private
|
|
90
|
+
* @ignore
|
|
91
|
+
*/
|
|
92
|
+
export declare const CC_AGENT_EVENTS: {
|
|
93
|
+
/** Welcome event when agent connects to websocket/backend */
|
|
94
|
+
readonly WELCOME: "Welcome";
|
|
95
|
+
/** Event emitted when agent re-login is successful */
|
|
96
|
+
readonly AGENT_RELOGIN_SUCCESS: "AgentReloginSuccess";
|
|
97
|
+
/** Event emitted when agent re-login fails */
|
|
98
|
+
readonly AGENT_RELOGIN_FAILED: "AgentReloginFailed";
|
|
99
|
+
/** Event emitted when agent DN registration completes */
|
|
100
|
+
readonly AGENT_DN_REGISTERED: "AgentDNRegistered";
|
|
101
|
+
/** Event emitted when agent initiates logout */
|
|
102
|
+
readonly AGENT_LOGOUT: "Logout";
|
|
103
|
+
/** Event emitted when agent logout is successful */
|
|
104
|
+
readonly AGENT_LOGOUT_SUCCESS: "AgentLogoutSuccess";
|
|
105
|
+
/** Event emitted when agent logout fails */
|
|
106
|
+
readonly AGENT_LOGOUT_FAILED: "AgentLogoutFailed";
|
|
107
|
+
/** Event emitted when agent initiates station login */
|
|
108
|
+
readonly AGENT_STATION_LOGIN: "StationLogin";
|
|
109
|
+
/** Event emitted when agent station login is successful */
|
|
110
|
+
readonly AGENT_STATION_LOGIN_SUCCESS: "AgentStationLoginSuccess";
|
|
111
|
+
/** Event emitted when agent station login fails */
|
|
112
|
+
readonly AGENT_STATION_LOGIN_FAILED: "AgentStationLoginFailed";
|
|
113
|
+
/** Event emitted when agent's state changes */
|
|
114
|
+
readonly AGENT_STATE_CHANGE: "AgentStateChange";
|
|
115
|
+
/** Event emitted when multiple logins detected for same agent */
|
|
116
|
+
readonly AGENT_MULTI_LOGIN: "AGENT_MULTI_LOGIN";
|
|
117
|
+
/** Event emitted when agent state change is successful */
|
|
118
|
+
readonly AGENT_STATE_CHANGE_SUCCESS: "AgentStateChangeSuccess";
|
|
119
|
+
/** Event emitted when agent state change fails */
|
|
120
|
+
readonly AGENT_STATE_CHANGE_FAILED: "AgentStateChangeFailed";
|
|
121
|
+
/** Event emitted when requesting buddy agents list */
|
|
122
|
+
readonly AGENT_BUDDY_AGENTS: "BuddyAgents";
|
|
123
|
+
/** Event emitted when buddy agents list is successfully retrieved */
|
|
124
|
+
readonly AGENT_BUDDY_AGENTS_SUCCESS: "BuddyAgents";
|
|
125
|
+
/** Event emitted when retrieving buddy agents list fails */
|
|
126
|
+
readonly AGENT_BUDDY_AGENTS_RETRIEVE_FAILED: "BuddyAgentsRetrieveFailed";
|
|
127
|
+
/** Event emitted when contact is reserved for agent */
|
|
128
|
+
readonly AGENT_CONTACT_RESERVED: "AgentContactReserved";
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* Combined Contact Center events including both agent and task events
|
|
132
|
+
* @enum {string}
|
|
133
|
+
* @public
|
|
134
|
+
*/
|
|
135
|
+
export declare const CC_EVENTS: {
|
|
136
|
+
/** Event emitted when assigning contact to agent fails */
|
|
137
|
+
readonly AGENT_CONTACT_ASSIGN_FAILED: "AgentContactAssignFailed";
|
|
138
|
+
/** Event emitted when agent does not respond to contact offer */
|
|
139
|
+
readonly AGENT_CONTACT_OFFER_RONA: "AgentOfferContactRona";
|
|
140
|
+
/** Event emitted when contact is put on hold */
|
|
141
|
+
readonly AGENT_CONTACT_HELD: "AgentContactHeld";
|
|
142
|
+
/** Event emitted when putting contact on hold fails */
|
|
143
|
+
readonly AGENT_CONTACT_HOLD_FAILED: "AgentContactHoldFailed";
|
|
144
|
+
/** Event emitted when contact is taken off hold */
|
|
145
|
+
readonly AGENT_CONTACT_UNHELD: "AgentContactUnheld";
|
|
146
|
+
/** Event emitted when taking contact off hold fails */
|
|
147
|
+
readonly AGENT_CONTACT_UNHOLD_FAILED: "AgentContactUnHoldFailed";
|
|
148
|
+
/** Event emitted when consultation is created */
|
|
149
|
+
readonly AGENT_CONSULT_CREATED: "AgentConsultCreated";
|
|
150
|
+
/** Event emitted when consultation is offered */
|
|
151
|
+
readonly AGENT_OFFER_CONSULT: "AgentOfferConsult";
|
|
152
|
+
/** Event emitted when agent is consulting */
|
|
153
|
+
readonly AGENT_CONSULTING: "AgentConsulting";
|
|
154
|
+
/** Event emitted when consultation fails */
|
|
155
|
+
readonly AGENT_CONSULT_FAILED: "AgentConsultFailed";
|
|
156
|
+
/** Event emitted when consulting to queue (CTQ) fails */
|
|
157
|
+
readonly AGENT_CTQ_FAILED: "AgentCtqFailed";
|
|
158
|
+
/** Event emitted when CTQ is cancelled */
|
|
159
|
+
readonly AGENT_CTQ_CANCELLED: "AgentCtqCancelled";
|
|
160
|
+
/** Event emitted when CTQ cancellation fails */
|
|
161
|
+
readonly AGENT_CTQ_CANCEL_FAILED: "AgentCtqCancelFailed";
|
|
162
|
+
/** Event emitted when consultation ends */
|
|
163
|
+
readonly AGENT_CONSULT_ENDED: "AgentConsultEnded";
|
|
164
|
+
/** Event emitted when ending consultation fails */
|
|
165
|
+
readonly AGENT_CONSULT_END_FAILED: "AgentConsultEndFailed";
|
|
166
|
+
/** Event emitted when consultation conference ends */
|
|
167
|
+
readonly AGENT_CONSULT_CONFERENCE_ENDED: "AgentConsultConferenceEnded";
|
|
168
|
+
/** Event emitted when contact is blind transferred */
|
|
169
|
+
readonly AGENT_BLIND_TRANSFERRED: "AgentBlindTransferred";
|
|
170
|
+
/** Event emitted when blind transfer fails */
|
|
171
|
+
readonly AGENT_BLIND_TRANSFER_FAILED: "AgentBlindTransferFailed";
|
|
172
|
+
/** Event emitted when contact is transferred to virtual team */
|
|
173
|
+
readonly AGENT_VTEAM_TRANSFERRED: "AgentVteamTransferred";
|
|
174
|
+
/** Event emitted when virtual team transfer fails */
|
|
175
|
+
readonly AGENT_VTEAM_TRANSFER_FAILED: "AgentVteamTransferFailed";
|
|
176
|
+
/** Event emitted when consultation transfer is in progress */
|
|
177
|
+
readonly AGENT_CONSULT_TRANSFERRING: "AgentConsultTransferring";
|
|
178
|
+
/** Event emitted when consultation transfer completes */
|
|
179
|
+
readonly AGENT_CONSULT_TRANSFERRED: "AgentConsultTransferred";
|
|
180
|
+
/** Event emitted when consultation transfer fails */
|
|
181
|
+
readonly AGENT_CONSULT_TRANSFER_FAILED: "AgentConsultTransferFailed";
|
|
182
|
+
/** Event emitted when contact recording is paused */
|
|
183
|
+
readonly CONTACT_RECORDING_PAUSED: "ContactRecordingPaused";
|
|
184
|
+
/** Event emitted when pausing contact recording fails */
|
|
185
|
+
readonly CONTACT_RECORDING_PAUSE_FAILED: "ContactRecordingPauseFailed";
|
|
186
|
+
/** Event emitted when contact recording is resumed */
|
|
187
|
+
readonly CONTACT_RECORDING_RESUMED: "ContactRecordingResumed";
|
|
188
|
+
/** Event emitted when resuming contact recording fails */
|
|
189
|
+
readonly CONTACT_RECORDING_RESUME_FAILED: "ContactRecordingResumeFailed";
|
|
190
|
+
/** Event emitted when contact ends */
|
|
191
|
+
readonly CONTACT_ENDED: "ContactEnded";
|
|
192
|
+
/** Event emitted when ending contact fails */
|
|
193
|
+
readonly AGENT_CONTACT_END_FAILED: "AgentContactEndFailed";
|
|
194
|
+
/** Event emitted when agent enters wrap-up state */
|
|
195
|
+
readonly AGENT_WRAPUP: "AgentWrapup";
|
|
196
|
+
/** Event emitted when agent completes wrap-up */
|
|
197
|
+
readonly AGENT_WRAPPEDUP: "AgentWrappedUp";
|
|
198
|
+
/** Event emitted when wrap-up fails */
|
|
199
|
+
readonly AGENT_WRAPUP_FAILED: "AgentWrapupFailed";
|
|
200
|
+
/** Event emitted when outbound call fails */
|
|
201
|
+
readonly AGENT_OUTBOUND_FAILED: "AgentOutboundFailed";
|
|
202
|
+
/** Event emitted for general agent contact events */
|
|
203
|
+
readonly AGENT_CONTACT: "AgentContact";
|
|
204
|
+
/** Event emitted when contact is offered to agent */
|
|
205
|
+
readonly AGENT_OFFER_CONTACT: "AgentOfferContact";
|
|
206
|
+
/** Event emitted when contact is assigned to agent */
|
|
207
|
+
readonly AGENT_CONTACT_ASSIGNED: "AgentContactAssigned";
|
|
208
|
+
/** Event emitted when contact is unassigned from agent */
|
|
209
|
+
readonly AGENT_CONTACT_UNASSIGNED: "AgentContactUnassigned";
|
|
210
|
+
/** Event emitted when inviting agent fails */
|
|
211
|
+
readonly AGENT_INVITE_FAILED: "AgentInviteFailed";
|
|
212
|
+
/** Welcome event when agent connects to websocket/backend */
|
|
213
|
+
readonly WELCOME: "Welcome";
|
|
214
|
+
/** Event emitted when agent re-login is successful */
|
|
215
|
+
readonly AGENT_RELOGIN_SUCCESS: "AgentReloginSuccess";
|
|
216
|
+
/** Event emitted when agent re-login fails */
|
|
217
|
+
readonly AGENT_RELOGIN_FAILED: "AgentReloginFailed";
|
|
218
|
+
/** Event emitted when agent DN registration completes */
|
|
219
|
+
readonly AGENT_DN_REGISTERED: "AgentDNRegistered";
|
|
220
|
+
/** Event emitted when agent initiates logout */
|
|
221
|
+
readonly AGENT_LOGOUT: "Logout";
|
|
222
|
+
/** Event emitted when agent logout is successful */
|
|
223
|
+
readonly AGENT_LOGOUT_SUCCESS: "AgentLogoutSuccess";
|
|
224
|
+
/** Event emitted when agent logout fails */
|
|
225
|
+
readonly AGENT_LOGOUT_FAILED: "AgentLogoutFailed";
|
|
226
|
+
/** Event emitted when agent initiates station login */
|
|
227
|
+
readonly AGENT_STATION_LOGIN: "StationLogin";
|
|
228
|
+
/** Event emitted when agent station login is successful */
|
|
229
|
+
readonly AGENT_STATION_LOGIN_SUCCESS: "AgentStationLoginSuccess";
|
|
230
|
+
/** Event emitted when agent station login fails */
|
|
231
|
+
readonly AGENT_STATION_LOGIN_FAILED: "AgentStationLoginFailed";
|
|
232
|
+
/** Event emitted when agent's state changes */
|
|
233
|
+
readonly AGENT_STATE_CHANGE: "AgentStateChange";
|
|
234
|
+
/** Event emitted when multiple logins detected for same agent */
|
|
235
|
+
readonly AGENT_MULTI_LOGIN: "AGENT_MULTI_LOGIN";
|
|
236
|
+
/** Event emitted when agent state change is successful */
|
|
237
|
+
readonly AGENT_STATE_CHANGE_SUCCESS: "AgentStateChangeSuccess";
|
|
238
|
+
/** Event emitted when agent state change fails */
|
|
239
|
+
readonly AGENT_STATE_CHANGE_FAILED: "AgentStateChangeFailed";
|
|
240
|
+
/** Event emitted when requesting buddy agents list */
|
|
241
|
+
readonly AGENT_BUDDY_AGENTS: "BuddyAgents";
|
|
242
|
+
/** Event emitted when buddy agents list is successfully retrieved */
|
|
243
|
+
readonly AGENT_BUDDY_AGENTS_SUCCESS: "BuddyAgents";
|
|
244
|
+
/** Event emitted when retrieving buddy agents list fails */
|
|
245
|
+
readonly AGENT_BUDDY_AGENTS_RETRIEVE_FAILED: "BuddyAgentsRetrieveFailed";
|
|
246
|
+
/** Event emitted when contact is reserved for agent */
|
|
247
|
+
readonly AGENT_CONTACT_RESERVED: "AgentContactReserved";
|
|
248
|
+
};
|
|
249
|
+
/**
|
|
250
|
+
* Event data received when agent connects to the system
|
|
251
|
+
* @public
|
|
252
|
+
*/
|
|
253
|
+
export type WelcomeEvent = {
|
|
254
|
+
/** ID of the agent that connected */
|
|
255
|
+
agentId: string;
|
|
256
|
+
};
|
|
257
|
+
/**
|
|
258
|
+
* Response type for welcome events which can be either success or error
|
|
259
|
+
* @public
|
|
260
|
+
*/
|
|
261
|
+
export type WelcomeResponse = WelcomeEvent | Error;
|
|
262
|
+
/**
|
|
263
|
+
* Type representing the union of all possible Contact Center events
|
|
264
|
+
* @public
|
|
265
|
+
*/
|
|
266
|
+
export type CC_EVENTS = Enum<typeof CC_EVENTS>;
|
|
267
|
+
/**
|
|
268
|
+
* WebSocket event structure for Contact Center events
|
|
269
|
+
* @public
|
|
270
|
+
*/
|
|
271
|
+
export type WebSocketEvent = {
|
|
272
|
+
/** Type of the event */
|
|
273
|
+
type: CC_EVENTS;
|
|
274
|
+
/** Event payload data */
|
|
275
|
+
data: WelcomeEvent | Agent.StationLoginSuccess | Agent.LogoutSuccess | Agent.ReloginSuccess | Agent.StateChangeSuccess | Agent.BuddyAgentsSuccess;
|
|
276
|
+
};
|
|
277
|
+
/**
|
|
278
|
+
* Represents the response from getUserUsingCI method.
|
|
279
|
+
*/
|
|
280
|
+
export type AgentResponse = {
|
|
281
|
+
/**
|
|
282
|
+
* ID of the agent.
|
|
283
|
+
*/
|
|
284
|
+
id: string;
|
|
285
|
+
/**
|
|
286
|
+
* The ciUserId of the agent.
|
|
287
|
+
*/
|
|
288
|
+
ciUserId: string;
|
|
289
|
+
/**
|
|
290
|
+
* The first name of the agent.
|
|
291
|
+
*/
|
|
292
|
+
firstName: string;
|
|
293
|
+
/**
|
|
294
|
+
* The last name of the agent.
|
|
295
|
+
*/
|
|
296
|
+
lastName: string;
|
|
297
|
+
/**
|
|
298
|
+
* Identifier for a Desktop Profile.
|
|
299
|
+
*/
|
|
300
|
+
agentProfileId: string;
|
|
301
|
+
/**
|
|
302
|
+
* The email address of the agent.
|
|
303
|
+
*/
|
|
304
|
+
email: string;
|
|
305
|
+
/**
|
|
306
|
+
* Team IDs assigned to the agent.
|
|
307
|
+
*/
|
|
308
|
+
teamIds: string[];
|
|
309
|
+
/**
|
|
310
|
+
* Multimedia profile ID associated with the agent.
|
|
311
|
+
*/
|
|
312
|
+
multimediaProfileId: string;
|
|
313
|
+
/**
|
|
314
|
+
* Skill profile ID of the agent.
|
|
315
|
+
*/
|
|
316
|
+
skillProfileId: string;
|
|
317
|
+
/**
|
|
318
|
+
* Site ID of the agent.
|
|
319
|
+
*/
|
|
320
|
+
siteId: string;
|
|
321
|
+
/**
|
|
322
|
+
* Database ID of the agent.
|
|
323
|
+
*/
|
|
324
|
+
dbId?: string;
|
|
325
|
+
/**
|
|
326
|
+
* The default dialed number of the agent.
|
|
327
|
+
*/
|
|
328
|
+
defaultDialledNumber?: string;
|
|
329
|
+
};
|
|
330
|
+
/**
|
|
331
|
+
* Represents the response from getDesktopProfileById method.
|
|
332
|
+
*/
|
|
333
|
+
export type DesktopProfileResponse = {
|
|
334
|
+
/**
|
|
335
|
+
* Represents the voice options of an agent.
|
|
336
|
+
*/
|
|
337
|
+
loginVoiceOptions: LoginOption[];
|
|
338
|
+
/**
|
|
339
|
+
* Wrap-up codes that the agents can select when they wrap up a contact. It can take one of these values: ALL - To make all wrap-up codes available. SPECIFIC - To make specific codes available.
|
|
340
|
+
*/
|
|
341
|
+
accessWrapUpCode: string;
|
|
342
|
+
/**
|
|
343
|
+
* Idle codes that the agents can select in Agent Desktop. It can take one of these values: ALL - To make all idle codes available. SPECIFIC - To make specific codes available.
|
|
344
|
+
*/
|
|
345
|
+
accessIdleCode: string;
|
|
346
|
+
/**
|
|
347
|
+
* Wrap-up codes list that the agents can select when they wrap up a contact.
|
|
348
|
+
*/
|
|
349
|
+
wrapUpCodes: string[];
|
|
350
|
+
/**
|
|
351
|
+
* Idle codes list that the agents can select in Agent Desktop.
|
|
352
|
+
*/
|
|
353
|
+
idleCodes: string[];
|
|
354
|
+
/**
|
|
355
|
+
* Dial plan enabled for the agent.
|
|
356
|
+
*/
|
|
357
|
+
dialPlanEnabled: boolean;
|
|
358
|
+
/**
|
|
359
|
+
* Last agent routing enabled for the agent.
|
|
360
|
+
*/
|
|
361
|
+
lastAgentRouting: boolean;
|
|
362
|
+
/**
|
|
363
|
+
* Auto wrap-up allowed.
|
|
364
|
+
*/
|
|
365
|
+
autoWrapUp: boolean;
|
|
366
|
+
/**
|
|
367
|
+
* Auto answer allowed.
|
|
368
|
+
*/
|
|
369
|
+
autoAnswer: boolean;
|
|
370
|
+
/**
|
|
371
|
+
* Auto wrap-up after seconds.
|
|
372
|
+
*/
|
|
373
|
+
autoWrapAfterSeconds: number;
|
|
374
|
+
/**
|
|
375
|
+
* Agent available after outdial.
|
|
376
|
+
*/
|
|
377
|
+
agentAvailableAfterOutdial: boolean;
|
|
378
|
+
/**
|
|
379
|
+
* Allow auto wrap-up extension.
|
|
380
|
+
*/
|
|
381
|
+
allowAutoWrapUpExtension: boolean;
|
|
382
|
+
/**
|
|
383
|
+
* Outdial enabled for the agent.
|
|
384
|
+
*/
|
|
385
|
+
outdialEnabled: boolean;
|
|
386
|
+
/**
|
|
387
|
+
* Outdial entry point ID of the agent.
|
|
388
|
+
*/
|
|
389
|
+
outdialEntryPointId: string;
|
|
390
|
+
/**
|
|
391
|
+
* Outdial ANI ID of the agent.
|
|
392
|
+
*/
|
|
393
|
+
outdialANIId: string;
|
|
394
|
+
/**
|
|
395
|
+
* Consult to queue allowed.
|
|
396
|
+
*/
|
|
397
|
+
consultToQueue: boolean;
|
|
398
|
+
/**
|
|
399
|
+
* Address book ID of the agent.
|
|
400
|
+
*/
|
|
401
|
+
addressBookId: string;
|
|
402
|
+
/**
|
|
403
|
+
* Viewable statistics of the agent.
|
|
404
|
+
*/
|
|
405
|
+
viewableStatistics: {
|
|
406
|
+
id: string;
|
|
407
|
+
agentStats: boolean;
|
|
408
|
+
accessQueueStats: string;
|
|
409
|
+
contactServiceQueues: string[];
|
|
410
|
+
loggedInTeamStats: boolean;
|
|
411
|
+
accessTeamStats: string;
|
|
412
|
+
teams: string[];
|
|
413
|
+
};
|
|
414
|
+
/**
|
|
415
|
+
* Agent DN validation of the agent.
|
|
416
|
+
*/
|
|
417
|
+
agentDNValidation: string;
|
|
418
|
+
/**
|
|
419
|
+
* Dial plans of the agent.
|
|
420
|
+
*/
|
|
421
|
+
dialPlans: string[];
|
|
422
|
+
/**
|
|
423
|
+
* Timeout desktop inactivity custom enabled.
|
|
424
|
+
*/
|
|
425
|
+
timeoutDesktopInactivityCustomEnabled: boolean;
|
|
426
|
+
/**
|
|
427
|
+
* Timeout desktop inactivity minutes.
|
|
428
|
+
*/
|
|
429
|
+
timeoutDesktopInactivityMins: number;
|
|
430
|
+
/**
|
|
431
|
+
* Show user details in Microsoft enabled or not.
|
|
432
|
+
*/
|
|
433
|
+
showUserDetailsMS: boolean;
|
|
434
|
+
/**
|
|
435
|
+
* State synchronization in Microsoft enabled or not.
|
|
436
|
+
*/
|
|
437
|
+
stateSynchronizationMS: boolean;
|
|
438
|
+
/**
|
|
439
|
+
* Show user details in Webex enabled or not.
|
|
440
|
+
*/
|
|
441
|
+
showUserDetailsWebex: boolean;
|
|
442
|
+
/**
|
|
443
|
+
* State synchronization in Webex enabled or not.
|
|
444
|
+
*/
|
|
445
|
+
stateSynchronizationWebex: boolean;
|
|
446
|
+
};
|
|
447
|
+
/**
|
|
448
|
+
* Response containing multimedia profile configuration for an agent
|
|
449
|
+
* Defines capabilities across different communication channels
|
|
450
|
+
* @private
|
|
451
|
+
*/
|
|
452
|
+
export type MultimediaProfileResponse = {
|
|
453
|
+
/** Organization identifier */
|
|
454
|
+
organizationId: string;
|
|
455
|
+
/** Profile identifier */
|
|
456
|
+
id: string;
|
|
457
|
+
/** Version number of the profile */
|
|
458
|
+
version: number;
|
|
459
|
+
/** Profile name */
|
|
460
|
+
name: string;
|
|
461
|
+
/** Profile description */
|
|
462
|
+
description: string;
|
|
463
|
+
/** Maximum number of concurrent chat interactions */
|
|
464
|
+
chat: number;
|
|
465
|
+
/** Maximum number of concurrent email interactions */
|
|
466
|
+
email: number;
|
|
467
|
+
/** Maximum number of concurrent voice interactions */
|
|
468
|
+
telephony: number;
|
|
469
|
+
/** Maximum number of concurrent social media interactions */
|
|
470
|
+
social: number;
|
|
471
|
+
/** Whether the profile is active */
|
|
472
|
+
active: boolean;
|
|
473
|
+
/** Whether channel blending is enabled */
|
|
474
|
+
blendingModeEnabled: boolean;
|
|
475
|
+
/** Type of blending mode configuration */
|
|
476
|
+
blendingMode: string;
|
|
477
|
+
/** Whether this is the system default profile */
|
|
478
|
+
systemDefault: boolean;
|
|
479
|
+
/** Timestamp when profile was created */
|
|
480
|
+
createdTime: number;
|
|
481
|
+
/** Timestamp when profile was last updated */
|
|
482
|
+
lastUpdatedTime: number;
|
|
483
|
+
};
|
|
484
|
+
/**
|
|
485
|
+
* Response from subscription requests containing WebSocket connection details
|
|
486
|
+
* @public
|
|
487
|
+
*/
|
|
488
|
+
export type SubscribeResponse = {
|
|
489
|
+
/** HTTP status code of the response */
|
|
490
|
+
statusCode: number;
|
|
491
|
+
/** Response body containing connection details */
|
|
492
|
+
body: {
|
|
493
|
+
/** WebSocket URL for real-time updates */
|
|
494
|
+
webSocketUrl?: string;
|
|
495
|
+
/** Unique subscription identifier */
|
|
496
|
+
subscriptionId?: string;
|
|
497
|
+
};
|
|
498
|
+
/** Optional status or error message */
|
|
499
|
+
message: string | null;
|
|
500
|
+
};
|
|
501
|
+
export type AuxCode = {
|
|
502
|
+
/**
|
|
503
|
+
* ID of the Auxiliary Code.
|
|
504
|
+
*/
|
|
505
|
+
id: string;
|
|
506
|
+
/**
|
|
507
|
+
* Indicates whether the auxiliary code is active or not.
|
|
508
|
+
*/
|
|
509
|
+
active: boolean;
|
|
510
|
+
/**
|
|
511
|
+
* Indicates whether this is the default code (true) or not (false).
|
|
512
|
+
*/
|
|
513
|
+
defaultCode: boolean;
|
|
514
|
+
/**
|
|
515
|
+
* Indicates whether this is the system default code (true) or not (false).
|
|
516
|
+
*/
|
|
517
|
+
isSystemCode: boolean;
|
|
518
|
+
/**
|
|
519
|
+
* A short description indicating the context of the code.
|
|
520
|
+
*/
|
|
521
|
+
description: string;
|
|
522
|
+
/**
|
|
523
|
+
* Name of the Auxiliary Code.
|
|
524
|
+
*/
|
|
525
|
+
name: string;
|
|
526
|
+
/**
|
|
527
|
+
* Indicates the work type associated with this code.
|
|
528
|
+
*/
|
|
529
|
+
workTypeCode: string;
|
|
530
|
+
};
|
|
531
|
+
export type ListAuxCodesResponse = {
|
|
532
|
+
data: AuxCode[];
|
|
533
|
+
meta: {
|
|
534
|
+
page: number;
|
|
535
|
+
pageSize: number;
|
|
536
|
+
totalPages: number;
|
|
537
|
+
totalRecords: number;
|
|
538
|
+
};
|
|
539
|
+
};
|
|
540
|
+
/**
|
|
541
|
+
* Configuration for a team in the contact center system
|
|
542
|
+
* @private
|
|
543
|
+
*/
|
|
544
|
+
export type TeamList = {
|
|
545
|
+
/** Unique identifier for the team */
|
|
546
|
+
id: string;
|
|
547
|
+
/** Team name */
|
|
548
|
+
name: string;
|
|
549
|
+
/** Type of team (e.g., 'AGENT_BASED') */
|
|
550
|
+
teamType: string;
|
|
551
|
+
/** Current status of the team */
|
|
552
|
+
teamStatus: string;
|
|
553
|
+
/** Whether the team is active */
|
|
554
|
+
active: boolean;
|
|
555
|
+
/** Site identifier where team is located */
|
|
556
|
+
siteId: string;
|
|
557
|
+
/** Name of the site */
|
|
558
|
+
siteName: string;
|
|
559
|
+
/** Optional multimedia profile ID for team */
|
|
560
|
+
multiMediaProfileId?: string;
|
|
561
|
+
/** List of user IDs belonging to team */
|
|
562
|
+
userIds: string[];
|
|
563
|
+
/** Whether queue rankings are enabled for team */
|
|
564
|
+
rankQueuesForTeam: boolean;
|
|
565
|
+
/** Ordered list of queue rankings */
|
|
566
|
+
queueRankings: string[];
|
|
567
|
+
/** Optional database identifier */
|
|
568
|
+
dbId?: string;
|
|
569
|
+
/** Optional desktop layout identifier */
|
|
570
|
+
desktopLayoutId?: string;
|
|
571
|
+
};
|
|
572
|
+
/**
|
|
573
|
+
* Response type for listing teams with pagination metadata
|
|
574
|
+
* @private
|
|
575
|
+
*/
|
|
576
|
+
export type ListTeamsResponse = {
|
|
577
|
+
/** Array of team configurations */
|
|
578
|
+
data: TeamList[];
|
|
579
|
+
/** Pagination metadata */
|
|
580
|
+
meta: {
|
|
581
|
+
/** Current page number */
|
|
582
|
+
page: number;
|
|
583
|
+
/** Number of items per page */
|
|
584
|
+
pageSize: number;
|
|
585
|
+
/** Total number of pages */
|
|
586
|
+
totalPages: number;
|
|
587
|
+
/** Total number of records */
|
|
588
|
+
totalRecords: number;
|
|
589
|
+
};
|
|
590
|
+
};
|
|
591
|
+
/**
|
|
592
|
+
* Basic organization information in the contact center system
|
|
593
|
+
* @private
|
|
594
|
+
* @ignore
|
|
595
|
+
*/
|
|
596
|
+
export type OrgInfo = {
|
|
597
|
+
/** Tenant identifier */
|
|
598
|
+
tenantId: string;
|
|
599
|
+
/** Organization timezone */
|
|
600
|
+
timezone: string;
|
|
601
|
+
};
|
|
602
|
+
/**
|
|
603
|
+
* Organization-wide feature settings and configurations
|
|
604
|
+
* @private
|
|
605
|
+
*/
|
|
606
|
+
export type OrgSettings = {
|
|
607
|
+
/** Whether WebRTC functionality is enabled */
|
|
608
|
+
webRtcEnabled: boolean;
|
|
609
|
+
/** Whether sensitive data masking is enabled */
|
|
610
|
+
maskSensitiveData: boolean;
|
|
611
|
+
/** Whether campaign manager features are enabled */
|
|
612
|
+
campaignManagerEnabled: boolean;
|
|
613
|
+
};
|
|
614
|
+
/**
|
|
615
|
+
* Contact center site configuration information
|
|
616
|
+
* @private
|
|
617
|
+
*/
|
|
618
|
+
export type SiteInfo = {
|
|
619
|
+
/** Unique site identifier */
|
|
620
|
+
id: string;
|
|
621
|
+
/** Site name */
|
|
622
|
+
name: string;
|
|
623
|
+
/** Whether site is active */
|
|
624
|
+
active: boolean;
|
|
625
|
+
/** Multimedia profile ID for site */
|
|
626
|
+
multimediaProfileId: string;
|
|
627
|
+
/** Whether this is the system default site */
|
|
628
|
+
systemDefault: boolean;
|
|
629
|
+
};
|
|
630
|
+
/**
|
|
631
|
+
* Tenant-level configuration data and settings
|
|
632
|
+
* @private
|
|
633
|
+
*/
|
|
634
|
+
export type TenantData = {
|
|
635
|
+
/** Desktop inactivity timeout in minutes */
|
|
636
|
+
timeoutDesktopInactivityMins: number;
|
|
637
|
+
/** Whether default DN is enforced */
|
|
638
|
+
forceDefaultDn: boolean;
|
|
639
|
+
/** Regex pattern for default DN validation */
|
|
640
|
+
dnDefaultRegex: string;
|
|
641
|
+
/** Regex pattern for other DN validation */
|
|
642
|
+
dnOtherRegex: string;
|
|
643
|
+
/** Whether privacy shield feature is visible */
|
|
644
|
+
privacyShieldVisible: boolean;
|
|
645
|
+
/** Whether outbound dialing is enabled */
|
|
646
|
+
outdialEnabled: boolean;
|
|
647
|
+
/** Whether ending calls is enabled */
|
|
648
|
+
endCallEnabled: boolean;
|
|
649
|
+
/** Whether ending consultations is enabled */
|
|
650
|
+
endConsultEnabled: boolean;
|
|
651
|
+
/** Whether call variables are suppressed */
|
|
652
|
+
callVariablesSuppressed: boolean;
|
|
653
|
+
/** Whether desktop inactivity timeout is enabled */
|
|
654
|
+
timeoutDesktopInactivityEnabled: boolean;
|
|
655
|
+
/** Lost connection recovery timeout in seconds */
|
|
656
|
+
lostConnectionRecoveryTimeout: number;
|
|
657
|
+
};
|
|
658
|
+
/**
|
|
659
|
+
* URL mapping configuration for external integrations
|
|
660
|
+
* @public
|
|
661
|
+
*/
|
|
662
|
+
export type URLMapping = {
|
|
663
|
+
id: string;
|
|
664
|
+
name: string;
|
|
665
|
+
url: string;
|
|
666
|
+
links: string[];
|
|
667
|
+
createdTime: number;
|
|
668
|
+
lastUpdatedTime: number;
|
|
669
|
+
};
|
|
670
|
+
/**
|
|
671
|
+
* Constant representing idle code
|
|
672
|
+
* @public
|
|
673
|
+
* @ignore
|
|
674
|
+
*/
|
|
675
|
+
export declare const IDLE_CODE = "IDLE_CODE";
|
|
676
|
+
/**
|
|
677
|
+
* Constant representing wrap up code
|
|
678
|
+
* @public
|
|
679
|
+
* @ignore
|
|
680
|
+
*/
|
|
681
|
+
export declare const WRAP_UP_CODE = "WRAP_UP_CODE";
|
|
682
|
+
/**
|
|
683
|
+
* Type representing the possible auxiliary code types
|
|
684
|
+
* @public
|
|
685
|
+
*/
|
|
686
|
+
export type AuxCodeType = typeof IDLE_CODE | typeof WRAP_UP_CODE;
|
|
687
|
+
/**
|
|
688
|
+
* Parameters for querying Contact Center resources
|
|
689
|
+
* @public
|
|
690
|
+
*/
|
|
691
|
+
export type QueryParams = {
|
|
692
|
+
/** Page number for pagination */
|
|
693
|
+
pageNumber?: number;
|
|
694
|
+
pageSize?: number;
|
|
695
|
+
attributes?: Array<string>;
|
|
696
|
+
ids?: Array<string>;
|
|
697
|
+
queueType?: string;
|
|
698
|
+
entryPointType?: string;
|
|
699
|
+
channelType?: string;
|
|
700
|
+
isActive?: boolean;
|
|
701
|
+
workTypeCode?: AuxCodeType;
|
|
702
|
+
names?: Array<string>;
|
|
703
|
+
sortOrder?: SortOrder;
|
|
704
|
+
searchQuery?: SearchQuery;
|
|
705
|
+
defaultCode?: boolean;
|
|
706
|
+
search?: string;
|
|
707
|
+
desktopProfileFilter?: boolean;
|
|
708
|
+
};
|
|
709
|
+
/**
|
|
710
|
+
* Basic entity information used throughout the system
|
|
711
|
+
* @public
|
|
712
|
+
*/
|
|
713
|
+
export type Entity = {
|
|
714
|
+
/** Whether this is a system entity */
|
|
715
|
+
isSystem: boolean;
|
|
716
|
+
/** Entity name */
|
|
717
|
+
name: string;
|
|
718
|
+
/** Unique entity identifier */
|
|
719
|
+
id: string;
|
|
720
|
+
/** Whether this is the default entity */
|
|
721
|
+
isDefault: boolean;
|
|
722
|
+
};
|
|
723
|
+
/**
|
|
724
|
+
* Dial plan entity definition containing number manipulation rules
|
|
725
|
+
* @public
|
|
726
|
+
*/
|
|
727
|
+
export type DialPlanEntity = {
|
|
728
|
+
/** Unique identifier for the dial plan */
|
|
729
|
+
id: string;
|
|
730
|
+
/** Regular expression pattern for matching numbers */
|
|
731
|
+
regularExpression: string;
|
|
732
|
+
/** Prefix to add to matched numbers */
|
|
733
|
+
prefix: string;
|
|
734
|
+
/** Characters to strip from matched numbers */
|
|
735
|
+
strippedChars: string;
|
|
736
|
+
/** Name of the dial plan */
|
|
737
|
+
name: string;
|
|
738
|
+
};
|
|
739
|
+
/**
|
|
740
|
+
* Complete dial plan configuration for number handling
|
|
741
|
+
* @public
|
|
742
|
+
*/
|
|
743
|
+
export type DialPlan = {
|
|
744
|
+
/** Type of dial plan (e.g., 'adhocDial') */
|
|
745
|
+
type: string;
|
|
746
|
+
/** List of dial plan entities with transformation rules */
|
|
747
|
+
dialPlanEntity: {
|
|
748
|
+
/** Regular expression pattern */
|
|
749
|
+
regex: string;
|
|
750
|
+
/** Number prefix */
|
|
751
|
+
prefix: string;
|
|
752
|
+
/** Characters to strip */
|
|
753
|
+
strippedChars: string;
|
|
754
|
+
/** Entity name */
|
|
755
|
+
name: string;
|
|
756
|
+
}[];
|
|
757
|
+
};
|
|
758
|
+
/**
|
|
759
|
+
* Agent wrap-up codes configuration with pagination metadata
|
|
760
|
+
* @public
|
|
761
|
+
*/
|
|
762
|
+
export type agentWrapUpCodes = {
|
|
763
|
+
/** Array of wrap-up code entities */
|
|
764
|
+
data: Entity[];
|
|
765
|
+
/** Pagination and navigation metadata */
|
|
766
|
+
meta: {
|
|
767
|
+
/** Navigation URLs for pagination */
|
|
768
|
+
links: {
|
|
769
|
+
/** URL for first page */
|
|
770
|
+
first: string;
|
|
771
|
+
/** URL for last page */
|
|
772
|
+
last: string;
|
|
773
|
+
/** URL for next page */
|
|
774
|
+
next: string;
|
|
775
|
+
/** URL for current page */
|
|
776
|
+
self: string;
|
|
777
|
+
};
|
|
778
|
+
/** Organization identifier */
|
|
779
|
+
orgid: string;
|
|
780
|
+
/** Current page number */
|
|
781
|
+
page: number;
|
|
782
|
+
/** Number of items per page */
|
|
783
|
+
pageSize: number;
|
|
784
|
+
/** Total number of pages */
|
|
785
|
+
totalPages: number;
|
|
786
|
+
/** Total number of records */
|
|
787
|
+
totalRecords: number;
|
|
788
|
+
};
|
|
789
|
+
};
|
|
790
|
+
/**
|
|
791
|
+
* Default wrap-up code configuration for an agent
|
|
792
|
+
* @public
|
|
793
|
+
*/
|
|
794
|
+
export type agentDefaultWrapupCode = {
|
|
795
|
+
/** Unique identifier for the wrap-up code */
|
|
796
|
+
id: string;
|
|
797
|
+
/** Display name of the wrap-up code */
|
|
798
|
+
name: string;
|
|
799
|
+
};
|
|
800
|
+
/**
|
|
801
|
+
* Wrap-up reason configuration used to classify completed interactions
|
|
802
|
+
* @public
|
|
803
|
+
*/
|
|
804
|
+
export type WrapUpReason = {
|
|
805
|
+
/** Whether this is a system-defined reason */
|
|
806
|
+
isSystem: boolean;
|
|
807
|
+
/** Display name of the reason */
|
|
808
|
+
name: string;
|
|
809
|
+
/** Unique identifier */
|
|
810
|
+
id: string;
|
|
811
|
+
/** Whether this is the default reason */
|
|
812
|
+
isDefault: boolean;
|
|
813
|
+
};
|
|
814
|
+
/**
|
|
815
|
+
* Wrap-up configuration data containing settings and available options
|
|
816
|
+
* @public
|
|
817
|
+
*/
|
|
818
|
+
export type WrapupData = {
|
|
819
|
+
/** Wrap-up configuration properties */
|
|
820
|
+
wrapUpProps: {
|
|
821
|
+
/** Whether automatic wrap-up is enabled */
|
|
822
|
+
autoWrapup?: boolean;
|
|
823
|
+
/** Time in seconds before auto wrap-up triggers */
|
|
824
|
+
autoWrapupInterval?: number;
|
|
825
|
+
/** Whether last agent routing is enabled */
|
|
826
|
+
lastAgentRoute?: boolean;
|
|
827
|
+
/** List of available wrap-up reasons */
|
|
828
|
+
wrapUpReasonList: Array<WrapUpReason>;
|
|
829
|
+
/** List of available wrap-up codes */
|
|
830
|
+
wrapUpCodesList?: Array<string>;
|
|
831
|
+
/** Access control for idle codes ('ALL' or 'SPECIFIC') */
|
|
832
|
+
idleCodesAccess?: 'ALL' | 'SPECIFIC';
|
|
833
|
+
/** Associated interaction identifier */
|
|
834
|
+
interactionId?: string;
|
|
835
|
+
/** Whether cancelling auto wrap-up is allowed */
|
|
836
|
+
allowCancelAutoWrapup?: boolean;
|
|
837
|
+
};
|
|
838
|
+
};
|
|
839
|
+
/**
|
|
840
|
+
* Available login options for voice channel access
|
|
841
|
+
* 'AGENT_DN' - Login using agent's DN
|
|
842
|
+
* 'EXTENSION' - Login using extension number
|
|
843
|
+
* 'BROWSER' - Login using browser-based WebRTC
|
|
844
|
+
* @public
|
|
845
|
+
*/
|
|
846
|
+
export type LoginOption = 'AGENT_DN' | 'EXTENSION' | 'BROWSER';
|
|
847
|
+
/**
|
|
848
|
+
* Team configuration information
|
|
849
|
+
* @public
|
|
850
|
+
*/
|
|
851
|
+
export type Team = {
|
|
852
|
+
/** Unique team identifier */
|
|
853
|
+
teamId: string;
|
|
854
|
+
/** Team display name */
|
|
855
|
+
teamName: string;
|
|
856
|
+
/** Optional desktop layout configuration identifier */
|
|
857
|
+
desktopLayoutId?: string;
|
|
858
|
+
};
|
|
859
|
+
/**
|
|
860
|
+
* Basic queue configuration information
|
|
861
|
+
* @public
|
|
862
|
+
*/
|
|
863
|
+
export type Queue = {
|
|
864
|
+
/** Queue identifier */
|
|
865
|
+
queueId: string;
|
|
866
|
+
/** Queue display name */
|
|
867
|
+
queueName: string;
|
|
868
|
+
};
|
|
869
|
+
/**
|
|
870
|
+
* URL mappings for external system integrations
|
|
871
|
+
* @public
|
|
872
|
+
*/
|
|
873
|
+
export type URLMappings = {
|
|
874
|
+
/** Acqueon API endpoint URL */
|
|
875
|
+
acqueonApiUrl: string;
|
|
876
|
+
/** Acqueon console URL */
|
|
877
|
+
acqueonConsoleUrl: string;
|
|
878
|
+
};
|
|
879
|
+
/**
|
|
880
|
+
* Comprehensive agent profile configuration in the contact center system
|
|
881
|
+
* Contains all settings and capabilities for an agent
|
|
882
|
+
* @public
|
|
883
|
+
*/
|
|
884
|
+
export type Profile = {
|
|
885
|
+
/** Microsoft Teams integration configuration */
|
|
886
|
+
microsoftConfig?: {
|
|
887
|
+
/** Whether to show user details in Teams */
|
|
888
|
+
showUserDetailsMS?: boolean;
|
|
889
|
+
/** Whether to sync agent state with Teams */
|
|
890
|
+
stateSynchronizationMS?: boolean;
|
|
891
|
+
};
|
|
892
|
+
/** Webex integration configuration */
|
|
893
|
+
webexConfig?: {
|
|
894
|
+
/** Whether to show user details in Webex */
|
|
895
|
+
showUserDetailsWebex?: boolean;
|
|
896
|
+
/** Whether to sync agent state with Webex */
|
|
897
|
+
stateSynchronizationWebex?: boolean;
|
|
898
|
+
};
|
|
899
|
+
/** List of teams the agent belongs to */
|
|
900
|
+
teams: Team[];
|
|
901
|
+
/** Agent's default dial number */
|
|
902
|
+
defaultDn: string;
|
|
903
|
+
dn?: string;
|
|
904
|
+
/** Whether default DN is enforced at tenant level */
|
|
905
|
+
forceDefaultDn: boolean;
|
|
906
|
+
/** Whether default DN is enforced for this agent */
|
|
907
|
+
forceDefaultDnForAgent: boolean;
|
|
908
|
+
/** Regex pattern for US phone number validation */
|
|
909
|
+
regexUS: RegExp | string;
|
|
910
|
+
/** Regex pattern for international phone number validation */
|
|
911
|
+
regexOther: RegExp | string;
|
|
912
|
+
/** Unique identifier for the agent */
|
|
913
|
+
agentId: string;
|
|
914
|
+
/** Display name for the agent */
|
|
915
|
+
agentName: string;
|
|
916
|
+
/** Email address for the agent */
|
|
917
|
+
agentMailId: string;
|
|
918
|
+
/** Agent's profile configuration ID */
|
|
919
|
+
agentProfileID: string;
|
|
920
|
+
/** Dial plan configuration for number handling */
|
|
921
|
+
dialPlan: DialPlan;
|
|
922
|
+
/** Multimedia profile defining channel capabilities */
|
|
923
|
+
multimediaProfileId: string;
|
|
924
|
+
/** Skill profile defining agent competencies */
|
|
925
|
+
skillProfileId: string;
|
|
926
|
+
/** Site where agent is located */
|
|
927
|
+
siteId: string;
|
|
928
|
+
/** Enterprise-wide identifier */
|
|
929
|
+
enterpriseId: string;
|
|
930
|
+
/** Whether privacy shield feature is visible */
|
|
931
|
+
privacyShieldVisible: boolean;
|
|
932
|
+
/** Available idle codes */
|
|
933
|
+
idleCodes: Entity[];
|
|
934
|
+
/** List of specific idle codes */
|
|
935
|
+
idleCodesList?: Array<string>;
|
|
936
|
+
/** Access control for idle codes */
|
|
937
|
+
idleCodesAccess?: 'ALL' | 'SPECIFIC';
|
|
938
|
+
/** Available wrap-up codes */
|
|
939
|
+
wrapupCodes: Entity[];
|
|
940
|
+
/** Agent-specific wrap-up codes */
|
|
941
|
+
agentWrapUpCodes?: agentWrapUpCodes;
|
|
942
|
+
/** Default wrap-up code for agent */
|
|
943
|
+
agentDefaultWrapUpCode?: agentDefaultWrapupCode;
|
|
944
|
+
/** Default wrap-up code identifier */
|
|
945
|
+
defaultWrapupCode: string;
|
|
946
|
+
/** Wrap-up configuration data */
|
|
947
|
+
wrapUpData: WrapupData;
|
|
948
|
+
/** Organization identifier */
|
|
949
|
+
orgId?: string;
|
|
950
|
+
/** Whether outbound is enabled at tenant level */
|
|
951
|
+
isOutboundEnabledForTenant: boolean;
|
|
952
|
+
/** Whether outbound is enabled for this agent */
|
|
953
|
+
isOutboundEnabledForAgent: boolean;
|
|
954
|
+
/** Whether ad-hoc dialing is enabled */
|
|
955
|
+
isAdhocDialingEnabled: boolean;
|
|
956
|
+
/** Whether agent becomes available after outdial */
|
|
957
|
+
isAgentAvailableAfterOutdial: boolean;
|
|
958
|
+
/** Whether campaign management is enabled */
|
|
959
|
+
isCampaignManagementEnabled: boolean;
|
|
960
|
+
/** Outbound entry point */
|
|
961
|
+
outDialEp: string;
|
|
962
|
+
/** Whether ending calls is enabled */
|
|
963
|
+
isEndCallEnabled: boolean;
|
|
964
|
+
/** Whether ending consultations is enabled */
|
|
965
|
+
isEndConsultEnabled: boolean;
|
|
966
|
+
/** Optional lifecycle manager URL */
|
|
967
|
+
lcmUrl?: string;
|
|
968
|
+
/** Database identifier for agent */
|
|
969
|
+
agentDbId: string;
|
|
970
|
+
/** Optional analyzer identifier for agent */
|
|
971
|
+
agentAnalyzerId?: string;
|
|
972
|
+
/** Whether consult to queue is allowed */
|
|
973
|
+
allowConsultToQueue: boolean;
|
|
974
|
+
/** Additional campaign manager information */
|
|
975
|
+
campaignManagerAdditionalInfo?: string;
|
|
976
|
+
/** Whether personal statistics are enabled */
|
|
977
|
+
agentPersonalStatsEnabled: boolean;
|
|
978
|
+
/** Optional address book identifier */
|
|
979
|
+
addressBookId?: string;
|
|
980
|
+
/** Optional outbound ANI identifier */
|
|
981
|
+
outdialANIId?: string;
|
|
982
|
+
/** Optional analyzer user identifier */
|
|
983
|
+
analyserUserId?: string;
|
|
984
|
+
/** Whether call monitoring is enabled */
|
|
985
|
+
isCallMonitoringEnabled?: boolean;
|
|
986
|
+
/** Whether mid-call monitoring is enabled */
|
|
987
|
+
isMidCallMonitoringEnabled?: boolean;
|
|
988
|
+
/** Whether barge-in functionality is enabled */
|
|
989
|
+
isBargeInEnabled?: boolean;
|
|
990
|
+
/** Whether managed teams feature is enabled */
|
|
991
|
+
isManagedTeamsEnabled?: boolean;
|
|
992
|
+
/** Whether managed queues feature is enabled */
|
|
993
|
+
isManagedQueuesEnabled?: boolean;
|
|
994
|
+
/** Whether sending messages is enabled */
|
|
995
|
+
isSendMessageEnabled?: boolean;
|
|
996
|
+
/** Whether agent state changes are enabled */
|
|
997
|
+
isAgentStateChangeEnabled?: boolean;
|
|
998
|
+
/** Whether signing out agents is enabled */
|
|
999
|
+
isSignOutAgentsEnabled?: boolean;
|
|
1000
|
+
/** Integration URL mappings */
|
|
1001
|
+
urlMappings?: URLMappings;
|
|
1002
|
+
/** Whether desktop inactivity timeout is enabled */
|
|
1003
|
+
isTimeoutDesktopInactivityEnabled: boolean;
|
|
1004
|
+
/** Desktop inactivity timeout in minutes */
|
|
1005
|
+
timeoutDesktopInactivityMins?: number;
|
|
1006
|
+
/** Whether analyzer features are enabled */
|
|
1007
|
+
isAnalyzerEnabled?: boolean;
|
|
1008
|
+
/** Tenant timezone */
|
|
1009
|
+
tenantTimezone?: string;
|
|
1010
|
+
/** Available voice login options */
|
|
1011
|
+
loginVoiceOptions?: LoginOption[];
|
|
1012
|
+
/** Current login device type */
|
|
1013
|
+
deviceType?: LoginOption;
|
|
1014
|
+
/** Current team identifier */
|
|
1015
|
+
currentTeamId?: string;
|
|
1016
|
+
/** Whether WebRTC is enabled */
|
|
1017
|
+
webRtcEnabled: boolean;
|
|
1018
|
+
/** Organization-wide idle codes */
|
|
1019
|
+
organizationIdleCodes?: Entity[];
|
|
1020
|
+
/** Whether recording management is enabled */
|
|
1021
|
+
isRecordingManagementEnabled?: boolean;
|
|
1022
|
+
/** Connection recovery timeout in milliseconds */
|
|
1023
|
+
lostConnectionRecoveryTimeout: number;
|
|
1024
|
+
/** Whether sensitive data masking is enabled */
|
|
1025
|
+
maskSensitiveData?: boolean;
|
|
1026
|
+
/** Whether agent is currently logged in */
|
|
1027
|
+
isAgentLoggedIn?: boolean;
|
|
1028
|
+
/** Last auxiliary code ID used for state change */
|
|
1029
|
+
lastStateAuxCodeId?: string;
|
|
1030
|
+
/** Timestamp of last state change */
|
|
1031
|
+
lastStateChangeTimestamp?: number;
|
|
1032
|
+
/** Timestamp of last idle code change */
|
|
1033
|
+
lastIdleCodeChangeTimestamp?: number;
|
|
1034
|
+
};
|
|
1035
|
+
/**
|
|
1036
|
+
* Contact distribution group configuration for routing logic
|
|
1037
|
+
* @public
|
|
1038
|
+
*/
|
|
1039
|
+
export type CallDistributionGroup = {
|
|
1040
|
+
/** List of agent groups in this distribution group */
|
|
1041
|
+
agentGroups: {
|
|
1042
|
+
/** Team identifier */
|
|
1043
|
+
teamId: string;
|
|
1044
|
+
}[];
|
|
1045
|
+
/** Distribution order priority */
|
|
1046
|
+
order: number;
|
|
1047
|
+
/** Distribution time duration in seconds */
|
|
1048
|
+
duration: number;
|
|
1049
|
+
};
|
|
1050
|
+
/**
|
|
1051
|
+
* Comprehensive configuration for a contact service queue
|
|
1052
|
+
* @public
|
|
1053
|
+
*/
|
|
1054
|
+
export type ContactServiceQueue = {
|
|
1055
|
+
/** Unique identifier for the queue */
|
|
1056
|
+
id: string;
|
|
1057
|
+
/** Queue name */
|
|
1058
|
+
name: string;
|
|
1059
|
+
/** Queue description */
|
|
1060
|
+
description: string;
|
|
1061
|
+
/** Type of queue */
|
|
1062
|
+
queueType: string;
|
|
1063
|
+
/** Whether to check agent availability before routing */
|
|
1064
|
+
checkAgentAvailability: boolean;
|
|
1065
|
+
/** Type of channel this queue handles */
|
|
1066
|
+
channelType: string;
|
|
1067
|
+
/** Service level threshold in seconds */
|
|
1068
|
+
serviceLevelThreshold: number;
|
|
1069
|
+
/** Maximum number of active contacts allowed */
|
|
1070
|
+
maxActiveContacts: number;
|
|
1071
|
+
/** Maximum time contacts can wait in queue (seconds) */
|
|
1072
|
+
maxTimeInQueue: number;
|
|
1073
|
+
/** Default music on hold media file ID */
|
|
1074
|
+
defaultMusicInQueueMediaFileId: string;
|
|
1075
|
+
/** Queue timezone */
|
|
1076
|
+
timezone: string;
|
|
1077
|
+
/** Whether queue is active */
|
|
1078
|
+
active: boolean;
|
|
1079
|
+
/** Whether outbound campaign routing is enabled */
|
|
1080
|
+
outdialCampaignEnabled: boolean;
|
|
1081
|
+
/** Whether monitoring is permitted */
|
|
1082
|
+
monitoringPermitted: boolean;
|
|
1083
|
+
/** Whether parking is permitted */
|
|
1084
|
+
parkingPermitted: boolean;
|
|
1085
|
+
/** Whether recording is permitted */
|
|
1086
|
+
recordingPermitted: boolean;
|
|
1087
|
+
/** Whether recording all calls is permitted */
|
|
1088
|
+
recordingAllCallsPermitted: boolean;
|
|
1089
|
+
/** Whether pausing recordings is permitted */
|
|
1090
|
+
pauseRecordingPermitted: boolean;
|
|
1091
|
+
/** Maximum recording pause duration in seconds */
|
|
1092
|
+
recordingPauseDuration: number;
|
|
1093
|
+
/** Control flow script URL */
|
|
1094
|
+
controlFlowScriptUrl: string;
|
|
1095
|
+
/** IVR requeue URL */
|
|
1096
|
+
ivrRequeueUrl: string;
|
|
1097
|
+
/** Type of routing strategy */
|
|
1098
|
+
routingType: string;
|
|
1099
|
+
/** Queue-specific routing type */
|
|
1100
|
+
queueRoutingType: string;
|
|
1101
|
+
/** Queue skill requirements for routing */
|
|
1102
|
+
queueSkillRequirements: object[];
|
|
1103
|
+
/** Associated agents */
|
|
1104
|
+
agents: object[];
|
|
1105
|
+
/** Call distribution group configurations */
|
|
1106
|
+
callDistributionGroups: CallDistributionGroup[];
|
|
1107
|
+
/** Associated resource links */
|
|
1108
|
+
links: Array<string>;
|
|
1109
|
+
/** Timestamp when queue was created */
|
|
1110
|
+
createdTime: string;
|
|
1111
|
+
/** Timestamp when queue was last updated */
|
|
1112
|
+
lastUpdatedTime: string;
|
|
1113
|
+
};
|