@webex/contact-center 3.12.0-next.149 → 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 (37) hide show
  1. package/.sdd/manifest.json +1 -1
  2. package/ai-docs/CONTRACTS.md +1 -0
  3. package/dist/cc.js +4 -4
  4. package/dist/cc.js.map +1 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/services/config/Util.js +38 -45
  7. package/dist/services/config/Util.js.map +1 -1
  8. package/dist/services/config/constants.js +15 -71
  9. package/dist/services/config/constants.js.map +1 -1
  10. package/dist/services/config/index.js +49 -226
  11. package/dist/services/config/index.js.map +1 -1
  12. package/dist/services/config/types.js +33 -11
  13. package/dist/services/config/types.js.map +1 -1
  14. package/dist/types/cc.d.ts +3 -3
  15. package/dist/types/index.d.ts +16 -8
  16. package/dist/types/services/config/Util.d.ts +4 -8
  17. package/dist/types/services/config/constants.d.ts +15 -71
  18. package/dist/types/services/config/index.d.ts +16 -64
  19. package/dist/types/services/config/types.d.ts +97 -160
  20. package/dist/webex.js +1 -1
  21. package/package.json +1 -1
  22. package/src/cc.ts +4 -4
  23. package/src/index.ts +16 -8
  24. package/src/services/agent/ai-docs/AGENTS.md +1 -1
  25. package/src/services/config/Util.ts +43 -82
  26. package/src/services/config/ai-docs/AGENTS.md +34 -39
  27. package/src/services/config/ai-docs/ARCHITECTURE.md +88 -101
  28. package/src/services/config/ai-docs/config-spec.md +115 -132
  29. package/src/services/config/constants.ts +18 -80
  30. package/src/services/config/index.ts +52 -278
  31. package/src/services/config/types.ts +101 -185
  32. package/test/unit/spec/index.ts +6 -2
  33. package/test/unit/spec/services/config/Util.ts +442 -70
  34. package/test/unit/spec/services/config/index.ts +246 -544
  35. package/typedoc.md +1 -1
  36. package/umd/contact-center.min.js +2 -2
  37. package/umd/contact-center.min.js.map +1 -1
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_webexCore","require","_config","_interopRequireDefault","_cc","_agent","_Task","_AddressBook","_ApiAiAssistant","_constants","_UserPreference","_types","_types2","_types3","_types4","_uiControlsComputer","e","__esModule","default","registerPlugin","ContactCenter","config","_default","exports"],"sources":["index.ts"],"sourcesContent":["import {registerPlugin} from '@webex/webex-core';\nimport config from './config';\nimport ContactCenter from './cc';\n\n/**\n * @module ContactCenterModule\n */\n\n// Core exports\n/**\n * ContactCenter is the main plugin class for Webex Contact Center integration\n * @category Core\n */\nexport {default as ContactCenter} from './cc';\n\n/**\n * Agent routing service for Contact Center operations\n * @category Services\n */\nexport {default as routingAgent} from './services/agent';\n\n/**\n * Task class represents a contact center task that can be managed by an agent\n * @category Services\n */\nexport {default as Task} from './services/task/Task';\n\n// API exports (AddressBook is public, EntryPoint and Queue are accessed via cc wrappers)\nexport {default as AddressBook} from './services/AddressBook';\nexport {default as ApiAIAssistant} from './services/ApiAiAssistant';\nexport {AI_SUMMARY_ERROR_CODES} from './constants';\nexport {default as UserPreference} from './services/UserPreference';\n\n/** Agent Wellness Break notification and action wire values. */\nexport {WELLNESS_BREAK_NOTIFICATION_ACTIONS, WELLNESS_BREAK_USER_ACTIONS} from './types';\n\n/** EntryPoint API types */\nexport type {\n EntryPointRecord,\n EntryPointListResponse,\n EntryPointSearchParams,\n AddressBookEntry,\n AddressBookEntriesResponse,\n AddressBookEntrySearchParams,\n ContactServiceQueuesResponse,\n ContactServiceQueueSearchParams,\n ContactServiceQueue,\n} from './types';\n\n// Enums\n/**\n * Task Events for Contact Center operations\n * @enum {string}\n * @category Enums\n */\nexport {TASK_EVENTS} from './services/task/types';\nexport type {TASK_EVENTS as TaskEvents} from './services/task/types';\n\n/**\n * Agent Events for Contact Center operations\n * @enum {string}\n * @category Enums\n */\nexport {AGENT_EVENTS} from './services/agent/types';\nexport type {AGENT_EVENTS as AgentEvents} from './services/agent/types';\n\n/**\n * Contact Center task, realtime, and AI Assistant events\n * @enum {string}\n * @category Enums\n */\nexport {CC_TASK_EVENTS} from './services/config/types';\n\n/**\n * Contact Center Agent Events\n * @enum {string}\n * @category Enums\n */\nexport {CC_AGENT_EVENTS} from './services/config/types';\n\n/**\n * Combined Contact Center Events\n * @enum {string}\n * @category Enums\n */\nexport {CC_EVENTS} from './services/config/types';\nexport type {CC_EVENTS as ContactCenterEvents} from './services/config/types';\n\n// Interfaces\n/** Main types and interfaces for Contact Center functionality */\nexport type {\n /** Interface for Contact Center plugin */\n IContactCenter,\n /** Configuration options for Contact Center plugin */\n CCPluginConfig,\n /** WebexSDK interface */\n WebexSDK,\n} from './types';\n\n// Types\n/** Agent related types */\nexport type {\n /** Login options for agents */\n LoginOption,\n /** Agent login information */\n AgentLogin,\n /** Agent device update information */\n AgentProfileUpdate,\n /** Station login response */\n StationLoginResponse,\n /** Station logout response */\n StationLogoutResponse,\n /** Buddy agents response */\n BuddyAgentsResponse,\n /** Buddy agents information */\n BuddyAgents,\n /** Subscribe request parameters */\n SubscribeRequest,\n /** Upload logs response */\n UploadLogsResponse,\n /** Update device type response */\n UpdateDeviceTypeResponse,\n /** Generic error interface */\n GenericError,\n /** Set state response */\n SetStateResponse,\n /** Wellness notification action */\n WellnessBreakNotificationAction,\n /** Wellness action API value */\n WellnessBreakUserAction,\n /** Validated agent-scoped wellness notification */\n WellnessBreakEvent,\n /** Wellness offer-response parameters */\n RespondToWellnessBreakParams,\n} from './types';\n\n/** Task related types */\nexport type {\n AgentContact,\n /** Event emitter contract for task consumers (no @types/node needed) */\n IEventEmitter,\n /** Task interface */\n ITask,\n Interaction,\n TaskData,\n /** Task response */\n TaskResponse,\n /** Conference participant drop request */\n DropConferenceParticipantPayload,\n ConsultPayload,\n ConsultEndPayload,\n ConsultTransferPayLoad,\n /** Dialer payload */\n DialerPayload,\n TransferPayLoad,\n ResumeRecordingPayload,\n WrapupPayLoad,\n /** UI control types for task buttons */\n InteractionUIControls,\n TaskUILeg,\n TaskUIControls,\n TaskUIControlState,\n AISummaryAction,\n AISummaryFeedback,\n AISummaryState,\n AISummarySections,\n AISummary,\n AISummaryFeatureEnablement,\n AISummaryResponse,\n} from './services/task/types';\n\n/** UI controls utilities */\nexport {getDefaultUIControls} from './services/task/state-machine/uiControlsComputer';\n\n/** Agent related types */\nexport type {\n /** State change interface */\n StateChange,\n /** Logout interface */\n Logout,\n /** State change success response */\n StateChangeSuccess,\n /** Station login success response */\n StationLoginSuccess,\n /** Extended station login success response with notification tracking */\n StationLoginSuccessResponse,\n /** Device type update success response */\n DeviceTypeUpdateSuccess,\n /** Agent login success response */\n LogoutSuccess,\n /** Agent relogin success response */\n ReloginSuccess,\n /** Agent state type */\n AgentState,\n /** User station login parameters */\n UserStationLogin,\n /** Device type for agent login */\n DeviceType,\n /** Buddy agent details */\n BuddyDetails,\n /** Buddy agents success response */\n BuddyAgentsSuccess,\n} from './services/agent/types';\n\n/** Config related types */\nexport type {\n /** Profile interface */\n Profile,\n /** Response type from getUserUsingCI method */\n AgentResponse,\n /** Response from getDesktopProfileById */\n DesktopProfileResponse,\n /** Response from getMultimediaProfileById */\n MultimediaProfileResponse,\n /** Response from getListOfTeams */\n ListTeamsResponse,\n /** Response from getListOfAuxCodes */\n ListAuxCodesResponse,\n /** Response from getSiteInfo */\n SiteInfo,\n /** Response from getOrgInfo */\n OrgInfo,\n /** Response from getOrganizationSetting */\n OrgSettings,\n /** Response from getTenantData */\n TenantData,\n /** Response from getURLMapping */\n URLMapping,\n /** Response from getDialPlanData */\n DialPlanEntity,\n /** Auxiliary code information */\n AuxCode,\n /** Team information */\n TeamList,\n /** Wrap-up reason information */\n WrapUpReason,\n /** WebSocket event data */\n WebSocketEvent,\n /** Wrap-up configuration data */\n WrapupData,\n /** Base entity type */\n Entity,\n /** Dial plan configuration */\n DialPlan,\n /** Auxiliary code type (IDLE_CODE or WRAP_UP_CODE) */\n AuxCodeType,\n /** User preference data structure */\n UserPreference as UserPreferenceData,\n /** Request payload for creating user preferences */\n CreateUserPreferenceRequest,\n /** Request payload for updating user preferences */\n UpdateUserPreferenceRequest,\n /** Query parameters for fetching user preferences */\n GetUserPreferenceParams,\n} from './services/config/types';\n\n// Constants\n/**\n * Idle code constant\n * @constant {string}\n * @category Enums\n */\nexport {IDLE_CODE} from './services/config/types';\n\n/**\n * Wrap up code constant\n * @constant {string}\n * @category Enums\n */\nexport {WRAP_UP_CODE} from './services/config/types';\n\nregisterPlugin('cc', ContactCenter, {\n config,\n});\n\n/** The Contact Center plugin default export */\nexport default ContactCenter;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,GAAA,GAAAD,sBAAA,CAAAF,OAAA;AAiBA,IAAAI,MAAA,GAAAF,sBAAA,CAAAF,OAAA;AAMA,IAAAK,KAAA,GAAAH,sBAAA,CAAAF,OAAA;AAGA,IAAAM,YAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,eAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,eAAA,GAAAP,sBAAA,CAAAF,OAAA;AAGA,IAAAU,MAAA,GAAAV,OAAA;AAqBA,IAAAW,OAAA,GAAAX,OAAA;AAQA,IAAAY,OAAA,GAAAZ,OAAA;AAQA,IAAAa,OAAA,GAAAb,OAAA;AAqGA,IAAAc,mBAAA,GAAAd,OAAA;AAAsF,SAAAE,uBAAAa,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAxKtF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;;AAGA;;AAMA;;AAGA;;AAaA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAIA;AACA;;AAUA;AACA;;AAoCA;;AAmCA;;AAGA;;AA8BA;;AAoDA;AACA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAGA,IAAAG,yBAAc,EAAC,IAAI,EAAEC,WAAa,EAAE;EAClCC,MAAM,EAANA;AACF,CAAC,CAAC;;AAEF;AAAA,IAAAC,QAAA,GAAAC,OAAA,CAAAL,OAAA,GACeE,WAAa","ignoreList":[]}
1
+ {"version":3,"names":["_webexCore","require","_config","_interopRequireDefault","_cc","_agent","_Task","_AddressBook","_ApiAiAssistant","_constants","_UserPreference","_types","_types2","_types3","_types4","_uiControlsComputer","e","__esModule","default","registerPlugin","ContactCenter","config","_default","exports"],"sources":["index.ts"],"sourcesContent":["import {registerPlugin} from '@webex/webex-core';\nimport config from './config';\nimport ContactCenter from './cc';\n\n/**\n * @module ContactCenterModule\n */\n\n// Core exports\n/**\n * ContactCenter is the main plugin class for Webex Contact Center integration\n * @category Core\n */\nexport {default as ContactCenter} from './cc';\n\n/**\n * Agent routing service for Contact Center operations\n * @category Services\n */\nexport {default as routingAgent} from './services/agent';\n\n/**\n * Task class represents a contact center task that can be managed by an agent\n * @category Services\n */\nexport {default as Task} from './services/task/Task';\n\n// API exports (AddressBook is public, EntryPoint and Queue are accessed via cc wrappers)\nexport {default as AddressBook} from './services/AddressBook';\nexport {default as ApiAIAssistant} from './services/ApiAiAssistant';\nexport {AI_SUMMARY_ERROR_CODES} from './constants';\nexport {default as UserPreference} from './services/UserPreference';\n\n/** Agent Wellness Break notification and action wire values. */\nexport {WELLNESS_BREAK_NOTIFICATION_ACTIONS, WELLNESS_BREAK_USER_ACTIONS} from './types';\n\n/** EntryPoint API types */\nexport type {\n EntryPointRecord,\n EntryPointListResponse,\n EntryPointSearchParams,\n AddressBookEntry,\n AddressBookEntriesResponse,\n AddressBookEntrySearchParams,\n ContactServiceQueuesResponse,\n ContactServiceQueueSearchParams,\n ContactServiceQueue,\n} from './types';\n\n// Enums\n/**\n * Task Events for Contact Center operations\n * @enum {string}\n * @category Enums\n */\nexport {TASK_EVENTS} from './services/task/types';\nexport type {TASK_EVENTS as TaskEvents} from './services/task/types';\n\n/**\n * Agent Events for Contact Center operations\n * @enum {string}\n * @category Enums\n */\nexport {AGENT_EVENTS} from './services/agent/types';\nexport type {AGENT_EVENTS as AgentEvents} from './services/agent/types';\n\n/**\n * Contact Center task, realtime, and AI Assistant events\n * @enum {string}\n * @category Enums\n */\nexport {CC_TASK_EVENTS} from './services/config/types';\n\n/**\n * Contact Center Agent Events\n * @enum {string}\n * @category Enums\n */\nexport {CC_AGENT_EVENTS} from './services/config/types';\n\n/**\n * Combined Contact Center Events\n * @enum {string}\n * @category Enums\n */\nexport {CC_EVENTS} from './services/config/types';\nexport type {CC_EVENTS as ContactCenterEvents} from './services/config/types';\n\n// Interfaces\n/** Main types and interfaces for Contact Center functionality */\nexport type {\n /** Interface for Contact Center plugin */\n IContactCenter,\n /** Configuration options for Contact Center plugin */\n CCPluginConfig,\n /** WebexSDK interface */\n WebexSDK,\n} from './types';\n\n// Types\n/** Agent related types */\nexport type {\n /** Login options for agents */\n LoginOption,\n /** Agent login information */\n AgentLogin,\n /** Agent device update information */\n AgentProfileUpdate,\n /** Station login response */\n StationLoginResponse,\n /** Station logout response */\n StationLogoutResponse,\n /** Buddy agents response */\n BuddyAgentsResponse,\n /** Buddy agents information */\n BuddyAgents,\n /** Subscribe request parameters */\n SubscribeRequest,\n /** Upload logs response */\n UploadLogsResponse,\n /** Update device type response */\n UpdateDeviceTypeResponse,\n /** Generic error interface */\n GenericError,\n /** Set state response */\n SetStateResponse,\n /** Wellness notification action */\n WellnessBreakNotificationAction,\n /** Wellness action API value */\n WellnessBreakUserAction,\n /** Validated agent-scoped wellness notification */\n WellnessBreakEvent,\n /** Wellness offer-response parameters */\n RespondToWellnessBreakParams,\n} from './types';\n\n/** Task related types */\nexport type {\n AgentContact,\n /** Event emitter contract for task consumers (no @types/node needed) */\n IEventEmitter,\n /** Task interface */\n ITask,\n Interaction,\n TaskData,\n /** Task response */\n TaskResponse,\n /** Conference participant drop request */\n DropConferenceParticipantPayload,\n ConsultPayload,\n ConsultEndPayload,\n ConsultTransferPayLoad,\n /** Dialer payload */\n DialerPayload,\n TransferPayLoad,\n ResumeRecordingPayload,\n WrapupPayLoad,\n /** UI control types for task buttons */\n InteractionUIControls,\n TaskUILeg,\n TaskUIControls,\n TaskUIControlState,\n AISummaryAction,\n AISummaryFeedback,\n AISummaryState,\n AISummarySections,\n AISummary,\n AISummaryFeatureEnablement,\n AISummaryResponse,\n} from './services/task/types';\n\n/** UI controls utilities */\nexport {getDefaultUIControls} from './services/task/state-machine/uiControlsComputer';\n\n/** Agent related types */\nexport type {\n /** State change interface */\n StateChange,\n /** Logout interface */\n Logout,\n /** State change success response */\n StateChangeSuccess,\n /** Station login success response */\n StationLoginSuccess,\n /** Extended station login success response with notification tracking */\n StationLoginSuccessResponse,\n /** Device type update success response */\n DeviceTypeUpdateSuccess,\n /** Agent login success response */\n LogoutSuccess,\n /** Agent relogin success response */\n ReloginSuccess,\n /** Agent state type */\n AgentState,\n /** User station login parameters */\n UserStationLogin,\n /** Device type for agent login */\n DeviceType,\n /** Buddy agent details */\n BuddyDetails,\n /** Buddy agents success response */\n BuddyAgentsSuccess,\n} from './services/agent/types';\n\n/** Config related types */\nexport type {\n /** Profile interface */\n Profile,\n /** Aggregated organization configuration from getOrgDesktopLoginConfig */\n OrgDesktopLoginResponse,\n /** Aggregated user configuration from getUserDesktopLoginConfig */\n UserDesktopLoginResponse,\n /** Agent identity, the `user` section of the user desktop-login aggregate */\n AgentResponse,\n /** Desktop Profile settings, the `agentProfile` section of the user desktop-login aggregate */\n AgentProfile,\n /** Response from getMultimediaProfileById */\n MultimediaProfileResponse,\n /** Response from getListOfTeams */\n ListTeamsResponse,\n /** Response from getListOfAuxCodes */\n ListAuxCodesResponse,\n /** Response from getSiteInfo */\n SiteInfo,\n /** Organization identity, the `organization` section of the org desktop-login aggregate */\n OrgInfo,\n /** Organization settings, the `organizationSetting` section of the org desktop-login aggregate */\n OrgSettings,\n /** Tenant configuration, the `tenantConfiguration` section of the org desktop-login aggregate */\n TenantData,\n /** Microsoft Teams integration configuration, from the org desktop-login aggregate */\n MicrosoftConfig,\n /** Webex integration configuration, from the org desktop-login aggregate */\n WebexConfig,\n /** External integration URLs, the `urlMappings` section of the org desktop-login aggregate */\n OrgUrlMappings,\n /** Response from getDialPlanData */\n DialPlanEntity,\n /** Auxiliary code information */\n AuxCode,\n /** Team information */\n TeamList,\n /** Wrap-up reason information */\n WrapUpReason,\n /** WebSocket event data */\n WebSocketEvent,\n /** Wrap-up configuration data */\n WrapupData,\n /** Base entity type */\n Entity,\n /** Dial plan configuration */\n DialPlan,\n /** Auxiliary code type (IDLE_CODE or WRAP_UP_CODE) */\n AuxCodeType,\n /** User preference data structure */\n UserPreference as UserPreferenceData,\n /** Request payload for creating user preferences */\n CreateUserPreferenceRequest,\n /** Request payload for updating user preferences */\n UpdateUserPreferenceRequest,\n /** Query parameters for fetching user preferences */\n GetUserPreferenceParams,\n} from './services/config/types';\n\n// Constants\n/**\n * Idle code constant\n * @constant {string}\n * @category Enums\n */\nexport {IDLE_CODE} from './services/config/types';\n\n/**\n * Wrap up code constant\n * @constant {string}\n * @category Enums\n */\nexport {WRAP_UP_CODE} from './services/config/types';\n\nregisterPlugin('cc', ContactCenter, {\n config,\n});\n\n/** The Contact Center plugin default export */\nexport default ContactCenter;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,GAAA,GAAAD,sBAAA,CAAAF,OAAA;AAiBA,IAAAI,MAAA,GAAAF,sBAAA,CAAAF,OAAA;AAMA,IAAAK,KAAA,GAAAH,sBAAA,CAAAF,OAAA;AAGA,IAAAM,YAAA,GAAAJ,sBAAA,CAAAF,OAAA;AACA,IAAAO,eAAA,GAAAL,sBAAA,CAAAF,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,eAAA,GAAAP,sBAAA,CAAAF,OAAA;AAGA,IAAAU,MAAA,GAAAV,OAAA;AAqBA,IAAAW,OAAA,GAAAX,OAAA;AAQA,IAAAY,OAAA,GAAAZ,OAAA;AAQA,IAAAa,OAAA,GAAAb,OAAA;AAqGA,IAAAc,mBAAA,GAAAd,OAAA;AAAsF,SAAAE,uBAAAa,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAxKtF;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;;AAGA;;AAMA;;AAGA;;AAaA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAIA;AACA;;AAUA;AACA;;AAoCA;;AAmCA;;AAGA;;AA8BA;;AA4DA;AACA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;;AAGA,IAAAG,yBAAc,EAAC,IAAI,EAAEC,WAAa,EAAE;EAClCC,MAAM,EAANA;AACF,CAAC,CAAC;;AAEF;AAAA,IAAAC,QAAA,GAAAC,OAAA,CAAAL,OAAA,GACeE,WAAa","ignoreList":[]}
@@ -8,37 +8,26 @@ var _constants = require("../core/constants");
8
8
  var _constants2 = require("./constants");
9
9
  var _types = require("./types");
10
10
  /**
11
- * Get the URL mapping for the given name
12
- * @param {Array<URLMapping>} urlMappings
13
- * @param {string} name
14
- * @returns {string}
15
- */
16
- const getUrlMapping = (urlMappings, name) => {
17
- const mappedUrl = urlMappings.find(mapping => mapping.name === name)?.url;
18
- return mappedUrl || '';
19
- };
20
-
21
- /**
22
- * Get the MSFT and Webex configuration
23
- * @param {DesktopProfileResponse} agentProfileData
11
+ * Get the MSFT configuration
12
+ * @param {MicrosoftConfig} microsoftConfig
24
13
  * @returns {Object}
25
14
  */
26
- const getMsftConfig = agentProfileData => {
15
+ const getMsftConfig = microsoftConfig => {
27
16
  return {
28
- showUserDetailsMS: agentProfileData.showUserDetailsMS ?? false,
29
- stateSynchronizationMS: agentProfileData.stateSynchronizationMS ?? false
17
+ showUserDetailsMS: microsoftConfig?.showUserDetails ?? false,
18
+ stateSynchronizationMS: microsoftConfig?.stateSynchronization ?? false
30
19
  };
31
20
  };
32
21
 
33
22
  /**
34
23
  * Get the Webex configuration
35
- * @param {DesktopProfileResponse} agentProfileData
24
+ * @param {WebexConfig} webexConfig
36
25
  * @returns {Object}
37
26
  */
38
- const getWebexConfig = agentProfileData => {
27
+ const getWebexConfig = webexConfig => {
39
28
  return {
40
- showUserDetailsWebex: agentProfileData.showUserDetailsWebex ?? false,
41
- stateSynchronizationWebex: agentProfileData.stateSynchronizationWebex ?? false
29
+ showUserDetailsWebex: webexConfig?.showUserDetails ?? false,
30
+ stateSynchronizationWebex: webexConfig?.stateSynchronization ?? false
42
31
  };
43
32
  };
44
33
 
@@ -52,15 +41,16 @@ const getDefaultAgentDN = agentDNValidation => {
52
41
  };
53
42
 
54
43
  /**
55
- * Get the filtered dialplan entries
44
+ * Get the dialplan entries for every active plan in the organization.
45
+ * The desktop-login aggregate does not carry the per-profile `dialPlans` selection, so all active
46
+ * plans apply.
56
47
  * @param {Array<DialPlanEntity>} dialPlanData
57
- * @param {Array<string>} profileDialPlans
58
48
  * @returns {Array<Entity>}
59
49
  */
60
- const getFilteredDialplanEntries = (dialPlanData, profileDialPlans) => {
50
+ const getFilteredDialplanEntries = dialPlanData => {
61
51
  const dialPlanEntries = [];
62
52
  dialPlanData.forEach(dailPlan => {
63
- if (profileDialPlans.includes(dailPlan.id)) {
53
+ if (dailPlan.active) {
64
54
  const filteredPlan = {
65
55
  regex: dailPlan.regularExpression,
66
56
  prefix: dailPlan.prefix,
@@ -74,16 +64,17 @@ const getFilteredDialplanEntries = (dialPlanData, profileDialPlans) => {
74
64
  };
75
65
 
76
66
  /**
77
- * Get the filtered aux codes
67
+ * Get the active aux codes of the given type.
68
+ * The desktop-login aggregate does not carry the per-agent restriction lists, so the whole pool
69
+ * returned by the aux-code API applies.
78
70
  * @param {Array<AuxCode>} auxCodes
79
71
  * @param {AuxCodeType} type
80
- * @param {Array<string>} specificCodes
81
72
  * @returns {Array<Entity>}
82
73
  */
83
- const getFilterAuxCodes = (auxCodes, type, specificCodes) => {
74
+ const getFilterAuxCodes = (auxCodes, type) => {
84
75
  const filteredAuxCodes = [];
85
76
  auxCodes.forEach(auxCode => {
86
- if (auxCode.workTypeCode === type && auxCode.active && (specificCodes.length === 0 || specificCodes.includes(auxCode.id))) {
77
+ if (auxCode.workTypeCode === type && auxCode.active) {
87
78
  filteredAuxCodes.push({
88
79
  id: auxCode.id,
89
80
  name: auxCode.name,
@@ -111,21 +102,26 @@ function getDefaultWrapUpCode(wrapUpReasonList) {
111
102
  */
112
103
  function parseAgentConfigs(profileData) {
113
104
  const {
105
+ orgConfig,
114
106
  userData,
107
+ agentProfileData,
115
108
  teamData,
116
- tenantData,
117
- orgInfoData,
118
109
  auxCodes,
119
- orgSettingsData,
120
- agentProfileData,
121
- dialPlanData,
122
- urlMapping,
123
- aiFeatureFlags
110
+ dialPlanData
124
111
  } = profileData;
112
+ const {
113
+ organization: orgInfoData,
114
+ organizationSetting: orgSettingsData,
115
+ tenantConfiguration: tenantData,
116
+ urlMappings,
117
+ aiFeature,
118
+ microsoftConfig,
119
+ webexConfig
120
+ } = orgConfig;
125
121
  const tenantDataTimeout = tenantData.timeoutDesktopInactivityEnabled ? tenantData.timeoutDesktopInactivityMins : null;
126
122
  const inactivityTimeoutTimer = agentProfileData.timeoutDesktopInactivityCustomEnabled ? agentProfileData.timeoutDesktopInactivityMins : tenantDataTimeout;
127
- const wrapupCodes = getFilterAuxCodes(auxCodes, _types.WRAP_UP_CODE, agentProfileData.accessWrapUpCode === 'ALL' ? [] : agentProfileData.wrapUpCodes);
128
- const idleCodes = getFilterAuxCodes(auxCodes, _types.IDLE_CODE, agentProfileData.accessIdleCode === 'ALL' ? [] : agentProfileData.idleCodes);
123
+ const wrapupCodes = getFilterAuxCodes(auxCodes, _types.WRAP_UP_CODE);
124
+ const idleCodes = getFilterAuxCodes(auxCodes, _types.IDLE_CODE);
129
125
  idleCodes.push({
130
126
  id: '0',
131
127
  name: 'Available',
@@ -134,7 +130,6 @@ function parseAgentConfigs(profileData) {
134
130
  }); // pushing available state to idle codes
135
131
 
136
132
  const defaultWrapUpData = getDefaultWrapUpCode(wrapupCodes);
137
- const aiFeature = aiFeatureFlags?.data?.length > 0 ? aiFeatureFlags.data[0] : undefined;
138
133
  const isWellnessConfigured = aiFeature?.agentWellbeing?.enable === true && aiFeature.agentWellbeing.wellnessBreakReminders === _constants2.WELLNESS_BREAK_REMINDERS_ENABLED;
139
134
  const hasAIAssistantLicense = (orgSettingsData.aiAssistantQuantity ?? 0) > 0;
140
135
  const finalData = {
@@ -148,17 +143,15 @@ function parseAgentConfigs(profileData) {
148
143
  agentName: `${userData.firstName} ${userData.lastName}`,
149
144
  agentMailId: userData.email,
150
145
  agentProfileID: userData.agentProfileId,
151
- autoAnswer: agentProfileData.autoAnswer,
152
146
  dialPlan: agentProfileData.dialPlanEnabled ? {
153
147
  type: 'adhocDial',
154
- dialPlanEntity: getFilteredDialplanEntries(dialPlanData, agentProfileData.dialPlans)
148
+ dialPlanEntity: getFilteredDialplanEntries(dialPlanData)
155
149
  } : undefined,
156
150
  multimediaProfileId: profileData.multimediaProfileId,
157
151
  skillProfileId: userData.skillProfileId ? userData.skillProfileId : null,
158
152
  siteId: userData.siteId,
159
153
  enterpriseId: orgInfoData.tenantId,
160
154
  tenantTimezone: orgInfoData.timezone,
161
- environment: orgInfoData.environment,
162
155
  privacyShieldVisible: tenantData.privacyShieldVisible,
163
156
  organizationIdleCodes: [],
164
157
  // TODO: for supervisor, getOrgFilteredIdleCodes(auxCodes, false),
@@ -195,16 +188,16 @@ function parseAgentConfigs(profileData) {
195
188
  outdialANIId: agentProfileData.outdialANIId,
196
189
  analyserUserId: userData.id,
197
190
  urlMappings: {
198
- acqueonApiUrl: getUrlMapping(urlMapping, 'ACQUEON_API_URL'),
199
- acqueonConsoleUrl: getUrlMapping(urlMapping, 'ACQUEON_CONSOLE_URL')
191
+ acqueonApiUrl: urlMappings?.ACQUEON_API_URL ?? '',
192
+ acqueonConsoleUrl: urlMappings?.ACQUEON_CONSOLE_URL ?? ''
200
193
  },
201
194
  isTimeoutDesktopInactivityEnabled: tenantData.timeoutDesktopInactivityEnabled,
202
195
  timeoutDesktopInactivityMins: inactivityTimeoutTimer,
203
196
  loginVoiceOptions: agentProfileData.loginVoiceOptions ?? [],
204
197
  webRtcEnabled: orgSettingsData.webRtcEnabled,
205
198
  maskSensitiveData: orgSettingsData.maskSensitiveData ? orgSettingsData.maskSensitiveData : false,
206
- microsoftConfig: getMsftConfig(agentProfileData),
207
- webexConfig: getWebexConfig(agentProfileData),
199
+ microsoftConfig: getMsftConfig(microsoftConfig),
200
+ webexConfig: getWebexConfig(webexConfig),
208
201
  lostConnectionRecoveryTimeout: tenantData.lostConnectionRecoveryTimeout || _constants.LOST_CONNECTION_RECOVERY_TIMEOUT,
209
202
  aiFeature,
210
203
  isWellnessBreakEnabled: isWellnessConfigured && hasAIAssistantLicense
@@ -1 +1 @@
1
- {"version":3,"names":["_constants","require","_constants2","_types","getUrlMapping","urlMappings","name","mappedUrl","find","mapping","url","getMsftConfig","agentProfileData","showUserDetailsMS","stateSynchronizationMS","getWebexConfig","showUserDetailsWebex","stateSynchronizationWebex","getDefaultAgentDN","agentDNValidation","getFilteredDialplanEntries","dialPlanData","profileDialPlans","dialPlanEntries","forEach","dailPlan","includes","id","filteredPlan","regex","regularExpression","prefix","strippedChars","push","getFilterAuxCodes","auxCodes","type","specificCodes","filteredAuxCodes","auxCode","workTypeCode","active","length","isSystem","isSystemCode","isDefault","defaultCode","getDefaultWrapUpCode","wrapUpReasonList","c","parseAgentConfigs","profileData","userData","teamData","tenantData","orgInfoData","orgSettingsData","urlMapping","aiFeatureFlags","tenantDataTimeout","timeoutDesktopInactivityEnabled","timeoutDesktopInactivityMins","inactivityTimeoutTimer","timeoutDesktopInactivityCustomEnabled","wrapupCodes","WRAP_UP_CODE","accessWrapUpCode","wrapUpCodes","idleCodes","IDLE_CODE","accessIdleCode","defaultWrapUpData","aiFeature","data","undefined","isWellnessConfigured","agentWellbeing","enable","wellnessBreakReminders","WELLNESS_BREAK_REMINDERS_ENABLED","hasAIAssistantLicense","aiAssistantQuantity","finalData","teams","defaultDn","deafultDialledNumber","forceDefaultDn","forceDefaultDnForAgent","regexUS","dnDefaultRegex","regexOther","dnOtherRegex","agentId","ciUserId","agentName","firstName","lastName","agentMailId","email","agentProfileID","agentProfileId","autoAnswer","dialPlan","dialPlanEnabled","dialPlanEntity","dialPlans","multimediaProfileId","skillProfileId","siteId","enterpriseId","tenantId","tenantTimezone","timezone","environment","privacyShieldVisible","organizationIdleCodes","idleCodesAccess","wrapUpData","wrapUpProps","autoWrapup","autoWrapUp","autoWrapupInterval","autoWrapAfterSeconds","lastAgentRoute","lastAgentRouting","wrapUpCodeAccess","allowCancelAutoWrapup","allowAutoWrapUpExtension","defaultWrapupCode","isOutboundEnabledForTenant","outdialEnabled","isOutboundEnabledForAgent","isAdhocDialingEnabled","isAgentAvailableAfterOutdial","agentAvailableAfterOutdial","outDialEp","outdialEntryPointId","isCampaignManagementEnabled","campaignManagerEnabled","isEndTaskEnabled","endCallEnabled","isEndConsultEnabled","endConsultEnabled","callVariablesSuppressed","agentDbId","dbId","allowConsultToQueue","consultToQueue","accessQueue","accessEntryPoint","accessBuddyTeam","agentPersonalStatsEnabled","viewableStatistics","agentStats","addressBookId","outdialANIId","analyserUserId","acqueonApiUrl","acqueonConsoleUrl","isTimeoutDesktopInactivityEnabled","loginVoiceOptions","webRtcEnabled","maskSensitiveData","microsoftConfig","webexConfig","lostConnectionRecoveryTimeout","LOST_CONNECTION_RECOVERY_TIMEOUT","isWellnessBreakEnabled"],"sources":["Util.ts"],"sourcesContent":["import {LOST_CONNECTION_RECOVERY_TIMEOUT} from '../core/constants';\nimport {WELLNESS_BREAK_REMINDERS_ENABLED} from './constants';\nimport {\n AgentResponse,\n AuxCode,\n AuxCodeType,\n DesktopProfileResponse,\n DialPlanEntity,\n Entity,\n IDLE_CODE,\n OrgInfo,\n OrgSettings,\n Profile,\n Team,\n TenantData,\n URLMapping,\n WRAP_UP_CODE,\n AIFeatureFlagsResponse,\n AIFeatureFlags,\n} from './types';\n\n/**\n * Get the URL mapping for the given name\n * @param {Array<URLMapping>} urlMappings\n * @param {string} name\n * @returns {string}\n */\nconst getUrlMapping = (urlMappings: Array<URLMapping>, name: string) => {\n const mappedUrl = urlMappings.find((mapping) => mapping.name === name)?.url;\n\n return mappedUrl || '';\n};\n\n/**\n * Get the MSFT and Webex configuration\n * @param {DesktopProfileResponse} agentProfileData\n * @returns {Object}\n */\nconst getMsftConfig = (agentProfileData: DesktopProfileResponse) => {\n return {\n showUserDetailsMS: agentProfileData.showUserDetailsMS ?? false,\n stateSynchronizationMS: agentProfileData.stateSynchronizationMS ?? false,\n };\n};\n\n/**\n * Get the Webex configuration\n * @param {DesktopProfileResponse} agentProfileData\n * @returns {Object}\n */\nconst getWebexConfig = (agentProfileData: DesktopProfileResponse) => {\n return {\n showUserDetailsWebex: agentProfileData.showUserDetailsWebex ?? false,\n stateSynchronizationWebex: agentProfileData.stateSynchronizationWebex ?? false,\n };\n};\n\n/**\n * Get the default agent DN\n * @param {string} agentDNValidation\n * @returns {boolean}\n */\nconst getDefaultAgentDN = (agentDNValidation: string) => {\n return agentDNValidation === 'PROVISIONED_VALUE';\n};\n\n/**\n * Get the filtered dialplan entries\n * @param {Array<DialPlanEntity>} dialPlanData\n * @param {Array<string>} profileDialPlans\n * @returns {Array<Entity>}\n */\nconst getFilteredDialplanEntries = (dialPlanData: DialPlanEntity[], profileDialPlans: string[]) => {\n const dialPlanEntries = [];\n dialPlanData.forEach((dailPlan: DialPlanEntity) => {\n if (profileDialPlans.includes(dailPlan.id)) {\n const filteredPlan = {\n regex: dailPlan.regularExpression,\n prefix: dailPlan.prefix,\n strippedChars: dailPlan.strippedChars,\n name: dailPlan.name,\n };\n dialPlanEntries.push(filteredPlan);\n }\n });\n\n return dialPlanEntries;\n};\n\n/**\n * Get the filtered aux codes\n * @param {Array<AuxCode>} auxCodes\n * @param {AuxCodeType} type\n * @param {Array<string>} specificCodes\n * @returns {Array<Entity>}\n */\nconst getFilterAuxCodes = (\n auxCodes: Array<AuxCode>,\n type: AuxCodeType,\n specificCodes: string[]\n) => {\n const filteredAuxCodes: Array<Entity> = [];\n auxCodes.forEach((auxCode: AuxCode) => {\n if (\n auxCode.workTypeCode === type &&\n auxCode.active &&\n (specificCodes.length === 0 || specificCodes.includes(auxCode.id))\n ) {\n filteredAuxCodes.push({\n id: auxCode.id,\n name: auxCode.name,\n isSystem: auxCode.isSystemCode,\n isDefault: auxCode.defaultCode,\n });\n }\n });\n\n return filteredAuxCodes;\n};\n\n/**\n * Get the default wrapup code\n * @param {Array<Entity>} wrapUpReasonList\n * @returns {Entity}\n */\nfunction getDefaultWrapUpCode(wrapUpReasonList: Entity[]) {\n return wrapUpReasonList?.find((c: Entity) => c.isDefault);\n}\n\n/**\n * Parse the agent configurations\n * @param {Object} profileData\n * @returns {Profile}\n */\nfunction parseAgentConfigs(profileData: {\n userData: AgentResponse;\n teamData: Team[];\n tenantData: TenantData;\n orgInfoData: OrgInfo;\n auxCodes: AuxCode[];\n orgSettingsData: OrgSettings;\n agentProfileData: DesktopProfileResponse;\n dialPlanData: DialPlanEntity[];\n urlMapping: URLMapping[];\n multimediaProfileId: string;\n aiFeatureFlags: AIFeatureFlagsResponse;\n}): Profile {\n const {\n userData,\n teamData,\n tenantData,\n orgInfoData,\n auxCodes,\n orgSettingsData,\n agentProfileData,\n dialPlanData,\n urlMapping,\n aiFeatureFlags,\n } = profileData;\n\n const tenantDataTimeout = tenantData.timeoutDesktopInactivityEnabled\n ? tenantData.timeoutDesktopInactivityMins\n : null;\n const inactivityTimeoutTimer = agentProfileData.timeoutDesktopInactivityCustomEnabled\n ? agentProfileData.timeoutDesktopInactivityMins\n : tenantDataTimeout;\n\n const wrapupCodes = getFilterAuxCodes(\n auxCodes,\n WRAP_UP_CODE,\n agentProfileData.accessWrapUpCode === 'ALL' ? [] : agentProfileData.wrapUpCodes\n );\n\n const idleCodes = getFilterAuxCodes(\n auxCodes,\n IDLE_CODE,\n agentProfileData.accessIdleCode === 'ALL' ? [] : agentProfileData.idleCodes\n );\n\n idleCodes.push({\n id: '0',\n name: 'Available',\n isSystem: false,\n isDefault: false,\n }); // pushing available state to idle codes\n\n const defaultWrapUpData = getDefaultWrapUpCode(wrapupCodes);\n const aiFeature: AIFeatureFlags | undefined =\n aiFeatureFlags?.data?.length > 0 ? aiFeatureFlags.data[0] : undefined;\n const isWellnessConfigured =\n aiFeature?.agentWellbeing?.enable === true &&\n aiFeature.agentWellbeing.wellnessBreakReminders === WELLNESS_BREAK_REMINDERS_ENABLED;\n const hasAIAssistantLicense = (orgSettingsData.aiAssistantQuantity ?? 0) > 0;\n\n const finalData = {\n teams: teamData,\n defaultDn: userData.deafultDialledNumber,\n forceDefaultDn: tenantData.forceDefaultDn,\n forceDefaultDnForAgent: getDefaultAgentDN(agentProfileData.agentDNValidation),\n regexUS: tenantData.dnDefaultRegex,\n regexOther: tenantData.dnOtherRegex,\n agentId: userData.ciUserId,\n agentName: `${userData.firstName} ${userData.lastName}`,\n agentMailId: userData.email,\n agentProfileID: userData.agentProfileId,\n autoAnswer: agentProfileData.autoAnswer,\n dialPlan: agentProfileData.dialPlanEnabled\n ? {\n type: 'adhocDial',\n dialPlanEntity: getFilteredDialplanEntries(dialPlanData, agentProfileData.dialPlans),\n }\n : undefined,\n multimediaProfileId: profileData.multimediaProfileId,\n skillProfileId: userData.skillProfileId ? userData.skillProfileId : null,\n siteId: userData.siteId,\n enterpriseId: orgInfoData.tenantId,\n tenantTimezone: orgInfoData.timezone,\n environment: orgInfoData.environment,\n privacyShieldVisible: tenantData.privacyShieldVisible,\n organizationIdleCodes: [], // TODO: for supervisor, getOrgFilteredIdleCodes(auxCodes, false),\n idleCodesAccess: agentProfileData.accessIdleCode as 'ALL' | 'SPECIFIC',\n idleCodes,\n wrapupCodes,\n wrapUpData: {\n wrapUpProps: {\n autoWrapup: agentProfileData.autoWrapUp,\n autoWrapupInterval: agentProfileData.autoWrapAfterSeconds,\n lastAgentRoute: agentProfileData.lastAgentRouting,\n wrapUpCodeAccess: agentProfileData.accessWrapUpCode,\n wrapUpReasonList: wrapupCodes,\n allowCancelAutoWrapup: agentProfileData.allowAutoWrapUpExtension,\n },\n },\n defaultWrapupCode: defaultWrapUpData?.id ?? '',\n isOutboundEnabledForTenant: tenantData.outdialEnabled,\n isOutboundEnabledForAgent: agentProfileData.outdialEnabled,\n isAdhocDialingEnabled: agentProfileData.dialPlanEnabled,\n isAgentAvailableAfterOutdial: agentProfileData.agentAvailableAfterOutdial,\n outDialEp: agentProfileData.outdialEntryPointId,\n isCampaignManagementEnabled: orgSettingsData.campaignManagerEnabled,\n isEndTaskEnabled: tenantData.endCallEnabled,\n isEndConsultEnabled: tenantData.endConsultEnabled,\n callVariablesSuppressed: tenantData.callVariablesSuppressed,\n agentDbId: userData.dbId,\n allowConsultToQueue: agentProfileData.consultToQueue,\n accessQueue: agentProfileData.accessQueue,\n accessEntryPoint: agentProfileData.accessEntryPoint,\n accessBuddyTeam: agentProfileData.accessBuddyTeam,\n agentPersonalStatsEnabled: agentProfileData.viewableStatistics\n ? agentProfileData.viewableStatistics.agentStats\n : false,\n addressBookId: agentProfileData.addressBookId,\n outdialANIId: agentProfileData.outdialANIId,\n analyserUserId: userData.id,\n\n urlMappings: {\n acqueonApiUrl: getUrlMapping(urlMapping, 'ACQUEON_API_URL'),\n acqueonConsoleUrl: getUrlMapping(urlMapping, 'ACQUEON_CONSOLE_URL'),\n },\n isTimeoutDesktopInactivityEnabled: tenantData.timeoutDesktopInactivityEnabled,\n timeoutDesktopInactivityMins: inactivityTimeoutTimer,\n loginVoiceOptions: agentProfileData.loginVoiceOptions ?? [],\n webRtcEnabled: orgSettingsData.webRtcEnabled,\n maskSensitiveData: orgSettingsData.maskSensitiveData\n ? orgSettingsData.maskSensitiveData\n : false,\n microsoftConfig: getMsftConfig(agentProfileData),\n webexConfig: getWebexConfig(agentProfileData),\n lostConnectionRecoveryTimeout:\n tenantData.lostConnectionRecoveryTimeout || LOST_CONNECTION_RECOVERY_TIMEOUT,\n aiFeature,\n isWellnessBreakEnabled: isWellnessConfigured && hasAIAssistantLicense,\n };\n\n return finalData;\n}\n\nexport {parseAgentConfigs};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_constants","require","_constants2","_types","getMsftConfig","microsoftConfig","showUserDetailsMS","showUserDetails","stateSynchronizationMS","stateSynchronization","getWebexConfig","webexConfig","showUserDetailsWebex","stateSynchronizationWebex","getDefaultAgentDN","agentDNValidation","getFilteredDialplanEntries","dialPlanData","dialPlanEntries","forEach","dailPlan","active","filteredPlan","regex","regularExpression","prefix","strippedChars","name","push","getFilterAuxCodes","auxCodes","type","filteredAuxCodes","auxCode","workTypeCode","id","isSystem","isSystemCode","isDefault","defaultCode","getDefaultWrapUpCode","wrapUpReasonList","find","c","parseAgentConfigs","profileData","orgConfig","userData","agentProfileData","teamData","organization","orgInfoData","organizationSetting","orgSettingsData","tenantConfiguration","tenantData","urlMappings","aiFeature","tenantDataTimeout","timeoutDesktopInactivityEnabled","timeoutDesktopInactivityMins","inactivityTimeoutTimer","timeoutDesktopInactivityCustomEnabled","wrapupCodes","WRAP_UP_CODE","idleCodes","IDLE_CODE","defaultWrapUpData","isWellnessConfigured","agentWellbeing","enable","wellnessBreakReminders","WELLNESS_BREAK_REMINDERS_ENABLED","hasAIAssistantLicense","aiAssistantQuantity","finalData","teams","defaultDn","deafultDialledNumber","forceDefaultDn","forceDefaultDnForAgent","regexUS","dnDefaultRegex","regexOther","dnOtherRegex","agentId","ciUserId","agentName","firstName","lastName","agentMailId","email","agentProfileID","agentProfileId","dialPlan","dialPlanEnabled","dialPlanEntity","undefined","multimediaProfileId","skillProfileId","siteId","enterpriseId","tenantId","tenantTimezone","timezone","privacyShieldVisible","organizationIdleCodes","idleCodesAccess","accessIdleCode","wrapUpData","wrapUpProps","autoWrapup","autoWrapUp","autoWrapupInterval","autoWrapAfterSeconds","lastAgentRoute","lastAgentRouting","wrapUpCodeAccess","accessWrapUpCode","allowCancelAutoWrapup","allowAutoWrapUpExtension","defaultWrapupCode","isOutboundEnabledForTenant","outdialEnabled","isOutboundEnabledForAgent","isAdhocDialingEnabled","isAgentAvailableAfterOutdial","agentAvailableAfterOutdial","outDialEp","outdialEntryPointId","isCampaignManagementEnabled","campaignManagerEnabled","isEndTaskEnabled","endCallEnabled","isEndConsultEnabled","endConsultEnabled","callVariablesSuppressed","agentDbId","dbId","allowConsultToQueue","consultToQueue","accessQueue","accessEntryPoint","accessBuddyTeam","agentPersonalStatsEnabled","viewableStatistics","agentStats","addressBookId","outdialANIId","analyserUserId","acqueonApiUrl","ACQUEON_API_URL","acqueonConsoleUrl","ACQUEON_CONSOLE_URL","isTimeoutDesktopInactivityEnabled","loginVoiceOptions","webRtcEnabled","maskSensitiveData","lostConnectionRecoveryTimeout","LOST_CONNECTION_RECOVERY_TIMEOUT","isWellnessBreakEnabled"],"sources":["Util.ts"],"sourcesContent":["import {LOST_CONNECTION_RECOVERY_TIMEOUT} from '../core/constants';\nimport {WELLNESS_BREAK_REMINDERS_ENABLED} from './constants';\nimport {\n AgentProfile,\n AgentResponse,\n AuxCode,\n AuxCodeType,\n DialPlanEntity,\n Entity,\n IDLE_CODE,\n OrgDesktopLoginResponse,\n Profile,\n TeamList,\n MicrosoftConfig,\n WebexConfig,\n WRAP_UP_CODE,\n} from './types';\n\n/**\n * Get the MSFT configuration\n * @param {MicrosoftConfig} microsoftConfig\n * @returns {Object}\n */\nconst getMsftConfig = (microsoftConfig?: MicrosoftConfig) => {\n return {\n showUserDetailsMS: microsoftConfig?.showUserDetails ?? false,\n stateSynchronizationMS: microsoftConfig?.stateSynchronization ?? false,\n };\n};\n\n/**\n * Get the Webex configuration\n * @param {WebexConfig} webexConfig\n * @returns {Object}\n */\nconst getWebexConfig = (webexConfig?: WebexConfig) => {\n return {\n showUserDetailsWebex: webexConfig?.showUserDetails ?? false,\n stateSynchronizationWebex: webexConfig?.stateSynchronization ?? false,\n };\n};\n\n/**\n * Get the default agent DN\n * @param {string} agentDNValidation\n * @returns {boolean}\n */\nconst getDefaultAgentDN = (agentDNValidation: string) => {\n return agentDNValidation === 'PROVISIONED_VALUE';\n};\n\n/**\n * Get the dialplan entries for every active plan in the organization.\n * The desktop-login aggregate does not carry the per-profile `dialPlans` selection, so all active\n * plans apply.\n * @param {Array<DialPlanEntity>} dialPlanData\n * @returns {Array<Entity>}\n */\nconst getFilteredDialplanEntries = (dialPlanData: DialPlanEntity[]) => {\n const dialPlanEntries = [];\n dialPlanData.forEach((dailPlan: DialPlanEntity) => {\n if (dailPlan.active) {\n const filteredPlan = {\n regex: dailPlan.regularExpression,\n prefix: dailPlan.prefix,\n strippedChars: dailPlan.strippedChars,\n name: dailPlan.name,\n };\n dialPlanEntries.push(filteredPlan);\n }\n });\n\n return dialPlanEntries;\n};\n\n/**\n * Get the active aux codes of the given type.\n * The desktop-login aggregate does not carry the per-agent restriction lists, so the whole pool\n * returned by the aux-code API applies.\n * @param {Array<AuxCode>} auxCodes\n * @param {AuxCodeType} type\n * @returns {Array<Entity>}\n */\nconst getFilterAuxCodes = (auxCodes: Array<AuxCode>, type: AuxCodeType) => {\n const filteredAuxCodes: Array<Entity> = [];\n auxCodes.forEach((auxCode: AuxCode) => {\n if (auxCode.workTypeCode === type && auxCode.active) {\n filteredAuxCodes.push({\n id: auxCode.id,\n name: auxCode.name,\n isSystem: auxCode.isSystemCode,\n isDefault: auxCode.defaultCode,\n });\n }\n });\n\n return filteredAuxCodes;\n};\n\n/**\n * Get the default wrapup code\n * @param {Array<Entity>} wrapUpReasonList\n * @returns {Entity}\n */\nfunction getDefaultWrapUpCode(wrapUpReasonList: Entity[]) {\n return wrapUpReasonList?.find((c: Entity) => c.isDefault);\n}\n\n/**\n * Parse the agent configurations\n * @param {Object} profileData\n * @returns {Profile}\n */\nfunction parseAgentConfigs(profileData: {\n orgConfig: OrgDesktopLoginResponse;\n userData: AgentResponse;\n agentProfileData: AgentProfile;\n teamData: TeamList[];\n auxCodes: AuxCode[];\n dialPlanData: DialPlanEntity[];\n multimediaProfileId: string;\n}): Profile {\n const {orgConfig, userData, agentProfileData, teamData, auxCodes, dialPlanData} = profileData;\n const {\n organization: orgInfoData,\n organizationSetting: orgSettingsData,\n tenantConfiguration: tenantData,\n urlMappings,\n aiFeature,\n microsoftConfig,\n webexConfig,\n } = orgConfig;\n\n const tenantDataTimeout = tenantData.timeoutDesktopInactivityEnabled\n ? tenantData.timeoutDesktopInactivityMins\n : null;\n const inactivityTimeoutTimer = agentProfileData.timeoutDesktopInactivityCustomEnabled\n ? agentProfileData.timeoutDesktopInactivityMins\n : tenantDataTimeout;\n\n const wrapupCodes = getFilterAuxCodes(auxCodes, WRAP_UP_CODE);\n\n const idleCodes = getFilterAuxCodes(auxCodes, IDLE_CODE);\n\n idleCodes.push({\n id: '0',\n name: 'Available',\n isSystem: false,\n isDefault: false,\n }); // pushing available state to idle codes\n\n const defaultWrapUpData = getDefaultWrapUpCode(wrapupCodes);\n const isWellnessConfigured =\n aiFeature?.agentWellbeing?.enable === true &&\n aiFeature.agentWellbeing.wellnessBreakReminders === WELLNESS_BREAK_REMINDERS_ENABLED;\n const hasAIAssistantLicense = (orgSettingsData.aiAssistantQuantity ?? 0) > 0;\n\n const finalData = {\n teams: teamData,\n defaultDn: userData.deafultDialledNumber,\n forceDefaultDn: tenantData.forceDefaultDn,\n forceDefaultDnForAgent: getDefaultAgentDN(agentProfileData.agentDNValidation),\n regexUS: tenantData.dnDefaultRegex,\n regexOther: tenantData.dnOtherRegex,\n agentId: userData.ciUserId,\n agentName: `${userData.firstName} ${userData.lastName}`,\n agentMailId: userData.email,\n agentProfileID: userData.agentProfileId,\n dialPlan: agentProfileData.dialPlanEnabled\n ? {\n type: 'adhocDial',\n dialPlanEntity: getFilteredDialplanEntries(dialPlanData),\n }\n : undefined,\n multimediaProfileId: profileData.multimediaProfileId,\n skillProfileId: userData.skillProfileId ? userData.skillProfileId : null,\n siteId: userData.siteId,\n enterpriseId: orgInfoData.tenantId,\n tenantTimezone: orgInfoData.timezone,\n privacyShieldVisible: tenantData.privacyShieldVisible,\n organizationIdleCodes: [], // TODO: for supervisor, getOrgFilteredIdleCodes(auxCodes, false),\n idleCodesAccess: agentProfileData.accessIdleCode as 'ALL' | 'SPECIFIC',\n idleCodes,\n wrapupCodes,\n wrapUpData: {\n wrapUpProps: {\n autoWrapup: agentProfileData.autoWrapUp,\n autoWrapupInterval: agentProfileData.autoWrapAfterSeconds,\n lastAgentRoute: agentProfileData.lastAgentRouting,\n wrapUpCodeAccess: agentProfileData.accessWrapUpCode,\n wrapUpReasonList: wrapupCodes,\n allowCancelAutoWrapup: agentProfileData.allowAutoWrapUpExtension,\n },\n },\n defaultWrapupCode: defaultWrapUpData?.id ?? '',\n isOutboundEnabledForTenant: tenantData.outdialEnabled,\n isOutboundEnabledForAgent: agentProfileData.outdialEnabled,\n isAdhocDialingEnabled: agentProfileData.dialPlanEnabled,\n isAgentAvailableAfterOutdial: agentProfileData.agentAvailableAfterOutdial,\n outDialEp: agentProfileData.outdialEntryPointId,\n isCampaignManagementEnabled: orgSettingsData.campaignManagerEnabled,\n isEndTaskEnabled: tenantData.endCallEnabled,\n isEndConsultEnabled: tenantData.endConsultEnabled,\n callVariablesSuppressed: tenantData.callVariablesSuppressed,\n agentDbId: userData.dbId,\n allowConsultToQueue: agentProfileData.consultToQueue,\n accessQueue: agentProfileData.accessQueue,\n accessEntryPoint: agentProfileData.accessEntryPoint,\n accessBuddyTeam: agentProfileData.accessBuddyTeam,\n agentPersonalStatsEnabled: agentProfileData.viewableStatistics\n ? agentProfileData.viewableStatistics.agentStats\n : false,\n addressBookId: agentProfileData.addressBookId,\n outdialANIId: agentProfileData.outdialANIId,\n analyserUserId: userData.id,\n\n urlMappings: {\n acqueonApiUrl: urlMappings?.ACQUEON_API_URL ?? '',\n acqueonConsoleUrl: urlMappings?.ACQUEON_CONSOLE_URL ?? '',\n },\n isTimeoutDesktopInactivityEnabled: tenantData.timeoutDesktopInactivityEnabled,\n timeoutDesktopInactivityMins: inactivityTimeoutTimer,\n loginVoiceOptions: agentProfileData.loginVoiceOptions ?? [],\n webRtcEnabled: orgSettingsData.webRtcEnabled,\n maskSensitiveData: orgSettingsData.maskSensitiveData\n ? orgSettingsData.maskSensitiveData\n : false,\n microsoftConfig: getMsftConfig(microsoftConfig),\n webexConfig: getWebexConfig(webexConfig),\n lostConnectionRecoveryTimeout:\n tenantData.lostConnectionRecoveryTimeout || LOST_CONNECTION_RECOVERY_TIMEOUT,\n aiFeature,\n isWellnessBreakEnabled: isWellnessConfigured && hasAIAssistantLicense,\n };\n\n return finalData;\n}\n\nexport {parseAgentConfigs};\n"],"mappings":"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","ignoreList":[]}
@@ -66,25 +66,19 @@ const DEFAULT_AUXCODE_ATTRIBUTES = exports.DEFAULT_AUXCODE_ATTRIBUTES = ['id', '
66
66
  const METHODS = exports.METHODS = {
67
67
  // AgentConfigService methods
68
68
  GET_AGENT_CONFIG: 'getAgentConfig',
69
- GET_USER_USING_CI: 'getUserUsingCI',
70
- GET_DESKTOP_PROFILE_BY_ID: 'getDesktopProfileById',
69
+ GET_ORG_DESKTOP_LOGIN_CONFIG: 'getOrgDesktopLoginConfig',
70
+ GET_USER_DESKTOP_LOGIN_CONFIG: 'getUserDesktopLoginConfig',
71
71
  GET_MULTIMEDIA_PROFILE_BY_ID: 'getMultimediaProfileById',
72
72
  GET_LIST_OF_TEAMS: 'getListOfTeams',
73
73
  GET_ALL_TEAMS: 'getAllTeams',
74
74
  GET_LIST_OF_AUX_CODES: 'getListOfAuxCodes',
75
75
  GET_ALL_AUX_CODES: 'getAllAuxCodes',
76
76
  GET_SITE_INFO: 'getSiteInfo',
77
- GET_ORG_INFO: 'getOrgInfo',
78
- GET_ORGANIZATION_SETTING: 'getOrganizationSetting',
79
- GET_TENANT_DATA: 'getTenantData',
80
- GET_URL_MAPPING: 'getURLMapping',
81
77
  GET_DIAL_PLAN_DATA: 'getDialPlanData',
82
- GET_AI_FEATURE_FLAGS: 'getAIFeatureFlags',
83
78
  GET_WELLBEING_BREAK_IDLE_CODE: 'getWellbeingBreakIdleCode',
84
79
  GET_QUEUES: 'getQueues',
85
80
  // Util methods
86
81
  PARSE_AGENT_CONFIGS: 'parseAgentConfigs',
87
- GET_URL_MAPPING_UTIL: 'getUrlMapping',
88
82
  GET_MSFT_CONFIG: 'getMsftConfig',
89
83
  GET_WEBEX_CONFIG: 'getWebexConfig',
90
84
  GET_DEFAULT_AGENT_DN: 'getDefaultAgentDN',
@@ -97,31 +91,30 @@ const METHODS = exports.METHODS = {
97
91
  * Maps API endpoint names to functions that generate endpoint URLs for various organization resources.
98
92
  * @public
99
93
  * @example
100
- * const url = endPointMap.userByCI('org123', 'agent456');
94
+ * const url = endPointMap.userDesktopLogin('org123', 'agent456');
101
95
  */
102
96
  const endPointMap = exports.endPointMap = {
103
97
  /**
104
- * Gets the endpoint for a user by CI user ID.
98
+ * Gets the endpoint for the aggregated organization desktop-login configuration.
105
99
  * @param orgId - Organization ID.
106
- * @param agentId - Agent ID.
107
100
  * @returns The endpoint URL string.
108
101
  * @public
109
102
  * @example
110
- * const url = endPointMap.userByCI('org123', 'agent456');
103
+ * const url = endPointMap.orgDesktopLogin('org123');
111
104
  * @ignore
112
105
  */
113
- userByCI: (orgId, agentId) => `organization/${orgId}/user/by-ci-user-id/${agentId}`,
106
+ orgDesktopLogin: orgId => `organization/${orgId}/desktop-login`,
114
107
  /**
115
- * Gets the endpoint for a desktop profile.
108
+ * Gets the endpoint for the aggregated user desktop-login configuration.
116
109
  * @param orgId - Organization ID.
117
- * @param desktopProfileId - Desktop profile ID.
110
+ * @param ciUserId - CI user ID of the agent.
118
111
  * @returns The endpoint URL string.
119
112
  * @public
120
113
  * @example
121
- * const url = endPointMap.desktopProfile('org123', 'profile789');
114
+ * const url = endPointMap.userDesktopLogin('org123', 'agent456');
122
115
  * @ignore
123
116
  */
124
- desktopProfile: (orgId, desktopProfileId) => `organization/${orgId}/agent-profile/${desktopProfileId}`,
117
+ userDesktopLogin: (orgId, ciUserId) => `organization/${orgId}/v2/user/by-ci-user-id/${ciUserId}/desktop-login`,
125
118
  /**
126
119
  * Gets the endpoint for a multimedia profile.
127
120
  * @param orgId - Organization ID.
@@ -134,18 +127,19 @@ const endPointMap = exports.endPointMap = {
134
127
  */
135
128
  multimediaProfile: (orgId, multimediaProfileId) => `organization/${orgId}/multimedia-profile/${multimediaProfileId}`,
136
129
  /**
137
- * Gets the endpoint for listing teams with optional filters.
130
+ * Gets the endpoint for listing the teams a user belongs to.
131
+ * The filter value must stay unquoted — the quoted form returns HTTP 400.
138
132
  * @param orgId - Organization ID.
139
133
  * @param page - Page number.
140
134
  * @param pageSize - Page size.
141
- * @param filter - Array of team IDs to filter.
135
+ * @param userDbId - Database ID of the user whose teams are requested.
142
136
  * @returns The endpoint URL string.
143
137
  * @public
144
138
  * @example
145
- * const url = endPointMap.listTeams('org123', 0, 100, ['team1', 'team2']);
139
+ * const url = endPointMap.listTeams('org123', 0, 100, 'userDb456');
146
140
  * @ignore
147
141
  */
148
- listTeams: (orgId, page, pageSize, filter) => `organization/${orgId}/v2/team?page=${page}&pageSize=${pageSize}${filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''}`,
142
+ listTeams: (orgId, page, pageSize, userDbId) => `organization/${orgId}/v2/team?page=${page}&pageSize=${pageSize}` + `&agentView=true&filter=userId==${userDbId}`,
149
143
  /**
150
144
  * Gets the endpoint for listing auxiliary codes with optional filters and attributes.
151
145
  * @param orgId - Organization ID.
@@ -162,26 +156,6 @@ const endPointMap = exports.endPointMap = {
162
156
  listAuxCodes: (orgId, page, pageSize, filter, attributes) => `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}${filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''}&attributes=${attributes}&desktopProfileFilter=true`,
163
157
  /** Lists system idle codes without applying the agent Desktop Profile filter. */
164
158
  systemIdleCodes: (orgId, page, pageSize) => `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}` + '&workType=IDLE_CODE&customFilter=isSystemCode==true&desktopProfileFilter=false',
165
- /**
166
- * Gets the endpoint for organization info.
167
- * @param orgId - Organization ID.
168
- * @returns The endpoint URL string.
169
- * @public
170
- * @example
171
- * const url = endPointMap.orgInfo('org123');
172
- * @ignore
173
- */
174
- orgInfo: orgId => `organization/${orgId}`,
175
- /**
176
- * Gets the endpoint for organization settings.
177
- * @param orgId - Organization ID.
178
- * @returns The endpoint URL string.
179
- * @public
180
- * @example
181
- * const url = endPointMap.orgSettings('org123');
182
- * @ignore
183
- */
184
- orgSettings: orgId => `organization/${orgId}/v2/organization-setting?agentView=true`,
185
159
  /**
186
160
  * Gets the endpoint for site info.
187
161
  * @param orgId - Organization ID.
@@ -193,26 +167,6 @@ const endPointMap = exports.endPointMap = {
193
167
  * @ignore
194
168
  */
195
169
  siteInfo: (orgId, siteId) => `organization/${orgId}/site/${siteId}`,
196
- /**
197
- * Gets the endpoint for tenant configuration data.
198
- * @param orgId - Organization ID.
199
- * @returns The endpoint URL string.
200
- * @public
201
- * @example
202
- * const url = endPointMap.tenantData('org123');
203
- * @ignore
204
- */
205
- tenantData: orgId => `organization/${orgId}/v2/tenant-configuration?agentView=true`,
206
- /**
207
- * Gets the endpoint for organization URL mapping.
208
- * @param orgId - Organization ID.
209
- * @returns The endpoint URL string.
210
- * @public
211
- * @example
212
- * const url = endPointMap.urlMapping('org123');
213
- * @ignore
214
- */
215
- urlMapping: orgId => `organization/${orgId}/v2/org-url-mapping?sort=name,ASC`,
216
170
  /**
217
171
  * Gets the endpoint for dial plan.
218
172
  * @param orgId - Organization ID.
@@ -223,16 +177,6 @@ const endPointMap = exports.endPointMap = {
223
177
  * @ignore
224
178
  */
225
179
  dialPlan: orgId => `organization/${orgId}/dial-plan?agentView=true`,
226
- /**
227
- * Gets the endpoint for listing AI feature flags.
228
- * @param orgId - Organization ID.
229
- * @returns The endpoint URL string.
230
- * @public
231
- * @example
232
- * const url = endPointMap.aiFeatureFlags('org123');
233
- * @ignore
234
- */
235
- aiFeature: orgId => `organization/${orgId}/v2/ai-feature?page=0&pageSize=100`,
236
180
  /**
237
181
  * Gets the endpoint for the queue list with custom query parameters.
238
182
  * @param orgId - Organization ID.
@@ -1 +1 @@
1
- {"version":3,"names":["DEFAULT_PAGE","exports","COLLABORATION_ACCESS","ALL","SPECIFIC","NONE","DEFAULT_PAGE_SIZE","AGENT_STATE_AVAILABLE_ID","AGENT_STATE_AVAILABLE","WELLBEING_BREAK_IDLE_CODE","WELLNESS_BREAK_REMINDERS_ENABLED","AGENT_STATE_AVAILABLE_DESCRIPTION","DEFAULT_AUXCODE_ATTRIBUTES","METHODS","GET_AGENT_CONFIG","GET_USER_USING_CI","GET_DESKTOP_PROFILE_BY_ID","GET_MULTIMEDIA_PROFILE_BY_ID","GET_LIST_OF_TEAMS","GET_ALL_TEAMS","GET_LIST_OF_AUX_CODES","GET_ALL_AUX_CODES","GET_SITE_INFO","GET_ORG_INFO","GET_ORGANIZATION_SETTING","GET_TENANT_DATA","GET_URL_MAPPING","GET_DIAL_PLAN_DATA","GET_AI_FEATURE_FLAGS","GET_WELLBEING_BREAK_IDLE_CODE","GET_QUEUES","PARSE_AGENT_CONFIGS","GET_URL_MAPPING_UTIL","GET_MSFT_CONFIG","GET_WEBEX_CONFIG","GET_DEFAULT_AGENT_DN","GET_FILTERED_DIALPLAN_ENTRIES","GET_FILTER_AUX_CODES","GET_DEFAULT_WRAP_UP_CODE","endPointMap","userByCI","orgId","agentId","desktopProfile","desktopProfileId","multimediaProfile","multimediaProfileId","listTeams","page","pageSize","filter","length","listAuxCodes","attributes","systemIdleCodes","orgInfo","orgSettings","siteInfo","siteId","tenantData","urlMapping","dialPlan","aiFeature","queueList","queryParams","entryPointDialNumberList","addressBookEntries","addressBookId","outdialAniEntries","outdialANI","userPreference","userId","userPreferenceCreate"],"sources":["constants.ts"],"sourcesContent":["// making query params configurable for List Teams and List Aux Codes API\nexport const DEFAULT_PAGE = 0;\n\n/** Desktop Profile access levels for collaboration destination categories. */\nexport const COLLABORATION_ACCESS = {\n ALL: 'ALL',\n SPECIFIC: 'SPECIFIC',\n NONE: 'NONE',\n} as const;\n\n/**\n * Default page size for paginated API requests.\n * @type {number}\n * @public\n * @example\n * const pageSize = DEFAULT_PAGE_SIZE; // 100\n * @ignore\n */\nexport const DEFAULT_PAGE_SIZE = 100;\n\n/**\n * Agent state ID for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_ID = '0';\n\n/**\n * Agent state label for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE = 'Available';\n\n/** System idle-code name reserved for Agent Wellness Break. */\nexport const WELLBEING_BREAK_IDLE_CODE = 'WellbeingBreak';\n\n/** Backend sentinel indicating wellness-break reminders are enabled. @internal */\nexport const WELLNESS_BREAK_REMINDERS_ENABLED = 'ENABLED';\n\n/**\n * Description for the 'Available' agent state.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_DESCRIPTION = 'Agent is available to receive calls';\n\n/**\n * Default attributes for auxiliary code API requests.\n * @type {string[]}\n * @public\n * @ignore\n */\nexport const DEFAULT_AUXCODE_ATTRIBUTES = [\n 'id',\n 'isSystemCode',\n 'name',\n 'defaultCode',\n 'workTypeCode',\n 'active',\n];\n\n// Method names for config services\nexport const METHODS = {\n // AgentConfigService methods\n GET_AGENT_CONFIG: 'getAgentConfig',\n GET_USER_USING_CI: 'getUserUsingCI',\n GET_DESKTOP_PROFILE_BY_ID: 'getDesktopProfileById',\n GET_MULTIMEDIA_PROFILE_BY_ID: 'getMultimediaProfileById',\n GET_LIST_OF_TEAMS: 'getListOfTeams',\n GET_ALL_TEAMS: 'getAllTeams',\n GET_LIST_OF_AUX_CODES: 'getListOfAuxCodes',\n GET_ALL_AUX_CODES: 'getAllAuxCodes',\n GET_SITE_INFO: 'getSiteInfo',\n GET_ORG_INFO: 'getOrgInfo',\n GET_ORGANIZATION_SETTING: 'getOrganizationSetting',\n GET_TENANT_DATA: 'getTenantData',\n GET_URL_MAPPING: 'getURLMapping',\n GET_DIAL_PLAN_DATA: 'getDialPlanData',\n GET_AI_FEATURE_FLAGS: 'getAIFeatureFlags',\n GET_WELLBEING_BREAK_IDLE_CODE: 'getWellbeingBreakIdleCode',\n GET_QUEUES: 'getQueues',\n\n // Util methods\n PARSE_AGENT_CONFIGS: 'parseAgentConfigs',\n GET_URL_MAPPING_UTIL: 'getUrlMapping',\n GET_MSFT_CONFIG: 'getMsftConfig',\n GET_WEBEX_CONFIG: 'getWebexConfig',\n GET_DEFAULT_AGENT_DN: 'getDefaultAgentDN',\n GET_FILTERED_DIALPLAN_ENTRIES: 'getFilteredDialplanEntries',\n GET_FILTER_AUX_CODES: 'getFilterAuxCodes',\n GET_DEFAULT_WRAP_UP_CODE: 'getDefaultWrapUpCode',\n};\n\n/**\n * Maps API endpoint names to functions that generate endpoint URLs for various organization resources.\n * @public\n * @example\n * const url = endPointMap.userByCI('org123', 'agent456');\n */\nexport const endPointMap = {\n /**\n * Gets the endpoint for a user by CI user ID.\n * @param orgId - Organization ID.\n * @param agentId - Agent ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userByCI('org123', 'agent456');\n * @ignore\n */\n userByCI: (orgId: string, agentId: string) =>\n `organization/${orgId}/user/by-ci-user-id/${agentId}`,\n\n /**\n * Gets the endpoint for a desktop profile.\n * @param orgId - Organization ID.\n * @param desktopProfileId - Desktop profile ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.desktopProfile('org123', 'profile789');\n * @ignore\n */\n desktopProfile: (orgId: string, desktopProfileId: string) =>\n `organization/${orgId}/agent-profile/${desktopProfileId}`,\n\n /**\n * Gets the endpoint for a multimedia profile.\n * @param orgId - Organization ID.\n * @param multimediaProfileId - Multimedia profile ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.multimediaProfile('org123', 'multi456');\n * @ignore\n */\n multimediaProfile: (orgId: string, multimediaProfileId: string) =>\n `organization/${orgId}/multimedia-profile/${multimediaProfileId}`,\n\n /**\n * Gets the endpoint for listing teams with optional filters.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param filter - Array of team IDs to filter.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listTeams('org123', 0, 100, ['team1', 'team2']);\n * @ignore\n */\n listTeams: (orgId: string, page: number, pageSize: number, filter: string[]) =>\n `organization/${orgId}/v2/team?page=${page}&pageSize=${pageSize}${\n filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''\n }`,\n\n /**\n * Gets the endpoint for listing auxiliary codes with optional filters and attributes.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param filter - Array of auxiliary code IDs to filter.\n * @param attributes - Array of attribute names to include.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listAuxCodes('org123', 0, 100, ['aux1'], ['id', 'name']);\n * @ignore\n */\n listAuxCodes: (\n orgId: string,\n page: number,\n pageSize: number,\n filter: string[],\n attributes: string[]\n ) =>\n `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}${\n filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''\n }&attributes=${attributes}&desktopProfileFilter=true`,\n\n /** Lists system idle codes without applying the agent Desktop Profile filter. */\n systemIdleCodes: (orgId: string, page: number, pageSize: number) =>\n `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}` +\n '&workType=IDLE_CODE&customFilter=isSystemCode==true&desktopProfileFilter=false',\n\n /**\n * Gets the endpoint for organization info.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.orgInfo('org123');\n * @ignore\n */\n orgInfo: (orgId: string) => `organization/${orgId}`,\n\n /**\n * Gets the endpoint for organization settings.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.orgSettings('org123');\n * @ignore\n */\n orgSettings: (orgId: string) => `organization/${orgId}/v2/organization-setting?agentView=true`,\n\n /**\n * Gets the endpoint for site info.\n * @param orgId - Organization ID.\n * @param siteId - Site ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.siteInfo('org123', 'site456');\n * @ignore\n */\n siteInfo: (orgId: string, siteId: string) => `organization/${orgId}/site/${siteId}`,\n\n /**\n * Gets the endpoint for tenant configuration data.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.tenantData('org123');\n * @ignore\n */\n tenantData: (orgId: string) => `organization/${orgId}/v2/tenant-configuration?agentView=true`,\n\n /**\n * Gets the endpoint for organization URL mapping.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.urlMapping('org123');\n * @ignore\n */\n urlMapping: (orgId: string) => `organization/${orgId}/v2/org-url-mapping?sort=name,ASC`,\n\n /**\n * Gets the endpoint for dial plan.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.dialPlan('org123');\n * @ignore\n */\n dialPlan: (orgId: string) => `organization/${orgId}/dial-plan?agentView=true`,\n /**\n * Gets the endpoint for listing AI feature flags.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.aiFeatureFlags('org123');\n * @ignore\n */\n aiFeature: (orgId: string) => `organization/${orgId}/v2/ai-feature?page=0&pageSize=100`,\n\n /**\n * Gets the endpoint for the queue list with custom query parameters.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.queueList('org123', 'page=0&pageSize=10');\n * @ignore\n */\n queueList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v2/contact-service-queue?${queryParams}`,\n /**\n * Gets the desktop-profile-filtered dial-number mappings used by entry-point destination lists.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @ignore\n */\n entryPointDialNumberList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v3/dial-number?${queryParams}`,\n /**\n * Gets the endpoint for address book entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param addressBookId - Address book ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.addressBookEntries('org123', 'book456', 'page=0&pageSize=10');\n * @ignore\n */\n addressBookEntries: (orgId: string, addressBookId: string, queryParams: string) =>\n `/organization/${orgId}/v2/address-book/${addressBookId}/entry?${queryParams}`,\n\n /**\n * Gets the endpoint for outdial ANI entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param outdialANI - Outdial ANI ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.outdialAniEntries('org123', 'ani456', 'page=0&pageSize=10');\n * @ignore\n */\n outdialAniEntries: (orgId: string, outdialANI: string, queryParams: string) =>\n `organization/${orgId}/v2/outdial-ani/${outdialANI}/entry${\n queryParams ? `?${queryParams}` : ''\n }`,\n\n /**\n * Gets the endpoint for user preference by user ID.\n * @param orgId - Organization ID.\n * @param userId - User ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userPreference('org123', 'user456');\n * @ignore\n */\n userPreference: (orgId: string, userId: string) =>\n `organization/${orgId}/user-preference/${userId}`,\n\n /**\n * Gets the endpoint for creating user preference.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userPreferenceCreate('org123');\n * @ignore\n */\n userPreferenceCreate: (orgId: string) => `organization/${orgId}/user-preference`,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["DEFAULT_PAGE","exports","COLLABORATION_ACCESS","ALL","SPECIFIC","NONE","DEFAULT_PAGE_SIZE","AGENT_STATE_AVAILABLE_ID","AGENT_STATE_AVAILABLE","WELLBEING_BREAK_IDLE_CODE","WELLNESS_BREAK_REMINDERS_ENABLED","AGENT_STATE_AVAILABLE_DESCRIPTION","DEFAULT_AUXCODE_ATTRIBUTES","METHODS","GET_AGENT_CONFIG","GET_ORG_DESKTOP_LOGIN_CONFIG","GET_USER_DESKTOP_LOGIN_CONFIG","GET_MULTIMEDIA_PROFILE_BY_ID","GET_LIST_OF_TEAMS","GET_ALL_TEAMS","GET_LIST_OF_AUX_CODES","GET_ALL_AUX_CODES","GET_SITE_INFO","GET_DIAL_PLAN_DATA","GET_WELLBEING_BREAK_IDLE_CODE","GET_QUEUES","PARSE_AGENT_CONFIGS","GET_MSFT_CONFIG","GET_WEBEX_CONFIG","GET_DEFAULT_AGENT_DN","GET_FILTERED_DIALPLAN_ENTRIES","GET_FILTER_AUX_CODES","GET_DEFAULT_WRAP_UP_CODE","endPointMap","orgDesktopLogin","orgId","userDesktopLogin","ciUserId","multimediaProfile","multimediaProfileId","listTeams","page","pageSize","userDbId","listAuxCodes","filter","attributes","length","systemIdleCodes","siteInfo","siteId","dialPlan","queueList","queryParams","entryPointDialNumberList","addressBookEntries","addressBookId","outdialAniEntries","outdialANI","userPreference","userId","userPreferenceCreate"],"sources":["constants.ts"],"sourcesContent":["// making query params configurable for List Teams and List Aux Codes API\nexport const DEFAULT_PAGE = 0;\n\n/** Desktop Profile access levels for collaboration destination categories. */\nexport const COLLABORATION_ACCESS = {\n ALL: 'ALL',\n SPECIFIC: 'SPECIFIC',\n NONE: 'NONE',\n} as const;\n\n/**\n * Default page size for paginated API requests.\n * @type {number}\n * @public\n * @example\n * const pageSize = DEFAULT_PAGE_SIZE; // 100\n * @ignore\n */\nexport const DEFAULT_PAGE_SIZE = 100;\n\n/**\n * Agent state ID for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_ID = '0';\n\n/**\n * Agent state label for 'Available'.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE = 'Available';\n\n/** System idle-code name reserved for Agent Wellness Break. */\nexport const WELLBEING_BREAK_IDLE_CODE = 'WellbeingBreak';\n\n/** Backend sentinel indicating wellness-break reminders are enabled. @internal */\nexport const WELLNESS_BREAK_REMINDERS_ENABLED = 'ENABLED';\n\n/**\n * Description for the 'Available' agent state.\n * @type {string}\n * @public\n * @ignore\n */\nexport const AGENT_STATE_AVAILABLE_DESCRIPTION = 'Agent is available to receive calls';\n\n/**\n * Default attributes for auxiliary code API requests.\n * @type {string[]}\n * @public\n * @ignore\n */\nexport const DEFAULT_AUXCODE_ATTRIBUTES = [\n 'id',\n 'isSystemCode',\n 'name',\n 'defaultCode',\n 'workTypeCode',\n 'active',\n];\n\n// Method names for config services\nexport const METHODS = {\n // AgentConfigService methods\n GET_AGENT_CONFIG: 'getAgentConfig',\n GET_ORG_DESKTOP_LOGIN_CONFIG: 'getOrgDesktopLoginConfig',\n GET_USER_DESKTOP_LOGIN_CONFIG: 'getUserDesktopLoginConfig',\n GET_MULTIMEDIA_PROFILE_BY_ID: 'getMultimediaProfileById',\n GET_LIST_OF_TEAMS: 'getListOfTeams',\n GET_ALL_TEAMS: 'getAllTeams',\n GET_LIST_OF_AUX_CODES: 'getListOfAuxCodes',\n GET_ALL_AUX_CODES: 'getAllAuxCodes',\n GET_SITE_INFO: 'getSiteInfo',\n GET_DIAL_PLAN_DATA: 'getDialPlanData',\n GET_WELLBEING_BREAK_IDLE_CODE: 'getWellbeingBreakIdleCode',\n GET_QUEUES: 'getQueues',\n\n // Util methods\n PARSE_AGENT_CONFIGS: 'parseAgentConfigs',\n GET_MSFT_CONFIG: 'getMsftConfig',\n GET_WEBEX_CONFIG: 'getWebexConfig',\n GET_DEFAULT_AGENT_DN: 'getDefaultAgentDN',\n GET_FILTERED_DIALPLAN_ENTRIES: 'getFilteredDialplanEntries',\n GET_FILTER_AUX_CODES: 'getFilterAuxCodes',\n GET_DEFAULT_WRAP_UP_CODE: 'getDefaultWrapUpCode',\n};\n\n/**\n * Maps API endpoint names to functions that generate endpoint URLs for various organization resources.\n * @public\n * @example\n * const url = endPointMap.userDesktopLogin('org123', 'agent456');\n */\nexport const endPointMap = {\n /**\n * Gets the endpoint for the aggregated organization desktop-login configuration.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.orgDesktopLogin('org123');\n * @ignore\n */\n orgDesktopLogin: (orgId: string) => `organization/${orgId}/desktop-login`,\n\n /**\n * Gets the endpoint for the aggregated user desktop-login configuration.\n * @param orgId - Organization ID.\n * @param ciUserId - CI user ID of the agent.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userDesktopLogin('org123', 'agent456');\n * @ignore\n */\n userDesktopLogin: (orgId: string, ciUserId: string) =>\n `organization/${orgId}/v2/user/by-ci-user-id/${ciUserId}/desktop-login`,\n\n /**\n * Gets the endpoint for a multimedia profile.\n * @param orgId - Organization ID.\n * @param multimediaProfileId - Multimedia profile ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.multimediaProfile('org123', 'multi456');\n * @ignore\n */\n multimediaProfile: (orgId: string, multimediaProfileId: string) =>\n `organization/${orgId}/multimedia-profile/${multimediaProfileId}`,\n\n /**\n * Gets the endpoint for listing the teams a user belongs to.\n * The filter value must stay unquoted — the quoted form returns HTTP 400.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param userDbId - Database ID of the user whose teams are requested.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listTeams('org123', 0, 100, 'userDb456');\n * @ignore\n */\n listTeams: (orgId: string, page: number, pageSize: number, userDbId: string) =>\n `organization/${orgId}/v2/team?page=${page}&pageSize=${pageSize}` +\n `&agentView=true&filter=userId==${userDbId}`,\n\n /**\n * Gets the endpoint for listing auxiliary codes with optional filters and attributes.\n * @param orgId - Organization ID.\n * @param page - Page number.\n * @param pageSize - Page size.\n * @param filter - Array of auxiliary code IDs to filter.\n * @param attributes - Array of attribute names to include.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.listAuxCodes('org123', 0, 100, ['aux1'], ['id', 'name']);\n * @ignore\n */\n listAuxCodes: (\n orgId: string,\n page: number,\n pageSize: number,\n filter: string[],\n attributes: string[]\n ) =>\n `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}${\n filter && filter.length > 0 ? `&filter=id=in=(${filter})` : ''\n }&attributes=${attributes}&desktopProfileFilter=true`,\n\n /** Lists system idle codes without applying the agent Desktop Profile filter. */\n systemIdleCodes: (orgId: string, page: number, pageSize: number) =>\n `organization/${orgId}/v2/auxiliary-code?page=${page}&pageSize=${pageSize}` +\n '&workType=IDLE_CODE&customFilter=isSystemCode==true&desktopProfileFilter=false',\n\n /**\n * Gets the endpoint for site info.\n * @param orgId - Organization ID.\n * @param siteId - Site ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.siteInfo('org123', 'site456');\n * @ignore\n */\n siteInfo: (orgId: string, siteId: string) => `organization/${orgId}/site/${siteId}`,\n\n /**\n * Gets the endpoint for dial plan.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.dialPlan('org123');\n * @ignore\n */\n dialPlan: (orgId: string) => `organization/${orgId}/dial-plan?agentView=true`,\n\n /**\n * Gets the endpoint for the queue list with custom query parameters.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.queueList('org123', 'page=0&pageSize=10');\n * @ignore\n */\n queueList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v2/contact-service-queue?${queryParams}`,\n /**\n * Gets the desktop-profile-filtered dial-number mappings used by entry-point destination lists.\n * @param orgId - Organization ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @ignore\n */\n entryPointDialNumberList: (orgId: string, queryParams: string) =>\n `/organization/${orgId}/v3/dial-number?${queryParams}`,\n /**\n * Gets the endpoint for address book entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param addressBookId - Address book ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.addressBookEntries('org123', 'book456', 'page=0&pageSize=10');\n * @ignore\n */\n addressBookEntries: (orgId: string, addressBookId: string, queryParams: string) =>\n `/organization/${orgId}/v2/address-book/${addressBookId}/entry?${queryParams}`,\n\n /**\n * Gets the endpoint for outdial ANI entries with custom query parameters.\n * @param orgId - Organization ID.\n * @param outdialANI - Outdial ANI ID.\n * @param queryParams - Query parameters string.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.outdialAniEntries('org123', 'ani456', 'page=0&pageSize=10');\n * @ignore\n */\n outdialAniEntries: (orgId: string, outdialANI: string, queryParams: string) =>\n `organization/${orgId}/v2/outdial-ani/${outdialANI}/entry${\n queryParams ? `?${queryParams}` : ''\n }`,\n\n /**\n * Gets the endpoint for user preference by user ID.\n * @param orgId - Organization ID.\n * @param userId - User ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userPreference('org123', 'user456');\n * @ignore\n */\n userPreference: (orgId: string, userId: string) =>\n `organization/${orgId}/user-preference/${userId}`,\n\n /**\n * Gets the endpoint for creating user preference.\n * @param orgId - Organization ID.\n * @returns The endpoint URL string.\n * @public\n * @example\n * const url = endPointMap.userPreferenceCreate('org123');\n * @ignore\n */\n userPreferenceCreate: (orgId: string) => `organization/${orgId}/user-preference`,\n};\n"],"mappings":"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","ignoreList":[]}