@webex/calling 3.12.0-mobius-socket.9 → 3.12.0-mobius-socket.11
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/CallingClient/CallingClient.test.js +2 -2
- package/dist/CallingClient/CallingClient.test.js.map +1 -1
- package/dist/CallingClient/calling/call.test.js +1 -1
- package/dist/CallingClient/calling/call.test.js.map +1 -1
- package/dist/CallingClient/line/line.test.js +1 -1
- package/dist/CallingClient/line/line.test.js.map +1 -1
- package/dist/CallingClient/registration/register.test.js +1 -1
- package/dist/CallingClient/registration/register.test.js.map +1 -1
- package/dist/CallingClient/utils/request.js +2 -2
- package/dist/CallingClient/utils/request.js.map +1 -1
- package/dist/mobius-socket/config.js +61 -0
- package/dist/mobius-socket/config.js.map +1 -0
- package/dist/mobius-socket/errors.js +106 -0
- package/dist/mobius-socket/errors.js.map +1 -0
- package/dist/mobius-socket/index.js +101 -0
- package/dist/mobius-socket/index.js.map +1 -0
- package/dist/mobius-socket/mobius-socket-events.test.js +511 -0
- package/dist/mobius-socket/mobius-socket-events.test.js.map +1 -0
- package/dist/mobius-socket/mobius-socket.js +1191 -0
- package/dist/mobius-socket/mobius-socket.js.map +1 -0
- package/dist/mobius-socket/mobius-socket.test.js +2107 -0
- package/dist/mobius-socket/mobius-socket.test.js.map +1 -0
- package/dist/mobius-socket/socket/constants.js +20 -0
- package/dist/mobius-socket/socket/constants.js.map +1 -0
- package/dist/mobius-socket/socket/index.js +15 -0
- package/dist/mobius-socket/socket/index.js.map +1 -0
- package/dist/mobius-socket/socket/socket-base.js +632 -0
- package/dist/mobius-socket/socket/socket-base.js.map +1 -0
- package/dist/mobius-socket/socket/socket.js +19 -0
- package/dist/mobius-socket/socket/socket.js.map +1 -0
- package/dist/mobius-socket/socket/socket.shim.js +36 -0
- package/dist/mobius-socket/socket/socket.shim.js.map +1 -0
- package/dist/mobius-socket/socket.test.js +752 -0
- package/dist/mobius-socket/socket.test.js.map +1 -0
- package/dist/mobius-socket/test/mocha-helpers.js +23 -0
- package/dist/mobius-socket/test/mocha-helpers.js.map +1 -0
- package/dist/mobius-socket/test/promise-tick.js +29 -0
- package/dist/mobius-socket/test/promise-tick.js.map +1 -0
- package/dist/module/CallingClient/utils/request.js +1 -1
- package/dist/module/mobius-socket/config.js +18 -0
- package/dist/module/mobius-socket/errors.js +30 -0
- package/dist/module/mobius-socket/index.js +24 -0
- package/dist/module/mobius-socket/mobius-socket.js +761 -0
- package/dist/module/mobius-socket/socket/constants.js +10 -0
- package/dist/module/mobius-socket/socket/index.js +4 -0
- package/dist/module/mobius-socket/socket/socket-base.js +374 -0
- package/dist/module/mobius-socket/socket/socket.js +9 -0
- package/dist/module/mobius-socket/socket/socket.shim.js +24 -0
- package/dist/types/mobius-socket/config.d.ts +15 -0
- package/dist/types/mobius-socket/config.d.ts.map +1 -0
- package/dist/types/mobius-socket/errors.d.ts +13 -0
- package/dist/types/mobius-socket/errors.d.ts.map +1 -0
- package/dist/types/mobius-socket/index.d.ts +9 -0
- package/dist/types/mobius-socket/index.d.ts.map +1 -0
- package/dist/types/mobius-socket/mobius-socket.d.ts +62 -0
- package/dist/types/mobius-socket/mobius-socket.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/constants.d.ts +11 -0
- package/dist/types/mobius-socket/socket/constants.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/index.d.ts +2 -0
- package/dist/types/mobius-socket/socket/index.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket-base.d.ts +38 -0
- package/dist/types/mobius-socket/socket/socket-base.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket.d.ts +3 -0
- package/dist/types/mobius-socket/socket/socket.d.ts.map +1 -0
- package/dist/types/mobius-socket/socket/socket.shim.d.ts +3 -0
- package/dist/types/mobius-socket/socket/socket.shim.d.ts.map +1 -0
- package/package.json +17 -5
- package/src/mobius-socket/socket/socket.js +13 -0
- package/src/mobius-socket/socket/socket.shim.js +31 -0
|
@@ -17,7 +17,7 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/he
|
|
|
17
17
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
18
18
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
19
19
|
var _uuid = require("uuid");
|
|
20
|
-
var
|
|
20
|
+
var _mobiusSocket = require("../../mobius-socket");
|
|
21
21
|
var _Logger = _interopRequireDefault(require("../../Logger"));
|
|
22
22
|
var _mobiusSocketMapper = require("./mobiusSocketMapper");
|
|
23
23
|
var _constants = require("./constants");
|
|
@@ -76,7 +76,7 @@ var APIRequest = exports.APIRequest = /*#__PURE__*/function () {
|
|
|
76
76
|
}
|
|
77
77
|
this.webex = config.webex;
|
|
78
78
|
this.isMobiusSocketEnabled = (0, _wsFeatureFlag.isMobiusWssEnabled)(config.webex) || false;
|
|
79
|
-
this.mobiusSocket = (0,
|
|
79
|
+
this.mobiusSocket = (0, _mobiusSocket.getMobiusSocketInstance)(this.webex);
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_uuid","require","_internalPluginMobiusSocket","_Logger","_interopRequireDefault","_mobiusSocketMapper","_constants","_wsFeatureFlag","_constants2","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","normalizeWsResponse","wsResponse","_ref","_ref2","statusCode","body","data","undefined","headers","trackingid","trackingId","metadata","normalizeWsError","err","_ref3","_wsErr$response","_ref4","_wsErr$trackingId","_wsErr$response2","_ref5","_wsErr$response3","wsErr","response","APIRequest","exports","config","_classCallCheck2","webex","Error","isMobiusSocketEnabled","isMobiusWssEnabled","mobiusSocket","getMobiusSocketInstance","_createClass2","key","value","isSocketEnabled","_connectToMobiusSocket","_asyncToGenerator2","_regenerator","mark","_callee","wssUrl","logContext","_t","wrap","_context","prev","next","file","REQUEST_FILE","method","METHODS","CONNECT_TO_MOBIUS_SOCKET","isConnected","log","info","abrupt","getConnectedWebSocketUrl","connect","warn","concat","String","stop","connectToMobiusSocket","_x","_disconnectFromMobiusSocket","_callee2","options","_t2","_context2","disconnect","disconnectFromMobiusSocket","_x2","_makeRequest","_callee3","request","socketType","isSupplementaryService","_t3","_t4","_t5","_t6","_t7","_t8","_t9","_t0","_t1","_t10","_t11","_t12","_t13","_t14","_context3","uuid","deriveMobiusSocketMessageType","uri","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","isSupplementaryServiceMessageType","CALLING_USER_AGENT","credentials","getUserToken","sent","call","userAgent","authorization","sendWssRequest","type","makeRequest","_x3","registerMobiusSocketListener","cb","on","unregisterMobiusSocketListener","off","getInstance","instance","resetInstance","createAPIRequest"],"sources":["request.ts"],"sourcesContent":["import {v4 as uuid} from 'uuid';\n// @ts-ignore - JS module without type declarations\nimport {getMobiusSocketInstance} from '@webex/internal-plugin-mobius-socket';\nimport {WebexRequestPayload} from '../../common/types';\nimport {WebexSDK} from '../../SDKConnector/types';\nimport log from '../../Logger';\nimport {APIRequestConfig, APIRequestOptions, MobiusAsyncEvent, MobiusSocketResponse} from './types';\nimport {\n deriveMobiusSocketMessageType,\n isSupplementaryServiceMessageType,\n} from './mobiusSocketMapper';\nimport {MOBIUS_SOCKET_MESSAGE_TYPE} from './constants';\nimport {isMobiusWssEnabled} from './wsFeatureFlag';\nimport {CALLING_USER_AGENT, METHODS, REQUEST_FILE} from '../constants';\n\n/**\n * Converts a MobiusSocketResponse into the WebexRequestPayload shape that\n * all callers (registration, call, keepalive error-handlers) expect.\n */\nfunction normalizeWsResponse(wsResponse: MobiusSocketResponse): WebexRequestPayload {\n return {\n statusCode: wsResponse.statusCode,\n body: (wsResponse.data as object) ?? undefined,\n headers: {\n trackingid: wsResponse.trackingId,\n ...((wsResponse.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * Converts a MobiusSocketResponseError rejection into a WebexRequestPayload-shaped\n * error so handleRegistrationErrors / handleCallErrors can process it identically.\n */\nfunction normalizeWsError(err: unknown): WebexRequestPayload {\n const wsErr = err as {\n statusCode?: number;\n statusMessage?: string;\n response?: MobiusSocketResponse;\n trackingId?: string;\n };\n\n return {\n statusCode: wsErr.statusCode,\n body: (wsErr.response?.data as object) ?? undefined,\n headers: {\n trackingid: wsErr.trackingId ?? wsErr.response?.trackingId ?? '',\n ...((wsErr.response?.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * APIRequest routes Mobius traffic over HTTP (`webex.request`) or the Mobius WebSocket path\n * (`mobiusSocketRequest`). `isMobiusSocketEnabled` is set in the constructor from WDM\n * `webrtc-calling-over-ws` and/or SDK config (interim until WDM is fully in prod).\n */\nexport class APIRequest {\n // eslint-disable-next-line no-use-before-define\n private static instance: APIRequest | undefined;\n private isMobiusSocketEnabled: boolean;\n private webex: WebexSDK;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private mobiusSocket: any;\n\n static getInstance(config: APIRequestConfig): APIRequest {\n if (!APIRequest.instance) {\n APIRequest.instance = new APIRequest(config);\n }\n\n return APIRequest.instance;\n }\n\n static resetInstance(): void {\n APIRequest.instance = undefined;\n }\n\n /**\n * @param config - Webex instance plus optional SDK Mobius-socket override\n */\n constructor(config: APIRequestConfig) {\n if (!config.webex) {\n throw new Error('WebexSDK instance is required');\n }\n\n this.webex = config.webex;\n this.isMobiusSocketEnabled = isMobiusWssEnabled(config.webex) || false;\n this.mobiusSocket = getMobiusSocketInstance(this.webex);\n }\n\n /**\n * Whether the Mobius WebSocket transport is active for this instance.\n */\n public isSocketEnabled(): boolean {\n return this.isMobiusSocketEnabled;\n }\n\n /**\n * Ensures the Mobius WebSocket is connected before sending API requests.\n * If the socket is already connected, resolves immediately. Otherwise,\n * initiates a new connection to the provided WebSocket URL.\n * On failure, throws a normalized WebexRequestPayload-shaped error.\n *\n * @param wssUrl - The Mobius WebSocket URL to connect to.\n */\n public async connectToMobiusSocket(wssUrl: string): Promise<string | undefined> {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.CONNECT_TO_MOBIUS_SOCKET,\n };\n\n if (this.mobiusSocket.isConnected()) {\n log.info('Mobius WebSocket already connected', logContext);\n\n return this.mobiusSocket.getConnectedWebSocketUrl();\n }\n\n log.info('Mobius WebSocket not connected, initiating connection', logContext);\n\n try {\n await this.mobiusSocket.connect(wssUrl);\n log.log('Mobius WebSocket connected successfully', logContext);\n\n return wssUrl;\n } catch (err) {\n log.warn(`Mobius WebSocket connection failed: ${String(err)}`, logContext);\n throw normalizeWsError(err);\n }\n }\n\n /**\n * Disconnects the default session from the Mobius WebSocket.\n */\n public async disconnectFromMobiusSocket(options?: {code: number; reason: string}): Promise<void> {\n const logContext = {\n file: REQUEST_FILE,\n method: 'disconnectFromMobiusSocket',\n };\n\n try {\n await this.mobiusSocket.disconnect(options);\n log.log('Mobius WebSocket disconnected successfully', logContext);\n } catch (err) {\n // silent error - no need to throw an error\n log.warn(`Mobius WebSocket disconnection failed: ${String(err)}`, logContext);\n }\n }\n\n /**\n * Makes a request using HTTP or WebSocket transport per the flag set in the constructor.\n * When using WebSocket, the response is normalized to the WebexRequestPayload shape\n * so callers do not need to know which transport was used.\n * @param request - Request options (uri, method, body, headers, service)\n * @returns Promise resolving to WebexRequestPayload\n */\n public async makeRequest(request: APIRequestOptions): Promise<WebexRequestPayload> {\n if (this.isMobiusSocketEnabled) {\n const trackingId = `webex-js-sdk_${uuid()}`;\n const socketType = deriveMobiusSocketMessageType(request.uri, request.method);\n\n if (socketType === MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN) {\n throw new Error(`Unknown Mobius Socket message type: ${socketType}`);\n }\n\n const isSupplementaryService = isSupplementaryServiceMessageType(socketType);\n\n try {\n const wsResponse: MobiusSocketResponse = await this.mobiusSocket.sendWssRequest({\n type: socketType,\n trackingId,\n metadata: {\n ...request.headers,\n userAgent: CALLING_USER_AGENT,\n authorization: `${\n (isSupplementaryService && (await this.webex.credentials.getUserToken())) || ''\n }`,\n },\n data: request.body,\n });\n\n return normalizeWsResponse(wsResponse);\n } catch (err) {\n throw normalizeWsError(err);\n }\n }\n\n return this.webex.request(request) as Promise<WebexRequestPayload>;\n }\n\n public registerMobiusSocketListener(cb: (data?: MobiusAsyncEvent) => void): void {\n this.mobiusSocket.on('event:async_event', (data: MobiusAsyncEvent) => {\n cb(data);\n });\n }\n\n public unregisterMobiusSocketListener(): void {\n this.mobiusSocket.off('event:async_event');\n }\n}\n\n/**\n * Factory function to create a singleton APIRequest instance\n * @param config - Configuration object for APIRequest\n * @returns APIRequest instance\n */\nexport const createAPIRequest = (config: APIRequestConfig): APIRequest =>\n APIRequest.getInstance(config);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_uuid","require","_mobiusSocket","_Logger","_interopRequireDefault","_mobiusSocketMapper","_constants","_wsFeatureFlag","_constants2","ownKeys","e","r","t","_Object$keys","_Object$getOwnPropertySymbols","o","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","normalizeWsResponse","wsResponse","_ref","_ref2","statusCode","body","data","undefined","headers","trackingid","trackingId","metadata","normalizeWsError","err","_ref3","_wsErr$response","_ref4","_wsErr$trackingId","_wsErr$response2","_ref5","_wsErr$response3","wsErr","response","APIRequest","exports","config","_classCallCheck2","webex","Error","isMobiusSocketEnabled","isMobiusWssEnabled","mobiusSocket","getMobiusSocketInstance","_createClass2","key","value","isSocketEnabled","_connectToMobiusSocket","_asyncToGenerator2","_regenerator","mark","_callee","wssUrl","logContext","_t","wrap","_context","prev","next","file","REQUEST_FILE","method","METHODS","CONNECT_TO_MOBIUS_SOCKET","isConnected","log","info","abrupt","getConnectedWebSocketUrl","connect","warn","concat","String","stop","connectToMobiusSocket","_x","_disconnectFromMobiusSocket","_callee2","options","_t2","_context2","disconnect","disconnectFromMobiusSocket","_x2","_makeRequest","_callee3","request","socketType","isSupplementaryService","_t3","_t4","_t5","_t6","_t7","_t8","_t9","_t0","_t1","_t10","_t11","_t12","_t13","_t14","_context3","uuid","deriveMobiusSocketMessageType","uri","MOBIUS_SOCKET_MESSAGE_TYPE","UNKNOWN","isSupplementaryServiceMessageType","CALLING_USER_AGENT","credentials","getUserToken","sent","call","userAgent","authorization","sendWssRequest","type","makeRequest","_x3","registerMobiusSocketListener","cb","on","unregisterMobiusSocketListener","off","getInstance","instance","resetInstance","createAPIRequest"],"sources":["request.ts"],"sourcesContent":["import {v4 as uuid} from 'uuid';\n// @ts-ignore - JS module without type declarations\nimport {getMobiusSocketInstance} from '../../mobius-socket';\nimport {WebexRequestPayload} from '../../common/types';\nimport {WebexSDK} from '../../SDKConnector/types';\nimport log from '../../Logger';\nimport {APIRequestConfig, APIRequestOptions, MobiusAsyncEvent, MobiusSocketResponse} from './types';\nimport {\n deriveMobiusSocketMessageType,\n isSupplementaryServiceMessageType,\n} from './mobiusSocketMapper';\nimport {MOBIUS_SOCKET_MESSAGE_TYPE} from './constants';\nimport {isMobiusWssEnabled} from './wsFeatureFlag';\nimport {CALLING_USER_AGENT, METHODS, REQUEST_FILE} from '../constants';\n\n/**\n * Converts a MobiusSocketResponse into the WebexRequestPayload shape that\n * all callers (registration, call, keepalive error-handlers) expect.\n */\nfunction normalizeWsResponse(wsResponse: MobiusSocketResponse): WebexRequestPayload {\n return {\n statusCode: wsResponse.statusCode,\n body: (wsResponse.data as object) ?? undefined,\n headers: {\n trackingid: wsResponse.trackingId,\n ...((wsResponse.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * Converts a MobiusSocketResponseError rejection into a WebexRequestPayload-shaped\n * error so handleRegistrationErrors / handleCallErrors can process it identically.\n */\nfunction normalizeWsError(err: unknown): WebexRequestPayload {\n const wsErr = err as {\n statusCode?: number;\n statusMessage?: string;\n response?: MobiusSocketResponse;\n trackingId?: string;\n };\n\n return {\n statusCode: wsErr.statusCode,\n body: (wsErr.response?.data as object) ?? undefined,\n headers: {\n trackingid: wsErr.trackingId ?? wsErr.response?.trackingId ?? '',\n ...((wsErr.response?.metadata as Record<string, string>) ?? {}),\n },\n };\n}\n\n/**\n * APIRequest routes Mobius traffic over HTTP (`webex.request`) or the Mobius WebSocket path\n * (`mobiusSocketRequest`). `isMobiusSocketEnabled` is set in the constructor from WDM\n * `webrtc-calling-over-ws` and/or SDK config (interim until WDM is fully in prod).\n */\nexport class APIRequest {\n // eslint-disable-next-line no-use-before-define\n private static instance: APIRequest | undefined;\n private isMobiusSocketEnabled: boolean;\n private webex: WebexSDK;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private mobiusSocket: any;\n\n static getInstance(config: APIRequestConfig): APIRequest {\n if (!APIRequest.instance) {\n APIRequest.instance = new APIRequest(config);\n }\n\n return APIRequest.instance;\n }\n\n static resetInstance(): void {\n APIRequest.instance = undefined;\n }\n\n /**\n * @param config - Webex instance plus optional SDK Mobius-socket override\n */\n constructor(config: APIRequestConfig) {\n if (!config.webex) {\n throw new Error('WebexSDK instance is required');\n }\n\n this.webex = config.webex;\n this.isMobiusSocketEnabled = isMobiusWssEnabled(config.webex) || false;\n this.mobiusSocket = getMobiusSocketInstance(this.webex);\n }\n\n /**\n * Whether the Mobius WebSocket transport is active for this instance.\n */\n public isSocketEnabled(): boolean {\n return this.isMobiusSocketEnabled;\n }\n\n /**\n * Ensures the Mobius WebSocket is connected before sending API requests.\n * If the socket is already connected, resolves immediately. Otherwise,\n * initiates a new connection to the provided WebSocket URL.\n * On failure, throws a normalized WebexRequestPayload-shaped error.\n *\n * @param wssUrl - The Mobius WebSocket URL to connect to.\n */\n public async connectToMobiusSocket(wssUrl: string): Promise<string | undefined> {\n const logContext = {\n file: REQUEST_FILE,\n method: METHODS.CONNECT_TO_MOBIUS_SOCKET,\n };\n\n if (this.mobiusSocket.isConnected()) {\n log.info('Mobius WebSocket already connected', logContext);\n\n return this.mobiusSocket.getConnectedWebSocketUrl();\n }\n\n log.info('Mobius WebSocket not connected, initiating connection', logContext);\n\n try {\n await this.mobiusSocket.connect(wssUrl);\n log.log('Mobius WebSocket connected successfully', logContext);\n\n return wssUrl;\n } catch (err) {\n log.warn(`Mobius WebSocket connection failed: ${String(err)}`, logContext);\n throw normalizeWsError(err);\n }\n }\n\n /**\n * Disconnects the default session from the Mobius WebSocket.\n */\n public async disconnectFromMobiusSocket(options?: {code: number; reason: string}): Promise<void> {\n const logContext = {\n file: REQUEST_FILE,\n method: 'disconnectFromMobiusSocket',\n };\n\n try {\n await this.mobiusSocket.disconnect(options);\n log.log('Mobius WebSocket disconnected successfully', logContext);\n } catch (err) {\n // silent error - no need to throw an error\n log.warn(`Mobius WebSocket disconnection failed: ${String(err)}`, logContext);\n }\n }\n\n /**\n * Makes a request using HTTP or WebSocket transport per the flag set in the constructor.\n * When using WebSocket, the response is normalized to the WebexRequestPayload shape\n * so callers do not need to know which transport was used.\n * @param request - Request options (uri, method, body, headers, service)\n * @returns Promise resolving to WebexRequestPayload\n */\n public async makeRequest(request: APIRequestOptions): Promise<WebexRequestPayload> {\n if (this.isMobiusSocketEnabled) {\n const trackingId = `webex-js-sdk_${uuid()}`;\n const socketType = deriveMobiusSocketMessageType(request.uri, request.method);\n\n if (socketType === MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN) {\n throw new Error(`Unknown Mobius Socket message type: ${socketType}`);\n }\n\n const isSupplementaryService = isSupplementaryServiceMessageType(socketType);\n\n try {\n const wsResponse: MobiusSocketResponse = await this.mobiusSocket.sendWssRequest({\n type: socketType,\n trackingId,\n metadata: {\n ...request.headers,\n userAgent: CALLING_USER_AGENT,\n authorization: `${\n (isSupplementaryService && (await this.webex.credentials.getUserToken())) || ''\n }`,\n },\n data: request.body,\n });\n\n return normalizeWsResponse(wsResponse);\n } catch (err) {\n throw normalizeWsError(err);\n }\n }\n\n return this.webex.request(request) as Promise<WebexRequestPayload>;\n }\n\n public registerMobiusSocketListener(cb: (data?: MobiusAsyncEvent) => void): void {\n this.mobiusSocket.on('event:async_event', (data: MobiusAsyncEvent) => {\n cb(data);\n });\n }\n\n public unregisterMobiusSocketListener(): void {\n this.mobiusSocket.off('event:async_event');\n }\n}\n\n/**\n * Factory function to create a singleton APIRequest instance\n * @param config - Configuration object for APIRequest\n * @returns APIRequest instance\n */\nexport const createAPIRequest = (config: APIRequestConfig): APIRequest =>\n APIRequest.getInstance(config);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
4
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
/*!
|
|
9
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
10
|
+
*/
|
|
11
|
+
|
|
12
|
+
var mobiusSocketConfig = {
|
|
13
|
+
/**
|
|
14
|
+
* Milliseconds to wait for websocket request/response messages, including auth.
|
|
15
|
+
* @type {number}
|
|
16
|
+
*/
|
|
17
|
+
wssResponseTimeout: process.env.MOBIUS_SOCKET_RESPONSE_TIMEOUT || process.env.MOBIUS_SOCKET_AUTH_RESPONSE_TIMEOUT || 10000,
|
|
18
|
+
/**
|
|
19
|
+
* Maximum milliseconds between connection attempts
|
|
20
|
+
* @type {Number}
|
|
21
|
+
*/
|
|
22
|
+
backoffTimeMax: process.env.MOBIUS_SOCKET_BACKOFF_TIME_MAX || 32000,
|
|
23
|
+
/**
|
|
24
|
+
* Initial milliseconds between connection attempts
|
|
25
|
+
* @type {Number}
|
|
26
|
+
*/
|
|
27
|
+
backoffTimeReset: process.env.MOBIUS_SOCKET_BACKOFF_TIME_RESET || 1000,
|
|
28
|
+
/**
|
|
29
|
+
* Maximum number of retries for the initial connect() flow before rejecting.
|
|
30
|
+
* @type {Number}
|
|
31
|
+
*/
|
|
32
|
+
initialConnectionMaxRetries: process.env.MOBIUS_SOCKET_INITIAL_CONNECTION_MAX_RETRIES || 0,
|
|
33
|
+
/**
|
|
34
|
+
* Maximum number of retries for reconnect attempts after the socket has connected once.
|
|
35
|
+
* A value of 0 means unlimited reconnect retries.
|
|
36
|
+
* @type {Number}
|
|
37
|
+
*/
|
|
38
|
+
maxRetries: process.env.MOBIUS_SOCKET_MAX_RETRIES || 0,
|
|
39
|
+
/**
|
|
40
|
+
* Milliseconds to wait for a close frame before declaring the socket dead and
|
|
41
|
+
* discarding it
|
|
42
|
+
* @type {number}
|
|
43
|
+
*/
|
|
44
|
+
forceCloseDelay: process.env.MOBIUS_SOCKET_FORCE_CLOSE_DELAY || 2000,
|
|
45
|
+
/**
|
|
46
|
+
* When logging out, use default reason which can trigger a reconnect,
|
|
47
|
+
* or set to something else, like `done (permanent)` to prevent reconnect
|
|
48
|
+
* @type {String}
|
|
49
|
+
*/
|
|
50
|
+
beforeLogoutOptionsCloseReason: process.env.MOBIUS_SOCKET_LOGOUT_REASON || 'done (forced)',
|
|
51
|
+
/**
|
|
52
|
+
* Maximum number of eventIds to retain in the dedup cache for suppressing
|
|
53
|
+
* duplicate async_event messages retransmitted by the server.
|
|
54
|
+
* @type {Number}
|
|
55
|
+
*/
|
|
56
|
+
dedupCacheMaxSize: process.env.MOBIUS_SOCKET_DEDUP_CACHE_MAX_SIZE || 1000
|
|
57
|
+
};
|
|
58
|
+
var _default = exports.default = {
|
|
59
|
+
mobiusSocket: mobiusSocketConfig
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["mobiusSocketConfig","wssResponseTimeout","process","env","MOBIUS_SOCKET_RESPONSE_TIMEOUT","MOBIUS_SOCKET_AUTH_RESPONSE_TIMEOUT","backoffTimeMax","MOBIUS_SOCKET_BACKOFF_TIME_MAX","backoffTimeReset","MOBIUS_SOCKET_BACKOFF_TIME_RESET","initialConnectionMaxRetries","MOBIUS_SOCKET_INITIAL_CONNECTION_MAX_RETRIES","maxRetries","MOBIUS_SOCKET_MAX_RETRIES","forceCloseDelay","MOBIUS_SOCKET_FORCE_CLOSE_DELAY","beforeLogoutOptionsCloseReason","MOBIUS_SOCKET_LOGOUT_REASON","dedupCacheMaxSize","MOBIUS_SOCKET_DEDUP_CACHE_MAX_SIZE","_default","exports","default","mobiusSocket"],"sources":["config.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nconst mobiusSocketConfig = {\n /**\n * Milliseconds to wait for websocket request/response messages, including auth.\n * @type {number}\n */\n wssResponseTimeout:\n process.env.MOBIUS_SOCKET_RESPONSE_TIMEOUT ||\n process.env.MOBIUS_SOCKET_AUTH_RESPONSE_TIMEOUT ||\n 10000,\n /**\n * Maximum milliseconds between connection attempts\n * @type {Number}\n */\n backoffTimeMax: process.env.MOBIUS_SOCKET_BACKOFF_TIME_MAX || 32000,\n /**\n * Initial milliseconds between connection attempts\n * @type {Number}\n */\n backoffTimeReset: process.env.MOBIUS_SOCKET_BACKOFF_TIME_RESET || 1000,\n /**\n * Maximum number of retries for the initial connect() flow before rejecting.\n * @type {Number}\n */\n initialConnectionMaxRetries: process.env.MOBIUS_SOCKET_INITIAL_CONNECTION_MAX_RETRIES || 0,\n /**\n * Maximum number of retries for reconnect attempts after the socket has connected once.\n * A value of 0 means unlimited reconnect retries.\n * @type {Number}\n */\n maxRetries: process.env.MOBIUS_SOCKET_MAX_RETRIES || 0,\n /**\n * Milliseconds to wait for a close frame before declaring the socket dead and\n * discarding it\n * @type {number}\n */\n forceCloseDelay: process.env.MOBIUS_SOCKET_FORCE_CLOSE_DELAY || 2000,\n /**\n * When logging out, use default reason which can trigger a reconnect,\n * or set to something else, like `done (permanent)` to prevent reconnect\n * @type {String}\n */\n beforeLogoutOptionsCloseReason: process.env.MOBIUS_SOCKET_LOGOUT_REASON || 'done (forced)',\n /**\n * Maximum number of eventIds to retain in the dedup cache for suppressing\n * duplicate async_event messages retransmitted by the server.\n * @type {Number}\n */\n dedupCacheMaxSize: process.env.MOBIUS_SOCKET_DEDUP_CACHE_MAX_SIZE || 1000,\n};\n\nexport default {\n mobiusSocket: mobiusSocketConfig,\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;;AAEA,IAAMA,kBAAkB,GAAG;EACzB;AACF;AACA;AACA;EACEC,kBAAkB,EAChBC,OAAO,CAACC,GAAG,CAACC,8BAA8B,IAC1CF,OAAO,CAACC,GAAG,CAACE,mCAAmC,IAC/C,KAAK;EACP;AACF;AACA;AACA;EACEC,cAAc,EAAEJ,OAAO,CAACC,GAAG,CAACI,8BAA8B,IAAI,KAAK;EACnE;AACF;AACA;AACA;EACEC,gBAAgB,EAAEN,OAAO,CAACC,GAAG,CAACM,gCAAgC,IAAI,IAAI;EACtE;AACF;AACA;AACA;EACEC,2BAA2B,EAAER,OAAO,CAACC,GAAG,CAACQ,4CAA4C,IAAI,CAAC;EAC1F;AACF;AACA;AACA;AACA;EACEC,UAAU,EAAEV,OAAO,CAACC,GAAG,CAACU,yBAAyB,IAAI,CAAC;EACtD;AACF;AACA;AACA;AACA;EACEC,eAAe,EAAEZ,OAAO,CAACC,GAAG,CAACY,+BAA+B,IAAI,IAAI;EACpE;AACF;AACA;AACA;AACA;EACEC,8BAA8B,EAAEd,OAAO,CAACC,GAAG,CAACc,2BAA2B,IAAI,eAAe;EAC1F;AACF;AACA;AACA;AACA;EACEC,iBAAiB,EAAEhB,OAAO,CAACC,GAAG,CAACgB,kCAAkC,IAAI;AACvE,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa;EACbC,YAAY,EAAEvB;AAChB,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
|
|
4
|
+
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
6
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
exports.UnknownResponse = exports.NotAuthorized = exports.Forbidden = exports.ConnectionError = exports.BadRequest = void 0;
|
|
10
|
+
var _defineProperties = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/define-properties"));
|
|
11
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
|
|
12
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
|
|
13
|
+
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
|
|
14
|
+
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
|
|
15
|
+
var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
|
|
16
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
17
|
+
var _common = require("@webex/common");
|
|
18
|
+
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
19
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /*!
|
|
20
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* Exception thrown when a websocket gets closed
|
|
24
|
+
*/
|
|
25
|
+
var ConnectionError = exports.ConnectionError = /*#__PURE__*/function (_Exception) {
|
|
26
|
+
function ConnectionError() {
|
|
27
|
+
(0, _classCallCheck2.default)(this, ConnectionError);
|
|
28
|
+
return _callSuper(this, ConnectionError, arguments);
|
|
29
|
+
}
|
|
30
|
+
(0, _inherits2.default)(ConnectionError, _Exception);
|
|
31
|
+
return (0, _createClass2.default)(ConnectionError, [{
|
|
32
|
+
key: "parse",
|
|
33
|
+
value:
|
|
34
|
+
/**
|
|
35
|
+
* @param {CloseEvent} event
|
|
36
|
+
* @returns {string}
|
|
37
|
+
*/
|
|
38
|
+
function parse() {
|
|
39
|
+
var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
40
|
+
(0, _defineProperties.default)(this, {
|
|
41
|
+
code: {
|
|
42
|
+
value: event.code
|
|
43
|
+
},
|
|
44
|
+
reason: {
|
|
45
|
+
value: event.reason
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
return event.reason;
|
|
49
|
+
}
|
|
50
|
+
}]);
|
|
51
|
+
}(_common.Exception);
|
|
52
|
+
/**
|
|
53
|
+
* thrown for CloseCode 4400
|
|
54
|
+
*/
|
|
55
|
+
(0, _defineProperty2.default)(ConnectionError, "defaultMessage", 'Failed to connect to socket');
|
|
56
|
+
var UnknownResponse = exports.UnknownResponse = /*#__PURE__*/function (_ConnectionError2) {
|
|
57
|
+
function UnknownResponse() {
|
|
58
|
+
(0, _classCallCheck2.default)(this, UnknownResponse);
|
|
59
|
+
return _callSuper(this, UnknownResponse, arguments);
|
|
60
|
+
}
|
|
61
|
+
(0, _inherits2.default)(UnknownResponse, _ConnectionError2);
|
|
62
|
+
return (0, _createClass2.default)(UnknownResponse);
|
|
63
|
+
}(ConnectionError);
|
|
64
|
+
/**
|
|
65
|
+
* thrown for CloseCode 4400
|
|
66
|
+
*/
|
|
67
|
+
(0, _defineProperty2.default)(UnknownResponse, "defaultMessage", 'UnknownResponse is produced by IE when we receive a 4XXX. You probably want to treat this like a NotFound');
|
|
68
|
+
var BadRequest = exports.BadRequest = /*#__PURE__*/function (_ConnectionError3) {
|
|
69
|
+
function BadRequest() {
|
|
70
|
+
(0, _classCallCheck2.default)(this, BadRequest);
|
|
71
|
+
return _callSuper(this, BadRequest, arguments);
|
|
72
|
+
}
|
|
73
|
+
(0, _inherits2.default)(BadRequest, _ConnectionError3);
|
|
74
|
+
return (0, _createClass2.default)(BadRequest);
|
|
75
|
+
}(ConnectionError);
|
|
76
|
+
/**
|
|
77
|
+
* thrown for CloseCode 4401
|
|
78
|
+
*/
|
|
79
|
+
(0, _defineProperty2.default)(BadRequest, "defaultMessage", 'BadRequest usually implies an attempt to use service account credentials');
|
|
80
|
+
var NotAuthorized = exports.NotAuthorized = /*#__PURE__*/function (_ConnectionError4) {
|
|
81
|
+
function NotAuthorized() {
|
|
82
|
+
(0, _classCallCheck2.default)(this, NotAuthorized);
|
|
83
|
+
return _callSuper(this, NotAuthorized, arguments);
|
|
84
|
+
}
|
|
85
|
+
(0, _inherits2.default)(NotAuthorized, _ConnectionError4);
|
|
86
|
+
return (0, _createClass2.default)(NotAuthorized);
|
|
87
|
+
}(ConnectionError);
|
|
88
|
+
/**
|
|
89
|
+
* thrown for CloseCode 4403
|
|
90
|
+
*/
|
|
91
|
+
(0, _defineProperty2.default)(NotAuthorized, "defaultMessage", 'Please refresh your access token');
|
|
92
|
+
var Forbidden = exports.Forbidden = /*#__PURE__*/function (_ConnectionError5) {
|
|
93
|
+
function Forbidden() {
|
|
94
|
+
(0, _classCallCheck2.default)(this, Forbidden);
|
|
95
|
+
return _callSuper(this, Forbidden, arguments);
|
|
96
|
+
}
|
|
97
|
+
(0, _inherits2.default)(Forbidden, _ConnectionError5);
|
|
98
|
+
return (0, _createClass2.default)(Forbidden);
|
|
99
|
+
}(ConnectionError); // /**
|
|
100
|
+
// * thrown for CloseCode 4404
|
|
101
|
+
// */
|
|
102
|
+
// export class NotFound extends ConnectionError {
|
|
103
|
+
// static defaultMessage = `Please refresh your Mercury registration (typically via a WDM refresh)`;
|
|
104
|
+
// }
|
|
105
|
+
(0, _defineProperty2.default)(Forbidden, "defaultMessage", 'Forbidden usually implies these credentials are not entitled for Webex');
|
|
106
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_common","require","_callSuper","t","o","e","_getPrototypeOf2","default","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","constructor","apply","Boolean","prototype","valueOf","call","ConnectionError","exports","_Exception","_classCallCheck2","arguments","_inherits2","_createClass2","key","value","parse","event","length","undefined","_defineProperties","code","reason","Exception","_defineProperty2","UnknownResponse","_ConnectionError2","BadRequest","_ConnectionError3","NotAuthorized","_ConnectionError4","Forbidden","_ConnectionError5"],"sources":["errors.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {Exception} from '@webex/common';\n\n/**\n * Exception thrown when a websocket gets closed\n */\nexport class ConnectionError extends Exception {\n static defaultMessage = 'Failed to connect to socket';\n\n /**\n * @param {CloseEvent} event\n * @returns {string}\n */\n parse(event = {}) {\n Object.defineProperties(this, {\n code: {\n value: event.code,\n },\n reason: {\n value: event.reason,\n },\n });\n\n return event.reason;\n }\n}\n\n/**\n * thrown for CloseCode 4400\n */\nexport class UnknownResponse extends ConnectionError {\n static defaultMessage =\n 'UnknownResponse is produced by IE when we receive a 4XXX. You probably want to treat this like a NotFound';\n}\n\n/**\n * thrown for CloseCode 4400\n */\nexport class BadRequest extends ConnectionError {\n static defaultMessage =\n 'BadRequest usually implies an attempt to use service account credentials';\n}\n\n/**\n * thrown for CloseCode 4401\n */\nexport class NotAuthorized extends ConnectionError {\n static defaultMessage = 'Please refresh your access token';\n}\n\n/**\n * thrown for CloseCode 4403\n */\nexport class Forbidden extends ConnectionError {\n static defaultMessage = 'Forbidden usually implies these credentials are not entitled for Webex';\n}\n\n// /**\n// * thrown for CloseCode 4404\n// */\n// export class NotFound extends ConnectionError {\n// static defaultMessage = `Please refresh your Mercury registration (typically via a WDM refresh)`;\n// }\n"],"mappings":";;;;;;;;;;;;;;;;AAIA,IAAAA,OAAA,GAAAC,OAAA;AAAwC,SAAAC,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,CAAAC,OAAA,EAAAH,CAAA,OAAAI,2BAAA,CAAAD,OAAA,EAAAJ,CAAA,EAAAM,yBAAA,KAAAC,kBAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,CAAAC,OAAA,EAAAJ,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAI,0BAAA,cAAAN,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAN,kBAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAM,yBAAA,YAAAA,0BAAA,aAAAN,CAAA,UAJxC;AACA;AACA;AAIA;AACA;AACA;AAFA,IAGac,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAAE,UAAA;EAAA,SAAAF,gBAAA;IAAA,IAAAG,gBAAA,CAAAb,OAAA,QAAAU,eAAA;IAAA,OAAAf,UAAA,OAAAe,eAAA,EAAAI,SAAA;EAAA;EAAA,IAAAC,UAAA,CAAAf,OAAA,EAAAU,eAAA,EAAAE,UAAA;EAAA,WAAAI,aAAA,CAAAhB,OAAA,EAAAU,eAAA;IAAAO,GAAA;IAAAC,KAAA;IAG1B;AACF;AACA;AACA;IACE,SAAAC,KAAKA,CAAA,EAAa;MAAA,IAAZC,KAAK,GAAAN,SAAA,CAAAO,MAAA,QAAAP,SAAA,QAAAQ,SAAA,GAAAR,SAAA,MAAG,CAAC,CAAC;MACd,IAAAS,iBAAA,CAAAvB,OAAA,EAAwB,IAAI,EAAE;QAC5BwB,IAAI,EAAE;UACJN,KAAK,EAAEE,KAAK,CAACI;QACf,CAAC;QACDC,MAAM,EAAE;UACNP,KAAK,EAAEE,KAAK,CAACK;QACf;MACF,CAAC,CAAC;MAEF,OAAOL,KAAK,CAACK,MAAM;IACrB;EAAC;AAAA,EAlBkCC,iBAAS;AAqB9C;AACA;AACA;AAFA,IAAAC,gBAAA,CAAA3B,OAAA,EArBaU,eAAe,oBACF,6BAA6B;AAAA,IAuB1CkB,eAAe,GAAAjB,OAAA,CAAAiB,eAAA,0BAAAC,iBAAA;EAAA,SAAAD,gBAAA;IAAA,IAAAf,gBAAA,CAAAb,OAAA,QAAA4B,eAAA;IAAA,OAAAjC,UAAA,OAAAiC,eAAA,EAAAd,SAAA;EAAA;EAAA,IAAAC,UAAA,CAAAf,OAAA,EAAA4B,eAAA,EAAAC,iBAAA;EAAA,WAAAb,aAAA,CAAAhB,OAAA,EAAA4B,eAAA;AAAA,EAASlB,eAAe;AAKpD;AACA;AACA;AAFA,IAAAiB,gBAAA,CAAA3B,OAAA,EALa4B,eAAe,oBAExB,2GAA2G;AAAA,IAMlGE,UAAU,GAAAnB,OAAA,CAAAmB,UAAA,0BAAAC,iBAAA;EAAA,SAAAD,WAAA;IAAA,IAAAjB,gBAAA,CAAAb,OAAA,QAAA8B,UAAA;IAAA,OAAAnC,UAAA,OAAAmC,UAAA,EAAAhB,SAAA;EAAA;EAAA,IAAAC,UAAA,CAAAf,OAAA,EAAA8B,UAAA,EAAAC,iBAAA;EAAA,WAAAf,aAAA,CAAAhB,OAAA,EAAA8B,UAAA;AAAA,EAASpB,eAAe;AAK/C;AACA;AACA;AAFA,IAAAiB,gBAAA,CAAA3B,OAAA,EALa8B,UAAU,oBAEnB,0EAA0E;AAAA,IAMjEE,aAAa,GAAArB,OAAA,CAAAqB,aAAA,0BAAAC,iBAAA;EAAA,SAAAD,cAAA;IAAA,IAAAnB,gBAAA,CAAAb,OAAA,QAAAgC,aAAA;IAAA,OAAArC,UAAA,OAAAqC,aAAA,EAAAlB,SAAA;EAAA;EAAA,IAAAC,UAAA,CAAAf,OAAA,EAAAgC,aAAA,EAAAC,iBAAA;EAAA,WAAAjB,aAAA,CAAAhB,OAAA,EAAAgC,aAAA;AAAA,EAAStB,eAAe;AAIlD;AACA;AACA;AAFA,IAAAiB,gBAAA,CAAA3B,OAAA,EAJagC,aAAa,oBACA,kCAAkC;AAAA,IAM/CE,SAAS,GAAAvB,OAAA,CAAAuB,SAAA,0BAAAC,iBAAA;EAAA,SAAAD,UAAA;IAAA,IAAArB,gBAAA,CAAAb,OAAA,QAAAkC,SAAA;IAAA,OAAAvC,UAAA,OAAAuC,SAAA,EAAApB,SAAA;EAAA;EAAA,IAAAC,UAAA,CAAAf,OAAA,EAAAkC,SAAA,EAAAC,iBAAA;EAAA,WAAAnB,aAAA,CAAAhB,OAAA,EAAAkC,SAAA;AAAA,EAASxB,eAAe,GAI9C;AACA;AACA;AACA;AACA;AACA;AAAA,IAAAiB,gBAAA,CAAA3B,OAAA,EATakC,SAAS,oBACI,wEAAwE","ignoreList":[]}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
5
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
_Object$defineProperty(exports, "BadRequest", {
|
|
9
|
+
enumerable: true,
|
|
10
|
+
get: function get() {
|
|
11
|
+
return _errors.BadRequest;
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
_Object$defineProperty(exports, "ConnectionError", {
|
|
15
|
+
enumerable: true,
|
|
16
|
+
get: function get() {
|
|
17
|
+
return _errors.ConnectionError;
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
_Object$defineProperty(exports, "Forbidden", {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
get: function get() {
|
|
23
|
+
return _errors.Forbidden;
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
_Object$defineProperty(exports, "MobiusSocket", {
|
|
27
|
+
enumerable: true,
|
|
28
|
+
get: function get() {
|
|
29
|
+
return _mobiusSocket.default;
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
_Object$defineProperty(exports, "NotAuthorized", {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function get() {
|
|
35
|
+
return _errors.NotAuthorized;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
_Object$defineProperty(exports, "Socket", {
|
|
39
|
+
enumerable: true,
|
|
40
|
+
get: function get() {
|
|
41
|
+
return _socket.default;
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
_Object$defineProperty(exports, "UnknownResponse", {
|
|
45
|
+
enumerable: true,
|
|
46
|
+
get: function get() {
|
|
47
|
+
return _errors.UnknownResponse;
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
_Object$defineProperty(exports, "config", {
|
|
51
|
+
enumerable: true,
|
|
52
|
+
get: function get() {
|
|
53
|
+
return _config.default;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
exports.default = void 0;
|
|
57
|
+
exports.getMobiusSocketInstance = getMobiusSocketInstance;
|
|
58
|
+
exports.resetMobiusSocketInstance = resetMobiusSocketInstance;
|
|
59
|
+
require("@webex/internal-plugin-device");
|
|
60
|
+
require("@webex/internal-plugin-feature");
|
|
61
|
+
require("@webex/internal-plugin-metrics");
|
|
62
|
+
var _mobiusSocket = _interopRequireDefault(require("./mobius-socket"));
|
|
63
|
+
var _config = _interopRequireDefault(require("./config"));
|
|
64
|
+
var _socket = _interopRequireDefault(require("./socket"));
|
|
65
|
+
var _errors = require("./errors");
|
|
66
|
+
/*!
|
|
67
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
68
|
+
*/
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Creates a calling-owned Mobius socket client for the provided Webex instance.
|
|
72
|
+
*
|
|
73
|
+
* @param {object} webex
|
|
74
|
+
* @param {object} [mobiusSocketConfig]
|
|
75
|
+
* @returns {MobiusSocket}
|
|
76
|
+
*/
|
|
77
|
+
var mobiusSocketInstance; // Keeping just one instance of MobiusSocket since there won't be multiple connections
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Creates or returns the singleton Mobius socket client for the provided Webex instance.
|
|
81
|
+
* @param {object} webex - The Webex SDK instance
|
|
82
|
+
* @param {object} [mobiusSocketConfig] - Optional configuration overrides
|
|
83
|
+
* @returns {MobiusSocket} The singleton MobiusSocket instance
|
|
84
|
+
*/
|
|
85
|
+
function getMobiusSocketInstance(webex, mobiusSocketConfig) {
|
|
86
|
+
if (mobiusSocketInstance) {
|
|
87
|
+
return mobiusSocketInstance;
|
|
88
|
+
}
|
|
89
|
+
mobiusSocketInstance = new _mobiusSocket.default(webex, mobiusSocketConfig || _config.default.mobiusSocket);
|
|
90
|
+
return mobiusSocketInstance;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Resets the singleton MobiusSocket instance, allowing a new one to be created.
|
|
95
|
+
* @returns {void}
|
|
96
|
+
*/
|
|
97
|
+
function resetMobiusSocketInstance() {
|
|
98
|
+
mobiusSocketInstance = undefined;
|
|
99
|
+
}
|
|
100
|
+
var _default = exports.default = _mobiusSocket.default;
|
|
101
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["require","_mobiusSocket","_interopRequireDefault","_config","_socket","_errors","mobiusSocketInstance","getMobiusSocketInstance","webex","mobiusSocketConfig","MobiusSocket","config","mobiusSocket","resetMobiusSocketInstance","undefined","_default","exports","default"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport '@webex/internal-plugin-device';\nimport '@webex/internal-plugin-feature';\nimport '@webex/internal-plugin-metrics';\n\nimport MobiusSocket from './mobius-socket';\nimport config from './config';\n\n/**\n * Creates a calling-owned Mobius socket client for the provided Webex instance.\n *\n * @param {object} webex\n * @param {object} [mobiusSocketConfig]\n * @returns {MobiusSocket}\n */\nlet mobiusSocketInstance; // Keeping just one instance of MobiusSocket since there won't be multiple connections\n\n/**\n * Creates or returns the singleton Mobius socket client for the provided Webex instance.\n * @param {object} webex - The Webex SDK instance\n * @param {object} [mobiusSocketConfig] - Optional configuration overrides\n * @returns {MobiusSocket} The singleton MobiusSocket instance\n */\nexport function getMobiusSocketInstance(webex, mobiusSocketConfig) {\n if (mobiusSocketInstance) {\n return mobiusSocketInstance;\n }\n\n mobiusSocketInstance = new MobiusSocket(webex, mobiusSocketConfig || config.mobiusSocket);\n\n return mobiusSocketInstance;\n}\n\n/**\n * Resets the singleton MobiusSocket instance, allowing a new one to be created.\n * @returns {void}\n */\nexport function resetMobiusSocketInstance() {\n mobiusSocketInstance = undefined;\n}\n\nexport default MobiusSocket;\nexport {MobiusSocket};\nexport {default as Socket} from './socket';\nexport {config};\nexport {BadRequest, ConnectionError, Forbidden, NotAuthorized, UnknownResponse} from './errors';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIAA,OAAA;AACAA,OAAA;AACAA,OAAA;AAEA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAD,sBAAA,CAAAF,OAAA;AAqCA,IAAAI,OAAA,GAAAF,sBAAA,CAAAF,OAAA;AAEA,IAAAK,OAAA,GAAAL,OAAA;AAhDA;AACA;AACA;;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIM,oBAAoB,CAAC,CAAC;;AAE1B;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,uBAAuBA,CAACC,KAAK,EAAEC,kBAAkB,EAAE;EACjE,IAAIH,oBAAoB,EAAE;IACxB,OAAOA,oBAAoB;EAC7B;EAEAA,oBAAoB,GAAG,IAAII,qBAAY,CAACF,KAAK,EAAEC,kBAAkB,IAAIE,eAAM,CAACC,YAAY,CAAC;EAEzF,OAAON,oBAAoB;AAC7B;;AAEA;AACA;AACA;AACA;AACO,SAASO,yBAAyBA,CAAA,EAAG;EAC1CP,oBAAoB,GAAGQ,SAAS;AAClC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcP,qBAAY","ignoreList":[]}
|