@webex/contact-center 3.12.0-next.12 → 3.12.0-next.121

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 (307) hide show
  1. package/.sdd/manifest.json +884 -0
  2. package/AGENTS.md +94 -0
  3. package/ai-docs/ARCHITECTURE.md +168 -0
  4. package/ai-docs/CONTRACTS.md +51 -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 +48 -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 +359 -0
  17. package/ai-docs/features/consult-transfer-list-policy/spec/feature-spec.md +362 -0
  18. package/ai-docs/features/generated-spec-conformance-fidelity-remediation/spec/feature-spec.md +117 -0
  19. package/ai-docs/features/residual-warning-coverage-completion/spec/feature-spec.md +203 -0
  20. package/ai-docs/features/validator-code-fidelity-drift-fix/spec/feature-spec.md +315 -0
  21. package/ai-docs/patterns/event-driven-patterns.md +485 -0
  22. package/ai-docs/patterns/testing-patterns.md +480 -0
  23. package/ai-docs/patterns/typescript-patterns.md +365 -0
  24. package/ai-docs/templates/README.md +102 -0
  25. package/ai-docs/templates/documentation/create-agents-md.md +240 -0
  26. package/ai-docs/templates/documentation/create-architecture-md.md +295 -0
  27. package/ai-docs/templates/existing-service/bug-fix.md +254 -0
  28. package/ai-docs/templates/existing-service/feature-enhancement.md +450 -0
  29. package/ai-docs/templates/new-method/00-master.md +80 -0
  30. package/ai-docs/templates/new-method/01-requirements.md +232 -0
  31. package/ai-docs/templates/new-method/02-implementation.md +295 -0
  32. package/ai-docs/templates/new-method/03-tests.md +201 -0
  33. package/ai-docs/templates/new-method/04-validation.md +141 -0
  34. package/ai-docs/templates/new-service/00-master.md +109 -0
  35. package/ai-docs/templates/new-service/01-pre-questions.md +159 -0
  36. package/ai-docs/templates/new-service/02-code-generation.md +346 -0
  37. package/ai-docs/templates/new-service/03-integration.md +178 -0
  38. package/ai-docs/templates/new-service/04-test-generation.md +205 -0
  39. package/ai-docs/templates/new-service/05-validation.md +145 -0
  40. package/dist/cc.js +808 -40
  41. package/dist/cc.js.map +1 -1
  42. package/dist/config.js +13 -0
  43. package/dist/config.js.map +1 -1
  44. package/dist/constants.js +27 -3
  45. package/dist/constants.js.map +1 -1
  46. package/dist/index.js +20 -5
  47. package/dist/index.js.map +1 -1
  48. package/dist/metrics/MetricsManager.js +16 -0
  49. package/dist/metrics/MetricsManager.js.map +1 -1
  50. package/dist/metrics/behavioral-events.js +205 -0
  51. package/dist/metrics/behavioral-events.js.map +1 -1
  52. package/dist/metrics/constants.js +43 -4
  53. package/dist/metrics/constants.js.map +1 -1
  54. package/dist/services/AddressBook.js +18 -15
  55. package/dist/services/AddressBook.js.map +1 -1
  56. package/dist/services/AnswerCallOnWebexService.js +202 -0
  57. package/dist/services/AnswerCallOnWebexService.js.map +1 -0
  58. package/dist/services/ApiAiAssistant.js +153 -8
  59. package/dist/services/ApiAiAssistant.js.map +1 -1
  60. package/dist/services/EntryPoint.js +46 -68
  61. package/dist/services/EntryPoint.js.map +1 -1
  62. package/dist/services/Queue.js +27 -22
  63. package/dist/services/Queue.js.map +1 -1
  64. package/dist/services/UserPreference.js +427 -0
  65. package/dist/services/UserPreference.js.map +1 -0
  66. package/dist/services/WebexCrossClientService.js +222 -0
  67. package/dist/services/WebexCrossClientService.js.map +1 -0
  68. package/dist/services/WxAppTelephonyMercurySync.js +108 -0
  69. package/dist/services/WxAppTelephonyMercurySync.js.map +1 -0
  70. package/dist/services/config/Util.js +6 -3
  71. package/dist/services/config/Util.js.map +1 -1
  72. package/dist/services/config/constants.js +33 -8
  73. package/dist/services/config/constants.js.map +1 -1
  74. package/dist/services/config/types.js +53 -9
  75. package/dist/services/config/types.js.map +1 -1
  76. package/dist/services/core/Err.js.map +1 -1
  77. package/dist/services/core/Utils.js +107 -32
  78. package/dist/services/core/Utils.js.map +1 -1
  79. package/dist/services/core/WebexRequest.js +6 -2
  80. package/dist/services/core/WebexRequest.js.map +1 -1
  81. package/dist/services/core/aqm-reqs.js +28 -14
  82. package/dist/services/core/aqm-reqs.js.map +1 -1
  83. package/dist/services/core/types.js.map +1 -1
  84. package/dist/services/core/websocket/WebSocketManager.js +2 -1
  85. package/dist/services/core/websocket/WebSocketManager.js.map +1 -1
  86. package/dist/services/core/websocket/types.js.map +1 -1
  87. package/dist/services/index.js +1 -1
  88. package/dist/services/index.js.map +1 -1
  89. package/dist/services/task/Task.js +754 -0
  90. package/dist/services/task/Task.js.map +1 -0
  91. package/dist/services/task/TaskFactory.js +49 -0
  92. package/dist/services/task/TaskFactory.js.map +1 -0
  93. package/dist/services/task/TaskManager.js +1053 -520
  94. package/dist/services/task/TaskManager.js.map +1 -1
  95. package/dist/services/task/TaskUtils.js +211 -27
  96. package/dist/services/task/TaskUtils.js.map +1 -1
  97. package/dist/services/task/WebexCallingUtils.js +70 -0
  98. package/dist/services/task/WebexCallingUtils.js.map +1 -0
  99. package/dist/services/task/constants.js +12 -2
  100. package/dist/services/task/constants.js.map +1 -1
  101. package/dist/services/task/contact.js +29 -0
  102. package/dist/services/task/contact.js.map +1 -1
  103. package/dist/services/task/dialer.js +78 -0
  104. package/dist/services/task/dialer.js.map +1 -1
  105. package/dist/services/task/digital/Digital.js +78 -0
  106. package/dist/services/task/digital/Digital.js.map +1 -0
  107. package/dist/services/task/state-machine/TaskStateMachine.js +954 -0
  108. package/dist/services/task/state-machine/TaskStateMachine.js.map +1 -0
  109. package/dist/services/task/state-machine/actions.js +572 -0
  110. package/dist/services/task/state-machine/actions.js.map +1 -0
  111. package/dist/services/task/state-machine/constants.js +161 -0
  112. package/dist/services/task/state-machine/constants.js.map +1 -0
  113. package/dist/services/task/state-machine/guards.js +379 -0
  114. package/dist/services/task/state-machine/guards.js.map +1 -0
  115. package/dist/services/task/state-machine/index.js +53 -0
  116. package/dist/services/task/state-machine/index.js.map +1 -0
  117. package/dist/services/task/state-machine/types.js +54 -0
  118. package/dist/services/task/state-machine/types.js.map +1 -0
  119. package/dist/services/task/state-machine/uiControlsComputer.js +703 -0
  120. package/dist/services/task/state-machine/uiControlsComputer.js.map +1 -0
  121. package/dist/services/task/taskDataNormalizer.js +99 -0
  122. package/dist/services/task/taskDataNormalizer.js.map +1 -0
  123. package/dist/services/task/types.js +228 -5
  124. package/dist/services/task/types.js.map +1 -1
  125. package/dist/services/task/voice/Voice.js +1447 -0
  126. package/dist/services/task/voice/Voice.js.map +1 -0
  127. package/dist/services/task/voice/WebRTC.js +152 -0
  128. package/dist/services/task/voice/WebRTC.js.map +1 -0
  129. package/dist/services/task/voice/wxAppVoiceMethods.js +354 -0
  130. package/dist/services/task/voice/wxAppVoiceMethods.js.map +1 -0
  131. package/dist/services/wxAppDiagnosticLogging.js +122 -0
  132. package/dist/services/wxAppDiagnosticLogging.js.map +1 -0
  133. package/dist/services/wxAppTelephonyUtils.js +19 -0
  134. package/dist/services/wxAppTelephonyUtils.js.map +1 -0
  135. package/dist/types/cc.d.ts +172 -5
  136. package/dist/types/config.d.ts +13 -0
  137. package/dist/types/constants.d.ts +25 -1
  138. package/dist/types/index.d.ts +24 -7
  139. package/dist/types/metrics/MetricsManager.d.ts +6 -0
  140. package/dist/types/metrics/constants.d.ts +38 -1
  141. package/dist/types/services/AddressBook.d.ts +2 -1
  142. package/dist/types/services/AnswerCallOnWebexService.d.ts +38 -0
  143. package/dist/types/services/ApiAiAssistant.d.ts +22 -4
  144. package/dist/types/services/EntryPoint.d.ts +7 -5
  145. package/dist/types/services/Queue.d.ts +5 -3
  146. package/dist/types/services/UserPreference.d.ts +118 -0
  147. package/dist/types/services/WebexCrossClientService.d.ts +32 -0
  148. package/dist/types/services/WxAppTelephonyMercurySync.d.ts +28 -0
  149. package/dist/types/services/config/constants.d.ts +29 -5
  150. package/dist/types/services/config/types.d.ts +184 -10
  151. package/dist/types/services/core/Err.d.ts +6 -0
  152. package/dist/types/services/core/Utils.d.ts +33 -13
  153. package/dist/types/services/core/WebexRequest.d.ts +1 -0
  154. package/dist/types/services/core/types.d.ts +2 -0
  155. package/dist/types/services/core/websocket/WebSocketManager.d.ts +1 -0
  156. package/dist/types/services/core/websocket/types.d.ts +1 -1
  157. package/dist/types/services/index.d.ts +1 -1
  158. package/dist/types/services/task/Task.d.ts +175 -0
  159. package/dist/types/services/task/TaskFactory.d.ts +13 -0
  160. package/dist/types/services/task/TaskUtils.d.ts +48 -2
  161. package/dist/types/services/task/WebexCallingUtils.d.ts +11 -0
  162. package/dist/types/services/task/constants.d.ts +10 -0
  163. package/dist/types/services/task/contact.d.ts +4 -0
  164. package/dist/types/services/task/dialer.d.ts +30 -0
  165. package/dist/types/services/task/digital/Digital.d.ts +22 -0
  166. package/dist/types/services/task/state-machine/TaskStateMachine.d.ts +1356 -0
  167. package/dist/types/services/task/state-machine/actions.d.ts +10 -0
  168. package/dist/types/services/task/state-machine/constants.d.ts +107 -0
  169. package/dist/types/services/task/state-machine/guards.d.ts +103 -0
  170. package/dist/types/services/task/state-machine/index.d.ts +13 -0
  171. package/dist/types/services/task/state-machine/types.d.ts +277 -0
  172. package/dist/types/services/task/state-machine/uiControlsComputer.d.ts +9 -0
  173. package/dist/types/services/task/taskDataNormalizer.d.ts +10 -0
  174. package/dist/types/services/task/types.d.ts +680 -66
  175. package/dist/types/services/task/voice/Voice.d.ts +227 -0
  176. package/dist/types/services/task/voice/WebRTC.d.ts +53 -0
  177. package/dist/types/services/task/voice/wxAppVoiceMethods.d.ts +55 -0
  178. package/dist/types/services/wxAppDiagnosticLogging.d.ts +51 -0
  179. package/dist/types/services/wxAppTelephonyUtils.d.ts +5 -0
  180. package/dist/types/types.d.ts +149 -8
  181. package/dist/types/utils/PageCache.d.ts +20 -3
  182. package/dist/types/webex.d.ts +1 -0
  183. package/dist/types.js +125 -4
  184. package/dist/types.js.map +1 -1
  185. package/dist/utils/PageCache.js +19 -5
  186. package/dist/utils/PageCache.js.map +1 -1
  187. package/dist/webex.js +14 -2
  188. package/dist/webex.js.map +1 -1
  189. package/package.json +16 -12
  190. package/src/cc.ts +986 -42
  191. package/src/config.ts +13 -0
  192. package/src/constants.ts +25 -1
  193. package/src/index.ts +25 -5
  194. package/src/metrics/MetricsManager.ts +16 -0
  195. package/src/metrics/ai-docs/AGENTS.md +350 -0
  196. package/src/metrics/ai-docs/ARCHITECTURE.md +338 -0
  197. package/src/metrics/ai-docs/metrics-spec.md +922 -0
  198. package/src/metrics/behavioral-events.ts +212 -0
  199. package/src/metrics/constants.ts +47 -4
  200. package/src/services/AddressBook.ts +17 -6
  201. package/src/services/AnswerCallOnWebexService.ts +239 -0
  202. package/src/services/ApiAiAssistant.ts +203 -8
  203. package/src/services/EntryPoint.ts +59 -60
  204. package/src/services/Queue.ts +29 -12
  205. package/src/services/UserPreference.ts +509 -0
  206. package/src/services/WebexCrossClientService.ts +293 -0
  207. package/src/services/WxAppTelephonyMercurySync.ts +142 -0
  208. package/src/services/agent/ai-docs/AGENTS.md +240 -0
  209. package/src/services/agent/ai-docs/ARCHITECTURE.md +304 -0
  210. package/src/services/agent/ai-docs/agent-spec.md +505 -0
  211. package/src/services/ai-docs/AGENTS.md +386 -0
  212. package/src/services/ai-docs/services-spec.md +497 -0
  213. package/src/services/config/Util.ts +6 -3
  214. package/src/services/config/ai-docs/AGENTS.md +255 -0
  215. package/src/services/config/ai-docs/ARCHITECTURE.md +426 -0
  216. package/src/services/config/ai-docs/config-spec.md +675 -0
  217. package/src/services/config/constants.ts +35 -7
  218. package/src/services/config/types.ts +186 -11
  219. package/src/services/core/Err.ts +3 -0
  220. package/src/services/core/Utils.ts +123 -37
  221. package/src/services/core/WebexRequest.ts +3 -1
  222. package/src/services/core/ai-docs/AGENTS.md +381 -0
  223. package/src/services/core/ai-docs/ARCHITECTURE.md +698 -0
  224. package/src/services/core/ai-docs/core-spec.md +787 -0
  225. package/src/services/core/aqm-reqs.ts +30 -15
  226. package/src/services/core/types.ts +2 -0
  227. package/src/services/core/websocket/WebSocketManager.ts +2 -0
  228. package/src/services/core/websocket/types.ts +1 -1
  229. package/src/services/index.ts +1 -1
  230. package/src/services/task/Task.ts +908 -0
  231. package/src/services/task/TaskFactory.ts +60 -0
  232. package/src/services/task/TaskManager.ts +1239 -608
  233. package/src/services/task/TaskUtils.ts +303 -25
  234. package/src/services/task/WebexCallingUtils.ts +136 -0
  235. package/src/services/task/ai-docs/AGENTS.md +457 -0
  236. package/src/services/task/ai-docs/ARCHITECTURE.md +595 -0
  237. package/src/services/task/ai-docs/task-spec.md +1470 -0
  238. package/src/services/task/constants.ts +10 -0
  239. package/src/services/task/contact.ts +30 -0
  240. package/src/services/task/dialer.ts +80 -0
  241. package/src/services/task/digital/Digital.ts +97 -0
  242. package/src/services/task/state-machine/TaskStateMachine.ts +1293 -0
  243. package/src/services/task/state-machine/actions.ts +741 -0
  244. package/src/services/task/state-machine/ai-docs/AGENTS.md +460 -0
  245. package/src/services/task/state-machine/ai-docs/ARCHITECTURE.md +1145 -0
  246. package/src/services/task/state-machine/ai-docs/task-state-machine-spec.md +2207 -0
  247. package/src/services/task/state-machine/constants.ts +172 -0
  248. package/src/services/task/state-machine/guards.ts +442 -0
  249. package/src/services/task/state-machine/index.ts +28 -0
  250. package/src/services/task/state-machine/types.ts +258 -0
  251. package/src/services/task/state-machine/uiControlsComputer.ts +1135 -0
  252. package/src/services/task/taskDataNormalizer.ts +137 -0
  253. package/src/services/task/types.ts +819 -70
  254. package/src/services/task/voice/Voice.ts +1809 -0
  255. package/src/services/task/voice/WebRTC.ts +191 -0
  256. package/src/services/task/voice/wxAppVoiceMethods.ts +516 -0
  257. package/src/services/wxAppDiagnosticLogging.ts +174 -0
  258. package/src/services/wxAppTelephonyUtils.ts +14 -0
  259. package/src/types.ts +199 -11
  260. package/src/utils/AGENTS.md +289 -0
  261. package/src/utils/PageCache.ts +38 -5
  262. package/src/utils/ai-docs/utils-spec.md +391 -0
  263. package/src/webex.js +2 -0
  264. package/test/unit/spec/cc.ts +1947 -124
  265. package/test/unit/spec/logger-proxy.ts +70 -0
  266. package/test/unit/spec/metrics/MetricsManager.ts +25 -0
  267. package/test/unit/spec/metrics/behavioral-events.ts +60 -0
  268. package/test/unit/spec/services/AddressBook.ts +37 -6
  269. package/test/unit/spec/services/AnswerCallOnWebexService.ts +264 -0
  270. package/test/unit/spec/services/ApiAiAssistant.ts +178 -20
  271. package/test/unit/spec/services/EntryPoint.ts +87 -40
  272. package/test/unit/spec/services/Queue.ts +123 -12
  273. package/test/unit/spec/services/UserPreference.ts +401 -0
  274. package/test/unit/spec/services/WebCallingService.ts +7 -1
  275. package/test/unit/spec/services/WebexCrossClientService.ts +467 -0
  276. package/test/unit/spec/services/WxAppTelephonyMercurySync.ts +136 -0
  277. package/test/unit/spec/services/config/Util.ts +85 -0
  278. package/test/unit/spec/services/config/index.ts +30 -30
  279. package/test/unit/spec/services/core/Utils.ts +425 -8
  280. package/test/unit/spec/services/core/WebexRequest.ts +3 -1
  281. package/test/unit/spec/services/core/aqm-reqs.ts +113 -1
  282. package/test/unit/spec/services/core/websocket/WebSocketManager.ts +66 -40
  283. package/test/unit/spec/services/task/AutoWrapup.ts +63 -0
  284. package/test/unit/spec/services/task/Task.ts +677 -0
  285. package/test/unit/spec/services/task/TaskFactory.ts +99 -0
  286. package/test/unit/spec/services/task/TaskManager.ts +1972 -1549
  287. package/test/unit/spec/services/task/TaskUtils.ts +235 -0
  288. package/test/unit/spec/services/task/WebexCallingUtils.ts +153 -0
  289. package/test/unit/spec/services/task/contact.ts +33 -0
  290. package/test/unit/spec/services/task/dialer.ts +190 -0
  291. package/test/unit/spec/services/task/digital/Digital.ts +105 -0
  292. package/test/unit/spec/services/task/state-machine/TaskStateMachine.ts +3459 -0
  293. package/test/unit/spec/services/task/state-machine/guards.ts +839 -0
  294. package/test/unit/spec/services/task/state-machine/types.ts +18 -0
  295. package/test/unit/spec/services/task/state-machine/uiControlsComputer.ts +3101 -0
  296. package/test/unit/spec/services/task/taskTestUtils.ts +87 -0
  297. package/test/unit/spec/services/task/voice/Voice.ts +1903 -0
  298. package/test/unit/spec/services/task/voice/WebRTC.ts +235 -0
  299. package/test/unit/spec/services/task/voice/wxAppVoiceMethods.ts +603 -0
  300. package/test/unit/spec/services/wxAppDiagnosticLogging.ts +143 -0
  301. package/umd/contact-center.min.js +2 -2
  302. package/umd/contact-center.min.js.map +1 -1
  303. package/dist/services/task/index.js +0 -1525
  304. package/dist/services/task/index.js.map +0 -1
  305. package/dist/types/services/task/index.d.ts +0 -650
  306. package/src/services/task/index.ts +0 -1801
  307. package/test/unit/spec/services/task/index.ts +0 -2184
