@webex/cc-store 1.28.0-ccwidgets.50 → 1.28.0-ccwidgets.52
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/dist/index.js +31 -20
- package/dist/types/store.d.ts +6 -3
- package/dist/types/store.types.d.ts +17 -5
- package/dist/types/storeEventsWrapper.d.ts +16 -11
- package/dist/types/util.d.ts +2 -0
- package/package.json +2 -2
package/dist/types/store.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IContactCenter, Team, WithWebex, IdleCode, InitParams, IStore, ILogger, IWrapupCode, ICustomState } from './store.types';
|
|
1
|
+
import { IContactCenter, Team, WithWebex, IdleCode, InitParams, IStore, ILogger, IWrapupCode, ICustomState, TaskMetaData } from './store.types';
|
|
2
2
|
import { ITask } from '@webex/plugin-cc';
|
|
3
3
|
declare class Store implements IStore {
|
|
4
4
|
private static instance;
|
|
@@ -14,9 +14,8 @@ declare class Store implements IStore {
|
|
|
14
14
|
currentTask: ITask;
|
|
15
15
|
isAgentLoggedIn: boolean;
|
|
16
16
|
deviceType: string;
|
|
17
|
+
taskList: Record<string, ITask>;
|
|
17
18
|
dialNumber: string;
|
|
18
|
-
taskList: ITask[];
|
|
19
|
-
wrapupRequired: boolean;
|
|
20
19
|
currentState: string;
|
|
21
20
|
customState: ICustomState;
|
|
22
21
|
consultCompleted: boolean;
|
|
@@ -30,8 +29,12 @@ declare class Store implements IStore {
|
|
|
30
29
|
showMultipleLoginAlert: boolean;
|
|
31
30
|
callControlAudio: MediaStream | null;
|
|
32
31
|
consultOfferReceived: boolean;
|
|
32
|
+
featureFlags: {
|
|
33
|
+
[key: string]: boolean;
|
|
34
|
+
};
|
|
33
35
|
isEndConsultEnabled: boolean;
|
|
34
36
|
allowConsultToQueue: boolean;
|
|
37
|
+
taskMetaData: Record<string, TaskMetaData>;
|
|
35
38
|
constructor();
|
|
36
39
|
static getInstance(): Store;
|
|
37
40
|
registerCC(webex?: WithWebex['webex']): Promise<void>;
|
|
@@ -23,7 +23,19 @@ type IdleCode = {
|
|
|
23
23
|
isSystem: boolean;
|
|
24
24
|
isDefault: boolean;
|
|
25
25
|
};
|
|
26
|
+
type TaskMetaData = {
|
|
27
|
+
consultCompleted: boolean;
|
|
28
|
+
consultInitiated: boolean;
|
|
29
|
+
consultAccepted: boolean;
|
|
30
|
+
isQueueConsultInProgress: boolean;
|
|
31
|
+
currentConsultQueueId: string;
|
|
32
|
+
consultStartTimeStamp: number;
|
|
33
|
+
consultOfferReceived: boolean;
|
|
34
|
+
};
|
|
26
35
|
interface IStore {
|
|
36
|
+
featureFlags: {
|
|
37
|
+
[key: string]: boolean;
|
|
38
|
+
};
|
|
27
39
|
teams: Team[];
|
|
28
40
|
loginOptions: string[];
|
|
29
41
|
cc: IContactCenter;
|
|
@@ -33,11 +45,11 @@ interface IStore {
|
|
|
33
45
|
wrapupCodes: IWrapupCode[];
|
|
34
46
|
currentTask: ITask;
|
|
35
47
|
incomingTask: ITask;
|
|
36
|
-
taskList: ITask
|
|
48
|
+
taskList: Record<string, ITask>;
|
|
49
|
+
taskMetaData: Record<string, TaskMetaData>;
|
|
37
50
|
isAgentLoggedIn: boolean;
|
|
38
51
|
deviceType: string;
|
|
39
52
|
dialNumber: string;
|
|
40
|
-
wrapupRequired: boolean;
|
|
41
53
|
currentState: string;
|
|
42
54
|
lastStateChangeTimestamp?: number;
|
|
43
55
|
lastIdleCodeChangeTimestamp?: number;
|
|
@@ -60,8 +72,7 @@ interface IStore {
|
|
|
60
72
|
interface IStoreWrapper extends IStore {
|
|
61
73
|
store: IStore;
|
|
62
74
|
setCurrentTask(task: ITask): void;
|
|
63
|
-
|
|
64
|
-
setTaskList(taskList: ITask[]): void;
|
|
75
|
+
refreshTaskList(): void;
|
|
65
76
|
setIncomingTask(task: ITask): void;
|
|
66
77
|
setDeviceType(option: string): void;
|
|
67
78
|
setDialNumber(input: string): void;
|
|
@@ -103,6 +114,7 @@ declare enum TASK_EVENTS {
|
|
|
103
114
|
CONTACT_RECORDING_PAUSED = "ContactRecordingPaused",
|
|
104
115
|
CONTACT_RECORDING_RESUMED = "ContactRecordingResumed",
|
|
105
116
|
AGENT_WRAPPEDUP = "AgentWrappedUp",
|
|
117
|
+
AGENT_OFFER_CONTACT = "AgentOfferContact",
|
|
106
118
|
AGENT_CONSULT_CREATED = "AgentConsultCreated"
|
|
107
119
|
}
|
|
108
120
|
declare enum CC_EVENTS {
|
|
@@ -124,5 +136,5 @@ interface ICustomStateReset {
|
|
|
124
136
|
type ICustomState = ICustomStateSet | ICustomStateReset;
|
|
125
137
|
declare const ENGAGED_LABEL = "ENGAGED";
|
|
126
138
|
declare const ENGAGED_USERNAME = "Engaged";
|
|
127
|
-
export type { IContactCenter, ITask, Profile, Team, AgentLogin, WithWebex, IdleCode, InitParams, IStore, ILogger, IWrapupCode, IStoreWrapper, ICustomState, DestinationType, BuddyDetails, ContactServiceQueue, };
|
|
139
|
+
export type { IContactCenter, ITask, Profile, Team, AgentLogin, WithWebex, IdleCode, InitParams, IStore, ILogger, IWrapupCode, IStoreWrapper, ICustomState, DestinationType, BuddyDetails, ContactServiceQueue, TaskMetaData, };
|
|
128
140
|
export { CC_EVENTS, TASK_EVENTS, ENGAGED_LABEL, ENGAGED_USERNAME };
|
|
@@ -1,8 +1,12 @@
|
|
|
1
|
-
import { IStoreWrapper, IStore, InitParams, TASK_EVENTS, CC_EVENTS, IWrapupCode, WithWebex, ICustomState, IdleCode, IContactCenter, ITask, BuddyDetails, ContactServiceQueue } from './store.types';
|
|
1
|
+
import { IStoreWrapper, IStore, InitParams, TASK_EVENTS, CC_EVENTS, IWrapupCode, WithWebex, ICustomState, IdleCode, IContactCenter, ITask, BuddyDetails, ContactServiceQueue, TaskMetaData } from './store.types';
|
|
2
2
|
declare class StoreWrapper implements IStoreWrapper {
|
|
3
3
|
store: IStore;
|
|
4
|
-
onTaskRejected?: (reason: string) => void;
|
|
4
|
+
onTaskRejected?: (task: ITask, reason: string) => void;
|
|
5
|
+
onTaskAssigned?: (task: ITask) => void;
|
|
5
6
|
constructor();
|
|
7
|
+
get featureFlags(): {
|
|
8
|
+
[key: string]: boolean;
|
|
9
|
+
};
|
|
6
10
|
get teams(): Team[];
|
|
7
11
|
get loginOptions(): string[];
|
|
8
12
|
get cc(): IContactCenter;
|
|
@@ -14,9 +18,8 @@ declare class StoreWrapper implements IStoreWrapper {
|
|
|
14
18
|
get wrapupCodes(): IWrapupCode[];
|
|
15
19
|
get currentTask(): ITask;
|
|
16
20
|
get isAgentLoggedIn(): boolean;
|
|
17
|
-
get taskList(): ITask
|
|
21
|
+
get taskList(): Record<string, ITask>;
|
|
18
22
|
get incomingTask(): ITask;
|
|
19
|
-
get wrapupRequired(): boolean;
|
|
20
23
|
get currentState(): string;
|
|
21
24
|
get lastStateChangeTimestamp(): number;
|
|
22
25
|
get lastIdleCodeChangeTimestamp(): number;
|
|
@@ -33,6 +36,8 @@ declare class StoreWrapper implements IStoreWrapper {
|
|
|
33
36
|
get currentConsultQueueId(): string;
|
|
34
37
|
get isEndConsultEnabled(): boolean;
|
|
35
38
|
get allowConsultToQueue(): boolean;
|
|
39
|
+
get taskMetaData(): Record<string, TaskMetaData>;
|
|
40
|
+
setTaskMetaData: (taskId: string, data: TaskMetaData) => void;
|
|
36
41
|
setCurrentTheme: (theme: string) => void;
|
|
37
42
|
setShowMultipleLoginAlert: (value: boolean) => void;
|
|
38
43
|
setDeviceType: (option: string) => void;
|
|
@@ -41,10 +46,9 @@ declare class StoreWrapper implements IStoreWrapper {
|
|
|
41
46
|
setLastStateChangeTimestamp: (timestamp: number) => void;
|
|
42
47
|
setLastIdleCodeChangeTimestamp: (timestamp: number) => void;
|
|
43
48
|
setIsAgentLoggedIn: (value: boolean) => void;
|
|
44
|
-
setWrapupRequired: (value: boolean) => void;
|
|
45
49
|
setCurrentTask: (task: ITask) => void;
|
|
46
50
|
setIncomingTask: (task: ITask) => void;
|
|
47
|
-
|
|
51
|
+
refreshTaskList: () => void;
|
|
48
52
|
setWrapupCodes: (wrapupCodes: IWrapupCode[]) => void;
|
|
49
53
|
setConsultCompleted: (value: boolean) => void;
|
|
50
54
|
setConsultInitiated: (value: boolean) => void;
|
|
@@ -55,17 +59,18 @@ declare class StoreWrapper implements IStoreWrapper {
|
|
|
55
59
|
setIsQueueConsultInProgress: (value: boolean) => void;
|
|
56
60
|
setCurrentConsultQueueId: (queueId: string | null) => void;
|
|
57
61
|
setState: (state: ICustomState | IdleCode) => void;
|
|
58
|
-
setTaskRejected: (callback: ((reason: string) => void) | undefined) => void;
|
|
62
|
+
setTaskRejected: (callback: ((task: ITask, reason: string) => void) | undefined) => void;
|
|
63
|
+
setTaskAssigned: (callback: ((task: ITask) => void) | undefined) => void;
|
|
59
64
|
setCCCallback: (event: CC_EVENTS | TASK_EVENTS, callback: any) => void;
|
|
60
65
|
setTaskCallback: (event: TASK_EVENTS, callback: any, taskId: string) => void;
|
|
61
66
|
removeCCCallback: (event: CC_EVENTS) => void;
|
|
62
67
|
removeTaskCallback: (event: TASK_EVENTS, callback: any, taskId: string) => void;
|
|
63
68
|
init(options: InitParams): Promise<void>;
|
|
64
69
|
registerCC: (webex?: WithWebex["webex"]) => Promise<void>;
|
|
65
|
-
handleTaskRemove: (
|
|
66
|
-
handleTaskEnd: (
|
|
70
|
+
handleTaskRemove: (taskId: any) => void;
|
|
71
|
+
handleTaskEnd: () => void;
|
|
67
72
|
handleTaskAssigned: (event: any) => void;
|
|
68
|
-
handleTaskWrapUp: (
|
|
73
|
+
handleTaskWrapUp: (task: any) => void;
|
|
69
74
|
handleTaskMedia: (track: any) => void;
|
|
70
75
|
handleConsultCreated: () => void;
|
|
71
76
|
handleConsulting: (event: any) => void;
|
|
@@ -77,7 +82,7 @@ declare class StoreWrapper implements IStoreWrapper {
|
|
|
77
82
|
handleStateChange: (data: any) => void;
|
|
78
83
|
handleMultiLoginCloseSession: (data: any) => void;
|
|
79
84
|
handleTaskHydrate: (event: any) => void;
|
|
80
|
-
handleTaskReject: (
|
|
85
|
+
handleTaskReject: (task: ITask, reason: string) => void;
|
|
81
86
|
getBuddyAgents: () => Promise<Array<BuddyDetails>>;
|
|
82
87
|
getQueues: () => Promise<Array<ContactServiceQueue>>;
|
|
83
88
|
cleanUpStore: () => void;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webex/cc-store",
|
|
3
3
|
"description": "Webex Contact Center Widgets: Widgets Store",
|
|
4
|
-
"version": "1.28.0-ccwidgets.
|
|
4
|
+
"version": "1.28.0-ccwidgets.52",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"publishConfig": {
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"mobx": "6.13.5",
|
|
25
25
|
"typescript": "5.6.3",
|
|
26
|
-
"webex": "3.8.0-next.
|
|
26
|
+
"webex": "3.8.0-next.61"
|
|
27
27
|
},
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@babel/core": "7.25.2",
|