ahs-cti 1.0.1-beta.6 → 1.0.1-beta.7
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/{callHistory-Z5ABHFDQ.mjs → callHistory-PEG4WRIU.mjs} +2 -2
- package/dist/{chunk-FFYJ4LWU.mjs → chunk-B7G5PWDP.mjs} +22 -6
- package/dist/chunk-B7G5PWDP.mjs.map +1 -0
- package/dist/index.d.mts +11 -9
- package/dist/index.d.ts +11 -9
- package/dist/index.js +235 -160
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +217 -158
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-FFYJ4LWU.mjs.map +0 -1
- /package/dist/{callHistory-Z5ABHFDQ.mjs.map → callHistory-PEG4WRIU.mjs.map} +0 -0
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
__spreadValues,
|
|
6
6
|
axios_default,
|
|
7
7
|
useToast
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-B7G5PWDP.mjs";
|
|
9
9
|
|
|
10
10
|
// call-control-sdk/lib/pages/callHistory/index.tsx
|
|
11
11
|
import { memo, useEffect, useState as useState2 } from "react";
|
|
@@ -366,4 +366,4 @@ var callHistory_default = CallHistory;
|
|
|
366
366
|
export {
|
|
367
367
|
callHistory_default as default
|
|
368
368
|
};
|
|
369
|
-
//# sourceMappingURL=callHistory-
|
|
369
|
+
//# sourceMappingURL=callHistory-PEG4WRIU.mjs.map
|
|
@@ -68,6 +68,7 @@ var SDKStateManager = class {
|
|
|
68
68
|
isInitialized: false,
|
|
69
69
|
sdkConfig: {
|
|
70
70
|
disableEndCallButton: false,
|
|
71
|
+
disableEndConference: false,
|
|
71
72
|
disabledDialButton: false,
|
|
72
73
|
disabledMoreOptionsButton: false,
|
|
73
74
|
enableSmsServices: false,
|
|
@@ -81,6 +82,7 @@ var SDKStateManager = class {
|
|
|
81
82
|
disableConferenceButton: false,
|
|
82
83
|
disableHoldButton: false,
|
|
83
84
|
disableMuteButton: false,
|
|
85
|
+
disableAlternateDialing: true,
|
|
84
86
|
disabled: {},
|
|
85
87
|
enabled: {},
|
|
86
88
|
outlined: {}
|
|
@@ -169,11 +171,12 @@ var SDKStateManager = class {
|
|
|
169
171
|
isPermissionsLoaded: false,
|
|
170
172
|
userPermissions: null,
|
|
171
173
|
menuEntitlements: null,
|
|
172
|
-
consultInfo: null
|
|
174
|
+
consultInfo: null,
|
|
175
|
+
rootCallUuid: null
|
|
173
176
|
};
|
|
174
177
|
}
|
|
175
178
|
loadFromStorage() {
|
|
176
|
-
var _a2, _b;
|
|
179
|
+
var _a2, _b, _c;
|
|
177
180
|
try {
|
|
178
181
|
const stored = getSession(this.STORAGE_KEY);
|
|
179
182
|
if (stored) {
|
|
@@ -187,6 +190,7 @@ var SDKStateManager = class {
|
|
|
187
190
|
isInitialized: parsedState.isInitialized || false,
|
|
188
191
|
sdkConfig: parsedState.sdkConfig || {
|
|
189
192
|
disableEndCallButton: false,
|
|
193
|
+
disableEndConference: false,
|
|
190
194
|
disabledMoreOptionsButton: false,
|
|
191
195
|
enableSmsServices: false,
|
|
192
196
|
enableQueueName: false,
|
|
@@ -200,6 +204,7 @@ var SDKStateManager = class {
|
|
|
200
204
|
disableConferenceButton: false,
|
|
201
205
|
disableHoldButton: false,
|
|
202
206
|
disableMuteButton: false,
|
|
207
|
+
disableAlternateDialing: true,
|
|
203
208
|
disabled: {},
|
|
204
209
|
enabled: {},
|
|
205
210
|
outlined: {}
|
|
@@ -236,7 +241,8 @@ var SDKStateManager = class {
|
|
|
236
241
|
sdk: parsedState.sdk || null,
|
|
237
242
|
isPermissionsLoaded: parsedState.isPermissionsLoaded || false,
|
|
238
243
|
userPermissions: parsedState.userPermissions || null,
|
|
239
|
-
menuEntitlements: parsedState.menuEntitlements || null
|
|
244
|
+
menuEntitlements: parsedState.menuEntitlements || null,
|
|
245
|
+
rootCallUuid: (_c = parsedState.rootCallUuid) != null ? _c : null
|
|
240
246
|
});
|
|
241
247
|
}
|
|
242
248
|
} catch (error) {
|
|
@@ -263,7 +269,8 @@ var SDKStateManager = class {
|
|
|
263
269
|
sdk: this.state.sdk,
|
|
264
270
|
isPermissionsLoaded: this.state.isPermissionsLoaded,
|
|
265
271
|
userPermissions: this.state.userPermissions,
|
|
266
|
-
menuEntitlements: this.state.menuEntitlements
|
|
272
|
+
menuEntitlements: this.state.menuEntitlements,
|
|
273
|
+
rootCallUuid: this.state.rootCallUuid
|
|
267
274
|
};
|
|
268
275
|
setSession(this.STORAGE_KEY, persistentState);
|
|
269
276
|
} catch (error) {
|
|
@@ -295,6 +302,7 @@ var SDKStateManager = class {
|
|
|
295
302
|
this.state.authorization = initResult;
|
|
296
303
|
this.state.sdkConfig = __spreadValues(__spreadValues({
|
|
297
304
|
disableEndCallButton: false,
|
|
305
|
+
disableEndConference: false,
|
|
298
306
|
disabledDialButton: false,
|
|
299
307
|
disabledMoreOptionsButton: false,
|
|
300
308
|
enableQueueName: false,
|
|
@@ -307,6 +315,7 @@ var SDKStateManager = class {
|
|
|
307
315
|
disableConferenceButton: false,
|
|
308
316
|
disableHoldButton: false,
|
|
309
317
|
disableMuteButton: false,
|
|
318
|
+
disableAlternateDialing: true,
|
|
310
319
|
disabled: {},
|
|
311
320
|
enabled: {},
|
|
312
321
|
outlined: {}
|
|
@@ -398,6 +407,11 @@ var SDKStateManager = class {
|
|
|
398
407
|
this.state.consultInfo = info;
|
|
399
408
|
this.notifyListeners();
|
|
400
409
|
}
|
|
410
|
+
setRootCallUuid(uuid) {
|
|
411
|
+
this.state.rootCallUuid = uuid;
|
|
412
|
+
this.saveToStorage();
|
|
413
|
+
this.notifyListeners();
|
|
414
|
+
}
|
|
401
415
|
setAgentStatus(status) {
|
|
402
416
|
this.state.agentStatus = status;
|
|
403
417
|
this.saveToStorage();
|
|
@@ -584,6 +598,7 @@ var SDKStateManager = class {
|
|
|
584
598
|
* Get SDK controls configuration derived exclusively from structured entitlements.
|
|
585
599
|
*/
|
|
586
600
|
getControlsConfig() {
|
|
601
|
+
var _a2;
|
|
587
602
|
const { sdk, isPermissionsLoaded } = this.state;
|
|
588
603
|
if (!isPermissionsLoaded || !sdk) {
|
|
589
604
|
return {
|
|
@@ -608,9 +623,10 @@ var SDKStateManager = class {
|
|
|
608
623
|
SDK_PERMISSIONS.CALL_INBOUND
|
|
609
624
|
);
|
|
610
625
|
const isAnyCallAllowed = isDialAllowed || isInboundAllowed;
|
|
626
|
+
const isEndCallDisabledByCallControls = !!((_a2 = this.state.sdkConfig) == null ? void 0 : _a2.disableEndCallButton);
|
|
611
627
|
const isHoldAllowed = isAnyCallAllowed;
|
|
612
628
|
const isMuteAllowed = isAnyCallAllowed;
|
|
613
|
-
const isEndCallAllowed = isAnyCallAllowed;
|
|
629
|
+
const isEndCallAllowed = isAnyCallAllowed && !isEndCallDisabledByCallControls;
|
|
614
630
|
const isConferenceAllowed = this.isBitEnabled("call_conference", "");
|
|
615
631
|
const isTransferEnabled = this.isBitEnabled("call_transfer", "");
|
|
616
632
|
const isBlindAllowed = this.isBitEnabled(
|
|
@@ -916,4 +932,4 @@ export {
|
|
|
916
932
|
useToast,
|
|
917
933
|
SDKProvider
|
|
918
934
|
};
|
|
919
|
-
//# sourceMappingURL=chunk-
|
|
935
|
+
//# sourceMappingURL=chunk-B7G5PWDP.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../call-control-sdk/lib/permissions/sdk-constants.ts","../call-control-sdk/lib/hooks/sdk-state.ts","../call-control-sdk/lib/utils/storage.ts","../call-control-sdk/lib/services/toastMessage.tsx","../call-control-sdk/lib/components/SDKProvider.tsx","../call-control-sdk/lib/services/endPoint.ts","../call-control-sdk/lib/services/axios.ts"],"sourcesContent":["/**\r\n * SDK Permission Constants\r\n *\r\n * Defines permission codes for call control features.\r\n * These codes match the 'items' in the backend entitlements response.\r\n */\r\n\r\nexport const SDK_WILDCARD = \"*\" as const;\r\n\r\n/** Menu entitlement codes from userInfo.entitlements.menus */\r\nexport const SDK_MENU_CODES = {\r\n WILDCARD: SDK_WILDCARD,\r\n CALL_HISTORY: \"call_history\",\r\n} as const;\r\n\r\nexport const SDK_PERMISSIONS = {\r\n WILDCARD: SDK_WILDCARD,\r\n // main object key constants\r\n\r\n CALLS: \"calls\",\r\n CALL_TRANSFER: \"call_transfer\",\r\n CALL_CONFERENCE: \"call_conference\",\r\n\r\n // in each object has items list of objects\r\n\r\n CALL_INBOUND: \"call_inbound\",\r\n CALL_OUTBOUND: \"call_outbound\",\r\n\r\n CONFERENCE: \"call_conference\",\r\n\r\n TRANSFER_BLIND: \"call_transfer_blind\",\r\n TRANSFER_ATTENDED: \"call_transfer_attended\",\r\n TRANSFER_WARM: \"call_transfer_warm\",\r\n} as const;\r\n","import { getSession, removeSession, setSession } from \"@react-solutions/vault\";\r\nimport type {\r\n SDKState,\r\n CallData,\r\n ConferenceLineTypes,\r\n SDKConfig,\r\n InitSDKRes,\r\n URLConfig,\r\n ConsultInfo,\r\n} from \"../../types\";\r\nimport { STORAGE_KEY } from \"../utils/storage\";\r\nimport {\r\n SDK_PERMISSIONS,\r\n type SDKEntitlements,\r\n type ControlsFromPermissions,\r\n SDK_MENU_CODES,\r\n} from \"../permissions\";\r\n\r\nclass SDKStateManager {\r\n private state: SDKState;\r\n private listeners: Array<() => void> = [];\r\n private readonly STORAGE_KEY = STORAGE_KEY;\r\n\r\n private apiKey: string | undefined;\r\n private tenantId: string | undefined;\r\n\r\n constructor() {\r\n this.state = this.getInitialState();\r\n this.loadFromStorage();\r\n }\r\n\r\n private getInitialState(): SDKState {\r\n return {\r\n authorization: undefined,\r\n process: null,\r\n agentId: \"\",\r\n openConferenceDialog: false,\r\n openCallTransferDialog: false,\r\n isInitialized: false,\r\n sdkConfig: {\r\n disableEndCallButton: false,\r\n disableEndConference: false,\r\n disabledDialButton: false,\r\n disabledMoreOptionsButton: false,\r\n enableSmsServices: false,\r\n enableQueueName: false,\r\n disableCallTransferButton: false,\r\n disableBlindTransfer: false,\r\n disableAttendedTransfer: false,\r\n disableWarmTransfer: false,\r\n isDraggable: true,\r\n disableSoftPhone: false,\r\n disableConferenceButton: false,\r\n disableHoldButton: false,\r\n disableMuteButton: false,\r\n disableAlternateDialing: true,\r\n disabled: {},\r\n enabled: {},\r\n outlined: {},\r\n },\r\n urlConfig: {\r\n baseURL: \"\",\r\n iframeURL: \"\",\r\n iframeAPIURL: \"\",\r\n webSocketURL: \"\",\r\n coreBaseURL: \"\",\r\n id: \"\",\r\n password: \"\",\r\n },\r\n callStartTime: null,\r\n controlPanelPosition: { x: 10, y: 10 },\r\n iframePosition: {\r\n x: window.screen?.availWidth - 460,\r\n y: window.screen?.height - 580,\r\n },\r\n callData: {\r\n agent_id: -1,\r\n queue_name: \"\",\r\n hold: 0,\r\n mute: 0,\r\n status: \"\",\r\n type: \"\",\r\n event_time: \"\",\r\n phone_number: \"\",\r\n },\r\n conferenceLine: [\r\n {\r\n line: 1,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 2,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 3,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 4,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 5,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n ],\r\n hold: 0,\r\n mute: 0,\r\n agentStatus: \"\",\r\n sdk: null,\r\n isPermissionsLoaded: false,\r\n userPermissions: null,\r\n menuEntitlements: null,\r\n consultInfo: null,\r\n rootCallUuid: null,\r\n };\r\n }\r\n\r\n private loadFromStorage(): void {\r\n try {\r\n const stored = <SDKState>getSession(this.STORAGE_KEY);\r\n if (stored) {\r\n const parsedState = stored;\r\n this.state = {\r\n ...this.state,\r\n agentId: parsedState.agentId || \"\",\r\n authorization: parsedState.authorization || undefined,\r\n process: parsedState.process || null,\r\n openConferenceDialog: parsedState?.openConferenceDialog || false,\r\n openCallTransferDialog: parsedState?.openCallTransferDialog || false,\r\n isInitialized: parsedState.isInitialized || false,\r\n sdkConfig: parsedState.sdkConfig || {\r\n disableEndCallButton: false,\r\n disableEndConference: false,\r\n disabledMoreOptionsButton: false,\r\n enableSmsServices: false,\r\n enableQueueName: false,\r\n disabledDialButton: false,\r\n disableCallTransferButton: false,\r\n disableBlindTransfer: false,\r\n disableAttendedTransfer: false,\r\n disableWarmTransfer: false,\r\n isDraggable: true,\r\n disableSoftPhone: false,\r\n disableConferenceButton: false,\r\n disableHoldButton: false,\r\n disableMuteButton: false,\r\n disableAlternateDialing: true,\r\n disabled: {},\r\n enabled: {},\r\n outlined: {},\r\n },\r\n urlConfig: parsedState.urlConfig || {\r\n id: \"\",\r\n baseURL: \"\",\r\n iframeURL: \"\",\r\n iframeAPIURL: \"\",\r\n webSocketURL: \"\",\r\n coreBaseURL: \"\",\r\n password: \"\",\r\n },\r\n callStartTime: parsedState.callStartTime || null,\r\n controlPanelPosition: parsedState.controlPanelPosition || {\r\n x: 10,\r\n y: 10,\r\n },\r\n iframePosition: parsedState.iframePosition || {\r\n x: window.screen?.availWidth - 460,\r\n y: window.screen?.height - 580,\r\n },\r\n callData: parsedState.callData || {\r\n mobileNumber: \"\",\r\n callReferenceId: \"\",\r\n agent_id: \"\",\r\n status: \"\",\r\n type: \"\",\r\n event_time: \"\",\r\n phone_number: \"\",\r\n },\r\n conferenceLine:\r\n parsedState.conferenceLine &&\r\n Array.isArray(parsedState.conferenceLine) &&\r\n parsedState.conferenceLine.length > 0\r\n ? parsedState.conferenceLine\r\n : this.state.conferenceLine,\r\n agentStatus: parsedState.agentStatus,\r\n sdk: parsedState.sdk || null,\r\n isPermissionsLoaded: parsedState.isPermissionsLoaded || false,\r\n userPermissions: parsedState.userPermissions || null,\r\n menuEntitlements: parsedState.menuEntitlements || null,\r\n rootCallUuid: parsedState.rootCallUuid ?? null,\r\n };\r\n }\r\n } catch (error) {\r\n console.warn(\"Failed to load SDK state:\", error);\r\n }\r\n }\r\n\r\n private saveToStorage(): void {\r\n try {\r\n const persistentState = {\r\n agentId: this.state.agentId,\r\n authorization: this.state.authorization,\r\n process: this.state.process,\r\n isInitialized: this.state.isInitialized,\r\n openConferenceDialog: this.state.openConferenceDialog,\r\n openCallTransferDialog: this.state.openCallTransferDialog,\r\n sdkConfig: this.state.sdkConfig,\r\n urlConfig: this.state.urlConfig,\r\n callStartTime: this.state.callStartTime,\r\n controlPanelPosition: this.state.controlPanelPosition,\r\n iframePosition: this.state.iframePosition,\r\n callData: this.state.callData,\r\n conferenceLine: this.state.conferenceLine,\r\n agentStatus: this.state.agentStatus,\r\n sdk: this.state.sdk,\r\n isPermissionsLoaded: this.state.isPermissionsLoaded,\r\n userPermissions: this.state.userPermissions,\r\n menuEntitlements: this.state.menuEntitlements,\r\n rootCallUuid: this.state.rootCallUuid,\r\n };\r\n setSession(this.STORAGE_KEY, persistentState);\r\n } catch (error) {\r\n console.warn(\"Failed to save SDK state:\", error);\r\n }\r\n }\r\n\r\n private notifyListeners(): void {\r\n this.listeners.forEach((listener) => listener());\r\n }\r\n\r\n private validateCredentials(apiKey: string, tenantId: string): void {\r\n if (!apiKey || typeof apiKey !== \"string\" || apiKey.trim().length === 0) {\r\n throw new Error(\"API key not available\");\r\n }\r\n if (\r\n !tenantId ||\r\n typeof tenantId !== \"string\" ||\r\n tenantId.trim().length === 0\r\n ) {\r\n throw new Error(\"Tenant ID not available\");\r\n }\r\n this.apiKey = apiKey.trim();\r\n this.tenantId = tenantId.trim();\r\n }\r\n\r\n public initialize(\r\n apiKey: string,\r\n tenantId: string,\r\n agentId: string,\r\n urlConfig?: URLConfig,\r\n initResult?: InitSDKRes,\r\n sdkConfig?: SDKConfig,\r\n ): void {\r\n this.validateCredentials(apiKey, tenantId);\r\n if (\r\n !agentId ||\r\n typeof agentId !== \"string\" ||\r\n agentId.trim().length === 0\r\n ) {\r\n throw new Error(\"Agent ID not available\");\r\n } else {\r\n this.state.agentId = agentId;\r\n this.state.openConferenceDialog = false;\r\n this.state.openCallTransferDialog = false;\r\n this.state.authorization = initResult;\r\n this.state.sdkConfig = {\r\n disableEndCallButton: false,\r\n disableEndConference: false,\r\n disabledDialButton: false,\r\n disabledMoreOptionsButton: false,\r\n enableQueueName: false,\r\n disableCallTransferButton: false,\r\n disableBlindTransfer: false,\r\n disableAttendedTransfer: false,\r\n disableWarmTransfer: false,\r\n isDraggable: true,\r\n disableSoftPhone: false,\r\n disableConferenceButton: false,\r\n disableHoldButton: false,\r\n disableMuteButton: false,\r\n disableAlternateDialing: true,\r\n disabled: {},\r\n enabled: {},\r\n outlined: {},\r\n ...sdkConfig,\r\n ...initResult?.callControls,\r\n };\r\n this.state.urlConfig = {\r\n baseURL: urlConfig?.baseURL || \"\",\r\n iframeURL: urlConfig?.iframeURL || \"\",\r\n iframeAPIURL: urlConfig?.iframeAPIURL || \"\",\r\n webSocketURL: urlConfig?.webSocketURL || \"\",\r\n coreBaseURL: urlConfig?.coreBaseURL || \"\",\r\n id: initResult?.userInfo?.id ? String(initResult.userInfo.id) : \"\",\r\n password: urlConfig?.password || \"\",\r\n };\r\n this.state.isInitialized = true;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n }\r\n\r\n public getState(): SDKState {\r\n return { ...this.state };\r\n }\r\n\r\n public getCredentials(): {\r\n apiKey: string | undefined;\r\n tenantId: string | undefined;\r\n } {\r\n return { apiKey: this.apiKey, tenantId: this.tenantId };\r\n }\r\n public getSdkAuthToken(): string | undefined {\r\n return this.state.authorization?.accessToken;\r\n }\r\n\r\n public subscribe(listener: () => void): () => void {\r\n this.listeners.push(listener);\r\n return () => {\r\n const index = this.listeners.indexOf(listener);\r\n if (index > -1) {\r\n this.listeners.splice(index, 1);\r\n }\r\n };\r\n }\r\n\r\n // public setHolding(isHolding: boolean): void {\r\n // \tthis.state.isHolding = isHolding;\r\n // \tthis.saveToStorage();\r\n // \tthis.notifyListeners();\r\n // }\r\n\r\n // public setMuted(isMuted: boolean): void {\r\n // \tthis.state.isMuted = isMuted;\r\n // \tthis.saveToStorage();\r\n // \tthis.notifyListeners();\r\n // }\r\n\r\n public setProcess(process: {\r\n process_id: number;\r\n process_name: string;\r\n }): void {\r\n this.state.process = process;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setControlPanelPosition(position: { x: number; y: number }): void {\r\n this.state.controlPanelPosition = position;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setIframePosition(position: { x: number; y: number }): void {\r\n this.state.iframePosition = position;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public startCall(): void {\r\n this.state.callStartTime = Date.now();\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public endCall(): void {\r\n this.state.callStartTime = null;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setInitCheck(): void {\r\n this.state.isInitialized = false;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setOpenConferenceDialog(open: boolean): void {\r\n this.state.openConferenceDialog = open;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setOpenCallTransferDialog(open: boolean): void {\r\n this.state.openCallTransferDialog = open;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setConsultInfo(info: ConsultInfo | null): void {\r\n this.state.consultInfo = info;\r\n this.notifyListeners();\r\n }\r\n\r\n public setRootCallUuid(uuid: string | null): void {\r\n this.state.rootCallUuid = uuid;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setAgentStatus(status: string): void {\r\n this.state.agentStatus = status;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public updateCallData(data: Partial<CallData>): void {\r\n this.state.callData = { ...this.state.callData, ...data };\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public updateConferenceData(data: ConferenceLineTypes[]): void {\r\n this.state.conferenceLine = [...data];\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public setConferenceLine(line: ConferenceLineTypes): void {\r\n if (\r\n !this.state.conferenceLine ||\r\n !Array.isArray(this.state.conferenceLine)\r\n ) {\r\n this.state.conferenceLine = this.getInitialState().conferenceLine;\r\n }\r\n\r\n const conferenceLineData = this.state.conferenceLine?.map(\r\n (each: ConferenceLineTypes) => {\r\n if (each.line === line.line) {\r\n return line;\r\n }\r\n return each;\r\n },\r\n );\r\n this.state.conferenceLine = conferenceLineData;\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public resetConferenceLines(): void {\r\n this.state.conferenceLine = [\r\n {\r\n line: 1,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 2,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 3,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 4,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n {\r\n line: 5,\r\n status: \"IDLE\",\r\n type: \"\",\r\n phone: \"\",\r\n isMute: false,\r\n isHold: false,\r\n isCallStart: false,\r\n isMergeCall: false,\r\n },\r\n ];\r\n\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n public clearStorageAndReset(): void {\r\n try {\r\n removeSession(this.STORAGE_KEY);\r\n this.state = this.getInitialState();\r\n this.notifyListeners();\r\n } catch (error) {\r\n console.warn(\"Failed to clear:\", error);\r\n }\r\n }\r\n\r\n public getConferenceLines(): ConferenceLineTypes[] {\r\n return this.state.conferenceLine || [];\r\n }\r\n\r\n /**\r\n * Update SDK config with permission-based controls.\r\n * Merges the provided controls with existing config.\r\n */\r\n public updateSDKConfigFromPermissions(\r\n permissionControls: Partial<SDKConfig>,\r\n ): void {\r\n this.state.sdkConfig = {\r\n ...this.state.sdkConfig,\r\n ...permissionControls,\r\n };\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n /**\r\n * Revert call consult controls back to the base permission-derived values.\r\n * Called when a CALL_STATE event arrives without call_consult_controls.\r\n */\r\n public resetConsultControls(): void {\r\n const base = this.getControlsConfig();\r\n this.state.sdkConfig = {\r\n ...this.state.sdkConfig,\r\n disableEndCallButton: base.disableEndCallButton,\r\n disableCallTransferButton: base.disableCallTransferButton,\r\n disableConferenceButton: base.disableConferenceButton,\r\n disableHoldButton: base.disableHoldButton,\r\n disableMuteButton: base.disableMuteButton,\r\n };\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n // ============ Entitlement Logic (Ported from SDKPermissionManager) ============\r\n\r\n /**\r\n * Set user information (entitlements) from login response\r\n */\r\n public setSDKPermissions(userInfo: any): void {\r\n if (!userInfo) return;\r\n\r\n // In a real scenario, this would come from userInfo.entitlements?.sdk\r\n // For now, we use the structured format expected by the SDK\r\n\r\n const sdk: SDKEntitlements = userInfo.entitlements?.sdk;\r\n const sdkPermissions = Array.isArray(userInfo.permissions) ? userInfo.permissions : null;\r\n const sdkMenus = Array.isArray(userInfo.entitlements?.menus)\r\n ? userInfo.entitlements.menus\r\n : null;\r\n\r\n // const sdkMenus:any[] = [\r\n // {\r\n // \"code\": SDK_MENU_CODES.WILDCARD,\r\n // \"name\": \"Role Management\",\r\n // \"enabled\": true\r\n // },\r\n // // {\r\n // // \"code\": SDK_MENU_CODES.CALL_HISTORY,\r\n // // \"name\": \"Role Management\",\r\n // // \"enabled\": true\r\n // // }\r\n // ]\r\n\r\n // const sdk: SDKEntitlements = {\r\n // calls: {\r\n // enabled: true,\r\n // items: [\r\n // {\r\n // code: SDK_PERMISSIONS.CALL_OUTBOUND,\r\n // enabled: true,\r\n // },\r\n // {\r\n // code: SDK_PERMISSIONS.CALL_INBOUND,\r\n // enabled: true,\r\n // },\r\n // ],\r\n // },\r\n // call_transfer: {\r\n // enabled: true,\r\n // items: [\r\n // {\r\n // code: SDK_PERMISSIONS.TRANSFER_BLIND,\r\n // enabled: true,\r\n // },\r\n // {\r\n // code: SDK_PERMISSIONS.TRANSFER_ATTENDED,\r\n // enabled: true,\r\n // },\r\n // {\r\n // code: SDK_PERMISSIONS.TRANSFER_WARM,\r\n // enabled: true,\r\n // },\r\n // ],\r\n // },\r\n // call_conference: {\r\n // enabled: true,\r\n // items: [\r\n // {\r\n // code: SDK_PERMISSIONS.CONFERENCE,\r\n // enabled: true,\r\n // },\r\n // ],\r\n // },\r\n // };\r\n\r\n this.state.sdk = sdk;\r\n this.state.userPermissions = sdkPermissions\r\n this.state.menuEntitlements = sdkMenus\r\n this.state.isPermissionsLoaded = true;\r\n\r\n // Automatically update SDK config based on these new entitlements\r\n const permissionControls = this.getControlsConfig();\r\n this.updateSDKConfigFromPermissions(permissionControls);\r\n\r\n this.saveToStorage();\r\n this.notifyListeners();\r\n }\r\n\r\n /**\r\n * Check if a bit is enabled in entitlements\r\n */\r\n public isBitEnabled(\r\n category: keyof SDKEntitlements,\r\n bitCode: string,\r\n ): boolean {\r\n const sdk = this.state.sdk;\r\n if (!sdk) return false;\r\n\r\n const categoryEntitlement = sdk[category];\r\n if (!categoryEntitlement) return false;\r\n if (!categoryEntitlement.enabled) return false;\r\n\r\n if (!bitCode) return true; // Just checking category enabledness\r\n\r\n const bit = categoryEntitlement.items?.find(\r\n (item: any) => item.code === bitCode,\r\n );\r\n return bit ? bit.enabled : false;\r\n }\r\n\r\n /** Check if the user has a specific flat permission (e.g. \"calls:inbound\") */\r\n public hasPermission(permission: string): boolean {\r\n const perms = this.state.userPermissions;\r\n if (!perms) return false;\r\n return perms.includes(\"*\") || perms.includes(permission);\r\n }\r\n\r\n /** Check if any of the provided permissions is granted */\r\n public hasAnyPermission(permissions: string[]): boolean {\r\n return permissions.some((p) => this.hasPermission(p));\r\n }\r\n\r\n /** Check if all of the provided permissions are granted */\r\n public hasAllPermissions(permissions: string[]): boolean {\r\n return permissions.every((p) => this.hasPermission(p));\r\n }\r\n\r\n /** Check if a menu entitlement is enabled (e.g. \"campaign\"). Supports \"*\" wildcard. */\r\n public hasMenuFeature(code: string): boolean {\r\n const menus = this.state.menuEntitlements;\r\n if (!menus) return false;\r\n if (menus.some((m) => m.code === \"*\" && m.enabled)) return true;\r\n const entry = menus.find((m) => m.code === code);\r\n return entry ? entry.enabled : false;\r\n }\r\n\r\n /**\r\n * Get SDK controls configuration derived exclusively from structured entitlements.\r\n */\r\n public getControlsConfig(): ControlsFromPermissions {\r\n const { sdk, isPermissionsLoaded } = this.state;\r\n\r\n // If entitlements not loaded yet or missing, disable everything (Fail Closed)\r\n if (!isPermissionsLoaded || !sdk) {\r\n return {\r\n disabledDialButton: true,\r\n disableEndCallButton: true,\r\n disableCallTransferButton: true,\r\n disableBlindTransfer: true,\r\n disableAttendedTransfer: true,\r\n disableWarmTransfer: true,\r\n disableConferenceButton: true,\r\n disableHoldButton: true,\r\n disableMuteButton: true,\r\n disabledMoreOptionsButton: true,\r\n };\r\n }\r\n\r\n // --- Dial/Inbound Checks ---\r\n const isDialAllowed = this.isBitEnabled(\r\n \"calls\",\r\n SDK_PERMISSIONS.CALL_OUTBOUND,\r\n );\r\n const isInboundAllowed = this.isBitEnabled(\r\n \"calls\",\r\n SDK_PERMISSIONS.CALL_INBOUND,\r\n );\r\n const isAnyCallAllowed = isDialAllowed || isInboundAllowed;\r\n const isEndCallDisabledByCallControls = !!this.state.sdkConfig?.disableEndCallButton;\r\n\r\n // --- Call Controls ---\r\n const isHoldAllowed = isAnyCallAllowed;\r\n const isMuteAllowed = isAnyCallAllowed;\r\n const isEndCallAllowed = isAnyCallAllowed && !isEndCallDisabledByCallControls;\r\n const isConferenceAllowed = this.isBitEnabled(\"call_conference\", \"\");\r\n const isTransferEnabled = this.isBitEnabled(\"call_transfer\", \"\");\r\n\r\n // --- Transfer Controls ---\r\n const isBlindAllowed = this.isBitEnabled(\r\n \"call_transfer\",\r\n SDK_PERMISSIONS.TRANSFER_BLIND,\r\n );\r\n const isAttendedAllowed = this.isBitEnabled(\r\n \"call_transfer\",\r\n SDK_PERMISSIONS.TRANSFER_ATTENDED,\r\n );\r\n const isWarmAllowed = this.isBitEnabled(\r\n \"call_transfer\",\r\n SDK_PERMISSIONS.TRANSFER_WARM,\r\n );\r\n\r\n return {\r\n disabledDialButton: !isDialAllowed,\r\n disableEndCallButton: !isEndCallAllowed,\r\n disableCallTransferButton: !isTransferEnabled,\r\n disableBlindTransfer: !isBlindAllowed,\r\n disableAttendedTransfer: !isAttendedAllowed,\r\n disableWarmTransfer: !isWarmAllowed,\r\n disableConferenceButton: !isConferenceAllowed,\r\n disableHoldButton: !isHoldAllowed,\r\n disableMuteButton: !isMuteAllowed,\r\n disabledMoreOptionsButton: false,\r\n };\r\n }\r\n}\r\n\r\nexport const sdkStateManager = new SDKStateManager();\r\n\r\nexport type { SDKStateManager };\r\n","export const STORAGE_KEY = \"call-control-sdk-state\";\r\n","import { createContext, useContext, useState, ReactNode } from \"react\";\r\nimport { Snackbar, Alert, AlertColor } from \"@mui/material\";\r\n\r\ntype ToastContextType = {\r\n\tshowToast: (message: string, severity?: AlertColor) => void;\r\n};\r\n\r\nconst ToastContext = createContext<ToastContextType | undefined>(undefined);\r\n\r\nconst noopToast: ToastContextType = {\r\n\tshowToast: (message, severity) => {\r\n\t\tconsole.warn(`[Toast outside provider] ${severity ?? \"info\"}: ${message}`);\r\n\t},\r\n};\r\n\r\nexport const useToast = () => {\r\n\tconst ctx = useContext(ToastContext);\r\n\treturn ctx ?? noopToast;\r\n};\r\n\r\nexport const ToastProvider = ({ children }: { children: ReactNode }) => {\r\n\tconst [open, setOpen] = useState(false);\r\n\tconst [message, setMessage] = useState(\"\");\r\n\tconst [severity, setSeverity] = useState<AlertColor>(\"info\");\r\n\r\n\tconst showToast = (msg: string, sev: AlertColor = \"info\") => {\r\n\t\tsetMessage(msg);\r\n\t\tsetSeverity(sev);\r\n\t\tsetOpen(true);\r\n\t};\r\n\r\n\treturn (\r\n\t\t<ToastContext.Provider value={{ showToast }}>\r\n\t\t\t{children}\r\n\t\t\t<Snackbar\r\n\t\t\t\topen={open}\r\n\t\t\t\tcolor={severity}\r\n\t\t\t\tautoHideDuration={3000}\r\n\t\t\t\tonClose={() => setOpen(false)}\r\n\t\t\t\tanchorOrigin={{ vertical: \"top\", horizontal: \"right\" }}\r\n\t\t\t>\r\n\t\t\t\t<Alert\r\n\t\t\t\t\tvariant=\"filled\"\r\n\t\t\t\t\tseverity={severity}\r\n\t\t\t\t\tonClose={() => setOpen(false)}\r\n\t\t\t\t\tsx={{ width: \"100%\" }}\r\n\t\t\t\t>\r\n\t\t\t\t\t{message}\r\n\t\t\t\t</Alert>\r\n\t\t\t</Snackbar>\r\n\t\t</ToastContext.Provider>\r\n\t);\r\n};\r\n","import { memo } from \"react\";\r\nimport { ToastProvider } from \"../services/toastMessage\";\r\nimport React from \"react\";\r\nimport { SDKProviderProps } from \"../../types\";\r\n\r\nexport const SDKProvider = memo<SDKProviderProps>(({ children }) => {\r\n\treturn <ToastProvider>{children}</ToastProvider>;\r\n});\r\n\r\nSDKProvider.displayName = \"SDKProvider\";\r\n","import { sdkStateManager } from \"../hooks/sdk-state\";\r\n\r\n\r\n// export const IP = \"192.168.100.254\";\r\n\r\n// export const IFRAME_IP = \"10.10.95.25\"\r\n// export const IFRAME_URL = `https://${IFRAME_IP}:8089`;\r\n// export const IFRAME_API_URL = `https://${IFRAME_IP}:8000`;\r\n\r\n\r\n// export const BASE_URL = `http://${IP}:8095`;\r\n// export const WS_BASE_URL = `ws://${IP}:8095`;\r\n\r\n// export const IFRAME_URL = sdkStateManager?.getState()?.urlConfig?.iframeURL\r\n// export const IFRAME_API_URL = sdkStateManager?.getState()?.urlConfig?.iframeAPIURL\r\n\r\n// Dynamically get URLs from SDK state\r\nconst getBaseURL = () => sdkStateManager?.getState()?.urlConfig?.baseURL || \"\";\r\nconst getCoreURL = () => sdkStateManager?.getState()?.urlConfig?.coreBaseURL || \"\";\r\n\r\nexport const BASE_URL = getBaseURL();\r\nexport const CORE_URL = getCoreURL();\r\n\r\nexport const VERSION = {\r\n\tv1: \"/api/v1\",\r\n};\r\n\r\n// Dynamic endpoint getters that fetch URLs from SDK state at runtime\r\nexport const END_POINT = {\r\n\tget LOGIN() { return `${getBaseURL()}${VERSION.v1}/cti/login?provider=convox`; },\r\n\tget READY_AGENT() { return `${getCoreURL()}${VERSION.v1}/agents/ready`; },\r\n\tget UPDATE_AGENT_BREAK() { return `${getCoreURL()}${VERSION.v1}/agents/status`; },\r\n\tget CLICK_TO_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/dial`; },\r\n\tget HOLD_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/hold`; },\r\n\tget MUTE_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/mute`; },\r\n\tget UNMUTE_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/mute`; },\r\n\tget END_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/hangup`; },\r\n\tget LOGOUT() { return `${getBaseURL()}${VERSION.v1}/cti/logout?provider=convox`; },\r\n\r\n\tget CONFERENCE_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/conference/add`; },\r\n\tget CONFERENCE_MERGE_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/conference/merge`; },\r\n\tget CONFERENCE_CALL_HOLD_OR_UN_HOLD() { return `${getCoreURL()}${VERSION.v1}/cti/calls/hold`; },\r\n\tget CONFERENCE_CALL_MUTE_OT_UN_MUTE() { return `${getCoreURL()}${VERSION.v1}/cti/calls/mute`; },\r\n\tget CONFERENCE_CALL_END() { return `${getCoreURL()}${VERSION.v1}/cti/calls/hangup`; },\r\n\tget CONFERENCE_CALL_END_ALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/hangup`; },\r\n\tget CONFERENCE_CALL_TRANSFER() { return `${getCoreURL()}${VERSION.v1}/cti/calls/conference/transfer`; },\r\n\tget TRANSFER_CALL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/transfer-call`; },\r\n\tget TRANSFER_COMPLETE() { return `${getCoreURL()}${VERSION.v1}/cti/calls/transfer/complete`; },\r\n\tget TRANSFER_CANCEL() { return `${getCoreURL()}${VERSION.v1}/cti/calls/transfer/cancel`; },\r\n\r\n\tget AGENTS_LIST() { return `${getBaseURL()}${VERSION.v1}/cti/users`; },\r\n\tget PROCESS_LIST() { return `${getBaseURL()}${VERSION.v1}/cti/processes-list`; },\r\n\tget BREAKS_LIST() { return `${getBaseURL()}${VERSION.v1}/cti/breaks`; },\r\n\tget TRANSFER_TO_DETAILS() { return `${getBaseURL()}${VERSION.v1}/cti/transfer-to-details?provider=convox`; },\r\n\tget SEND_NOTIFICATIONS() { return `${getBaseURL()}${VERSION.v1}/cti/notifications/send`; },\r\n\r\n\tget CALL_HISTORY() { return `${getBaseURL()}${VERSION.v1}/dashboard/call-history`; },\r\n\tget SENTIMENTAL_ANALYSIS() { return `${getBaseURL()}${VERSION.v1}/users/get_sentiment_analysis`; },\r\n\tget DISPOSITIONS() { return `${getBaseURL()}${VERSION.v1}/cti/calls/dispositions`; },\r\n\tget HOSPITALS_SERVICES() { return `${getBaseURL()}${VERSION.v1}/cti/hospital/services`; },\r\n\tget BLIEND_TRANSFER() { return `${getBaseURL()}${VERSION.v1}/cti/calls/blind_transfer?provider=convox`; },\r\n\r\n\tget AUTH_LOGOUT() { return `${getBaseURL()}${VERSION.v1}/auth/logout`; },\r\n\r\n\t// Permissions\r\n\tget USER_PERMISSIONS() { return `${getBaseURL()}${VERSION.v1}/rbac/users/me/permissions`; },\r\n\r\n\t// Supervisor Call Monitoring (Listen / Whisper / Barge via ChanSpy)\r\n\tget SUPERVISOR_CALL_LISTEN() { return `${getBaseURL()}${VERSION.v1}/cti/supervisor/listen`; },\r\n\tget SUPERVISOR_CALL_LEAVE() { return `${getBaseURL()}${VERSION.v1}/cti/supervisor/leave`; },\r\n\tget SUPERVISOR_CALL_CHANGE_MODE() { return `${getBaseURL()}${VERSION.v1}/cti/supervisor/mode`; },\r\n\r\n\t// Call History pages\r\n\tget CALLS_HISTORY() { return `${getBaseURL()}${VERSION.v1}/calls/history`; },\r\n\tget MISSED_CALLS() { return `${getBaseURL()}${VERSION.v1}/supervisor/missed-calls`; },\r\n\tRECORDING_BY_CALL: (call_uuid: string) => `${getBaseURL()}${VERSION.v1}/recordings/call/${call_uuid}`,\r\n};\r\n\r\n// export const WS_END_POINT = {\r\n// \tWS: `${WS_BASE_URL}${VERSION.v1}/cti/ws`,\r\n// };\r\n\r\n// export const STORAGE_KEY = \"call-control-sdk-state\";\r\n","import axios, { AxiosInstance, AxiosResponse, AxiosError, InternalAxiosRequestConfig } from \"axios\";\r\nimport { BASE_URL } from \"./endPoint\";\r\nimport { sdkStateManager } from \"../hooks/sdk-state\";\r\n\r\nconst DEFAULT_TOKEN = sdkStateManager.getSdkAuthToken() ?? \"\";\r\n\r\nconst REQUEST_TIMEOUT = 60000;\r\n\r\nfunction getAuthToken(): string {\r\n\treturn sdkStateManager.getSdkAuthToken() ?? \"\";\r\n}\r\n\r\nfunction createAxiosInstance(): AxiosInstance {\r\n\tconst instance = axios.create({\r\n\t\t// baseURL: sdkStateManager.getState()?.urlConfig?.baseURL,\r\n\t\theaders: {\r\n\t\t\t\"Content-Type\": \"application/json\",\r\n\t\t\tAccept: \"application/json\",\r\n\t\t\t\"x-tenant-id\": sdkStateManager.getCredentials()?.tenantId ?? \"\",\r\n\t\t\t\"x-api-key\": sdkStateManager.getCredentials()?.apiKey ?? \"\",\r\n\t\t\tAuthorization: DEFAULT_TOKEN\r\n\t\t\t\t? (DEFAULT_TOKEN.startsWith(\"Bearer \") ? DEFAULT_TOKEN : `Bearer ${DEFAULT_TOKEN}`)\r\n\t\t\t\t: \"\",\r\n\t\t},\r\n\t\ttimeout: REQUEST_TIMEOUT,\r\n\t\twithCredentials: false,\r\n\t});\r\n\r\n\tinstance.interceptors.request.use(\r\n\t\t(config: InternalAxiosRequestConfig) => {\r\n\t\t\tconst token = getAuthToken();\r\n\r\n\t\t\tif (token && config.headers) {\r\n\t\t\t\t// Only add \"Bearer \" prefix if the token doesn't already have it\r\n\t\t\t\tconst authToken = token.startsWith(\"Bearer \") ? token : `Bearer ${token}`;\r\n\t\t\t\tconfig.headers.Authorization = authToken;\r\n\t\t\t}\r\n\r\n\t\t\t// Debug log for API calls\r\n\t\t\tconsole.log(\"API Request:\", {\r\n\t\t\t\turl: config.url,\r\n\t\t\t\tmethod: config.method,\r\n\t\t\t\thasToken: !!token,\r\n\t\t\t\ttokenStartsWithBearer: token?.startsWith(\"Bearer \"),\r\n\t\t\t\theaders: {\r\n\t\t\t\t\tAuthorization: config.headers.Authorization,\r\n\t\t\t\t\t\"x-tenant-id\": config.headers[\"x-tenant-id\"],\r\n\t\t\t\t\t\"x-api-key\": config.headers[\"x-api-key\"],\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t(config as any).metadata = { startTime: new Date().getTime() };\r\n\r\n\t\t\treturn config;\r\n\t\t},\r\n\t\t(error: AxiosError) => {\r\n\t\t\tconsole.error(\"Request interceptor error:\", error);\r\n\t\t\treturn Promise.reject(error);\r\n\t\t}\r\n\t);\r\n\r\n\tinstance.interceptors.response.use(\r\n\t\t(response: AxiosResponse) => {\r\n\t\t\treturn response;\r\n\t\t},\r\n\t\tasync (error: AxiosError) => {\r\n\t\t\tconst originalRequest = error.config as InternalAxiosRequestConfig & { _retry?: boolean };\r\n\r\n\t\t\tif (error.response?.status === 401 && !originalRequest._retry) {\r\n\t\t\t\tsdkStateManager.setInitCheck();\r\n\t\t\t\tconsole.warn(\"Unauthorized request, attempting retry...\");\r\n\t\t\t}\r\n\r\n\t\t\tif (!error.response) {\r\n\t\t\t\tconsole.error(\"Network error:\", error.message);\r\n\t\t\t\terror.message = \"Network error: Please check your internet connection\";\r\n\t\t\t}\r\n\r\n\t\t\tif (error.response && error.response.status >= 500) {\r\n\t\t\t\tconsole.error(\"Server error:\", error.response.status, error.response.data);\r\n\t\t\t\terror.message = \"Server error: Please try again later\";\r\n\t\t\t}\r\n\r\n\t\t\treturn Promise.reject(error);\r\n\t\t}\r\n\t);\r\n\r\n\treturn instance;\r\n}\r\n\r\nconst axiosInstance: AxiosInstance = createAxiosInstance();\r\n\r\nexport default axiosInstance;\r\n"],"mappings":"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","names":["_a","jsx","_a","_a"]}
|
package/dist/index.d.mts
CHANGED
|
@@ -16,6 +16,7 @@ import React from 'react';
|
|
|
16
16
|
*/
|
|
17
17
|
type SDKConfig$1 = {
|
|
18
18
|
disableEndCallButton?: boolean;
|
|
19
|
+
disableEndConference?: boolean;
|
|
19
20
|
enableSmsServices?: boolean;
|
|
20
21
|
enableQueueName?: boolean;
|
|
21
22
|
enableRingtone?: boolean;
|
|
@@ -60,13 +61,13 @@ type CallData$1 = {
|
|
|
60
61
|
queue_name?: string;
|
|
61
62
|
mobileNumber?: string;
|
|
62
63
|
callReferenceId?: string;
|
|
63
|
-
|
|
64
|
+
callId?: string;
|
|
64
65
|
type?: string;
|
|
65
66
|
status: string;
|
|
66
67
|
agent_id: number;
|
|
67
68
|
phone_number?: string;
|
|
68
69
|
event_time?: string;
|
|
69
|
-
|
|
70
|
+
call_id?: string;
|
|
70
71
|
process_id?: string;
|
|
71
72
|
process_name?: string;
|
|
72
73
|
mute?: number;
|
|
@@ -94,7 +95,7 @@ type SDKState$1 = {
|
|
|
94
95
|
sdkConfig: SDKConfig$1 | null;
|
|
95
96
|
urlConfig: any | null;
|
|
96
97
|
isInitialized: boolean;
|
|
97
|
-
|
|
98
|
+
call_id?: string;
|
|
98
99
|
process_id?: number;
|
|
99
100
|
callStartTime: number | null;
|
|
100
101
|
position?: { x: number; y: number };
|
|
@@ -645,6 +646,7 @@ interface CallData {
|
|
|
645
646
|
*/
|
|
646
647
|
interface SDKConfig {
|
|
647
648
|
disableEndCallButton?: boolean;
|
|
649
|
+
disableEndConference?: boolean;
|
|
648
650
|
disabledDialButton?: boolean;
|
|
649
651
|
enableSmsServices?: boolean;
|
|
650
652
|
enableQueueName?: boolean;
|
|
@@ -715,7 +717,7 @@ interface CallControlPanelProps {
|
|
|
715
717
|
* any omitted field falls back to the current session/call state automatically.
|
|
716
718
|
*
|
|
717
719
|
* @properties
|
|
718
|
-
* - `
|
|
720
|
+
* - `call_id?: string` - Convox call ID (defaults to active call's call_id)
|
|
719
721
|
* - `agent_id?: string` - Agent identifier (defaults to logged-in agent)
|
|
720
722
|
* - `set_followUp?: string` - Whether a follow-up is required: "Y" or "N" (default: "N")
|
|
721
723
|
* - `callback_date?: string` - Scheduled callback date (YYYY-MM-DD)
|
|
@@ -723,7 +725,7 @@ interface CallControlPanelProps {
|
|
|
723
725
|
* - `callback_mins?: number` - Scheduled callback minute (0–59)
|
|
724
726
|
* - `mobile_number?: string` - Customer phone number (defaults to active call's phone_number)
|
|
725
727
|
* - `list_comments?: string` - Optional comments for the call log
|
|
726
|
-
* - `call_reference_id?: string` - Call reference ID (defaults to active call's
|
|
728
|
+
* - `call_reference_id?: string` - Call reference ID (defaults to active call's call_id)
|
|
727
729
|
* - `disposition?: string` - Call outcome code (default: "RES")
|
|
728
730
|
* - `line_number?: number` - Conference line number (default: 0)
|
|
729
731
|
* - `reason?: string` - End reason sent to server (default: "normal")
|
|
@@ -752,7 +754,7 @@ interface CallControlPanelProps {
|
|
|
752
754
|
* @author CTI SDK Team
|
|
753
755
|
*/
|
|
754
756
|
interface EndCallPayload {
|
|
755
|
-
|
|
757
|
+
call_id?: string;
|
|
756
758
|
agent_id?: string;
|
|
757
759
|
set_followUp?: string;
|
|
758
760
|
callback_date?: string;
|
|
@@ -1080,7 +1082,7 @@ interface ProcessData {
|
|
|
1080
1082
|
* Contains information about the current call
|
|
1081
1083
|
*
|
|
1082
1084
|
* @properties
|
|
1083
|
-
* - `
|
|
1085
|
+
* - `call_id: string` - 🔗 Call reference identifier
|
|
1084
1086
|
* - `phone_number: string` - 📱 Customer phone number
|
|
1085
1087
|
*
|
|
1086
1088
|
* @since 1.0.0
|
|
@@ -1092,7 +1094,7 @@ interface EndCallPayLoadData {
|
|
|
1092
1094
|
* @description Unique identifier for the call
|
|
1093
1095
|
* @type {string}
|
|
1094
1096
|
*/
|
|
1095
|
-
|
|
1097
|
+
call_id: string;
|
|
1096
1098
|
|
|
1097
1099
|
/**
|
|
1098
1100
|
* 📱 Customer phone number
|
|
@@ -1656,7 +1658,7 @@ interface StartCallPayload {
|
|
|
1656
1658
|
/** Optional auto-answer flag; defaults to false when omitted. */
|
|
1657
1659
|
auto_answer?: boolean;
|
|
1658
1660
|
/** Optional Convox call id passthrough. */
|
|
1659
|
-
|
|
1661
|
+
call_id?: string;
|
|
1660
1662
|
/** Optional caller-provided reference id. */
|
|
1661
1663
|
reference_id?: string;
|
|
1662
1664
|
/** Optional source identifier (e.g. campaign, dialpad). */
|
package/dist/index.d.ts
CHANGED
|
@@ -16,6 +16,7 @@ import React from 'react';
|
|
|
16
16
|
*/
|
|
17
17
|
type SDKConfig$1 = {
|
|
18
18
|
disableEndCallButton?: boolean;
|
|
19
|
+
disableEndConference?: boolean;
|
|
19
20
|
enableSmsServices?: boolean;
|
|
20
21
|
enableQueueName?: boolean;
|
|
21
22
|
enableRingtone?: boolean;
|
|
@@ -60,13 +61,13 @@ type CallData$1 = {
|
|
|
60
61
|
queue_name?: string;
|
|
61
62
|
mobileNumber?: string;
|
|
62
63
|
callReferenceId?: string;
|
|
63
|
-
|
|
64
|
+
callId?: string;
|
|
64
65
|
type?: string;
|
|
65
66
|
status: string;
|
|
66
67
|
agent_id: number;
|
|
67
68
|
phone_number?: string;
|
|
68
69
|
event_time?: string;
|
|
69
|
-
|
|
70
|
+
call_id?: string;
|
|
70
71
|
process_id?: string;
|
|
71
72
|
process_name?: string;
|
|
72
73
|
mute?: number;
|
|
@@ -94,7 +95,7 @@ type SDKState$1 = {
|
|
|
94
95
|
sdkConfig: SDKConfig$1 | null;
|
|
95
96
|
urlConfig: any | null;
|
|
96
97
|
isInitialized: boolean;
|
|
97
|
-
|
|
98
|
+
call_id?: string;
|
|
98
99
|
process_id?: number;
|
|
99
100
|
callStartTime: number | null;
|
|
100
101
|
position?: { x: number; y: number };
|
|
@@ -645,6 +646,7 @@ interface CallData {
|
|
|
645
646
|
*/
|
|
646
647
|
interface SDKConfig {
|
|
647
648
|
disableEndCallButton?: boolean;
|
|
649
|
+
disableEndConference?: boolean;
|
|
648
650
|
disabledDialButton?: boolean;
|
|
649
651
|
enableSmsServices?: boolean;
|
|
650
652
|
enableQueueName?: boolean;
|
|
@@ -715,7 +717,7 @@ interface CallControlPanelProps {
|
|
|
715
717
|
* any omitted field falls back to the current session/call state automatically.
|
|
716
718
|
*
|
|
717
719
|
* @properties
|
|
718
|
-
* - `
|
|
720
|
+
* - `call_id?: string` - Convox call ID (defaults to active call's call_id)
|
|
719
721
|
* - `agent_id?: string` - Agent identifier (defaults to logged-in agent)
|
|
720
722
|
* - `set_followUp?: string` - Whether a follow-up is required: "Y" or "N" (default: "N")
|
|
721
723
|
* - `callback_date?: string` - Scheduled callback date (YYYY-MM-DD)
|
|
@@ -723,7 +725,7 @@ interface CallControlPanelProps {
|
|
|
723
725
|
* - `callback_mins?: number` - Scheduled callback minute (0–59)
|
|
724
726
|
* - `mobile_number?: string` - Customer phone number (defaults to active call's phone_number)
|
|
725
727
|
* - `list_comments?: string` - Optional comments for the call log
|
|
726
|
-
* - `call_reference_id?: string` - Call reference ID (defaults to active call's
|
|
728
|
+
* - `call_reference_id?: string` - Call reference ID (defaults to active call's call_id)
|
|
727
729
|
* - `disposition?: string` - Call outcome code (default: "RES")
|
|
728
730
|
* - `line_number?: number` - Conference line number (default: 0)
|
|
729
731
|
* - `reason?: string` - End reason sent to server (default: "normal")
|
|
@@ -752,7 +754,7 @@ interface CallControlPanelProps {
|
|
|
752
754
|
* @author CTI SDK Team
|
|
753
755
|
*/
|
|
754
756
|
interface EndCallPayload {
|
|
755
|
-
|
|
757
|
+
call_id?: string;
|
|
756
758
|
agent_id?: string;
|
|
757
759
|
set_followUp?: string;
|
|
758
760
|
callback_date?: string;
|
|
@@ -1080,7 +1082,7 @@ interface ProcessData {
|
|
|
1080
1082
|
* Contains information about the current call
|
|
1081
1083
|
*
|
|
1082
1084
|
* @properties
|
|
1083
|
-
* - `
|
|
1085
|
+
* - `call_id: string` - 🔗 Call reference identifier
|
|
1084
1086
|
* - `phone_number: string` - 📱 Customer phone number
|
|
1085
1087
|
*
|
|
1086
1088
|
* @since 1.0.0
|
|
@@ -1092,7 +1094,7 @@ interface EndCallPayLoadData {
|
|
|
1092
1094
|
* @description Unique identifier for the call
|
|
1093
1095
|
* @type {string}
|
|
1094
1096
|
*/
|
|
1095
|
-
|
|
1097
|
+
call_id: string;
|
|
1096
1098
|
|
|
1097
1099
|
/**
|
|
1098
1100
|
* 📱 Customer phone number
|
|
@@ -1656,7 +1658,7 @@ interface StartCallPayload {
|
|
|
1656
1658
|
/** Optional auto-answer flag; defaults to false when omitted. */
|
|
1657
1659
|
auto_answer?: boolean;
|
|
1658
1660
|
/** Optional Convox call id passthrough. */
|
|
1659
|
-
|
|
1661
|
+
call_id?: string;
|
|
1660
1662
|
/** Optional caller-provided reference id. */
|
|
1661
1663
|
reference_id?: string;
|
|
1662
1664
|
/** Optional source identifier (e.g. campaign, dialpad). */
|