@@ -12,7 +12,9 @@ import { StateChange, Logout } from './services/agent/types';
12
12
  import { Profile, OutdialAniEntriesResponse, OutdialAniParams } from './services/config/types';
13
13
  import { TaskResponse, PreviewContactPayload } from './services/task/types';
14
14
  import { AddressBook } from './services/AddressBook';
15
+ import { Queue } from './services/Queue';
15
16
  import { ApiAIAssistant } from './services/ApiAiAssistant';
17
+ import { UserPreference } from './services/UserPreference';
16
18
  import type { EntryPointListResponse, EntryPointSearchParams, ContactServiceQueuesResponse, ContactServiceQueueSearchParams } from './types';
17
19
  /**
18
20
  * The main Contact Center plugin class that enables integration with Webex Contact Center.
@@ -161,6 +163,28 @@ export default class ContactCenter extends WebexPlugin implements IContactCenter
161
163
  * @private
162
164
  */
163
165
  private webCallingService;
166
+ /**
167
+ * REST telephony for wxApp thick-client answer (WXCC-6026)
168
+ * @private
169
+ */
170
+ private answerCallOnWebexService;
171
+ /**
172
+ * usersub cross-client state for Webex App toast suppression
173
+ * @private
174
+ */
175
+ private webexCrossClientService;
176
+ /**
177
+ * Mercury telephony mute sync for wxApp thick-client answer
178
+ * @private
179
+ */
180
+ private wxAppTelephonyMercurySync;
181
+ /** True when wxApp mute sync opened Mercury (Extension/DN-only profiles). */
182
+ private wxAppMercuryConnectedByCc;
183
+ /** True when wxApp mute sync registered the Webex device. */
184
+ private wxAppDeviceRegisteredByCc;
185
+ private static readonly WXAPP_FALSE_PUBLISH_RETRY_DELAY_MS;
186
+ private static readonly WXAPP_FALSE_PUBLISH_MAX_RETRIES;
187
+ private wxAppFalsePublishRetryTimer?;
164
188
  /**
165
189
  * Core service managers for Contact Center operations
166
190
  * Includes agent, connection, and configuration services
@@ -250,7 +274,37 @@ export default class ContactCenter extends WebexPlugin implements IContactCenter
250
274
  * });
251
275
  * ```
252
276
  */
