@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.
- package/.sdd/manifest.json +1 -1
- package/ai-docs/CONTRACTS.md +1 -0
- package/dist/cc.js +4 -4
- package/dist/cc.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/services/config/Util.js +38 -45
- package/dist/services/config/Util.js.map +1 -1
- package/dist/services/config/constants.js +15 -71
- package/dist/services/config/constants.js.map +1 -1
- package/dist/services/config/index.js +49 -226
- package/dist/services/config/index.js.map +1 -1
- package/dist/services/config/types.js +33 -11
- package/dist/services/config/types.js.map +1 -1
- package/dist/types/cc.d.ts +3 -3
- package/dist/types/index.d.ts +16 -8
- package/dist/types/services/config/Util.d.ts +4 -8
- package/dist/types/services/config/constants.d.ts +15 -71
- package/dist/types/services/config/index.d.ts +16 -64
- package/dist/types/services/config/types.d.ts +97 -160
- package/dist/webex.js +1 -1
- package/package.json +1 -1
- package/src/cc.ts +4 -4
- package/src/index.ts +16 -8
- package/src/services/agent/ai-docs/AGENTS.md +1 -1
- package/src/services/config/Util.ts +43 -82
- package/src/services/config/ai-docs/AGENTS.md +34 -39
- package/src/services/config/ai-docs/ARCHITECTURE.md +88 -101
- package/src/services/config/ai-docs/config-spec.md +115 -132
- package/src/services/config/constants.ts +18 -80
- package/src/services/config/index.ts +52 -278
- package/src/services/config/types.ts +101 -185
- package/test/unit/spec/index.ts +6 -2
- package/test/unit/spec/services/config/Util.ts +442 -70
- package/test/unit/spec/services/config/index.ts +246 -544
- package/typedoc.md +1 -1
- package/umd/contact-center.min.js +2 -2
- 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 /**
|
|
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
|
|
12
|
-
* @param {
|
|
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 =
|
|
15
|
+
const getMsftConfig = microsoftConfig => {
|
|
27
16
|
return {
|
|
28
|
-
showUserDetailsMS:
|
|
29
|
-
stateSynchronizationMS:
|
|
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 {
|
|
24
|
+
* @param {WebexConfig} webexConfig
|
|
36
25
|
* @returns {Object}
|
|
37
26
|
*/
|
|
38
|
-
const getWebexConfig =
|
|
27
|
+
const getWebexConfig = webexConfig => {
|
|
39
28
|
return {
|
|
40
|
-
showUserDetailsWebex:
|
|
41
|
-
stateSynchronizationWebex:
|
|
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
|
|
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 =
|
|
50
|
+
const getFilteredDialplanEntries = dialPlanData => {
|
|
61
51
|
const dialPlanEntries = [];
|
|
62
52
|
dialPlanData.forEach(dailPlan => {
|
|
63
|
-
if (
|
|
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
|
|
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
|
|
74
|
+
const getFilterAuxCodes = (auxCodes, type) => {
|
|
84
75
|
const filteredAuxCodes = [];
|
|
85
76
|
auxCodes.forEach(auxCode => {
|
|
86
|
-
if (auxCode.workTypeCode === type && auxCode.active
|
|
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
|
-
|
|
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
|
|
128
|
-
const idleCodes = getFilterAuxCodes(auxCodes, _types.IDLE_CODE
|
|
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
|
|
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:
|
|
199
|
-
acqueonConsoleUrl:
|
|
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(
|
|
207
|
-
webexConfig: getWebexConfig(
|
|
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
|
-
|
|
70
|
-
|
|
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.
|
|
94
|
+
* const url = endPointMap.userDesktopLogin('org123', 'agent456');
|
|
101
95
|
*/
|
|
102
96
|
const endPointMap = exports.endPointMap = {
|
|
103
97
|
/**
|
|
104
|
-
* Gets the endpoint for
|
|
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.
|
|
103
|
+
* const url = endPointMap.orgDesktopLogin('org123');
|
|
111
104
|
* @ignore
|
|
112
105
|
*/
|
|
113
|
-
|
|
106
|
+
orgDesktopLogin: orgId => `organization/${orgId}/desktop-login`,
|
|
114
107
|
/**
|
|
115
|
-
* Gets the endpoint for
|
|
108
|
+
* Gets the endpoint for the aggregated user desktop-login configuration.
|
|
116
109
|
* @param orgId - Organization ID.
|
|
117
|
-
* @param
|
|
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.
|
|
114
|
+
* const url = endPointMap.userDesktopLogin('org123', 'agent456');
|
|
122
115
|
* @ignore
|
|
123
116
|
*/
|
|
124
|
-
|
|
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
|
|
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
|
|
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,
|
|
139
|
+
* const url = endPointMap.listTeams('org123', 0, 100, 'userDb456');
|
|
146
140
|
* @ignore
|
|
147
141
|
*/
|
|
148
|
-
listTeams: (orgId, page, pageSize,
|
|
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":[]}
|