@webex/contact-center 3.12.0-next.17 → 3.12.0-next.170

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 (328) 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 +385 -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 +888 -49
  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 +38 -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 +185 -0
  52. package/dist/metrics/behavioral-events.js.map +1 -1
  53. package/dist/metrics/constants.js +54 -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 +369 -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/WebCallingService.js +10 -2
  68. package/dist/services/WebCallingService.js.map +1 -1
  69. package/dist/services/WebexCrossClientService.js +225 -0
  70. package/dist/services/WebexCrossClientService.js.map +1 -0
  71. package/dist/services/WxAppTelephonyMercurySync.js +111 -0
  72. package/dist/services/WxAppTelephonyMercurySync.js.map +1 -0
  73. package/dist/services/config/Util.js +48 -48
  74. package/dist/services/config/Util.js.map +1 -1
  75. package/dist/services/config/constants.js +56 -78
  76. package/dist/services/config/constants.js.map +1 -1
  77. package/dist/services/config/index.js +100 -226
  78. package/dist/services/config/index.js.map +1 -1
  79. package/dist/services/config/types.js +93 -24
  80. package/dist/services/config/types.js.map +1 -1
  81. package/dist/services/constants.js +11 -1
  82. package/dist/services/constants.js.map +1 -1
  83. package/dist/services/core/Err.js.map +1 -1
  84. package/dist/services/core/Utils.js +131 -32
  85. package/dist/services/core/Utils.js.map +1 -1
  86. package/dist/services/core/WebexRequest.js +6 -2
  87. package/dist/services/core/WebexRequest.js.map +1 -1
  88. package/dist/services/core/aqm-reqs.js +17 -11
  89. package/dist/services/core/aqm-reqs.js.map +1 -1
  90. package/dist/services/core/constants.js +9 -1
  91. package/dist/services/core/constants.js.map +1 -1
  92. package/dist/services/core/types.js.map +1 -1
  93. package/dist/services/core/websocket/WebSocketManager.js +19 -2
  94. package/dist/services/core/websocket/WebSocketManager.js.map +1 -1
  95. package/dist/services/core/websocket/types.js.map +1 -1
  96. package/dist/services/index.js +1 -1
  97. package/dist/services/index.js.map +1 -1
  98. package/dist/services/task/Task.js +955 -0
  99. package/dist/services/task/Task.js.map +1 -0
  100. package/dist/services/task/TaskFactory.js +50 -0
  101. package/dist/services/task/TaskFactory.js.map +1 -0
  102. package/dist/services/task/TaskManager.js +1272 -605
  103. package/dist/services/task/TaskManager.js.map +1 -1
  104. package/dist/services/task/TaskUtils.js +221 -27
  105. package/dist/services/task/TaskUtils.js.map +1 -1
  106. package/dist/services/task/WebexCallingUtils.js +70 -0
  107. package/dist/services/task/WebexCallingUtils.js.map +1 -0
  108. package/dist/services/task/constants.js +19 -2
  109. package/dist/services/task/constants.js.map +1 -1
  110. package/dist/services/task/contact.js +29 -0
  111. package/dist/services/task/contact.js.map +1 -1
  112. package/dist/services/task/digital/Digital.js +78 -0
  113. package/dist/services/task/digital/Digital.js.map +1 -0
  114. package/dist/services/task/state-machine/TaskStateMachine.js +982 -0
  115. package/dist/services/task/state-machine/TaskStateMachine.js.map +1 -0
  116. package/dist/services/task/state-machine/actions.js +572 -0
  117. package/dist/services/task/state-machine/actions.js.map +1 -0
  118. package/dist/services/task/state-machine/constants.js +161 -0
  119. package/dist/services/task/state-machine/constants.js.map +1 -0
  120. package/dist/services/task/state-machine/guards.js +379 -0
  121. package/dist/services/task/state-machine/guards.js.map +1 -0
  122. package/dist/services/task/state-machine/index.js +53 -0
  123. package/dist/services/task/state-machine/index.js.map +1 -0
  124. package/dist/services/task/state-machine/types.js +54 -0
  125. package/dist/services/task/state-machine/types.js.map +1 -0
  126. package/dist/services/task/state-machine/uiControlsComputer.js +703 -0
  127. package/dist/services/task/state-machine/uiControlsComputer.js.map +1 -0
  128. package/dist/services/task/taskDataNormalizer.js +99 -0
  129. package/dist/services/task/taskDataNormalizer.js.map +1 -0
  130. package/dist/services/task/types.js +215 -5
  131. package/dist/services/task/types.js.map +1 -1
  132. package/dist/services/task/voice/Voice.js +1504 -0
  133. package/dist/services/task/voice/Voice.js.map +1 -0
  134. package/dist/services/task/voice/WebRTC.js +152 -0
  135. package/dist/services/task/voice/WebRTC.js.map +1 -0
  136. package/dist/services/task/voice/wxAppOfferObservability.js +145 -0
  137. package/dist/services/task/voice/wxAppOfferObservability.js.map +1 -0
  138. package/dist/services/task/voice/wxAppVoiceMethods.js +395 -0
  139. package/dist/services/task/voice/wxAppVoiceMethods.js.map +1 -0
  140. package/dist/services/wxAppDiagnosticLogging.js +159 -0
  141. package/dist/services/wxAppDiagnosticLogging.js.map +1 -0
  142. package/dist/services/wxAppTelephonyUtils.js +19 -0
  143. package/dist/services/wxAppTelephonyUtils.js.map +1 -0
  144. package/dist/types/cc.d.ts +152 -9
  145. package/dist/types/config.d.ts +13 -0
  146. package/dist/types/constants.d.ts +36 -1
  147. package/dist/types/index.d.ts +54 -20
  148. package/dist/types/metrics/MetricsManager.d.ts +6 -0
  149. package/dist/types/metrics/constants.d.ts +48 -1
  150. package/dist/types/services/AddressBook.d.ts +2 -1
  151. package/dist/types/services/AnswerCallOnWebexService.d.ts +38 -0
  152. package/dist/types/services/ApiAiAssistant.d.ts +67 -5
  153. package/dist/types/services/EntryPoint.d.ts +7 -5
  154. package/dist/types/services/Queue.d.ts +5 -3
  155. package/dist/types/services/UserPreference.d.ts +118 -0
  156. package/dist/types/services/WebexCrossClientService.d.ts +32 -0
  157. package/dist/types/services/WxAppTelephonyMercurySync.d.ts +28 -0
  158. package/dist/types/services/config/Util.d.ts +4 -8
  159. package/dist/types/services/config/constants.d.ts +49 -76
  160. package/dist/types/services/config/index.d.ts +16 -64
  161. package/dist/types/services/config/types.d.ts +240 -114
  162. package/dist/types/services/constants.d.ts +9 -0
  163. package/dist/types/services/core/Err.d.ts +2 -0
  164. package/dist/types/services/core/Utils.d.ts +43 -13
  165. package/dist/types/services/core/WebexRequest.d.ts +1 -0
  166. package/dist/types/services/core/constants.d.ts +7 -0
  167. package/dist/types/services/core/types.d.ts +2 -0
  168. package/dist/types/services/core/websocket/WebSocketManager.d.ts +1 -0
  169. package/dist/types/services/core/websocket/types.d.ts +1 -1
  170. package/dist/types/services/index.d.ts +1 -1
  171. package/dist/types/services/task/Task.d.ts +186 -0
  172. package/dist/types/services/task/TaskFactory.d.ts +14 -0
  173. package/dist/types/services/task/TaskUtils.d.ts +54 -2
  174. package/dist/types/services/task/WebexCallingUtils.d.ts +11 -0
  175. package/dist/types/services/task/constants.d.ts +17 -0
  176. package/dist/types/services/task/contact.d.ts +4 -0
  177. package/dist/types/services/task/digital/Digital.d.ts +23 -0
  178. package/dist/types/services/task/state-machine/TaskStateMachine.d.ts +1442 -0
  179. package/dist/types/services/task/state-machine/actions.d.ts +10 -0
  180. package/dist/types/services/task/state-machine/constants.d.ts +107 -0
  181. package/dist/types/services/task/state-machine/guards.d.ts +103 -0
  182. package/dist/types/services/task/state-machine/index.d.ts +13 -0
  183. package/dist/types/services/task/state-machine/types.d.ts +277 -0
  184. package/dist/types/services/task/state-machine/uiControlsComputer.d.ts +9 -0
  185. package/dist/types/services/task/taskDataNormalizer.d.ts +10 -0
  186. package/dist/types/services/task/types.d.ts +738 -66
  187. package/dist/types/services/task/voice/Voice.d.ts +241 -0
  188. package/dist/types/services/task/voice/WebRTC.d.ts +54 -0
  189. package/dist/types/services/task/voice/wxAppOfferObservability.d.ts +39 -0
  190. package/dist/types/services/task/voice/wxAppVoiceMethods.d.ts +68 -0
  191. package/dist/types/services/wxAppDiagnosticLogging.d.ts +63 -0
  192. package/dist/types/services/wxAppTelephonyUtils.d.ts +5 -0
  193. package/dist/types/types.d.ts +213 -11
  194. package/dist/types/utils/PageCache.d.ts +20 -3
  195. package/dist/types/webex.d.ts +1 -0
  196. package/dist/types.js +168 -6
  197. package/dist/types.js.map +1 -1
  198. package/dist/utils/PageCache.js +19 -5
  199. package/dist/utils/PageCache.js.map +1 -1
  200. package/dist/webex.js +22 -2
  201. package/dist/webex.js.map +1 -1
  202. package/package.json +16 -12
  203. package/src/cc.ts +1137 -67
  204. package/src/config.ts +13 -0
  205. package/src/constants.ts +39 -1
  206. package/src/index.ts +62 -15
  207. package/src/metrics/MetricsManager.ts +16 -0
  208. package/src/metrics/ai-docs/AGENTS.md +350 -0
  209. package/src/metrics/ai-docs/ARCHITECTURE.md +338 -0
  210. package/src/metrics/ai-docs/metrics-spec.md +971 -0
  211. package/src/metrics/behavioral-events.ts +190 -0
  212. package/src/metrics/constants.ts +59 -4
  213. package/src/services/AddressBook.ts +17 -6
  214. package/src/services/AnswerCallOnWebexService.ts +239 -0
  215. package/src/services/ApiAiAssistant.ts +494 -15
  216. package/src/services/EntryPoint.ts +59 -60
  217. package/src/services/Queue.ts +29 -12
  218. package/src/services/UserPreference.ts +509 -0
  219. package/src/services/WebCallingService.ts +16 -2
  220. package/src/services/WebexCrossClientService.ts +298 -0
  221. package/src/services/WxAppTelephonyMercurySync.ts +142 -0
  222. package/src/services/agent/ai-docs/AGENTS.md +240 -0
  223. package/src/services/agent/ai-docs/ARCHITECTURE.md +304 -0
  224. package/src/services/agent/ai-docs/agent-spec.md +505 -0
  225. package/src/services/ai-docs/AGENTS.md +386 -0
  226. package/src/services/ai-docs/services-spec.md +512 -0
  227. package/src/services/config/Util.ts +54 -84
  228. package/src/services/config/ai-docs/AGENTS.md +250 -0
  229. package/src/services/config/ai-docs/ARCHITECTURE.md +413 -0
  230. package/src/services/config/ai-docs/config-spec.md +669 -0
  231. package/src/services/config/constants.ts +63 -85
  232. package/src/services/config/index.ts +116 -277
  233. package/src/services/config/types.ts +229 -125
  234. package/src/services/constants.ts +10 -0
  235. package/src/services/core/Err.ts +1 -0
  236. package/src/services/core/Utils.ts +151 -37
  237. package/src/services/core/WebexRequest.ts +3 -1
  238. package/src/services/core/ai-docs/AGENTS.md +381 -0
  239. package/src/services/core/ai-docs/ARCHITECTURE.md +698 -0
  240. package/src/services/core/ai-docs/core-spec.md +797 -0
  241. package/src/services/core/aqm-reqs.ts +18 -12
  242. package/src/services/core/constants.ts +8 -0
  243. package/src/services/core/types.ts +33 -1
  244. package/src/services/core/websocket/WebSocketManager.ts +28 -2
  245. package/src/services/core/websocket/types.ts +1 -1
  246. package/src/services/index.ts +1 -1
  247. package/src/services/task/Task.ts +1211 -0
  248. package/src/services/task/TaskFactory.ts +82 -0
  249. package/src/services/task/TaskManager.ts +1585 -724
  250. package/src/services/task/TaskUtils.ts +316 -25
  251. package/src/services/task/WebexCallingUtils.ts +136 -0
  252. package/src/services/task/ai-docs/AGENTS.md +457 -0
  253. package/src/services/task/ai-docs/ARCHITECTURE.md +595 -0
  254. package/src/services/task/ai-docs/task-spec.md +1501 -0
  255. package/src/services/task/constants.ts +18 -0
  256. package/src/services/task/contact.ts +30 -0
  257. package/src/services/task/digital/Digital.ts +102 -0
  258. package/src/services/task/state-machine/TaskStateMachine.ts +1320 -0
  259. package/src/services/task/state-machine/actions.ts +741 -0
  260. package/src/services/task/state-machine/ai-docs/AGENTS.md +460 -0
  261. package/src/services/task/state-machine/ai-docs/ARCHITECTURE.md +1156 -0
  262. package/src/services/task/state-machine/ai-docs/task-state-machine-spec.md +2247 -0
  263. package/src/services/task/state-machine/constants.ts +172 -0
  264. package/src/services/task/state-machine/guards.ts +442 -0
  265. package/src/services/task/state-machine/index.ts +28 -0
  266. package/src/services/task/state-machine/types.ts +258 -0
  267. package/src/services/task/state-machine/uiControlsComputer.ts +1135 -0
  268. package/src/services/task/taskDataNormalizer.ts +137 -0
  269. package/src/services/task/types.ts +918 -70
  270. package/src/services/task/voice/Voice.ts +1878 -0
  271. package/src/services/task/voice/WebRTC.ts +194 -0
  272. package/src/services/task/voice/wxAppOfferObservability.ts +204 -0
  273. package/src/services/task/voice/wxAppVoiceMethods.ts +575 -0
  274. package/src/services/wxAppDiagnosticLogging.ts +286 -0
  275. package/src/services/wxAppTelephonyUtils.ts +14 -0
  276. package/src/types.ts +272 -13
  277. package/src/utils/AGENTS.md +289 -0
  278. package/src/utils/PageCache.ts +38 -5
  279. package/src/utils/ai-docs/utils-spec.md +391 -0
  280. package/src/webex.js +10 -0
  281. package/test/unit/fixtures/aiSummaryTestUtils.ts +40 -0
  282. package/test/unit/spec/cc.ts +3553 -107
  283. package/test/unit/spec/index.ts +885 -0
  284. package/test/unit/spec/logger-proxy.ts +70 -0
  285. package/test/unit/spec/metrics/MetricsManager.ts +25 -0
  286. package/test/unit/spec/metrics/behavioral-events.ts +60 -0
  287. package/test/unit/spec/services/AddressBook.ts +37 -6
  288. package/test/unit/spec/services/AnswerCallOnWebexService.ts +264 -0
  289. package/test/unit/spec/services/ApiAiAssistant.ts +442 -23
  290. package/test/unit/spec/services/EntryPoint.ts +87 -40
  291. package/test/unit/spec/services/Queue.ts +123 -12
  292. package/test/unit/spec/services/UserPreference.ts +401 -0
  293. package/test/unit/spec/services/WebCallingService.ts +45 -1
  294. package/test/unit/spec/services/WebexCrossClientService.ts +509 -0
  295. package/test/unit/spec/services/WxAppTelephonyMercurySync.ts +136 -0
  296. package/test/unit/spec/services/config/Util.ts +501 -0
  297. package/test/unit/spec/services/config/index.ts +317 -547
  298. package/test/unit/spec/services/core/Utils.ts +447 -8
  299. package/test/unit/spec/services/core/WebexRequest.ts +8 -7
  300. package/test/unit/spec/services/core/aqm-reqs.ts +142 -1
  301. package/test/unit/spec/services/core/websocket/WebSocketManager.ts +129 -53
  302. package/test/unit/spec/services/task/AutoWrapup.ts +63 -0
  303. package/test/unit/spec/services/task/Task.ts +2723 -0
  304. package/test/unit/spec/services/task/TaskFactory.ts +116 -0
  305. package/test/unit/spec/services/task/TaskManager.ts +4734 -1769
  306. package/test/unit/spec/services/task/TaskUtils.ts +307 -0
  307. package/test/unit/spec/services/task/WebexCallingUtils.ts +153 -0
  308. package/test/unit/spec/services/task/contact.ts +33 -0
  309. package/test/unit/spec/services/task/digital/Digital.ts +105 -0
  310. package/test/unit/spec/services/task/state-machine/TaskStateMachine.ts +4060 -0
  311. package/test/unit/spec/services/task/state-machine/guards.ts +839 -0
  312. package/test/unit/spec/services/task/state-machine/types.ts +18 -0
  313. package/test/unit/spec/services/task/state-machine/uiControlsComputer.ts +3101 -0
  314. package/test/unit/spec/services/task/taskTestUtils.ts +87 -0
  315. package/test/unit/spec/services/task/voice/Voice.ts +2355 -0
  316. package/test/unit/spec/services/task/voice/WebRTC.ts +235 -0
  317. package/test/unit/spec/services/task/voice/wxAppOfferObservability.ts +361 -0
  318. package/test/unit/spec/services/task/voice/wxAppVoiceMethods.ts +719 -0
  319. package/test/unit/spec/services/wxAppDiagnosticLogging.ts +179 -0
  320. package/test/unit/spec/wellnessSampleUtils.ts +288 -0
  321. package/typedoc.md +1 -1
  322. package/umd/contact-center.min.js +2 -2
  323. package/umd/contact-center.min.js.map +1 -1
  324. package/dist/services/task/index.js +0 -1530
  325. package/dist/services/task/index.js.map +0 -1
  326. package/dist/types/services/task/index.d.ts +0 -650
  327. package/src/services/task/index.ts +0 -1806
  328. 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 */