253
- private queue;
277
+ queue: Queue;
278
+ /**
279
+ * API instance for managing Webex Contact Center user preferences
280
+ * Provides functionality to get, create, update, and delete user preferences
281
+ * @type {UserPreference}
282
+ * @public
283
+ * @example
284
+ * ```typescript
285
+ * const cc = webex.cc;
286
+ * await cc.register();
287
+ * await cc.stationLogin({ teamId: 'team123', loginOption: 'BROWSER' });
288
+ *
289
+ * // Get user preferences for current user
290
+ * const preferences = await cc.userPreference.getUserPreference();
291
+ *
292
+ * // Create new user preferences
293
+ * const newPrefs = await cc.userPreference.createUserPreference({
294
+ * userId: 'user123',
295
+ * preferences: { e911Reminder: true }
296
+ * });
297
+ *
298
+ * // Update user preferences
299
+ * const updatedPrefs = await cc.userPreference.updateUserPreference('user123', {
300
+ * preferences: { e911Reminder: false }
301
+ * });
302
+ *
303
+ * // Delete user preferences
304
+ * await cc.userPreference.deleteUserPreference('user123');
305
+ * ```
306
+ */
307
+ userPreference: UserPreference;
254
308
  /**
255
309
  * API instance for AI Assistant operations such as transcript controls.
256
310
  * @type {ApiAIAssistant}
@@ -282,6 +336,12 @@ export default class ContactCenter extends WebexPlugin implements IContactCenter
282
336
  * @param {ITask} task The task object to be hydrated with additional data
283
337
  */
