@webex/contact-center 0.0.0-next.1
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/README.md +81 -0
- package/__mocks__/workerMock.js +15 -0
- package/babel.config.js +15 -0
- package/dist/cc.js +1416 -0
- package/dist/cc.js.map +1 -0
- package/dist/config.js +72 -0
- package/dist/config.js.map +1 -0
- package/dist/constants.js +58 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.js +142 -0
- package/dist/index.js.map +1 -0
- package/dist/logger-proxy.js +115 -0
- package/dist/logger-proxy.js.map +1 -0
- package/dist/metrics/MetricsManager.js +474 -0
- package/dist/metrics/MetricsManager.js.map +1 -0
- package/dist/metrics/behavioral-events.js +322 -0
- package/dist/metrics/behavioral-events.js.map +1 -0
- package/dist/metrics/constants.js +134 -0
- package/dist/metrics/constants.js.map +1 -0
- package/dist/services/WebCallingService.js +323 -0
- package/dist/services/WebCallingService.js.map +1 -0
- package/dist/services/agent/index.js +177 -0
- package/dist/services/agent/index.js.map +1 -0
- package/dist/services/agent/types.js +137 -0
- package/dist/services/agent/types.js.map +1 -0
- package/dist/services/config/Util.js +203 -0
- package/dist/services/config/Util.js.map +1 -0
- package/dist/services/config/constants.js +221 -0
- package/dist/services/config/constants.js.map +1 -0
- package/dist/services/config/index.js +607 -0
- package/dist/services/config/index.js.map +1 -0
- package/dist/services/config/types.js +334 -0
- package/dist/services/config/types.js.map +1 -0
- package/dist/services/constants.js +117 -0
- package/dist/services/constants.js.map +1 -0
- package/dist/services/core/Err.js +43 -0
- package/dist/services/core/Err.js.map +1 -0
- package/dist/services/core/GlobalTypes.js +6 -0
- package/dist/services/core/GlobalTypes.js.map +1 -0
- package/dist/services/core/Utils.js +126 -0
- package/dist/services/core/Utils.js.map +1 -0
- package/dist/services/core/WebexRequest.js +96 -0
- package/dist/services/core/WebexRequest.js.map +1 -0
- package/dist/services/core/aqm-reqs.js +246 -0
- package/dist/services/core/aqm-reqs.js.map +1 -0
- package/dist/services/core/constants.js +109 -0
- package/dist/services/core/constants.js.map +1 -0
- package/dist/services/core/types.js +6 -0
- package/dist/services/core/types.js.map +1 -0
- package/dist/services/core/websocket/WebSocketManager.js +187 -0
- package/dist/services/core/websocket/WebSocketManager.js.map +1 -0
- package/dist/services/core/websocket/connection-service.js +111 -0
- package/dist/services/core/websocket/connection-service.js.map +1 -0
- package/dist/services/core/websocket/keepalive.worker.js +94 -0
- package/dist/services/core/websocket/keepalive.worker.js.map +1 -0
- package/dist/services/core/websocket/types.js +6 -0
- package/dist/services/core/websocket/types.js.map +1 -0
- package/dist/services/index.js +78 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/task/AutoWrapup.js +88 -0
- package/dist/services/task/AutoWrapup.js.map +1 -0
- package/dist/services/task/TaskManager.js +369 -0
- package/dist/services/task/TaskManager.js.map +1 -0
- package/dist/services/task/constants.js +58 -0
- package/dist/services/task/constants.js.map +1 -0
- package/dist/services/task/contact.js +464 -0
- package/dist/services/task/contact.js.map +1 -0
- package/dist/services/task/dialer.js +60 -0
- package/dist/services/task/dialer.js.map +1 -0
- package/dist/services/task/index.js +1188 -0
- package/dist/services/task/index.js.map +1 -0
- package/dist/services/task/types.js +214 -0
- package/dist/services/task/types.js.map +1 -0
- package/dist/types/cc.d.ts +676 -0
- package/dist/types/config.d.ts +66 -0
- package/dist/types/constants.d.ts +45 -0
- package/dist/types/index.d.ts +178 -0
- package/dist/types/logger-proxy.d.ts +71 -0
- package/dist/types/metrics/MetricsManager.d.ts +223 -0
- package/dist/types/metrics/behavioral-events.d.ts +29 -0
- package/dist/types/metrics/constants.d.ts +127 -0
- package/dist/types/services/WebCallingService.d.ts +1 -0
- package/dist/types/services/agent/index.d.ts +46 -0
- package/dist/types/services/agent/types.d.ts +413 -0
- package/dist/types/services/config/Util.d.ts +19 -0
- package/dist/types/services/config/constants.d.ts +203 -0
- package/dist/types/services/config/index.d.ts +171 -0
- package/dist/types/services/config/types.d.ts +1113 -0
- package/dist/types/services/constants.d.ts +97 -0
- package/dist/types/services/core/Err.d.ts +119 -0
- package/dist/types/services/core/GlobalTypes.d.ts +33 -0
- package/dist/types/services/core/Utils.d.ts +36 -0
- package/dist/types/services/core/WebexRequest.d.ts +22 -0
- package/dist/types/services/core/aqm-reqs.d.ts +16 -0
- package/dist/types/services/core/constants.d.ts +85 -0
- package/dist/types/services/core/types.d.ts +47 -0
- package/dist/types/services/core/websocket/WebSocketManager.d.ts +34 -0
- package/dist/types/services/core/websocket/connection-service.d.ts +27 -0
- package/dist/types/services/core/websocket/keepalive.worker.d.ts +2 -0
- package/dist/types/services/core/websocket/types.d.ts +37 -0
- package/dist/types/services/index.d.ts +52 -0
- package/dist/types/services/task/AutoWrapup.d.ts +40 -0
- package/dist/types/services/task/TaskManager.d.ts +1 -0
- package/dist/types/services/task/constants.d.ts +46 -0
- package/dist/types/services/task/contact.d.ts +59 -0
- package/dist/types/services/task/dialer.d.ts +28 -0
- package/dist/types/services/task/index.d.ts +569 -0
- package/dist/types/services/task/types.d.ts +1041 -0
- package/dist/types/types.d.ts +452 -0
- package/dist/types/webex-config.d.ts +53 -0
- package/dist/types/webex.d.ts +7 -0
- package/dist/types.js +292 -0
- package/dist/types.js.map +1 -0
- package/dist/webex-config.js +60 -0
- package/dist/webex-config.js.map +1 -0
- package/dist/webex.js +99 -0
- package/dist/webex.js.map +1 -0
- package/jest.config.js +45 -0
- package/package.json +83 -0
- package/src/cc.ts +1618 -0
- package/src/config.ts +65 -0
- package/src/constants.ts +51 -0
- package/src/index.ts +220 -0
- package/src/logger-proxy.ts +110 -0
- package/src/metrics/MetricsManager.ts +512 -0
- package/src/metrics/behavioral-events.ts +332 -0
- package/src/metrics/constants.ts +135 -0
- package/src/services/WebCallingService.ts +351 -0
- package/src/services/agent/index.ts +149 -0
- package/src/services/agent/types.ts +440 -0
- package/src/services/config/Util.ts +261 -0
- package/src/services/config/constants.ts +249 -0
- package/src/services/config/index.ts +743 -0
- package/src/services/config/types.ts +1117 -0
- package/src/services/constants.ts +111 -0
- package/src/services/core/Err.ts +126 -0
- package/src/services/core/GlobalTypes.ts +34 -0
- package/src/services/core/Utils.ts +132 -0
- package/src/services/core/WebexRequest.ts +103 -0
- package/src/services/core/aqm-reqs.ts +272 -0
- package/src/services/core/constants.ts +106 -0
- package/src/services/core/types.ts +48 -0
- package/src/services/core/websocket/WebSocketManager.ts +196 -0
- package/src/services/core/websocket/connection-service.ts +142 -0
- package/src/services/core/websocket/keepalive.worker.js +88 -0
- package/src/services/core/websocket/types.ts +40 -0
- package/src/services/index.ts +71 -0
- package/src/services/task/AutoWrapup.ts +86 -0
- package/src/services/task/TaskManager.ts +420 -0
- package/src/services/task/constants.ts +52 -0
- package/src/services/task/contact.ts +429 -0
- package/src/services/task/dialer.ts +52 -0
- package/src/services/task/index.ts +1375 -0
- package/src/services/task/types.ts +1113 -0
- package/src/types.ts +639 -0
- package/src/webex-config.ts +54 -0
- package/src/webex.js +96 -0
- package/test/unit/spec/cc.ts +1985 -0
- package/test/unit/spec/metrics/MetricsManager.ts +491 -0
- package/test/unit/spec/metrics/behavioral-events.ts +102 -0
- package/test/unit/spec/services/WebCallingService.ts +416 -0
- package/test/unit/spec/services/agent/index.ts +65 -0
- package/test/unit/spec/services/config/index.ts +1035 -0
- package/test/unit/spec/services/core/Utils.ts +279 -0
- package/test/unit/spec/services/core/WebexRequest.ts +144 -0
- package/test/unit/spec/services/core/aqm-reqs.ts +570 -0
- package/test/unit/spec/services/core/websocket/WebSocketManager.ts +378 -0
- package/test/unit/spec/services/core/websocket/connection-service.ts +178 -0
- package/test/unit/spec/services/task/TaskManager.ts +1351 -0
- package/test/unit/spec/services/task/contact.ts +204 -0
- package/test/unit/spec/services/task/dialer.ts +157 -0
- package/test/unit/spec/services/task/index.ts +1474 -0
- package/tsconfig.json +6 -0
- package/typedoc.json +37 -0
- package/typedoc.md +240 -0
- package/umd/contact-center.min.js +3 -0
- package/umd/contact-center.min.js.map +1 -0
package/src/webex.js
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import merge from 'lodash/merge';
|
|
2
|
+
import WebexCore from '@webex/webex-core';
|
|
3
|
+
import {Buffer} from 'safe-buffer';
|
|
4
|
+
import '@webex/plugin-authorization';
|
|
5
|
+
import '@webex/internal-plugin-mercury';
|
|
6
|
+
import '@webex/plugin-logger';
|
|
7
|
+
import '@webex/internal-plugin-support';
|
|
8
|
+
|
|
9
|
+
import './index';
|
|
10
|
+
|
|
11
|
+
import config from './webex-config';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Ensures global Buffer is defined, which is required for SDK functionality in some environments.
|
|
15
|
+
* @ignore
|
|
16
|
+
*/
|
|
17
|
+
if (!global.Buffer) {
|
|
18
|
+
global.Buffer = Buffer;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Webex SDK class extended from the core SDK.
|
|
23
|
+
* Includes custom configuration and plugin registration for CC (Contact Center) use cases.
|
|
24
|
+
* @ignore
|
|
25
|
+
*/
|
|
26
|
+
const Webex = WebexCore.extend({
|
|
27
|
+
webex: true,
|
|
28
|
+
version: PACKAGE_VERSION,
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Initializes a new Webex instance with merged configuration.
|
|
33
|
+
*
|
|
34
|
+
* @param {Object} [attrs={}] - Initialization attributes.
|
|
35
|
+
* @param {Object} [attrs.config] - Optional custom config to override defaults.
|
|
36
|
+
* @param {Object} [attrs.config.logger] - Logging configuration.
|
|
37
|
+
* @param {string} [attrs.config.logger.level='info'] - Logging level (e.g., 'debug', 'info').
|
|
38
|
+
* @param {string} [attrs.config.logger.bufferLogLevel='log'] - Log buffering level for log uploads.
|
|
39
|
+
* @param {Object} [attrs.config.cc] - Contact Center (CC) specific configurations.
|
|
40
|
+
* @param {boolean} [attrs.config.cc.allowMultiLogin=false] - Whether to allow multiple logins.
|
|
41
|
+
* @param {boolean} [attrs.config.cc.allowAutomatedRelogin=true] - Whether to allow automated re-login.
|
|
42
|
+
* @param {string} [attrs.config.cc.clientType='WebexCCSDK'] - Type of the client.
|
|
43
|
+
* @param {boolean} [attrs.config.cc.isKeepAliveEnabled=false] - Whether to enable keep-alive functionality.
|
|
44
|
+
* @param {boolean} [attrs.config.cc.force=true] - Whether to force specific CC configurations.
|
|
45
|
+
* @param {Object} [attrs.config.cc.metrics] - Metrics configuration for CC.
|
|
46
|
+
* @param {string} [attrs.config.cc.metrics.clientName='WEBEX_JS_SDK'] - Metrics client name.
|
|
47
|
+
* @param {string} [attrs.config.cc.metrics.clientType='WebexCCSDK'] - Metrics client type.
|
|
48
|
+
* @returns {Webex} A new Webex instance.
|
|
49
|
+
*
|
|
50
|
+
* @see {@link https://developer.webex.com/meeting/docs/sdks/webex-meetings-sdk-web-quickstart#webex-object-attribute-reference} - Webex Object Attribute Reference for SDK Configuration.
|
|
51
|
+
*
|
|
52
|
+
* This configuration merges the default `webex-config` with any custom configuration provided as `attrs.config`.
|
|
53
|
+
* The merged configuration governs various SDK behaviors, such as authorization, logging, and CC-specific settings.
|
|
54
|
+
*
|
|
55
|
+
* @example <caption>Basic Usage</caption>
|
|
56
|
+
* import Webex from '@webex/contact-center';
|
|
57
|
+
*
|
|
58
|
+
* // Initialize Webex SDK with default configuration
|
|
59
|
+
* const webex = Webex.init();
|
|
60
|
+
*
|
|
61
|
+
* @example <caption>Custom Configuration</caption>
|
|
62
|
+
* import Webex from '@webex/contact-center';
|
|
63
|
+
*
|
|
64
|
+
* const customConfig = {
|
|
65
|
+
* logger: {
|
|
66
|
+
* level: 'debug', // Enable debug logging
|
|
67
|
+
* bufferLogLevel: 'log', // Used for upload logs
|
|
68
|
+
* },
|
|
69
|
+
* credentials: {
|
|
70
|
+
* client_id: 'your-client-id', // Replace with your Webex application's client ID
|
|
71
|
+
* client_secret: 'your-client-secret', // Replace with your Webex application's client secret
|
|
72
|
+
* redirect_uri: 'https://your-redirect-uri', // Replace with your app's redirect URI
|
|
73
|
+
* },
|
|
74
|
+
* cc: {
|
|
75
|
+
* allowMultiLogin: false, // Disallow multiple logins
|
|
76
|
+
* allowAutomatedRelogin: true, // Enable automated re-login
|
|
77
|
+
* clientType: 'WebexCCSDK', // Specify the Contact Center client type
|
|
78
|
+
* isKeepAliveEnabled: false, // Disable keep-alive functionality
|
|
79
|
+
* force: true, // Force CC-specific configurations
|
|
80
|
+
* metrics: {
|
|
81
|
+
* clientName: 'WEBEX_JS_SDK', // Metrics client name
|
|
82
|
+
* clientType: 'WebexCCSDK', // Metrics client type
|
|
83
|
+
* },
|
|
84
|
+
* },
|
|
85
|
+
* };
|
|
86
|
+
*
|
|
87
|
+
* // Initialize Webex SDK with custom configuration
|
|
88
|
+
* const webex = Webex.init({ config: customConfig });
|
|
89
|
+
*/
|
|
90
|
+
Webex.init = function init(attrs = {}) {
|
|
91
|
+
attrs.config = merge({}, config, attrs.config);
|
|
92
|
+
|
|
93
|
+
return new Webex(attrs);
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
export default Webex;
|