@webex/contact-center 3.12.0-next.15 → 3.12.0-next.150

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.
Files changed (322) hide show
  1. package/.sdd/manifest.json +887 -0
  2. package/AGENTS.md +94 -0
  3. package/ai-docs/ARCHITECTURE.md +168 -0
  4. package/ai-docs/CONTRACTS.md +62 -0
  5. package/ai-docs/GETTING_STARTED.md +168 -0
  6. package/ai-docs/GLOSSARY.md +43 -0
  7. package/ai-docs/README.md +138 -0
  8. package/ai-docs/REVIEW_CHECKLIST.md +41 -0
  9. package/ai-docs/RULES.md +444 -0
  10. package/ai-docs/SECURITY.md +52 -0
  11. package/ai-docs/SERVICE_STATE.md +52 -0
  12. package/ai-docs/SPEC_INDEX.md +65 -0
  13. package/ai-docs/adr/0001-spec-source-policy.md +55 -0
  14. package/ai-docs/adr/README.md +8 -0
  15. package/ai-docs/adr/_adr-template.md +31 -0
  16. package/ai-docs/contact-center-spec.md +382 -0
  17. package/ai-docs/features/consult-transfer-list-policy/spec/feature-spec.md +362 -0
  18. package/ai-docs/features/contact-owner-change-refactor.md +78 -0
  19. package/ai-docs/features/generated-spec-conformance-fidelity-remediation/spec/feature-spec.md +117 -0
  20. package/ai-docs/features/residual-warning-coverage-completion/spec/feature-spec.md +203 -0
  21. package/ai-docs/features/validator-code-fidelity-drift-fix/spec/feature-spec.md +315 -0
  22. package/ai-docs/patterns/event-driven-patterns.md +485 -0
  23. package/ai-docs/patterns/testing-patterns.md +480 -0
  24. package/ai-docs/patterns/typescript-patterns.md +365 -0
  25. package/ai-docs/templates/README.md +102 -0
  26. package/ai-docs/templates/documentation/create-agents-md.md +240 -0
  27. package/ai-docs/templates/documentation/create-architecture-md.md +295 -0
  28. package/ai-docs/templates/existing-service/bug-fix.md +254 -0
  29. package/ai-docs/templates/existing-service/feature-enhancement.md +450 -0
  30. package/ai-docs/templates/new-method/00-master.md +80 -0
  31. package/ai-docs/templates/new-method/01-requirements.md +232 -0
  32. package/ai-docs/templates/new-method/02-implementation.md +295 -0
  33. package/ai-docs/templates/new-method/03-tests.md +201 -0
  34. package/ai-docs/templates/new-method/04-validation.md +141 -0
  35. package/ai-docs/templates/new-service/00-master.md +109 -0
  36. package/ai-docs/templates/new-service/01-pre-questions.md +159 -0
  37. package/ai-docs/templates/new-service/02-code-generation.md +346 -0
  38. package/ai-docs/templates/new-service/03-integration.md +178 -0
  39. package/ai-docs/templates/new-service/04-test-generation.md +205 -0
  40. package/ai-docs/templates/new-service/05-validation.md +145 -0
  41. package/dist/cc.js +1010 -47
  42. package/dist/cc.js.map +1 -1
  43. package/dist/config.js +13 -0
  44. package/dist/config.js.map +1 -1
  45. package/dist/constants.js +40 -3
  46. package/dist/constants.js.map +1 -1
  47. package/dist/index.js +54 -17
  48. package/dist/index.js.map +1 -1
  49. package/dist/metrics/MetricsManager.js +16 -0
  50. package/dist/metrics/MetricsManager.js.map +1 -1
  51. package/dist/metrics/behavioral-events.js +211 -0
  52. package/dist/metrics/behavioral-events.js.map +1 -1
  53. package/dist/metrics/constants.js +58 -4
  54. package/dist/metrics/constants.js.map +1 -1
  55. package/dist/services/AddressBook.js +18 -15
  56. package/dist/services/AddressBook.js.map +1 -1
  57. package/dist/services/AnswerCallOnWebexService.js +202 -0
  58. package/dist/services/AnswerCallOnWebexService.js.map +1 -0
  59. package/dist/services/ApiAiAssistant.js +351 -14
  60. package/dist/services/ApiAiAssistant.js.map +1 -1
  61. package/dist/services/EntryPoint.js +46 -68
  62. package/dist/services/EntryPoint.js.map +1 -1
  63. package/dist/services/Queue.js +27 -22
  64. package/dist/services/Queue.js.map +1 -1
  65. package/dist/services/UserPreference.js +427 -0
  66. package/dist/services/UserPreference.js.map +1 -0
  67. package/dist/services/WebexCrossClientService.js +225 -0
  68. package/dist/services/WebexCrossClientService.js.map +1 -0
  69. package/dist/services/WxAppTelephonyMercurySync.js +111 -0
  70. package/dist/services/WxAppTelephonyMercurySync.js.map +1 -0
  71. package/dist/services/config/Util.js +48 -48
  72. package/dist/services/config/Util.js.map +1 -1
  73. package/dist/services/config/constants.js +56 -78
  74. package/dist/services/config/constants.js.map +1 -1
  75. package/dist/services/config/index.js +100 -226
  76. package/dist/services/config/index.js.map +1 -1
  77. package/dist/services/config/types.js +97 -24
  78. package/dist/services/config/types.js.map +1 -1
  79. package/dist/services/core/Err.js.map +1 -1
  80. package/dist/services/core/Utils.js +111 -32
  81. package/dist/services/core/Utils.js.map +1 -1
  82. package/dist/services/core/WebexRequest.js +6 -2
  83. package/dist/services/core/WebexRequest.js.map +1 -1
  84. package/dist/services/core/aqm-reqs.js +28 -14
  85. package/dist/services/core/aqm-reqs.js.map +1 -1
  86. package/dist/services/core/types.js.map +1 -1
  87. package/dist/services/core/websocket/WebSocketManager.js +2 -1
  88. package/dist/services/core/websocket/WebSocketManager.js.map +1 -1
  89. package/dist/services/core/websocket/types.js.map +1 -1
  90. package/dist/services/index.js +1 -1
  91. package/dist/services/index.js.map +1 -1
  92. package/dist/services/task/Task.js +955 -0
  93. package/dist/services/task/Task.js.map +1 -0
  94. package/dist/services/task/TaskFactory.js +50 -0
  95. package/dist/services/task/TaskFactory.js.map +1 -0
  96. package/dist/services/task/TaskManager.js +1272 -523
  97. package/dist/services/task/TaskManager.js.map +1 -1
  98. package/dist/services/task/TaskUtils.js +221 -27
  99. package/dist/services/task/TaskUtils.js.map +1 -1
  100. package/dist/services/task/WebexCallingUtils.js +70 -0
  101. package/dist/services/task/WebexCallingUtils.js.map +1 -0
  102. package/dist/services/task/constants.js +21 -2
  103. package/dist/services/task/constants.js.map +1 -1
  104. package/dist/services/task/contact.js +29 -0
  105. package/dist/services/task/contact.js.map +1 -1
  106. package/dist/services/task/dialer.js +78 -0
  107. package/dist/services/task/dialer.js.map +1 -1
  108. package/dist/services/task/digital/Digital.js +78 -0
  109. package/dist/services/task/digital/Digital.js.map +1 -0
  110. package/dist/services/task/state-machine/TaskStateMachine.js +982 -0
  111. package/dist/services/task/state-machine/TaskStateMachine.js.map +1 -0
  112. package/dist/services/task/state-machine/actions.js +572 -0
  113. package/dist/services/task/state-machine/actions.js.map +1 -0
  114. package/dist/services/task/state-machine/constants.js +161 -0
  115. package/dist/services/task/state-machine/constants.js.map +1 -0
  116. package/dist/services/task/state-machine/guards.js +379 -0
  117. package/dist/services/task/state-machine/guards.js.map +1 -0
  118. package/dist/services/task/state-machine/index.js +53 -0
  119. package/dist/services/task/state-machine/index.js.map +1 -0
  120. package/dist/services/task/state-machine/types.js +54 -0
  121. package/dist/services/task/state-machine/types.js.map +1 -0
  122. package/dist/services/task/state-machine/uiControlsComputer.js +703 -0
  123. package/dist/services/task/state-machine/uiControlsComputer.js.map +1 -0
  124. package/dist/services/task/taskDataNormalizer.js +99 -0
  125. package/dist/services/task/taskDataNormalizer.js.map +1 -0
  126. package/dist/services/task/types.js +259 -5
  127. package/dist/services/task/types.js.map +1 -1
  128. package/dist/services/task/voice/Voice.js +1504 -0
  129. package/dist/services/task/voice/Voice.js.map +1 -0
  130. package/dist/services/task/voice/WebRTC.js +152 -0
  131. package/dist/services/task/voice/WebRTC.js.map +1 -0
  132. package/dist/services/task/voice/wxAppOfferObservability.js +145 -0
  133. package/dist/services/task/voice/wxAppOfferObservability.js.map +1 -0
  134. package/dist/services/task/voice/wxAppVoiceMethods.js +395 -0
  135. package/dist/services/task/voice/wxAppVoiceMethods.js.map +1 -0
  136. package/dist/services/wxAppDiagnosticLogging.js +159 -0
  137. package/dist/services/wxAppDiagnosticLogging.js.map +1 -0
  138. package/dist/services/wxAppTelephonyUtils.js +19 -0
  139. package/dist/services/wxAppTelephonyUtils.js.map +1 -0
  140. package/dist/types/cc.d.ts +196 -9
  141. package/dist/types/config.d.ts +13 -0
  142. package/dist/types/constants.d.ts +38 -1
  143. package/dist/types/index.d.ts +54 -20
  144. package/dist/types/metrics/MetricsManager.d.ts +6 -0
  145. package/dist/types/metrics/constants.d.ts +52 -1
  146. package/dist/types/services/AddressBook.d.ts +2 -1
  147. package/dist/types/services/AnswerCallOnWebexService.d.ts +38 -0
  148. package/dist/types/services/ApiAiAssistant.d.ts +58 -5
  149. package/dist/types/services/EntryPoint.d.ts +7 -5
  150. package/dist/types/services/Queue.d.ts +5 -3
  151. package/dist/types/services/UserPreference.d.ts +118 -0
  152. package/dist/types/services/WebexCrossClientService.d.ts +32 -0
  153. package/dist/types/services/WxAppTelephonyMercurySync.d.ts +28 -0
  154. package/dist/types/services/config/Util.d.ts +4 -8
  155. package/dist/types/services/config/constants.d.ts +49 -76
  156. package/dist/types/services/config/index.d.ts +16 -64
  157. package/dist/types/services/config/types.d.ts +248 -114
  158. package/dist/types/services/core/Err.d.ts +6 -0
  159. package/dist/types/services/core/Utils.d.ts +35 -13
  160. package/dist/types/services/core/WebexRequest.d.ts +1 -0
  161. package/dist/types/services/core/types.d.ts +2 -0
  162. package/dist/types/services/core/websocket/WebSocketManager.d.ts +1 -0
  163. package/dist/types/services/core/websocket/types.d.ts +1 -1
  164. package/dist/types/services/index.d.ts +1 -1
  165. package/dist/types/services/task/Task.d.ts +186 -0
  166. package/dist/types/services/task/TaskFactory.d.ts +14 -0
  167. package/dist/types/services/task/TaskUtils.d.ts +54 -2
  168. package/dist/types/services/task/WebexCallingUtils.d.ts +11 -0
  169. package/dist/types/services/task/constants.d.ts +19 -0
  170. package/dist/types/services/task/contact.d.ts +4 -0
  171. package/dist/types/services/task/dialer.d.ts +30 -0
  172. package/dist/types/services/task/digital/Digital.d.ts +23 -0
  173. package/dist/types/services/task/state-machine/TaskStateMachine.d.ts +1442 -0
  174. package/dist/types/services/task/state-machine/actions.d.ts +10 -0
  175. package/dist/types/services/task/state-machine/constants.d.ts +107 -0
  176. package/dist/types/services/task/state-machine/guards.d.ts +103 -0
  177. package/dist/types/services/task/state-machine/index.d.ts +13 -0
  178. package/dist/types/services/task/state-machine/types.d.ts +277 -0
  179. package/dist/types/services/task/state-machine/uiControlsComputer.d.ts +9 -0
  180. package/dist/types/services/task/taskDataNormalizer.d.ts +10 -0
  181. package/dist/types/services/task/types.d.ts +790 -66
  182. package/dist/types/services/task/voice/Voice.d.ts +241 -0
  183. package/dist/types/services/task/voice/WebRTC.d.ts +54 -0
  184. package/dist/types/services/task/voice/wxAppOfferObservability.d.ts +39 -0
  185. package/dist/types/services/task/voice/wxAppVoiceMethods.d.ts +68 -0
  186. package/dist/types/services/wxAppDiagnosticLogging.d.ts +63 -0
  187. package/dist/types/services/wxAppTelephonyUtils.d.ts +5 -0
  188. package/dist/types/types.d.ts +213 -11
  189. package/dist/types/utils/PageCache.d.ts +20 -3
  190. package/dist/types/webex.d.ts +1 -0
  191. package/dist/types.js +168 -6
  192. package/dist/types.js.map +1 -1
  193. package/dist/utils/PageCache.js +19 -5
  194. package/dist/utils/PageCache.js.map +1 -1
  195. package/dist/webex.js +22 -2
  196. package/dist/webex.js.map +1 -1
  197. package/package.json +16 -12
  198. package/src/cc.ts +1338 -121
  199. package/src/config.ts +13 -0
  200. package/src/constants.ts +41 -1
  201. package/src/index.ts +62 -15
  202. package/src/metrics/MetricsManager.ts +16 -0
  203. package/src/metrics/ai-docs/AGENTS.md +350 -0
  204. package/src/metrics/ai-docs/ARCHITECTURE.md +338 -0
  205. package/src/metrics/ai-docs/metrics-spec.md +971 -0
  206. package/src/metrics/behavioral-events.ts +218 -0
  207. package/src/metrics/constants.ts +63 -4
  208. package/src/services/AddressBook.ts +17 -6
  209. package/src/services/AnswerCallOnWebexService.ts +239 -0
  210. package/src/services/ApiAiAssistant.ts +470 -15
  211. package/src/services/EntryPoint.ts +59 -60
  212. package/src/services/Queue.ts +29 -12
  213. package/src/services/UserPreference.ts +509 -0
  214. package/src/services/WebexCrossClientService.ts +298 -0
  215. package/src/services/WxAppTelephonyMercurySync.ts +142 -0
  216. package/src/services/agent/ai-docs/AGENTS.md +240 -0
  217. package/src/services/agent/ai-docs/ARCHITECTURE.md +304 -0
  218. package/src/services/agent/ai-docs/agent-spec.md +505 -0
  219. package/src/services/ai-docs/AGENTS.md +386 -0
  220. package/src/services/ai-docs/services-spec.md +505 -0
  221. package/src/services/config/Util.ts +54 -84
  222. package/src/services/config/ai-docs/AGENTS.md +250 -0
  223. package/src/services/config/ai-docs/ARCHITECTURE.md +413 -0
  224. package/src/services/config/ai-docs/config-spec.md +669 -0
  225. package/src/services/config/constants.ts +63 -85
  226. package/src/services/config/index.ts +116 -277
  227. package/src/services/config/types.ts +233 -125
  228. package/src/services/core/Err.ts +3 -0
  229. package/src/services/core/Utils.ts +127 -37
  230. package/src/services/core/WebexRequest.ts +3 -1
  231. package/src/services/core/ai-docs/AGENTS.md +381 -0
  232. package/src/services/core/ai-docs/ARCHITECTURE.md +698 -0
  233. package/src/services/core/ai-docs/core-spec.md +787 -0
  234. package/src/services/core/aqm-reqs.ts +30 -15
  235. package/src/services/core/types.ts +33 -1
  236. package/src/services/core/websocket/WebSocketManager.ts +2 -0
  237. package/src/services/core/websocket/types.ts +1 -1
  238. package/src/services/index.ts +1 -1
  239. package/src/services/task/Task.ts +1211 -0
  240. package/src/services/task/TaskFactory.ts +82 -0
  241. package/src/services/task/TaskManager.ts +1584 -643
  242. package/src/services/task/TaskUtils.ts +316 -25
  243. package/src/services/task/WebexCallingUtils.ts +136 -0
  244. package/src/services/task/ai-docs/AGENTS.md +457 -0
  245. package/src/services/task/ai-docs/ARCHITECTURE.md +595 -0
  246. package/src/services/task/ai-docs/task-spec.md +1501 -0
  247. package/src/services/task/constants.ts +20 -0
  248. package/src/services/task/contact.ts +30 -0
  249. package/src/services/task/dialer.ts +80 -0
  250. package/src/services/task/digital/Digital.ts +102 -0
  251. package/src/services/task/state-machine/TaskStateMachine.ts +1320 -0
  252. package/src/services/task/state-machine/actions.ts +741 -0
  253. package/src/services/task/state-machine/ai-docs/AGENTS.md +460 -0
  254. package/src/services/task/state-machine/ai-docs/ARCHITECTURE.md +1156 -0
  255. package/src/services/task/state-machine/ai-docs/task-state-machine-spec.md +2247 -0
  256. package/src/services/task/state-machine/constants.ts +172 -0
  257. package/src/services/task/state-machine/guards.ts +442 -0
  258. package/src/services/task/state-machine/index.ts +28 -0
  259. package/src/services/task/state-machine/types.ts +258 -0
  260. package/src/services/task/state-machine/uiControlsComputer.ts +1135 -0
  261. package/src/services/task/taskDataNormalizer.ts +137 -0
  262. package/src/services/task/types.ts +974 -70
  263. package/src/services/task/voice/Voice.ts +1878 -0
  264. package/src/services/task/voice/WebRTC.ts +194 -0
  265. package/src/services/task/voice/wxAppOfferObservability.ts +204 -0
  266. package/src/services/task/voice/wxAppVoiceMethods.ts +575 -0
  267. package/src/services/wxAppDiagnosticLogging.ts +286 -0
  268. package/src/services/wxAppTelephonyUtils.ts +14 -0
  269. package/src/types.ts +272 -13
  270. package/src/utils/AGENTS.md +289 -0
  271. package/src/utils/PageCache.ts +38 -5
  272. package/src/utils/ai-docs/utils-spec.md +391 -0
  273. package/src/webex.js +10 -0
  274. package/test/unit/fixtures/aiSummaryTestUtils.ts +40 -0
  275. package/test/unit/spec/cc.ts +3705 -150
  276. package/test/unit/spec/index.ts +885 -0
  277. package/test/unit/spec/logger-proxy.ts +70 -0
  278. package/test/unit/spec/metrics/MetricsManager.ts +25 -0
  279. package/test/unit/spec/metrics/behavioral-events.ts +60 -0
  280. package/test/unit/spec/services/AddressBook.ts +37 -6
  281. package/test/unit/spec/services/AnswerCallOnWebexService.ts +264 -0
  282. package/test/unit/spec/services/ApiAiAssistant.ts +429 -23
  283. package/test/unit/spec/services/EntryPoint.ts +87 -40
  284. package/test/unit/spec/services/Queue.ts +123 -12
  285. package/test/unit/spec/services/UserPreference.ts +401 -0
  286. package/test/unit/spec/services/WebCallingService.ts +7 -1
  287. package/test/unit/spec/services/WebexCrossClientService.ts +509 -0
  288. package/test/unit/spec/services/WxAppTelephonyMercurySync.ts +136 -0
  289. package/test/unit/spec/services/config/Util.ts +501 -0
  290. package/test/unit/spec/services/config/index.ts +317 -547
  291. package/test/unit/spec/services/core/Utils.ts +425 -8
  292. package/test/unit/spec/services/core/WebexRequest.ts +8 -7
  293. package/test/unit/spec/services/core/aqm-reqs.ts +113 -1
  294. package/test/unit/spec/services/core/websocket/WebSocketManager.ts +66 -40
  295. package/test/unit/spec/services/task/AutoWrapup.ts +63 -0
  296. package/test/unit/spec/services/task/Task.ts +2723 -0
  297. package/test/unit/spec/services/task/TaskFactory.ts +116 -0
  298. package/test/unit/spec/services/task/TaskManager.ts +4781 -1585
  299. package/test/unit/spec/services/task/TaskUtils.ts +307 -0
  300. package/test/unit/spec/services/task/WebexCallingUtils.ts +153 -0
  301. package/test/unit/spec/services/task/contact.ts +33 -0
  302. package/test/unit/spec/services/task/dialer.ts +190 -0
  303. package/test/unit/spec/services/task/digital/Digital.ts +105 -0
  304. package/test/unit/spec/services/task/state-machine/TaskStateMachine.ts +4060 -0
  305. package/test/unit/spec/services/task/state-machine/guards.ts +839 -0
  306. package/test/unit/spec/services/task/state-machine/types.ts +18 -0
  307. package/test/unit/spec/services/task/state-machine/uiControlsComputer.ts +3101 -0
  308. package/test/unit/spec/services/task/taskTestUtils.ts +87 -0
  309. package/test/unit/spec/services/task/voice/Voice.ts +2355 -0
  310. package/test/unit/spec/services/task/voice/WebRTC.ts +235 -0
  311. package/test/unit/spec/services/task/voice/wxAppOfferObservability.ts +361 -0
  312. package/test/unit/spec/services/task/voice/wxAppVoiceMethods.ts +719 -0
  313. package/test/unit/spec/services/wxAppDiagnosticLogging.ts +179 -0
  314. package/test/unit/spec/wellnessSampleUtils.ts +288 -0
  315. package/typedoc.md +1 -1
  316. package/umd/contact-center.min.js +2 -2
  317. package/umd/contact-center.min.js.map +1 -1
  318. package/dist/services/task/index.js +0 -1530
  319. package/dist/services/task/index.js.map +0 -1
  320. package/dist/types/services/task/index.d.ts +0 -650
  321. package/src/services/task/index.ts +0 -1806
  322. package/test/unit/spec/services/task/index.ts +0 -2205