284
338
  private handleTaskHydrate;
339
+ /**
340
+ * Handles multi-login hydrate events for SDK instances without Mobius registration
341
+ * @private
342
+ * @param {ITask} task The task object associated with the multi-login hydrate
343
+ */
344
+ private handleTaskMultiLoginHydrate;
285
345
  /**
286
346
  * Handles task merged events when tasks are combined eg: EPDN merge/transfer
287
347
  * @private
@@ -525,6 +585,69 @@ export default class ContactCenter extends WebexPlugin implements IContactCenter
525
585
  * @param {string} event The raw websocket event message
526
586
  */
527
587
  private handleWebsocketMessage;
588
+ /**
589
+ * Checks whether Mobius/WebRTC registration should be skipped by config
590
+ * @returns {boolean} True when browser WebRTC registration is disabled
591
+ * @private
592
+ */
593
+ private isWebRTCRegistrationDisabled;
594
+ /**
595
+ * Validates contact-center plugin configuration before service initialization
596
+ * @private
597
+ */
598
+ private validatePluginConfig;
599
+ /**
600
+ * Whether wxApp thick-client answer is enabled for this SDK instance.
601
+ * @public
602
+ */
603
+ isWxBetterTogetherEnabled(): boolean;
604
+ /**
605
+ * Current station login option (Extension, Dial Number, or Browser/Desktop).
606
+ * Prefer webCallingService — updated on every stationLogin before wxApp hooks run.
607
+ * @private
608
+ */
609
+ private getCurrentStationLoginOption;
610
+ /**
611
+ * wxApp thick-client answer is supported for Extension and Dial Number station login only —
612
+ * not Browser/Desktop (WebRTC) login.
613
+ * @private
614
+ */
615
+ private assertWxAppStationLoginSupportedForEnable;
616
+ /**
617
+ * Clears runtime wxApp config after logout/deregister so stale flags do not apply on relogin.
618
+ * @private
619
+ */
620
+ private resetEnableWxBetterTogetherConfig;
621
+ private getWxAppTelephonyTaskType;
622
+ private ensureWxAppPostStationLogin;
623
+ private clearWxAppFalsePublishRetryTimer;
624
+ private scheduleForcedFalsePublishRetry;
625
+ /**
626
+ * Retries compensating false publish after rollback failure, regardless of enabled flag.
627
+ * @private
628
+ */
629
+ private scheduleCompensatingFalsePublishRetry;
630
+ private scheduleFalsePublishRetry;
631
+ /**
632
+ * Best-effort rollback when usersub true was published but wxApp setup did not complete.
633
+ * @private
634
+ */
635
+ private revertWxAppCrossClientPublish;
636
+ private ensureWxAppDeviceRegistered;
637
+ private ensureWxAppMercuryConnected;
638
+ /**
639
+ * Disconnects Mercury and unregisters the device when wxApp mute sync opened them.
640
+ * @private
641
+ */
642
+ private releaseWxAppMercuryResources;
643
+ /**
644
+ * Clears wxApp runtime state and feature-owned resources. Publish failures are logged;
645
+ * optional rethrow for deregister when callers need to surface usersub errors.
646
+ * @private
647
+ */
648
+ private teardownWxAppLocalState;
649
+ private ensureWxAppMercuryAndSubscribe;
650
+ private publishAnswerOnWebexCrossClientState;
528
651
  /**
529
652
  * Initializes event listeners for the Contact Center service
530
653
  * Sets up handlers for connection state changes and other core events
@@ -689,6 +812,50 @@ export default class ContactCenter extends WebexPlugin implements IContactCenter
689
812
  * ```
690
813
  */