@@ -123,13 +139,24 @@ export const CC_TASK_EVENTS = {
123
139
  CAMPAIGN_PREVIEW_REMOVE_FAILED: 'CampaignPreviewRemoveFailed',
124
140
  /** Event emitted when a real-time transcript chunk is received */
125
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',
126
154
  } as const;
127
155
 
128
156
  /**
129
157
  * Events emitted on Contact Center agent operations
130
158
  * @enum {string}
131
- * @private
132
- * @ignore
159
+ * @public
133
160
  */
134
161
  export const CC_AGENT_EVENTS = {
135
162
  /** Welcome event when agent connects to websocket/backend */
@@ -168,6 +195,8 @@ export const CC_AGENT_EVENTS = {
168
195
  AGENT_BUDDY_AGENTS_RETRIEVE_FAILED: 'BuddyAgentsRetrieveFailed',
169
196
  /** Event emitted when contact is reserved for agent */
170
197
  AGENT_CONTACT_RESERVED: 'AgentContactReserved',
198
+ /** Agent-level Agent Wellness Break notification */
199
+ WELLNESS_BREAK: 'WellnessBreak',
171
200
  } as const;
172
201
 
173
202
  /**
@@ -189,6 +218,15 @@ export type WelcomeEvent = {
189
218
  agentId: string;
190
219
  };
191
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
+
192
230
  /**
193
231
  * Response type for welcome events which can be either success or error
194
232
  * @public
@@ -219,7 +257,7 @@ export type WebSocketEvent = {
219
257
  };
220
258
 
221
259
  /**
222
- * Represents the response from getUserUsingCI method.
260
+ * Agent identity carried by the `user` section of the user desktop-login aggregate.
223
261
  */
224
262
  export type AgentResponse = {
225
263
  /**
@@ -252,16 +290,6 @@ export type AgentResponse = {
252
290
  */
253
291
  email: string;
254
292
 
255
- /**
256
- * Team IDs assigned to the agent.
257
- */
258
- teamIds: string[];
259
-
260
- /**
261
- * Multimedia profile ID associated with the agent.
262
- */
263
- multimediaProfileId: string;
264
-
265
293
  /**
266
294
  * Skill profile ID of the agent.
267
295
  */
@@ -273,22 +301,25 @@ export type AgentResponse = {
273
301
  siteId: string;
274
302
 
275
303
  /**
276
- * 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.
277
306
  */
278
- dbId?: string;
307
+ dbId: string;
279
308
 
280
309
  /**
281
310
  * The default dialed number of the agent.
311
+ * Note: The API returns this field as "deafultDialledNumber" (with typo).
282
312
  */
283
- defaultDialledNumber?: string;
313
+ deafultDialledNumber?: string;
284
314
  };
285
315
 
286
316
  /**
287
- * Represents the response from getDesktopProfileById method.
317
+ * Desktop Profile settings carried by the `agentProfile` section of the user desktop-login
318
+ * aggregate.
288
319
  */
289
- export type DesktopProfileResponse = {
320
+ export type AgentProfile = {
290
321
  /**
291
- * Represents the voice options of an agent.
322
+ * Represents the voice options of an agent. The order is nondeterministic; treat as a set.
292
323
  */
293
324
  loginVoiceOptions: LoginOption[];
294
325
 
@@ -302,16 +333,6 @@ export type DesktopProfileResponse = {
302
333
  */
303
334
  accessIdleCode: string;
304
335
 
305
- /**
306
- * Wrap-up codes list that the agents can select when they wrap up a contact.
307
- */
308
- wrapUpCodes: string[];
309
-
310
- /**
311
- * Idle codes list that the agents can select in Agent Desktop.
312
- */
313
- idleCodes: string[];
314
-
315
336
  /**
316
337
  * Dial plan enabled for the agent.
317
338
  */
@@ -328,9 +349,9 @@ export type DesktopProfileResponse = {
328
349
  autoWrapUp: boolean;
329
350
 
330
351
  /**
331
- * Auto answer allowed.
352
+ * Whether the agent personal greeting is enabled.
332
353
  */
333
- autoAnswer: boolean;
354
+ agentPersonalGreeting?: boolean;
334
355
 
335
356
  /**
336
357
  * Auto wrap-up after seconds.
@@ -347,6 +368,21 @@ export type DesktopProfileResponse = {
347
368
  */
348
369
  allowAutoWrapUpExtension: boolean;
349
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
+
350
386
  /**
351
387
  * Outdial enabled for the agent.
352
388
  */
@@ -362,6 +398,11 @@ export type DesktopProfileResponse = {
362
398
  */
363
399
  outdialANIId: string;
364
400
 
401
+ /**
402
+ * Whether the agent can schedule and manage callbacks.
403
+ */
404
+ scheduleAndManageCallBack?: boolean;
405
+
365
406
  /**
366
407
  * Consult to queue allowed.
367
408
  */
@@ -370,19 +411,14 @@ export type DesktopProfileResponse = {
370
411
  /**
371
412
  * Address book ID of the agent.
372
413
  */
373
- addressBookId: string;
414
+ addressBookId?: string;
374
415
 
375
416
  /**
376
417
  * Viewable statistics of the agent.
377
418
  */
378
419
  viewableStatistics: {
379
- id: string;
380
420
  agentStats: boolean;
381
- accessQueueStats: string;
382
- contactServiceQueues: string[];
383
- loggedInTeamStats: boolean;
384
- accessTeamStats: string;
385
- teams: string[];
421
+ aiAgentPerformance?: boolean;
386
422
  };
387
423
 
388
424
  /**
@@ -390,11 +426,6 @@ export type DesktopProfileResponse = {
390
426
  */
391
427
  agentDNValidation: string;
392
428
 
393
- /**
394
- * Dial plans of the agent.
395
- */
396
- dialPlans: string[];
397
-
398
429
  /**
399
430
  * Timeout desktop inactivity custom enabled.
400
431
  */
@@ -403,27 +434,7 @@ export type DesktopProfileResponse = {
403
434
  /**
404
435
  * Timeout desktop inactivity minutes.
405
436
  */
406
- timeoutDesktopInactivityMins: number;
407
-
408
- /**
409
- * Show user details in Microsoft enabled or not.
410
- */
411
- showUserDetailsMS: boolean;
412
-
413
- /**
414
- * State synchronization in Microsoft enabled or not.
415
- */
416
- stateSynchronizationMS: boolean;
417
-
418
- /**
419
- * Show user details in Webex enabled or not.
420
- */
421
- showUserDetailsWebex: boolean;
422
-
423
- /**
424
- * State synchronization in Webex enabled or not.
425
- */
426
- stateSynchronizationWebex: boolean;
437
+ timeoutDesktopInactivityMins?: number;
427
438
  };
428
439
 
429
440
  /**
@@ -583,7 +594,8 @@ export type ListTeamsResponse = {
583
594
  };
584
595
 
585
596
  /**
586
- * Basic organization information in the contact center system
597
+ * Basic organization information carried by the `organization` section of the org desktop-login
598
+ * aggregate.
587
599
  * @private
588
600
  * @ignore
589
601
  */
@@ -592,12 +604,11 @@ export type OrgInfo = {
592
604
  tenantId: string;
593
605
  /** Organization timezone */
594
606
  timezone: string;
595
- /** Current environment (e.g., 'produs1', 'intgus1') */
596
- environment: string;
597
607
  };
598
608
 
599
609
  /**
600
- * Organization-wide feature settings and configurations
610
+ * Organization-wide feature settings carried by the `organizationSetting` section of the org
611
+ * desktop-login aggregate.
601
612
  * @private
602
613
  */
603
614
  export type OrgSettings = {
@@ -607,6 +618,8 @@ export type OrgSettings = {
607
618
  maskSensitiveData: boolean;
608
619
  /** Whether campaign manager features are enabled */
609
620
  campaignManagerEnabled: boolean;
621
+ /** Number of AI Assistant licenses assigned to the organization */
622
+ aiAssistantQuantity?: number | null;
610
623
  };
611
624
 
612
625
  /**
@@ -627,12 +640,13 @@ export type SiteInfo = {
627
640
  };
628
641
 
629
642
  /**
630
- * Tenant-level configuration data and settings
643
+ * Tenant-level configuration carried by the `tenantConfiguration` section of the org
644
+ * desktop-login aggregate.
631
645
  * @private
632
646
  */
633
647
  export type TenantData = {
634
- /** Desktop inactivity timeout in minutes */
635
- timeoutDesktopInactivityMins: number;
648
+ /** Desktop inactivity timeout in minutes. Omitted when the timeout is not enabled. */
649
+ timeoutDesktopInactivityMins?: number;
636
650
  /** Whether default DN is enforced */
637
651
  forceDefaultDn: boolean;
638
652
  /** Regex pattern for default DN validation */
@@ -656,16 +670,46 @@ export type TenantData = {
656
670
  };
657
671
 
658
672
  /**
659
- * 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.
660
675
  * @public
661
676
  */
662
- export type URLMapping = {
663
- id: string;
664
- name: string;
665
- url: string;
666
- links: string[]; // Assuming 'links' is an array of strings, adjust if necessary
667
- createdTime: number; // Assuming timestamps are represented as numbers
668
- 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>;
669
713
  };
670
714
 
671
715
  /**
@@ -763,6 +807,8 @@ export type DialPlanEntity = {
763
807
  strippedChars: string;
764
808
  /** Name of the dial plan */
765
809
  name: string;
810
+ /** Whether the dial plan is active */
811
+ active: boolean;
766
812
  };
767
813
 
768
814
  /**
@@ -870,28 +916,6 @@ export type WrapupData = {
870
916
  };
871
917
  };
872
918
 
873
- /**
874
- * Available login options for voice channel access
875
- * 'AGENT_DN' - Login using agent's DN
876
- * 'EXTENSION' - Login using extension number
877
- * 'BROWSER' - Login using browser-based WebRTC
878
- * @public
879
- */
880
- export type LoginOption = 'AGENT_DN' | 'EXTENSION' | 'BROWSER';
881
-
882
- /**
883
- * Team configuration information
884
- * @public
885
- */
886
- export type Team = {
887
- /** Unique team identifier */
888
- teamId: string;
889
- /** Team display name */
890
- teamName: string;
891
- /** Optional desktop layout configuration identifier */
892
- desktopLayoutId?: string;
893
- };
894
-
895
919
  /**
896
920
  * Basic queue configuration information
897
921
  * @public
@@ -915,11 +939,12 @@ export type URLMappings = {
915
939
  };
916
940
 
917
941
  /**
918
- * 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.
919
943
  * @public
920
944
  */
921
945
  export type AIFeatureFlags = {
922
- id: string;
946
+ /** Not carried by the aggregate; retained for responses that still supply a record id. */
947
+ id?: string;
923
948
  realtimeTranscripts?: {
924
949
  enable?: boolean;
925
950
  agentInclusionType?: string;
@@ -944,27 +969,42 @@ export type AIFeatureFlags = {
944
969
  queuesInclusionType?: string;
945
970
  surveyDataSource?: string;
946
971
  };
947
- links?: string[];
948
- createdTime?: number;
949
- lastUpdatedTime?: number;
950
972
  };
951
973
 
952
974
  /**
953
- * 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.
954
978
  * @public
955
979
  */
956
- export type AIFeatureFlagsResponse = {
957
- meta?: {
958
- orgid?: string;
959
- page?: number;
960
- pageSize?: number;
961
- totalPages?: number;
962
- totalRecords?: number;
963
- links?: {
964
- self?: string;
965
- };
966
- };
967
- 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;
968
1008
  };
969
1009
 
970
1010
  /**
@@ -987,8 +1027,8 @@ export type Profile = {
987
1027
  /** Whether to sync agent state with Webex */
988
1028
  stateSynchronizationWebex?: boolean;
989
1029
  };
990
- /** List of teams the agent belongs to */
991
- teams: Team[];
1030
+ /** List of teams the agent belongs to, as returned by the team API */
1031
+ teams: TeamList[];
992
1032
  /** Agent's default dial number */
993
1033
  defaultDn: string;
994
1034
  dn?: string;
@@ -1051,7 +1091,7 @@ export type Profile = {
1051
1091
  /** Outbound entry point */
1052
1092
  outDialEp: string;
1053
1093
  /** Whether ending calls is enabled */
1054
- isEndCallEnabled: boolean;
1094
+ isEndTaskEnabled: boolean;
1055
1095
  /** Whether ending consultations is enabled */
1056
1096
  isEndConsultEnabled: boolean;
1057
1097
  /** Optional lifecycle manager URL */
@@ -1062,6 +1102,12 @@ export type Profile = {
1062
1102
  agentAnalyzerId?: string;
1063
1103
  /** Whether consult to queue is allowed */
1064
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;
1065
1111
  /** Additional campaign manager information */
1066
1112
  campaignManagerAdditionalInfo?: string;
1067
1113
  /** Whether personal statistics are enabled */
@@ -1098,8 +1144,6 @@ export type Profile = {
1098
1144
  isAnalyzerEnabled?: boolean;
1099
1145
  /** Tenant timezone */
1100
1146
  tenantTimezone?: string;
1101
- /** Current environment (e.g., 'produs1', 'intgus1') */
1102
- environment?: string;
1103
1147
  /** Available voice login options */
1104
1148
  loginVoiceOptions?: LoginOption[];
1105
1149
  /** Current login device type */
@@ -1118,6 +1162,8 @@ export type Profile = {
1118
1162
  maskSensitiveData?: boolean;
1119
1163
  /** Whether agent is currently logged in */
1120
1164
  isAgentLoggedIn?: boolean;
1165
+ /** Active station session after a successful registered relogin. */
1166
+ agentSessionId?: string;
1121
1167
  /** Last auxiliary code ID used for state change */
1122
1168
  lastStateAuxCodeId?: string;
1123
1169
  /** Timestamp of last state change */
@@ -1126,6 +1172,12 @@ export type Profile = {
1126
1172
  lastIdleCodeChangeTimestamp?: number;
1127
1173
  /** AI feature flags resolved from organization config */
1128
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;
1129
1181
  };
1130
1182
 
1131
1183
  /**
@@ -1187,3 +1239,55 @@ export type OutdialAniParams = {
1187
1239
  /** Comma-separated list of attributes to include in response (optional) */
1188
1240
  attributes?: string;
1189
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
+ };
@@ -32,6 +32,16 @@ export const WCC_CALLING_RTMS_DOMAIN = 'wcc-calling-rtms-domain';
32
32
  */
33
33
  export const DEFAULT_RTMS_DOMAIN = 'rtw.prod-us1.rtmsprod.net';
34
34
 
35
+ /**
36
+ * Trusted domain suffix for RTMS hosts returned by the u2c service catalog. A catalog-provided
37
+ * RTMS host is only used when its hostname is, or is a subdomain of, this domain; otherwise
38
+ * `DEFAULT_RTMS_DOMAIN` is used.
39
+ * @type {string}
40
+ * @public
41
+ * @ignore
42
+ */
43
+ export const ALLOWED_RTMS_DOMAIN = 'rtmsprod.net';
44
+
35
45
  /**
36
46
  * Timeout in milliseconds for WebSocket events.
37
47
  * @type {number}
@@ -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}