@@ -1,4 +1,5 @@
1
1
  import * as Agent from '../agent/types';
2
+ import {COLLABORATION_ACCESS} from './constants';
2
3
 
3
4
  /**
4
5
  * Generic type for converting a const enum object into a union type of its values
@@ -6,8 +7,13 @@ import * as Agent from '../agent/types';
6
7
  */
7
8
  type Enum<T extends Record<string, unknown>> = T[keyof T];
8
9
 
10
+ /** Desktop Profile access level for a collaboration destination category. */
11
+ export type CollaborationAccess = Enum<typeof COLLABORATION_ACCESS>;
12
+
9
13
  /**
10
- * Events emitted on task objects
14
+ * Contact Center backend and realtime event types.
15
+ *
16
+ * Includes task lifecycle, transcript, suggested-response, and AI summary events.
11
17
  * @enum {string}
12
18
  * @private
13
19
  * @ignore
@@ -57,6 +63,8 @@ export const CC_TASK_EVENTS = {
57
63
  PARTICIPANT_LEFT_CONFERENCE: 'ParticipantLeftConference',
58
64
  /** Event emitted when participant leaving conference fails */
59
65
  PARTICIPANT_LEFT_CONFERENCE_FAILED: 'ParticipantLeftConferenceFailed',
66
+ /** Event emitted when dropping another conference participant fails */
67
+ PARTICIPANT_DROP_CONFERENCE_FAILED: 'ParticipantDropConferenceFailed',
60
68
  /** Event emitted when consultation conference end fails */