691
814
  acceptPreviewContact(payload: PreviewContactPayload): Promise<TaskResponse>;
815
+ /**
816
+ * Skips a campaign preview contact, requesting the next contact from the campaign.
817
+ *
818
+ * When a campaign manager reserves a contact for an agent, the agent receives an
819
+ * `AgentOfferCampaignReservation` event. Instead of accepting, the agent can skip the
820
+ * preview contact to move to the next contact in the campaign.
821
+ *
822
+ * @param {PreviewContactPayload} payload - The preview contact payload containing interactionId and campaignId (campaign name, not UUID).
823
+ * @returns {Promise<TaskResponse>} Promise resolving with agent contact on success.
824
+ * @throws {Error} If the operation fails (network error, etc.)
825
+ *
826
+ * @example
827
+ * ```typescript
828
+ * webex.cc.on('task:campaignPreviewReservation', async (task) => {
829
+ * const { interactionId } = task.data;
830
+ * const campaignId = task.data.interaction.callProcessingDetails.campaignId;
831
+ *
832
+ * const result = await webex.cc.skipPreviewContact({ interactionId, campaignId });
833
+ * });
834
+ * ```
835
+ */
836
+ skipPreviewContact(payload: PreviewContactPayload): Promise<TaskResponse>;
837
+ /**
838
+ * Removes a campaign preview contact from the campaign list entirely.
839
+ *
840
+ * When a campaign manager reserves a contact for an agent, the agent receives an
841
+ * `AgentOfferCampaignReservation` event. Instead of accepting or skipping, the agent can
842
+ * remove the preview contact to permanently take it out of the campaign contact list.
843
+ *
844
+ * @param {PreviewContactPayload} payload - The preview contact payload containing interactionId and campaignId (campaign name, not UUID).
845
+ * @returns {Promise<TaskResponse>} Promise resolving with agent contact on success.
846
+ * @throws {Error} If the operation fails (network error, etc.)
847
+ *
848
+ * @example
849
+ * ```typescript
850
+ * webex.cc.on('task:campaignPreviewReservation', async (task) => {
851
+ * const { interactionId } = task.data;
852
+ * const campaignId = task.data.interaction.callProcessingDetails.campaignId;
853
+ *
854
+ * const result = await webex.cc.removePreviewContact({ interactionId, campaignId });
855
+ * });
856
+ * ```
857
+ */
858
+ removePreviewContact(payload: PreviewContactPayload): Promise<TaskResponse>;
692
859
  /**
693
860
  * Fetches outdial ANI (Automatic Number Identification) entries for an outdial ANI ID.
694
861
  *
@@ -787,14 +954,14 @@ export default class ContactCenter extends WebexPlugin implements IContactCenter
787
954
  */
788
955
  updateAgentProfile(data: AgentProfileUpdate): Promise<UpdateDeviceTypeResponse>;
789
956
  /**
790
- * Returns paginated entry points for the organization.
791
- * Thin wrapper around internal EntryPoint instance.
957
+ * Returns paginated entry points using the EntryPoint service defaults.
958
+ * Existing request parameters can override those defaults.
792
959
  * @public
793
960
  */
794
961
  getEntryPoints(params?: EntryPointSearchParams): Promise<EntryPointListResponse>;
795
962
  /**
796
- * Returns paginated contact service queues for the organization.
797
- * Thin wrapper around internal Queue instance.
963
+ * Returns paginated contact service queues using the Queue service defaults.
964
+ * Existing request parameters can override those defaults.
798
965
  * @public
799
966
  */
800
967
  getQueues(params?: ContactServiceQueueSearchParams): Promise<ContactServiceQueuesResponse>;
@@ -25,6 +25,19 @@ declare const _default: {
25
25
  * @default true
26
26
  */
27
27
  allowAutomatedRelogin: boolean;
28
+ /**
29
+ * Whether to skip Mobius/WebRTC registration for browser login flows.
30
+ * @type {boolean}
31
+ * @default false
32
+ */
33
+ disableWebRTCRegistration: boolean;
34
+ /**
35
+ * Whether wxApp Better Together is enabled at SDK init.
36
+ * Must be set before SDK init. Default false (WXCC-6026).
37
+ * @type {boolean}
38
+ * @default false
39
+ */
40
+ enableWxBetterTogether: boolean;
28
41
  /**
29
42
  * The type of client making the connection.
30
43
  * @type {string}
@@ -13,6 +13,7 @@ export declare const AQM_REQS_FILE = "aqm-reqs";
13
13
  export declare const WEBEX_REQUEST_FILE = "WebexRequest";
14
14
  export declare const TASK_MANAGER_FILE = "TaskManager";
15
15
  export declare const TASK_FILE = "Task";
16
+ export declare const INBOUND_DIRECTION = "INBOUND";
16
17
  export declare const OUTDIAL_DIRECTION = "OUTBOUND";
17
18
  export declare const ATTRIBUTES: {};
18
19
  export declare const OUTDIAL_MEDIA_TYPE = "telephony";
@@ -36,15 +37,38 @@ export declare const METHODS: {
36
37
  HANDLE_DEVICE_TYPE: string;
37
38
  START_OUTDIAL: string;
38
39
  GET_QUEUES: string;
39
- GET_OUTDIAL_ANI_ENTRIES: string;
40
40
  UPLOAD_LOGS: string;
41
41
  UPDATE_AGENT_PROFILE: string;
42
42
  GET_DEVICE_ID: string;
43
43
  HANDLE_INCOMING_TASK: string;
44
44
  HANDLE_TASK_HYDRATE: string;
45
45
  INCOMING_TASK_LISTENER: string;
46
+ ACCEPT: string;
47
+ REJECT: string;
48
+ HOLD: string;
49
+ RESUME: string;
50
+ HOLD_RESUME: string;
51
+ TRANSFER_CALL: string;
52
+ CONSULT_TRANSFER: string;
53
+ CONSULT_CONFERENCE: string;
54
+ DROP_CONFERENCE_PARTICIPANT: string;
55
+ EXIT_CONFERENCE: string;
56
+ TRANSFER_CONFERENCE: string;
57
+ TOGGLE_MUTE: string;
58
+ TRANSMIT_DTMF: string;
59
+ COMPLETE_TRANSFER: string;
60
+ GET_OUTDIAL_ANI_ENTRIES: string;
46
61
  ACCEPT_PREVIEW_CONTACT: string;
62
+ SKIP_PREVIEW_CONTACT: string;
63
+ REMOVE_PREVIEW_CONTACT: string;
47
64
  GET_BASE_URL: string;
48
65
  SEND_EVENT: string;
66
+ GET_REAL_TIME_ASSISTANCE: string;
67
+ SEND_REAL_TIME_ASSISTANCE_USER_ACTION: string;
49
68
  FETCH_HISTORIC_TRANSCRIPTS: string;
69
+ SET_MANAGE_WEBEX_CALLING_IN_WXCC: string;
70
+ IS_WX_BETTER_TOGETHER_ENABLED: string;
71
+ SYNC_WXAPP_MUTE_FROM_MERCURY: string;
72
+ GET_CALL_DETAILS_ON_WEBEX: string;
73
+ ENSURE_WXAPP_MERCURY_CONNECTED: string;
50
74
  };
@@ -10,17 +10,18 @@ import ContactCenter from './cc';
10
10
  */
11
11
  export { default as ContactCenter } from './cc';
12
12
  /**
13
- * Task class represents a contact center task that can be managed by an agent
13
+ * Agent routing service for Contact Center operations
14
14
  * @category Services
15
15
  */
16
- export { default as Task } from './services/task';
16
+ export { default as routingAgent } from './services/agent';
17
17
  /**
18
- * Agent routing service for Contact Center operations
18
+ * Task class represents a contact center task that can be managed by an agent
19
19
  * @category Services
20
20
  */
21
- export { default as routingAgent } from './services/agent';
21
+ export { default as Task } from './services/task/Task';
22
22
  export { default as AddressBook } from './services/AddressBook';
23
23
  export { default as ApiAIAssistant } from './services/ApiAiAssistant';
24
+ export { default as UserPreference } from './services/UserPreference';
24
25
  /** EntryPoint API types */
25
26
  export type { EntryPointRecord, EntryPointListResponse, EntryPointSearchParams, AddressBookEntry, AddressBookEntriesResponse, AddressBookEntrySearchParams, ContactServiceQueuesResponse, ContactServiceQueueSearchParams, ContactServiceQueue, } from './types';
26
27
  /**
@@ -92,12 +93,20 @@ GenericError,
92
93
  SetStateResponse, } from './types';
93
94
  /** Task related types */
94
95
  export type { AgentContact,
96
+ /** Event emitter contract for task consumers (no @types/node needed) */
97
+ IEventEmitter,
95
98
  /** Task interface */
96
99
  ITask, Interaction, TaskData,
97
100
  /** Task response */
98
- TaskResponse, ConsultPayload, ConsultEndPayload, ConsultTransferPayLoad,
101
+ TaskResponse,
102
+ /** Conference participant drop request */
103
+ DropConferenceParticipantPayload, ConsultPayload, ConsultEndPayload, ConsultTransferPayLoad,
99
104
  /** Dialer payload */
100
- DialerPayload, TransferPayLoad, ResumeRecordingPayload, WrapupPayLoad, } from './services/task/types';
105
+ DialerPayload, TransferPayLoad, ResumeRecordingPayload, WrapupPayLoad,
106
+ /** UI control types for task buttons */
107
+ InteractionUIControls, TaskUILeg, TaskUIControls, TaskUIControlState, } from './services/task/types';
108
+ /** UI controls utilities */
109
+ export { getDefaultUIControls } from './services/task/state-machine/uiControlsComputer';
101
110
  /** Agent related types */
102
111
  export type {
103
112
  /** State change interface */
@@ -167,7 +176,15 @@ Entity,
167
176
  /** Dial plan configuration */
168
177
  DialPlan,
169
178
  /** Auxiliary code type (IDLE_CODE or WRAP_UP_CODE) */
170
- AuxCodeType, } from './services/config/types';
179
+ AuxCodeType,
180
+ /** User preference data structure */
181
+ UserPreference as UserPreferenceData,
182
+ /** Request payload for creating user preferences */
183
+ CreateUserPreferenceRequest,
184
+ /** Request payload for updating user preferences */
185
+ UpdateUserPreferenceRequest,
186
+ /** Query parameters for fetching user preferences */
187
+ GetUserPreferenceParams, } from './services/config/types';
171
188
  /**
172
189
  * Idle code constant
173
190
  * @constant {string}
@@ -178,6 +178,12 @@ export default class MetricsManager {
178
178
  * MetricsManager.getInstance().timeEvent(['AGENT_LOGIN', 'AGENT_LOGOUT']);
179
179
  */
180
180
  timeEvent(keys: string | string[]): void;