61
69
  AGENT_CONSULT_CONFERENCE_END_FAILED: 'AgentConsultConferenceEndFailed',
62
70
  /** Event emitted when conference is successfully transferred */
@@ -65,6 +73,8 @@ export const CC_TASK_EVENTS = {
65
73
  AGENT_CONFERENCE_TRANSFER_FAILED: 'AgentConferenceTransferFailed',
66
74
  /** Event emitted for post-call activity by participant */
67
75
  PARTICIPANT_POST_CALL_ACTIVITY: 'ParticipantPostCallActivity',
76
+ /** Event emitted when consulted participant is being moved/transferred */
77
+ CONSULTED_PARTICIPANT_MOVING: 'ConsultedParticipantMoving',
68
78
  /** Event emitted when contact is blind transferred */
69
79
  AGENT_BLIND_TRANSFERRED: 'AgentBlindTransferred',
70
80
  /** Event emitted when blind transfer fails */
@@ -81,6 +91,8 @@ export const CC_TASK_EVENTS = {
81
91
  AGENT_CONSULT_TRANSFER_FAILED: 'AgentConsultTransferFailed',
82
92
  /** Event emitted when contact recording is paused */
83
93
  CONTACT_RECORDING_PAUSED: 'ContactRecordingPaused',
94
+ /** Event emitted when contact recording is started */
95
+ CONTACT_RECORDING_STARTED: 'ContactRecordingStarted',
84
96
  /** Event emitted when pausing contact recording fails */
85
97
  CONTACT_RECORDING_PAUSE_FAILED: 'ContactRecordingPauseFailed',
86
98
  /** Event emitted when contact recording is resumed */
@@ -91,6 +103,10 @@ export const CC_TASK_EVENTS = {
91
103
  CONTACT_ENDED: 'ContactEnded',
92
104
  /** Event emitted when contact is merged */
93
105
  CONTACT_MERGED: 'ContactMerged',
106
+ /** Event emitted when contact payload is updated (routing updates) */
107
+ CONTACT_UPDATED: 'ContactUpdated',
108
+ /** Event emitted when contact owner changes */
109
+ CONTACT_OWNER_CHANGED: 'ContactOwnerChanged',
94
110
  /** Event emitted when ending contact fails */
95
111
  AGENT_CONTACT_END_FAILED: 'AgentContactEndFailed',
96
112
  /** Event emitted when agent enters wrap-up state */
@@ -117,15 +133,30 @@ export const CC_TASK_EVENTS = {
117
133
  CAMPAIGN_CONTACT_UPDATED: 'CampaignContactUpdated',
118
134
  /** Event emitted when accepting a campaign preview contact fails */
119
135
  CAMPAIGN_PREVIEW_ACCEPT_FAILED: 'CampaignPreviewAcceptFailed',
136
+ /** Event emitted when skipping a campaign preview contact fails */
137
+ CAMPAIGN_PREVIEW_SKIP_FAILED: 'CampaignPreviewSkipFailed',
138
+ /** Event emitted when removing a campaign preview contact fails */
139
+ CAMPAIGN_PREVIEW_REMOVE_FAILED: 'CampaignPreviewRemoveFailed',
120
140
  /** Event emitted when a real-time transcript chunk is received */
121
141
  REAL_TIME_TRANSCRIPTION: 'REAL_TIME_TRANSCRIPTION',
142
+ /** Event emitted when an AI assistant suggested response is available */
143
+ SUGGESTED_RESPONSE: 'SUGGESTED_RESPONSE',
144
+ /** Event emitted when backend acknowledges it is listening for more context */
145
+ SUGGESTED_RESPONSE_ACKNOWLEDGE: 'SUGGESTED_RESPONSE_ACKNOWLEDGE',
146
+ /** Event received when a post-call summary is available through realtime delivery */
147
+ POST_CALL_SUMMARY: 'POST_CALL_SUMMARY',
148
+ /** Event received when a mid-call summary is available through realtime delivery */
149
+ MID_CALL_SUMMARY: 'MID_CALL_SUMMARY',
150
+ /** Event received when AI-summary feature enablement is available through realtime delivery */
151
+ FEATURE_ENABLEMENT: 'FEATURE_ENABLEMENT',
152
+ /** Event received when a subsequent agent receives a mid-call summary */
153
+ MID_CALL_SUMMARY_RESPONSE_SUBSEQUENT_AGENT: 'MID_CALL_SUMMARY_RESPONSE_SUBSEQUENT_AGENT',
122
154
  } as const;
123
155
 
124
156
  /**
125
157
  * Events emitted on Contact Center agent operations
126
158
  * @enum {string}
127
- * @private
128
- * @ignore
159
+ * @public
129
160
  */
130
161
  export const CC_AGENT_EVENTS = {
131
162
  /** Welcome event when agent connects to websocket/backend */
@@ -164,6 +195,8 @@ export const CC_AGENT_EVENTS = {
164
195
  AGENT_BUDDY_AGENTS_RETRIEVE_FAILED: 'BuddyAgentsRetrieveFailed',
165
196
  /** Event emitted when contact is reserved for agent */
166
197
  AGENT_CONTACT_RESERVED: 'AgentContactReserved',
198
+ /** Agent-level Agent Wellness Break notification */
199
+ WELLNESS_BREAK: 'WellnessBreak',
167
200
  } as const;
168
201
 
169
202
  /**
@@ -185,6 +218,15 @@ export type WelcomeEvent = {
185
218
  agentId: string;
186
219
  };
187
220
 
221
+ /**
222
+ * Available login options for voice channel access
223
+ * 'AGENT_DN' - Login using agent's DN
224
+ * 'EXTENSION' - Login using extension number
225
+ * 'BROWSER' - Login using browser-based WebRTC
226
+ * @public
227
+ */
228
+ export type LoginOption = 'AGENT_DN' | 'EXTENSION' | 'BROWSER';
229
+
188
230
  /**
189
231
  * Response type for welcome events which can be either success or error
190
232
  * @public
@@ -215,7 +257,7 @@ export type WebSocketEvent = {
215
257
  };
216
258
 
217
259
  /**
218
- * Represents the response from getUserUsingCI method.
260
+ * Agent identity carried by the `user` section of the user desktop-login aggregate.
219
261
  */
220
262
  export type AgentResponse = {
221
263
  /**
@@ -248,16 +290,6 @@ export type AgentResponse = {
248
290
  */
249
291
  email: string;
250
292
 
251
- /**
252
- * Team IDs assigned to the agent.
253
- */
254
- teamIds: string[];
255
-
256
- /**
257
- * Multimedia profile ID associated with the agent.
258
- */
259
- multimediaProfileId: string;
260
-
261
293
  /**
262
294
  * Skill profile ID of the agent.
263
295
  */
@@ -269,22 +301,25 @@ export type AgentResponse = {
269
301
  siteId: string;
270
302
 
271
303
  /**
272
- * Database ID of the agent.
304
+ * Database ID of the agent, distinct from `ciUserId`. Passed as `userDbId` to the team lookup,
305
+ * which sends it as the backend's `filter=userId==` value.
273
306
  */
274
- dbId?: string;
307
+ dbId: string;
275
308
 
276
309
  /**
277
310
  * The default dialed number of the agent.
311
+ * Note: The API returns this field as "deafultDialledNumber" (with typo).
278
312
  */
279
- defaultDialledNumber?: string;
313
+ deafultDialledNumber?: string;
280
314
  };
281
315
 
282
316
  /**
283
- * Represents the response from getDesktopProfileById method.
317
+ * Desktop Profile settings carried by the `agentProfile` section of the user desktop-login
318
+ * aggregate.
284
319
  */
285
- export type DesktopProfileResponse = {
320
+ export type AgentProfile = {
286
321
  /**
287
- * Represents the voice options of an agent.
322
+ * Represents the voice options of an agent. The order is nondeterministic; treat as a set.
288
323
  */
289
324
  loginVoiceOptions: LoginOption[];
290
325
 
@@ -298,16 +333,6 @@ export type DesktopProfileResponse = {
298
333
  */
299
334
  accessIdleCode: string;
300
335
 
301
- /**
302
- * Wrap-up codes list that the agents can select when they wrap up a contact.
303
- */
304
- wrapUpCodes: string[];
305
-
306
- /**
307
- * Idle codes list that the agents can select in Agent Desktop.
308
- */
309
- idleCodes: string[];
310
-
311
336
  /**
312
337
  * Dial plan enabled for the agent.
313
338
  */
@@ -324,9 +349,9 @@ export type DesktopProfileResponse = {
324
349
  autoWrapUp: boolean;
325
350
 
326
351
  /**
327
- * Auto answer allowed.
352
+ * Whether the agent personal greeting is enabled.
328
353
  */
329
- autoAnswer: boolean;
354
+ agentPersonalGreeting?: boolean;
330
355
 
331
356
  /**
332
357
  * Auto wrap-up after seconds.
@@ -343,6 +368,21 @@ export type DesktopProfileResponse = {
343
368
  */
344
369
  allowAutoWrapUpExtension: boolean;
345
370
 
371
+ /**
372
+ * Access control for queues assigned to the agent (ALL, SPECIFIC, or NONE).
373
+ */
374
+ accessQueue: CollaborationAccess;
375
+
376
+ /**
377
+ * Access control for entry points assigned to the agent.
378
+ */
379
+ accessEntryPoint: CollaborationAccess;
380
+
381
+ /**
382
+ * Access control for buddy teams assigned to the agent.
383
+ */
384
+ accessBuddyTeam: CollaborationAccess;
385
+
346
386
  /**
347
387
  * Outdial enabled for the agent.
348
388
  */
@@ -358,6 +398,11 @@ export type DesktopProfileResponse = {
358
398
  */
359
399
  outdialANIId: string;
360
400
 
401
+ /**
402
+ * Whether the agent can schedule and manage callbacks.
403
+ */
404
+ scheduleAndManageCallBack?: boolean;
405
+
361
406
  /**
362
407
  * Consult to queue allowed.
363
408
  */
@@ -366,19 +411,14 @@ export type DesktopProfileResponse = {
366
411
  /**
367
412
  * Address book ID of the agent.
368
413
  */
369
- addressBookId: string;
414
+ addressBookId?: string;
370
415
 
371
416
  /**
372
417
  * Viewable statistics of the agent.
373
418
  */
374
419
  viewableStatistics: {
375
- id: string;
376
420
  agentStats: boolean;
377
- accessQueueStats: string;
378
- contactServiceQueues: string[];
379
- loggedInTeamStats: boolean;
380
- accessTeamStats: string;
381
- teams: string[];
421
+ aiAgentPerformance?: boolean;
382
422
  };
383
423
 
384
424
  /**
@@ -386,11 +426,6 @@ export type DesktopProfileResponse = {
386
426
  */
387
427
  agentDNValidation: string;
388
428
 
389
- /**
390
- * Dial plans of the agent.
391
- */
392
- dialPlans: string[];
393
-
394
429
  /**
395
430
  * Timeout desktop inactivity custom enabled.
396
431
  */
@@ -399,27 +434,7 @@ export type DesktopProfileResponse = {
399
434
  /**
400
435
  * Timeout desktop inactivity minutes.
401
436
  */
402
- timeoutDesktopInactivityMins: number;
403
-
404
- /**
405
- * Show user details in Microsoft enabled or not.
406
- */
407
- showUserDetailsMS: boolean;
408
-
409
- /**
410
- * State synchronization in Microsoft enabled or not.
411
- */
412
- stateSynchronizationMS: boolean;
413
-
414
- /**
415
- * Show user details in Webex enabled or not.
416
- */
417
- showUserDetailsWebex: boolean;
418
-
419
- /**
420
- * State synchronization in Webex enabled or not.
421
- */
422
- stateSynchronizationWebex: boolean;
437
+ timeoutDesktopInactivityMins?: number;
423
438
  };
424
439
 
425
440
  /**
@@ -579,7 +594,8 @@ export type ListTeamsResponse = {
579
594
  };
580
595
 
581
596
  /**
582
- * Basic organization information in the contact center system
597
+ * Basic organization information carried by the `organization` section of the org desktop-login
598
+ * aggregate.
583
599
  * @private
584
600
  * @ignore
585
601
  */
@@ -588,12 +604,11 @@ export type OrgInfo = {
588
604
  tenantId: string;
589
605
  /** Organization timezone */
590
606
  timezone: string;
591
- /** Current environment (e.g., 'produs1', 'intgus1') */
592
- environment: string;
593
607
  };
594
608
 
595
609
  /**
596
- * Organization-wide feature settings and configurations
610
+ * Organization-wide feature settings carried by the `organizationSetting` section of the org
611
+ * desktop-login aggregate.
597
612
  * @private
598
613
  */
599
614
  export type OrgSettings = {
@@ -603,6 +618,8 @@ export type OrgSettings = {
603
618
  maskSensitiveData: boolean;
604
619
  /** Whether campaign manager features are enabled */
605
620
  campaignManagerEnabled: boolean;
621
+ /** Number of AI Assistant licenses assigned to the organization */
622
+ aiAssistantQuantity?: number | null;
606
623
  };
607
624
 
608
625
  /**
@@ -623,12 +640,13 @@ export type SiteInfo = {
623
640
  };
624
641
 
625
642
  /**
626
- * Tenant-level configuration data and settings
643
+ * Tenant-level configuration carried by the `tenantConfiguration` section of the org
644
+ * desktop-login aggregate.
627
645
  * @private
628
646
  */
629
647
  export type TenantData = {
630
- /** Desktop inactivity timeout in minutes */
631
- timeoutDesktopInactivityMins: number;
648
+ /** Desktop inactivity timeout in minutes. Omitted when the timeout is not enabled. */
649
+ timeoutDesktopInactivityMins?: number;
632
650
  /** Whether default DN is enforced */
633
651
  forceDefaultDn: boolean;
634
652
  /** Regex pattern for default DN validation */
@@ -652,16 +670,46 @@ export type TenantData = {
652
670
  };
653
671
 
654
672
  /**
655
- * URL mapping configuration for external integrations
673
+ * URL mappings carried by the `urlMappings` section of the org desktop-login aggregate, keyed by
674
+ * mapping name. The aggregate returns `{}` when the organization has no Acqueon configuration.
656
675
  * @public
657
676
  */
658
- export type URLMapping = {
659
- id: string;
660
- name: string;
661
- url: string;
662
- links: string[]; // Assuming 'links' is an array of strings, adjust if necessary
663
- createdTime: number; // Assuming timestamps are represented as numbers
664
- lastUpdatedTime: number;
677
+ export type OrgUrlMappings = {
678
+ /** Acqueon API endpoint URL */
679
+ ACQUEON_API_URL?: string;
680
+ /** Acqueon console URL */
681
+ ACQUEON_CONSOLE_URL?: string;
682
+ };
683
+
684
+ /**
685
+ * Organization-level Microsoft Teams integration configuration carried by the `microsoftConfig`
686
+ * section of the org desktop-login aggregate. The whole section is absent when the organization
687
+ * has no Microsoft integration.
688
+ * @public
689
+ */
690
+ export type MicrosoftConfig = {
691
+ /** Whether to show user details in Teams */
692
+ showUserDetails?: boolean;
693
+ /** Whether to sync agent state with Teams */
694
+ stateSynchronization?: boolean;
695
+ /** Whether the integration is enabled organization-wide */
696
+ active?: boolean;
697
+ /** Idle codes mapped to Teams presence states */
698
+ idleCodes?: Record<string, string>;
699
+ };
700
+
701
+ /**
702
+ * Organization-level Webex integration configuration carried by the `webexConfig` section of the
703
+ * org desktop-login aggregate.
704
+ * @public
705
+ */
706
+ export type WebexConfig = {
707
+ /** Whether to show user details in Webex */
708
+ showUserDetails?: boolean;
709
+ /** Whether to sync agent state with Webex */
710
+ stateSynchronization?: boolean;
711
+ /** Idle codes mapped to Webex presence states */
712
+ idleCodes?: Record<string, string>;
665
713
  };
666
714
 
667
715
  /**
@@ -759,6 +807,8 @@ export type DialPlanEntity = {
759
807
  strippedChars: string;
760
808
  /** Name of the dial plan */
761
809
  name: string;
810
+ /** Whether the dial plan is active */
811
+ active: boolean;
762
812
  };
763
813
 
764
814
  /**
@@ -866,28 +916,6 @@ export type WrapupData = {
866
916
  };
867
917
  };
868
918
 
869
- /**
870
- * Available login options for voice channel access
871
- * 'AGENT_DN' - Login using agent's DN
872
- * 'EXTENSION' - Login using extension number
873
- * 'BROWSER' - Login using browser-based WebRTC
874
- * @public
875
- */
876
- export type LoginOption = 'AGENT_DN' | 'EXTENSION' | 'BROWSER';
877
-
878
- /**
879
- * Team configuration information
880
- * @public
881
- */
882
- export type Team = {
883
- /** Unique team identifier */
884
- teamId: string;
885
- /** Team display name */
886
- teamName: string;
887
- /** Optional desktop layout configuration identifier */
888
- desktopLayoutId?: string;
889
- };
890
-
891
919
  /**
892
920
  * Basic queue configuration information
893
921
  * @public
@@ -911,11 +939,12 @@ export type URLMappings = {
911
939
  };
912
940
 
913
941
  /**
914
- * AI feature resource row returned by /v2/ai-feature API.
942
+ * AI feature flags carried by the `aiFeature` section of the org desktop-login aggregate.
915
943
  * @public
916
944
  */
917
945
  export type AIFeatureFlags = {
918
- id: string;
946
+ /** Not carried by the aggregate; retained for responses that still supply a record id. */
947
+ id?: string;
919
948
  realtimeTranscripts?: {
920
949
  enable?: boolean;
921
950
  agentInclusionType?: string;
@@ -940,27 +969,42 @@ export type AIFeatureFlags = {
940
969
  queuesInclusionType?: string;
941
970
  surveyDataSource?: string;
942
971
  };
943
- links?: string[];
944
- createdTime?: number;
945
- lastUpdatedTime?: number;
946
972
  };
947
973
 
948
974
  /**
949
- * Response type for list AI feature resources API.
975
+ * Aggregated organization configuration returned by `organization/{orgId}/desktop-login`.
976
+ * Replaces the separate organization, organization-setting, tenant-configuration,
977
+ * org-url-mapping and ai-feature calls.
950
978
  * @public
951
979
  */
952
- export type AIFeatureFlagsResponse = {
953
- meta?: {
954
- orgid?: string;
955
- page?: number;
956
- pageSize?: number;
957
- totalPages?: number;
958
- totalRecords?: number;
959
- links?: {
960
- self?: string;
961
- };
962
- };
963
- data: AIFeatureFlags[];
980
+ export type OrgDesktopLoginResponse = {
981
+ /** Organization identity and timezone */
982
+ organization: OrgInfo;
983
+ /** Organization-wide feature settings */
984
+ organizationSetting: OrgSettings;
985
+ /** Tenant-level configuration */
986
+ tenantConfiguration: TenantData;
987
+ /** External integration URLs, keyed by mapping name */
988
+ urlMappings?: OrgUrlMappings;
989
+ /** AI feature flags */
990
+ aiFeature?: AIFeatureFlags;
991
+ /** Microsoft Teams integration configuration; absent when not configured */
992
+ microsoftConfig?: MicrosoftConfig;
993
+ /** Webex integration configuration */
994
+ webexConfig?: WebexConfig;
995
+ };
996
+
997
+ /**
998
+ * Aggregated user configuration returned by
999
+ * `organization/{orgId}/v2/user/by-ci-user-id/{ciUserId}/desktop-login`.
1000
+ * Replaces the separate user and agent-profile calls.
1001
+ * @public
1002
+ */
1003
+ export type UserDesktopLoginResponse = {
1004
+ /** Agent identity */
1005
+ user: AgentResponse;
1006
+ /** Desktop Profile settings for the agent */
1007
+ agentProfile: AgentProfile;
964
1008
  };
965
1009
 
966
1010
  /**
@@ -983,8 +1027,8 @@ export type Profile = {
983
1027
  /** Whether to sync agent state with Webex */
984
1028
  stateSynchronizationWebex?: boolean;
985
1029
  };
986
- /** List of teams the agent belongs to */
987
- teams: Team[];
1030
+ /** List of teams the agent belongs to, as returned by the team API */
1031
+ teams: TeamList[];
988
1032
  /** Agent's default dial number */
989
1033
  defaultDn: string;
990
1034
  dn?: string;
@@ -1047,7 +1091,7 @@ export type Profile = {
1047
1091
  /** Outbound entry point */
1048
1092
  outDialEp: string;
1049
1093
  /** Whether ending calls is enabled */
1050
- isEndCallEnabled: boolean;
1094
+ isEndTaskEnabled: boolean;
1051
1095
  /** Whether ending consultations is enabled */
1052
1096
  isEndConsultEnabled: boolean;
1053
1097
  /** Optional lifecycle manager URL */
@@ -1058,6 +1102,12 @@ export type Profile = {
1058
1102
  agentAnalyzerId?: string;
1059
1103
  /** Whether consult to queue is allowed */
1060
1104
  allowConsultToQueue: boolean;
1105
+ /** Access control for queues on Desktop Profile Collaboration tab */
1106
+ accessQueue?: CollaborationAccess;
1107
+ /** Access control for entry points on Desktop Profile Collaboration tab */
1108
+ accessEntryPoint?: CollaborationAccess;
1109
+ /** Access control for buddy teams on Desktop Profile Collaboration tab */
1110
+ accessBuddyTeam?: CollaborationAccess;
1061
1111
  /** Additional campaign manager information */
1062
1112
  campaignManagerAdditionalInfo?: string;
1063
1113
  /** Whether personal statistics are enabled */
@@ -1094,8 +1144,6 @@ export type Profile = {
1094
1144
  isAnalyzerEnabled?: boolean;
1095
1145
  /** Tenant timezone */
1096
1146
  tenantTimezone?: string;
1097
- /** Current environment (e.g., 'produs1', 'intgus1') */
1098
- environment?: string;
1099
1147
  /** Available voice login options */
1100
1148
  loginVoiceOptions?: LoginOption[];
1101
1149
  /** Current login device type */
@@ -1114,6 +1162,8 @@ export type Profile = {
1114
1162
  maskSensitiveData?: boolean;
1115
1163
  /** Whether agent is currently logged in */
1116
1164
  isAgentLoggedIn?: boolean;
1165
+ /** Active station session after a successful registered relogin. */
1166
+ agentSessionId?: string;
1117
1167
  /** Last auxiliary code ID used for state change */
1118
1168
  lastStateAuxCodeId?: string;
1119
1169
  /** Timestamp of last state change */
@@ -1122,6 +1172,12 @@ export type Profile = {
1122
1172
  lastIdleCodeChangeTimestamp?: number;
1123
1173
  /** AI feature flags resolved from organization config */
1124
1174
  aiFeature?: AIFeatureFlags;
1175
+ /**
1176
+ * Whether Agent Wellness Break is effectively enabled for this profile.
1177
+ * This combines the organization wellbeing configuration with AI Assistant licensing;
1178
+ * Server-side rollout remains enforced by the backend configuration and notification delivery.
1179
+ */
1180
+ isWellnessBreakEnabled?: boolean;
1125
1181
  };
1126
1182
 
1127
1183
  /**
@@ -1183,3 +1239,55 @@ export type OutdialAniParams = {
1183
1239
  /** Comma-separated list of attributes to include in response (optional) */
1184
1240
  attributes?: string;
1185
1241
  };
1242
+
1243
+ /**
1244
+ * User preference data structure
1245
+ * @public
1246
+ */
1247
+ export type UserPreference = {
1248
+ /** Unique identifier for the user preference */
1249
+ id: string;
1250
+ /** Organization ID */
1251
+ organizationId: string;
1252
+ /** User ID (CI user ID) */
1253
+ userId: string;
1254
+ /** User preference data as key-value pairs */
1255
+ preferences: Record<string, unknown>;
1256
+ /** Timestamp when this preference was created (Unix timestamp in milliseconds) */
1257
+ createdTime?: number;
1258
+ /** Timestamp when this preference was last updated (Unix timestamp in milliseconds) */
1259
+ lastUpdatedTime?: number;
1260
+ };
1261
+
1262
+ /**
1263
+ * Request payload for creating user preferences
1264
+ * @public
1265
+ */
1266
+ export type CreateUserPreferenceRequest = {
1267
+ /** User ID (CI user ID) */
1268
+ userId: string;
1269
+ /** Desktop preference data as a JSON string (required) */
1270
+ desktopPreference: string;
1271
+ };
1272
+
1273
+ /**
1274
+ * Request payload for updating user preferences
1275
+ * @public
1276
+ */
1277
+ export type UpdateUserPreferenceRequest = {
1278
+ /** Desktop preference data as a JSON string (required) */
1279
+ desktopPreference: string;
1280
+ };
1281
+
1282
+ /**
1283
+ * Query parameters for fetching user preferences
1284
+ * @public
1285
+ */
1286
+ export type GetUserPreferenceParams = {
1287
+ /** User ID to fetch preferences for. Defaults to current user's CI user ID. */
1288
+ userId?: string;
1289
+ /** Page number (0-indexed). Default: 0 */
1290
+ page?: number;
1291
+ /** Number of items per page. Default: 100 */
1292
+ pageSize?: number;
1293
+ };
@@ -30,6 +30,7 @@ export type TaskErrorIds =
30
30
  | {'Service.aqm.err.trackingId': {trackingId: string}}
31
31
  | {'Service.aqm.task.consultAccept': Failure}
32
32
  | {'Service.aqm.task.consultConference': Failure}
33
+ | {'Service.aqm.task.dropConferenceParticipant': Failure}
33
34
  | {'Service.aqm.task.consultEnd': Failure}
34
35
  | {'Service.aqm.task.cancelCtq': Failure}
35
36
  | {'Service.aqm.task.hold': Failure}
@@ -39,6 +40,8 @@ export type TaskErrorIds =
39
40
  | {'Service.aqm.task.resumeRecording': Failure}
40
41
  | {'Service.aqm.dialer.startOutdial': Failure}
41
42
  | {'Service.aqm.dialer.acceptPreviewContact': Failure}
43
+ | {'Service.aqm.dialer.skipPreviewContact': Failure}
44
+ | {'Service.aqm.dialer.removePreviewContact': Failure}
42
45
  | {'Service.reqs.generic.failure': {trackingId: string}};
43
46
 
44
47
  export type ReqError =