181
+ /**
182
+ * Clears a running timed event without emitting a metric.
183
+ * @param keys - A string or array of strings representing event keys (same as timeEvent).
184
+ * @public
185
+ */
186
+ cancelTimedEvent(keys: string | string[]): void;
181
187
  /**
182
188
  * Sets the Webex SDK instance and marks the manager as ready when the SDK is ready.
183
189
  * @param webex - The Webex SDK instance.
@@ -122,15 +122,36 @@ export declare const METRIC_EVENT_NAMES: {
122
122
  readonly TASK_CONFERENCE_END_FAILED: "Task Conference End Failed";
123
123
  readonly TASK_CONFERENCE_TRANSFER_SUCCESS: "Task Conference Transfer Success";
124
124
  readonly TASK_CONFERENCE_TRANSFER_FAILED: "Task Conference Transfer Failed";
125
+ readonly TASK_CONFERENCE_EXIT_SUCCESS: "Task Conference Exit Success";
126
+ readonly TASK_CONFERENCE_EXIT_FAILED: "Task Conference Exit Failed";
127
+ readonly TASK_CONFERENCE_PARTICIPANT_DROP_SUCCESS: "Task Conference Participant Drop Success";
128
+ readonly TASK_CONFERENCE_PARTICIPANT_DROP_FAILED: "Task Conference Participant Drop Failed";
129
+ readonly TASK_SWITCH_CALL_SUCCESS: "Task Switch Call Success";
130
+ readonly TASK_SWITCH_CALL_FAILED: "Task Switch Call Failed";
125
131
  readonly TASK_OUTDIAL_SUCCESS: "Task Outdial Success";
126
132
  readonly TASK_OUTDIAL_FAILED: "Task Outdial Failed";
133
+ readonly WXAPP_TASK_MUTE_SUCCESS: "WxApp Task Mute Success";
134
+ readonly WXAPP_TASK_MUTE_FAILED: "WxApp Task Mute Failed";
135
+ readonly WXAPP_TASK_DTMF_SUCCESS: "WxApp Task Dtmf Success";
136
+ readonly WXAPP_TASK_DTMF_FAILED: "WxApp Task Dtmf Failed";
137
+ readonly WXAPP_TASK_ACCEPT_SUCCESS: "WxApp Task Accept Success";
138
+ readonly WXAPP_TASK_ACCEPT_FAILED: "WxApp Task Accept Failed";
139
+ readonly WXAPP_TASK_DECLINE_SUCCESS: "WxApp Task Decline Success";
140
+ readonly WXAPP_TASK_DECLINE_FAILED: "WxApp Task Decline Failed";
141
+ readonly WXAPP_SESSION_INIT_SUCCESS: "WxApp Session Init Success";
142
+ readonly WXAPP_SESSION_INIT_FAILED: "WxApp Session Init Failed";
143
+ readonly WXAPP_SESSION_SKIPPED: "WxApp Session Skipped";
144
+ readonly WXAPP_USERSUB_PUBLISH_SUCCESS: "WxApp Usersub Publish Success";
145
+ readonly WXAPP_USERSUB_PUBLISH_FAILED: "WxApp Usersub Publish Failed";
146
+ readonly WXAPP_MERCURY_SUBSCRIBE_SUCCESS: "WxApp Mercury Subscribe Success";
147
+ readonly WXAPP_MERCURY_SUBSCRIBE_FAILED: "WxApp Mercury Subscribe Failed";
127
148
  readonly UPLOAD_LOGS_SUCCESS: "Upload Logs Success";
128
149
  readonly UPLOAD_LOGS_FAILED: "Upload Logs Failed";
129
150
  readonly WEBSOCKET_DEREGISTER_SUCCESS: "Websocket Deregister Success";
130
151
  readonly WEBSOCKET_DEREGISTER_FAIL: "Websocket Deregister Failed";
131
- readonly WEBSOCKET_EVENT_RECEIVED: "Websocket Event Received";
132
152
  readonly AGENT_DEVICE_TYPE_UPDATE_SUCCESS: "Agent Device Type Update Success";
133
153
  readonly AGENT_DEVICE_TYPE_UPDATE_FAILED: "Agent Device Type Update Failed";
154
+ readonly WEBSOCKET_EVENT_RECEIVED: "Websocket Event Received";
134
155
  readonly ENTRYPOINT_FETCH_SUCCESS: "Entrypoint Fetch Success";
135
156
  readonly ENTRYPOINT_FETCH_FAILED: "Entrypoint Fetch Failed";
136
157
  readonly ADDRESSBOOK_FETCH_SUCCESS: "AddressBook Fetch Success";
@@ -141,10 +162,26 @@ export declare const METRIC_EVENT_NAMES: {
141
162
  readonly OUTDIAL_ANI_EP_FETCH_FAILED: "Outdial ANI Entries Fetch Failed";
142
163
  readonly CAMPAIGN_PREVIEW_ACCEPT_SUCCESS: "Campaign Preview Accept Success";
143
164
  readonly CAMPAIGN_PREVIEW_ACCEPT_FAILED: "Campaign Preview Accept Failed";
165
+ readonly CAMPAIGN_PREVIEW_SKIP_SUCCESS: "Campaign Preview Skip Success";
166
+ readonly CAMPAIGN_PREVIEW_SKIP_FAILED: "Campaign Preview Skip Failed";
167
+ readonly CAMPAIGN_PREVIEW_REMOVE_SUCCESS: "Campaign Preview Remove Success";
168
+ readonly CAMPAIGN_PREVIEW_REMOVE_FAILED: "Campaign Preview Remove Failed";
144
169
  readonly AI_ASSISTANT_SEND_EVENT_SUCCESS: "AI Assistant Send Event Success";
145
170
  readonly AI_ASSISTANT_SEND_EVENT_FAILED: "AI Assistant Send Event Failed";
171
+ readonly AI_ASSISTANT_GET_REAL_TIME_ASSISTANCE_SUCCESS: "AI Assistant Get Real Time Assistance Success";
172
+ readonly AI_ASSISTANT_GET_REAL_TIME_ASSISTANCE_FAILED: "AI Assistant Get Real Time Assistance Failed";
173
+ readonly AI_ASSISTANT_SEND_REAL_TIME_ASSISTANCE_USER_ACTION_SUCCESS: "AI Assistant Send Real Time Assistance User Action Success";
174
+ readonly AI_ASSISTANT_SEND_REAL_TIME_ASSISTANCE_USER_ACTION_FAILED: "AI Assistant Send Real Time Assistance User Action Failed";
146
175
  readonly AI_ASSISTANT_FETCH_HISTORIC_TRANSCRIPTS_SUCCESS: "AI Assistant Fetch Historic Transcripts Success";
147
176
  readonly AI_ASSISTANT_FETCH_HISTORIC_TRANSCRIPTS_FAILED: "AI Assistant Fetch Historic Transcripts Failed";
177
+ readonly USER_PREFERENCE_GET_SUCCESS: "User Preference Get Success";
178
+ readonly USER_PREFERENCE_GET_FAILED: "User Preference Get Failed";
179
+ readonly USER_PREFERENCE_CREATE_SUCCESS: "User Preference Create Success";
180
+ readonly USER_PREFERENCE_CREATE_FAILED: "User Preference Create Failed";
181
+ readonly USER_PREFERENCE_UPDATE_SUCCESS: "User Preference Update Success";
182
+ readonly USER_PREFERENCE_UPDATE_FAILED: "User Preference Update Failed";
183
+ readonly USER_PREFERENCE_DELETE_SUCCESS: "User Preference Delete Success";
184
+ readonly USER_PREFERENCE_DELETE_FAILED: "User Preference Delete Failed";
148
185
  };
149
186
  /**
150
187
  * Represents the possible metric event names used within the metrics system.
@@ -52,7 +52,8 @@ export declare class AddressBook {
52
52
  constructor(webex: WebexSDK, getAddressBookId: () => string);
53
53
  /**
54
54
  * Fetches address book entries for a specific address book using the entry API
55
- * @param {AddressBookEntrySearchParams} [params] - Search and pagination parameters including addressBookId
55
+ * @param {AddressBookEntrySearchParams} [params] - Search, pagination, and optional sort parameters
56
+ * including addressBookId. Sorting defaults to name ascending.
56
57
  * @returns {Promise<AddressBookEntriesResponse>} Promise resolving to address book entries
57
58
  * @throws {Error} If the API call fails
58
59
  * @public
@@ -0,0 +1,38 @@
1
+ import { IHttpResponse, WebexSDK } from '../types';
2
+ export type WxAppTelephonyError = Error & {
3
+ isWxAppTelephonyError: true;
4
+ trackingId?: string;
5
+ status?: number | string;
6
+ };
7
+ export type AnswerCallParams = {
8
+ callId: string;
9
+ endpointId: string;
10
+ lineOwnerId?: string;
11
+ };
12
+ export type CallIdParams = {
13
+ callId: string;
14
+ lineOwnerId?: string;
15
+ };
16
+ export type TransmitDtmfParams = CallIdParams & {
17
+ dtmf: string;
18
+ };
19
+ export type CallDetailsResponse = {
20
+ muted?: boolean;
21
+ };
22
+ /**
23
+ * REST telephony client for wxApp thick-client answer (WXCC-6026).
24
+ * Separate from WebCallingService (WebRTC/Mobius).
25
+ */
26
+ export default class AnswerCallOnWebexService {
27
+ private webex;
28
+ constructor(webex: WebexSDK);
29
+ private getTelephonyBaseUrl;
30
+ private extractTrackingId;
31
+ private telephonyRequest;
32
+ answerCall(params: AnswerCallParams): Promise<IHttpResponse>;
33
+ rejectCall(params: CallIdParams): Promise<IHttpResponse>;
34
+ muteCall(params: CallIdParams): Promise<IHttpResponse>;
35
+ unmuteCall(params: CallIdParams): Promise<IHttpResponse>;
36
+ transmitDtmf(params: TransmitDtmfParams): Promise<IHttpResponse>;
37
+ getCallDetails(params: CallIdParams): Promise<CallDetailsResponse>;
38
+ }
@@ -1,4 +1,4 @@
1
- import { WebexSDK, TranscriptAction, AIAssistantEventType, AIAssistantEventName, HistoricTranscriptsResponse } from '../types';
1
+ import { WebexSDK, AIAssistantEventType, AIAssistantEventName, HistoricTranscriptsResponse, RealTimeAssistanceParams, RealTimeAssistanceUserActionParams } from '../types';
2
2
  import { AIFeatureFlags } from './config/types';
3
3
  /**
4
4
  * ApiAIAssistant provides AI Assistant APIs for transcript controls.
@@ -7,7 +7,7 @@ import { AIFeatureFlags } from './config/types';
7
7
  export declare class ApiAIAssistant {
8
8
  private webex;
9
9
  private metricsManager;
10
- aiFeature: AIFeatureFlags;
10
+ private aiFeature;
11
11
  constructor(webex: WebexSDK);
12
12
  setAIFeatureFlags(aiFeature: AIFeatureFlags): void;
13
13
  private getBaseUrl;
@@ -17,9 +17,27 @@ export declare class ApiAIAssistant {
17
17
  * @param interactionId - interaction/conversation identifier
18
18
  * @param eventType - the type of event (e.g. 'CUSTOM_EVENT')
19
19
  * @param eventName - the name of the event (e.g. 'GET_TRANSCRIPTS')
20
- * @param action - action within eventDetails (e.g. 'START' or 'STOP')
20
+ * @param eventMetaData - event-specific fields to include in eventDetails.data
21
+ * @param languageCode - language code within eventDetails.data
22
+ * @param trackingId - tracking identifier within eventDetails.data
21
23
  */
22
- sendEvent(agentId: string, interactionId: string, eventType: AIAssistantEventType, eventName: AIAssistantEventName, action: TranscriptAction): Promise<Record<string, unknown>>;
24
+ sendEvent(agentId: string, interactionId: string, eventType: AIAssistantEventType, eventName: AIAssistantEventName, eventMetaData?: Record<string, unknown>, languageCode?: string, trackingId?: string): Promise<Record<string, unknown>>;
25
+ /**
26
+ * Requests real-time assistance for an interaction.
27
+ *
28
+ * @param params - Real-time assistance request parameters
29
+ * @returns HTTP response body from the AI Assistant event API
30
+ * @public
31
+ */
32
+ getRealTimeAssistance(params: RealTimeAssistanceParams): Promise<Record<string, unknown>>;
33
+ /**
34
+ * Sends user action feedback for a real-time assistance adaptive card.
35
+ *
36
+ * @param params - Real-time assistance user action parameters
37
+ * @returns HTTP response body from the AI Assistant event API
38
+ * @public
39
+ */
40
+ sendRealTimeAssistanceUserAction(params: RealTimeAssistanceUserActionParams): Promise<Record<string, unknown>>;
23
41
  /**
24
42
  * Fetches historic transcripts for an interaction.
25
43
  * This API is allowed only when real-time transcription feature is enabled.
@@ -27,7 +27,7 @@ import type { EntryPointListResponse, EntryPointSearchParams } from '../types';
27
27
  * });
28
28
  *
29
29
  * // Search for specific entry points
30
- * const searchResults = await entryPointAPI.searchEntryPoints({
30
+ * const searchResults = await entryPointAPI.getEntryPoints({
31
31
  * search: 'support',
32
32
  * filter: 'type=="voice"'
33
33
  * });
@@ -37,7 +37,6 @@ export declare class EntryPoint {
37
37
  private webexRequest;
38
38
  private webex;
39
39
  private metricsManager;
40
- private pageCache;
41
40
  /**
42
41
  * Creates an instance of EntryPoint
43
42
  * @param {WebexSDK} webex - The Webex SDK instance
@@ -45,14 +44,17 @@ export declare class EntryPoint {
45
44
  */
46
45
  constructor(webex: WebexSDK);
47
46
  /**
48
- * Fetches entry points for the organization with pagination support
49
- * @param {EntryPointSearchParams} [params] - Search and pagination parameters
47
+ * Fetches entry-point dial-number mappings for the organization with pagination support. By
48
+ * default, returns the agent's desktop-profile-filtered mappings in backend entry-point-name order.
49
+ * Search, filter, attribute, and sort parameters can customize the request while desktop-profile
50
+ * scoping and required mapping fields remain SDK-owned.
51
+ * @param {EntryPointSearchParams} [params] - Search, pagination, and compatible override parameters.
50
52
  * @returns {Promise<EntryPointListResponse>} Promise resolving to paginated entry points
51
53
  * @throws {Error} If the API call fails
52
54
  * @public
53
55
  * @example
54
56
  * ```typescript
55
- * // Get first page of entry points
57
+ * // Get the first page using the default entry-point policy
56
58
  * const response = await entryPointAPI.getEntryPoints();
57
59
  *
58
60
  * // Get specific page with custom page size
@@ -48,14 +48,16 @@ export declare class Queue {
48
48
  */
49
49
  constructor(webex: WebexSDK);
50
50
  /**
51
- * Fetches contact service queues for the organization
52
- * @param {ContactServiceQueueSearchParams} [params] - Search and pagination parameters
51
+ * Fetches contact service queues for the organization. By default, returns active inbound
52
+ * telephony queues in backend name-ascending order using the agent's desktop profile views.
53
+ * Existing filter, sort, and desktop-profile parameters override those defaults.
54
+ * @param {ContactServiceQueueSearchParams} [params] - Search, pagination, and override parameters
53
55
  * @returns {Promise<ContactServiceQueuesResponse>} Promise resolving to contact service queues
54
56
  * @throws {Error} If the API call fails
55
57
  * @public
56
58
  * @example
57
59
  * ```typescript
58
- * // Get all queues with default pagination
60
+ * // Get queues using the default list policy and pagination
59
61
  * const response = await queueAPI.getQueues();
60
62
  *
61
63
  * // Get queues with specific pagination