@webex/calling 3.12.0-next.37 → 3.12.0-next.39

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.
Files changed (33) hide show
  1. package/dist/CallingClient/line/index.js +4 -1
  2. package/dist/CallingClient/line/index.js.map +1 -1
  3. package/dist/CallingClient/registration/register.js +21 -3
  4. package/dist/CallingClient/registration/register.js.map +1 -1
  5. package/dist/CallingClient/registration/types.js.map +1 -1
  6. package/dist/CallingClient/utils/request.js +7 -2
  7. package/dist/CallingClient/utils/request.js.map +1 -1
  8. package/dist/Contacts/ContactsClient.js +13 -11
  9. package/dist/Contacts/ContactsClient.js.map +1 -1
  10. package/dist/mobius-socket/config.js +1 -1
  11. package/dist/mobius-socket/config.js.map +1 -1
  12. package/dist/mobius-socket/mobius-socket-events.test.js +10 -3
  13. package/dist/mobius-socket/mobius-socket-events.test.js.map +1 -1
  14. package/dist/mobius-socket/mobius-socket.js +123 -82
  15. package/dist/mobius-socket/mobius-socket.js.map +1 -1
  16. package/dist/mobius-socket/mobius-socket.test.js +7 -0
  17. package/dist/mobius-socket/mobius-socket.test.js.map +1 -1
  18. package/dist/module/CallingClient/line/index.js +2 -2
  19. package/dist/module/CallingClient/registration/register.js +10 -2
  20. package/dist/module/CallingClient/utils/request.js +3 -0
  21. package/dist/module/Contacts/ContactsClient.js +1 -1
  22. package/dist/module/mobius-socket/config.js +1 -1
  23. package/dist/module/mobius-socket/mobius-socket.js +39 -18
  24. package/dist/types/CallingClient/line/index.d.ts +1 -1
  25. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  26. package/dist/types/CallingClient/registration/register.d.ts +1 -1
  27. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  28. package/dist/types/CallingClient/registration/types.d.ts +1 -1
  29. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  30. package/dist/types/CallingClient/utils/request.d.ts +1 -0
  31. package/dist/types/CallingClient/utils/request.d.ts.map +1 -1
  32. package/dist/types/mobius-socket/mobius-socket.d.ts.map +1 -1
  33. package/package.json +1 -1
@@ -238,15 +238,18 @@ var Line = exports.default = /*#__PURE__*/function (_Eventing) {
238
238
  key: "deregister",
239
239
  value: (function () {
240
240
  var _deregister = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
241
+ var closeMobiusWss,
242
+ _args3 = arguments;
241
243
  return _regenerator.default.wrap(function (_context3) {
242
244
  while (1) switch (_context3.prev = _context3.next) {
243
245
  case 0:
246
+ closeMobiusWss = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : false;
244
247
  _Logger.default.info(_constants.METHOD_START_MESSAGE, {
245
248
  file: _constants2.LINE_FILE,
246
249
  method: _constants2.METHODS.DEREGISTER
247
250
  });
248
251
  _context3.next = 1;
249
- return this.registration.deregister();
252
+ return this.registration.deregister(closeMobiusWss);
250
253
  case 1:
251
254
  this.registration.setStatus(_types.RegistrationStatus.IDLE);
252
255
  case 2:
@@ -1 +1 @@
1
- {"version":3,"names":["_uuid","require","_constants","_types","_types2","_constants2","_Logger","_interopRequireDefault","_registration","_impl","_LineError","_common","_SDKConnector","_types3","_callManager","_types4","_callSuper","t","o","e","_getPrototypeOf2","default","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","constructor","apply","Boolean","prototype","valueOf","call","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","set","has","TypeError","_classPrivateFieldGet","s","get","_assertClassBrand","_classPrivateFieldSet","r","n","arguments","length","_webex","_weakMap","_mutex","_sdkConnector","_primaryMobiusUris","_backupMobiusUris","Line","exports","_Eventing","userId","clientDeviceUri","mutex","primaryMobiusUris","backupMobiusUris","logLevel","serviceDataConfig","jwe","phoneNumber","extension","voicemail","_this","_classCallCheck2","_defineProperty2","event","deviceInfo","lineError","log","info","METHOD_START_MESSAGE","file","LINE_FILE","method","METHODS","LINE_EMITTER","LINE_EVENTS","REGISTERED","normalizeLine","emit","UNREGISTERED","RECONNECTED","RECONNECTING","ERROR","registration","getStatus","_this$registration$ge","getDeviceInfo","device","deviceId","dest","MAKE_CALL","match","address","VALID_PHONE_REGEX","_this$registration$ge2","_call","sanitizedNumber","replace","formattedDest","type","concat","callManager","createCall","CallDirection","OUTBOUND","lineId","getCallId","warn","err","LineError","ERROR_TYPE","CALL_ERROR","RegistrationStatus","ACTIVE","serviceData","indicator","ServiceIndicator","GUEST_CALLING","_this$registration$ge3","undefined","correlationId","getCall","uuid","SDKConnector","getWebex","CALLING","domain","validateServiceData","createRegistration","lineEmitter","setLogger","getCallManager","incomingCallListener","_inherits2","_createClass2","key","value","_register","_asyncToGenerator2","_regenerator","mark","_callee2","_this2","wrap","_context2","prev","next","REGISTER","runExclusive","_callee","_context","CONNECTING","setMobiusServers","triggerRegistration","stop","register","_deregister","_callee3","_context3","DEREGISTER","deregister","setStatus","IDLE","_device$addresses","keepaliveInterval","callKeepaliveInterval","rehomingIntervalMin","rehomingIntervalMax","voicePortalNumber","voicePortalExtension","mobiusDeviceId","mobiusUri","uri","lastSeen","sipAddresses","addresses","updateLine","getLoggingLevel","getLogLevel","getActiveMobiusUrl","_this3","INCOMING_CALL_LISTENER","on","LINE_EVENT_KEYS","INCOMING_CALL","callObj","Eventing"],"sources":["index.ts"],"sourcesContent":["import {Mutex} from 'async-mutex';\nimport {v4 as uuid} from 'uuid';\nimport {METHOD_START_MESSAGE} from '../../common/constants';\nimport {\n CallDetails,\n CallDirection,\n CorrelationId,\n IDeviceInfo,\n MobiusDeviceId,\n RegistrationStatus,\n ServiceData,\n ServiceIndicator,\n} from '../../common/types';\nimport {ILine, LINE_EVENTS} from './types';\nimport {LINE_FILE, METHODS, VALID_PHONE_REGEX} from '../constants';\nimport log from '../../Logger';\nimport {IRegistration} from '../registration/types';\nimport {createRegistration} from '../registration';\nimport {ISDKConnector, WebexSDK} from '../../SDKConnector/types';\nimport {CallingClientConfig} from '../types';\nimport {Eventing} from '../../Events/impl';\nimport {LineError} from '../../Errors/catalog/LineError';\nimport {LOGGER} from '../../Logger/types';\nimport {validateServiceData} from '../../common';\nimport SDKConnector from '../../SDKConnector';\nimport {LINE_EVENT_KEYS, LineEventTypes} from '../../Events/types';\nimport {ICall, ICallManager} from '../calling/types';\nimport {getCallManager} from '../calling/callManager';\nimport {ERROR_TYPE} from '../../Errors/types';\n\nexport default class Line extends Eventing<LineEventTypes> implements ILine {\n #webex: WebexSDK;\n\n #mutex: Mutex;\n\n #sdkConnector: ISDKConnector;\n\n public registration: IRegistration;\n\n public userId: string;\n\n public clientDeviceUri: string;\n\n public lineId: string;\n\n public mobiusDeviceId?: string;\n\n private mobiusUri?: string;\n\n public phoneNumber?: string;\n\n public extension?: string;\n\n public sipAddresses: string[] = [];\n\n public voicemail?: string;\n\n public lastSeen?: string;\n\n public keepaliveInterval?: number;\n\n public callKeepaliveInterval?: number;\n\n public rehomingIntervalMin?: number;\n\n public rehomingIntervalMax?: number;\n\n public voicePortalNumber?: number;\n\n public voicePortalExtension?: number;\n\n private callManager: ICallManager;\n\n private serviceData: ServiceData;\n\n #primaryMobiusUris: string[];\n\n #backupMobiusUris: string[];\n\n constructor(\n userId: string,\n clientDeviceUri: string,\n mutex: Mutex,\n primaryMobiusUris: string[],\n backupMobiusUris: string[],\n logLevel: LOGGER,\n serviceDataConfig?: CallingClientConfig['serviceData'],\n jwe?: string,\n phoneNumber?: string,\n extension?: string,\n voicemail?: string\n ) {\n super();\n this.lineId = uuid();\n this.userId = userId;\n this.clientDeviceUri = clientDeviceUri;\n this.phoneNumber = phoneNumber;\n this.extension = extension;\n this.voicemail = voicemail;\n\n this.#sdkConnector = SDKConnector;\n this.#webex = this.#sdkConnector.getWebex();\n this.#mutex = mutex;\n\n this.#primaryMobiusUris = primaryMobiusUris;\n this.#backupMobiusUris = backupMobiusUris;\n\n this.serviceData = serviceDataConfig?.indicator\n ? serviceDataConfig\n : {indicator: ServiceIndicator.CALLING, domain: ''};\n\n validateServiceData(this.serviceData);\n\n this.registration = createRegistration(\n this.#webex,\n this.serviceData,\n this.#mutex,\n this.lineEmitter,\n logLevel,\n jwe\n );\n\n log.setLogger(logLevel, LINE_FILE);\n\n this.callManager = getCallManager(this.#webex, this.serviceData.indicator);\n\n this.incomingCallListener();\n }\n\n /**\n * Wrapper to for device registration.\n */\n public async register() {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.REGISTER,\n });\n await this.#mutex.runExclusive(async () => {\n this.emit(LINE_EVENTS.CONNECTING);\n\n this.registration.setMobiusServers(this.#primaryMobiusUris, this.#backupMobiusUris);\n await this.registration.triggerRegistration();\n });\n }\n\n /**\n * Wrapper to for device deregister.\n */\n public async deregister() {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.DEREGISTER,\n });\n await this.registration.deregister();\n this.registration.setStatus(RegistrationStatus.IDLE);\n }\n\n /**\n * To normalize line class with Mobius response\n */\n private normalizeLine(deviceInfo: IDeviceInfo) {\n const {\n device,\n keepaliveInterval,\n callKeepaliveInterval,\n rehomingIntervalMin,\n rehomingIntervalMax,\n voicePortalNumber,\n voicePortalExtension,\n } = deviceInfo;\n\n this.mobiusDeviceId = device?.deviceId;\n this.mobiusUri = device?.uri;\n this.lastSeen = device?.lastSeen;\n this.sipAddresses = device?.addresses ?? [];\n this.keepaliveInterval = keepaliveInterval;\n this.callKeepaliveInterval = callKeepaliveInterval;\n this.rehomingIntervalMin = rehomingIntervalMin;\n this.rehomingIntervalMax = rehomingIntervalMax;\n this.voicePortalNumber = voicePortalNumber;\n this.voicePortalExtension = voicePortalExtension;\n if (this.mobiusDeviceId) {\n this.callManager.updateLine(this.mobiusDeviceId, this);\n }\n }\n\n /**\n * Line events emitter\n */\n public lineEmitter = (event: LINE_EVENTS, deviceInfo?: IDeviceInfo, lineError?: LineError) => {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.LINE_EMITTER,\n });\n switch (event) {\n case LINE_EVENTS.REGISTERED:\n if (deviceInfo) {\n this.normalizeLine(deviceInfo);\n this.emit(event, this);\n }\n break;\n case LINE_EVENTS.UNREGISTERED:\n case LINE_EVENTS.RECONNECTED:\n case LINE_EVENTS.RECONNECTING:\n this.emit(event);\n break;\n case LINE_EVENTS.ERROR:\n if (lineError) {\n this.emit(event, lineError);\n }\n break;\n default:\n break;\n }\n };\n\n /**\n * To get the current log Level.\n */\n public getLoggingLevel(): LOGGER {\n return log.getLogLevel();\n }\n\n /**\n * To get active url of Mobius.\n */\n public getActiveMobiusUrl(): string {\n return this.registration.getActiveMobiusUrl();\n }\n\n /**\n * Gets registration status\n */\n public getStatus = (): RegistrationStatus => this.registration.getStatus();\n\n /**\n * Gets device id\n */\n public getDeviceId = (): MobiusDeviceId | undefined =>\n this.registration.getDeviceInfo().device?.deviceId;\n\n /**\n * Initiates a call to the specified destination.\n * @param dest - The call details including destination information.\n */\n public makeCall = (dest?: CallDetails): ICall | undefined => {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n let call;\n\n if (dest) {\n const match = dest.address.match(VALID_PHONE_REGEX);\n\n if (match && match[0].length === dest.address.length) {\n const sanitizedNumber = dest.address\n .replace(/[^[*+]\\d#]/gi, '')\n .replace(/\\s+/gi, '')\n .replace(/-/gi, '');\n const formattedDest = {\n type: dest.type,\n address: `tel:${sanitizedNumber}`,\n };\n\n call = this.callManager.createCall(\n CallDirection.OUTBOUND,\n this.registration.getDeviceInfo().device?.deviceId as string,\n this.lineId,\n formattedDest\n );\n log.log(`New call created, callId: ${call?.getCallId()}`, {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n } else {\n log.warn('Invalid phone number detected', {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n\n const err = new LineError(\n 'An invalid phone number was detected. Check the number and try again.',\n {},\n ERROR_TYPE.CALL_ERROR,\n RegistrationStatus.ACTIVE\n );\n\n this.emit(LINE_EVENTS.ERROR, err);\n }\n\n return call;\n }\n if (this.serviceData.indicator === ServiceIndicator.GUEST_CALLING) {\n call = this.callManager.createCall(\n CallDirection.OUTBOUND,\n this.registration.getDeviceInfo().device?.deviceId as string,\n this.lineId\n );\n log.info(`New guest call created, callId: ${call.getCallId()}`, {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n\n return call;\n }\n\n return undefined;\n };\n\n /**\n * An Incoming Call listener.\n */\n private incomingCallListener() {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.INCOMING_CALL_LISTENER,\n });\n log.info('Listening for incoming calls... ', {\n file: LINE_FILE,\n method: METHODS.INCOMING_CALL_LISTENER,\n });\n this.callManager.on(LINE_EVENT_KEYS.INCOMING_CALL, (callObj: ICall) => {\n this.emit(LINE_EVENTS.INCOMING_CALL, callObj);\n });\n }\n\n /**\n * @param callId -.\n * @param correlationId -.\n */\n public getCall = (correlationId: CorrelationId): ICall => {\n return this.callManager.getCall(correlationId);\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_uuid","require","_constants","_types","_types2","_constants2","_Logger","_interopRequireDefault","_registration","_impl","_LineError","_common","_SDKConnector","_types3","_callManager","_types4","_callSuper","t","o","e","_getPrototypeOf2","default","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","constructor","apply","Boolean","prototype","valueOf","call","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","set","has","TypeError","_classPrivateFieldGet","s","get","_assertClassBrand","_classPrivateFieldSet","r","n","arguments","length","_webex","_weakMap","_mutex","_sdkConnector","_primaryMobiusUris","_backupMobiusUris","Line","exports","_Eventing","userId","clientDeviceUri","mutex","primaryMobiusUris","backupMobiusUris","logLevel","serviceDataConfig","jwe","phoneNumber","extension","voicemail","_this","_classCallCheck2","_defineProperty2","event","deviceInfo","lineError","log","info","METHOD_START_MESSAGE","file","LINE_FILE","method","METHODS","LINE_EMITTER","LINE_EVENTS","REGISTERED","normalizeLine","emit","UNREGISTERED","RECONNECTED","RECONNECTING","ERROR","registration","getStatus","_this$registration$ge","getDeviceInfo","device","deviceId","dest","MAKE_CALL","match","address","VALID_PHONE_REGEX","_this$registration$ge2","_call","sanitizedNumber","replace","formattedDest","type","concat","callManager","createCall","CallDirection","OUTBOUND","lineId","getCallId","warn","err","LineError","ERROR_TYPE","CALL_ERROR","RegistrationStatus","ACTIVE","serviceData","indicator","ServiceIndicator","GUEST_CALLING","_this$registration$ge3","undefined","correlationId","getCall","uuid","SDKConnector","getWebex","CALLING","domain","validateServiceData","createRegistration","lineEmitter","setLogger","getCallManager","incomingCallListener","_inherits2","_createClass2","key","value","_register","_asyncToGenerator2","_regenerator","mark","_callee2","_this2","wrap","_context2","prev","next","REGISTER","runExclusive","_callee","_context","CONNECTING","setMobiusServers","triggerRegistration","stop","register","_deregister","_callee3","closeMobiusWss","_args3","_context3","DEREGISTER","deregister","setStatus","IDLE","_device$addresses","keepaliveInterval","callKeepaliveInterval","rehomingIntervalMin","rehomingIntervalMax","voicePortalNumber","voicePortalExtension","mobiusDeviceId","mobiusUri","uri","lastSeen","sipAddresses","addresses","updateLine","getLoggingLevel","getLogLevel","getActiveMobiusUrl","_this3","INCOMING_CALL_LISTENER","on","LINE_EVENT_KEYS","INCOMING_CALL","callObj","Eventing"],"sources":["index.ts"],"sourcesContent":["import {Mutex} from 'async-mutex';\nimport {v4 as uuid} from 'uuid';\nimport {METHOD_START_MESSAGE} from '../../common/constants';\nimport {\n CallDetails,\n CallDirection,\n CorrelationId,\n IDeviceInfo,\n MobiusDeviceId,\n RegistrationStatus,\n ServiceData,\n ServiceIndicator,\n} from '../../common/types';\nimport {ILine, LINE_EVENTS} from './types';\nimport {LINE_FILE, METHODS, VALID_PHONE_REGEX} from '../constants';\nimport log from '../../Logger';\nimport {IRegistration} from '../registration/types';\nimport {createRegistration} from '../registration';\nimport {ISDKConnector, WebexSDK} from '../../SDKConnector/types';\nimport {CallingClientConfig} from '../types';\nimport {Eventing} from '../../Events/impl';\nimport {LineError} from '../../Errors/catalog/LineError';\nimport {LOGGER} from '../../Logger/types';\nimport {validateServiceData} from '../../common';\nimport SDKConnector from '../../SDKConnector';\nimport {LINE_EVENT_KEYS, LineEventTypes} from '../../Events/types';\nimport {ICall, ICallManager} from '../calling/types';\nimport {getCallManager} from '../calling/callManager';\nimport {ERROR_TYPE} from '../../Errors/types';\n\nexport default class Line extends Eventing<LineEventTypes> implements ILine {\n #webex: WebexSDK;\n\n #mutex: Mutex;\n\n #sdkConnector: ISDKConnector;\n\n public registration: IRegistration;\n\n public userId: string;\n\n public clientDeviceUri: string;\n\n public lineId: string;\n\n public mobiusDeviceId?: string;\n\n private mobiusUri?: string;\n\n public phoneNumber?: string;\n\n public extension?: string;\n\n public sipAddresses: string[] = [];\n\n public voicemail?: string;\n\n public lastSeen?: string;\n\n public keepaliveInterval?: number;\n\n public callKeepaliveInterval?: number;\n\n public rehomingIntervalMin?: number;\n\n public rehomingIntervalMax?: number;\n\n public voicePortalNumber?: number;\n\n public voicePortalExtension?: number;\n\n private callManager: ICallManager;\n\n private serviceData: ServiceData;\n\n #primaryMobiusUris: string[];\n\n #backupMobiusUris: string[];\n\n constructor(\n userId: string,\n clientDeviceUri: string,\n mutex: Mutex,\n primaryMobiusUris: string[],\n backupMobiusUris: string[],\n logLevel: LOGGER,\n serviceDataConfig?: CallingClientConfig['serviceData'],\n jwe?: string,\n phoneNumber?: string,\n extension?: string,\n voicemail?: string\n ) {\n super();\n this.lineId = uuid();\n this.userId = userId;\n this.clientDeviceUri = clientDeviceUri;\n this.phoneNumber = phoneNumber;\n this.extension = extension;\n this.voicemail = voicemail;\n\n this.#sdkConnector = SDKConnector;\n this.#webex = this.#sdkConnector.getWebex();\n this.#mutex = mutex;\n\n this.#primaryMobiusUris = primaryMobiusUris;\n this.#backupMobiusUris = backupMobiusUris;\n\n this.serviceData = serviceDataConfig?.indicator\n ? serviceDataConfig\n : {indicator: ServiceIndicator.CALLING, domain: ''};\n\n validateServiceData(this.serviceData);\n\n this.registration = createRegistration(\n this.#webex,\n this.serviceData,\n this.#mutex,\n this.lineEmitter,\n logLevel,\n jwe\n );\n\n log.setLogger(logLevel, LINE_FILE);\n\n this.callManager = getCallManager(this.#webex, this.serviceData.indicator);\n\n this.incomingCallListener();\n }\n\n /**\n * Wrapper to for device registration.\n */\n public async register() {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.REGISTER,\n });\n await this.#mutex.runExclusive(async () => {\n this.emit(LINE_EVENTS.CONNECTING);\n\n this.registration.setMobiusServers(this.#primaryMobiusUris, this.#backupMobiusUris);\n await this.registration.triggerRegistration();\n });\n }\n\n /**\n * Wrapper to for device deregister.\n */\n public async deregister(closeMobiusWss = false) {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.DEREGISTER,\n });\n await this.registration.deregister(closeMobiusWss);\n this.registration.setStatus(RegistrationStatus.IDLE);\n }\n\n /**\n * To normalize line class with Mobius response\n */\n private normalizeLine(deviceInfo: IDeviceInfo) {\n const {\n device,\n keepaliveInterval,\n callKeepaliveInterval,\n rehomingIntervalMin,\n rehomingIntervalMax,\n voicePortalNumber,\n voicePortalExtension,\n } = deviceInfo;\n\n this.mobiusDeviceId = device?.deviceId;\n this.mobiusUri = device?.uri;\n this.lastSeen = device?.lastSeen;\n this.sipAddresses = device?.addresses ?? [];\n this.keepaliveInterval = keepaliveInterval;\n this.callKeepaliveInterval = callKeepaliveInterval;\n this.rehomingIntervalMin = rehomingIntervalMin;\n this.rehomingIntervalMax = rehomingIntervalMax;\n this.voicePortalNumber = voicePortalNumber;\n this.voicePortalExtension = voicePortalExtension;\n if (this.mobiusDeviceId) {\n this.callManager.updateLine(this.mobiusDeviceId, this);\n }\n }\n\n /**\n * Line events emitter\n */\n public lineEmitter = (event: LINE_EVENTS, deviceInfo?: IDeviceInfo, lineError?: LineError) => {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.LINE_EMITTER,\n });\n switch (event) {\n case LINE_EVENTS.REGISTERED:\n if (deviceInfo) {\n this.normalizeLine(deviceInfo);\n this.emit(event, this);\n }\n break;\n case LINE_EVENTS.UNREGISTERED:\n case LINE_EVENTS.RECONNECTED:\n case LINE_EVENTS.RECONNECTING:\n this.emit(event);\n break;\n case LINE_EVENTS.ERROR:\n if (lineError) {\n this.emit(event, lineError);\n }\n break;\n default:\n break;\n }\n };\n\n /**\n * To get the current log Level.\n */\n public getLoggingLevel(): LOGGER {\n return log.getLogLevel();\n }\n\n /**\n * To get active url of Mobius.\n */\n public getActiveMobiusUrl(): string {\n return this.registration.getActiveMobiusUrl();\n }\n\n /**\n * Gets registration status\n */\n public getStatus = (): RegistrationStatus => this.registration.getStatus();\n\n /**\n * Gets device id\n */\n public getDeviceId = (): MobiusDeviceId | undefined =>\n this.registration.getDeviceInfo().device?.deviceId;\n\n /**\n * Initiates a call to the specified destination.\n * @param dest - The call details including destination information.\n */\n public makeCall = (dest?: CallDetails): ICall | undefined => {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n let call;\n\n if (dest) {\n const match = dest.address.match(VALID_PHONE_REGEX);\n\n if (match && match[0].length === dest.address.length) {\n const sanitizedNumber = dest.address\n .replace(/[^[*+]\\d#]/gi, '')\n .replace(/\\s+/gi, '')\n .replace(/-/gi, '');\n const formattedDest = {\n type: dest.type,\n address: `tel:${sanitizedNumber}`,\n };\n\n call = this.callManager.createCall(\n CallDirection.OUTBOUND,\n this.registration.getDeviceInfo().device?.deviceId as string,\n this.lineId,\n formattedDest\n );\n log.log(`New call created, callId: ${call?.getCallId()}`, {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n } else {\n log.warn('Invalid phone number detected', {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n\n const err = new LineError(\n 'An invalid phone number was detected. Check the number and try again.',\n {},\n ERROR_TYPE.CALL_ERROR,\n RegistrationStatus.ACTIVE\n );\n\n this.emit(LINE_EVENTS.ERROR, err);\n }\n\n return call;\n }\n if (this.serviceData.indicator === ServiceIndicator.GUEST_CALLING) {\n call = this.callManager.createCall(\n CallDirection.OUTBOUND,\n this.registration.getDeviceInfo().device?.deviceId as string,\n this.lineId\n );\n log.info(`New guest call created, callId: ${call.getCallId()}`, {\n file: LINE_FILE,\n method: METHODS.MAKE_CALL,\n });\n\n return call;\n }\n\n return undefined;\n };\n\n /**\n * An Incoming Call listener.\n */\n private incomingCallListener() {\n log.info(METHOD_START_MESSAGE, {\n file: LINE_FILE,\n method: METHODS.INCOMING_CALL_LISTENER,\n });\n log.info('Listening for incoming calls... ', {\n file: LINE_FILE,\n method: METHODS.INCOMING_CALL_LISTENER,\n });\n this.callManager.on(LINE_EVENT_KEYS.INCOMING_CALL, (callObj: ICall) => {\n this.emit(LINE_EVENTS.INCOMING_CALL, callObj);\n });\n }\n\n /**\n * @param callId -.\n * @param correlationId -.\n */\n public getCall = (correlationId: CorrelationId): ICall => {\n return this.callManager.getCall(correlationId);\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -334,7 +334,7 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
334
334
  };
335
335
  _Logger.default.info("".concat(_constants.METHOD_START_MESSAGE, " - caller: ").concat(caller, ", activeMobiusUrl: ").concat(this.activeMobiusUrl), loggerContext);
336
336
  abort = false;
337
- if (!this.apiRequest.isSocketEnabled()) {
337
+ if (!(this.apiRequest.isSocketEnabled() && "".concat(this.apiRequest.getConnectedWebSocketUrl(), "/") !== this.activeMobiusUrl)) {
338
338
  _context5.next = 1;
339
339
  break;
340
340
  }
@@ -1707,10 +1707,16 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1707
1707
  key: "deregister",
1708
1708
  value: function () {
1709
1709
  var _deregister = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee26() {
1710
- var loggerContext, _this$deviceInfo$devi2, _this$deviceInfo$devi3, _t8;
1710
+ var closeMobiusWss,
1711
+ loggerContext,
1712
+ _this$deviceInfo$devi2,
1713
+ _this$deviceInfo$devi3,
1714
+ _args27 = arguments,
1715
+ _t8;
1711
1716
  return _regenerator.default.wrap(function (_context27) {
1712
1717
  while (1) switch (_context27.prev = _context27.next) {
1713
1718
  case 0:
1719
+ closeMobiusWss = _args27.length > 0 && _args27[0] !== undefined ? _args27[0] : false;
1714
1720
  loggerContext = {
1715
1721
  file: _constants2.REGISTRATION_FILE,
1716
1722
  method: _constants2.METHODS.DEREGISTER
@@ -1728,10 +1734,22 @@ var Registration = exports.Registration = /*#__PURE__*/function () {
1728
1734
  _t8 = _context27["catch"](1);
1729
1735
  _Logger.default.warn("Delete failed with Mobius: ".concat((0, _stringify.default)(_t8)), loggerContext);
1730
1736
  case 4:
1737
+ if (!closeMobiusWss) {
1738
+ _context27.next = 6;
1739
+ break;
1740
+ }
1741
+ _context27.next = 5;
1742
+ return this.apiRequest.disconnectFromMobiusSocket({
1743
+ code: 3050,
1744
+ reason: 'done (permanent)'
1745
+ });
1746
+ case 5:
1747
+ _Logger.default.log('Mobius socket disconnect complete after deregistration', loggerContext);
1748
+ case 6:
1731
1749
  this.clearKeepaliveTimer();
1732
1750
  this.setStatus(_types2.RegistrationStatus.INACTIVE);
1733
1751
  this.clearFailoverState();
1734
- case 5:
1752
+ case 7:
1735
1753
  case "end":
1736
1754
  return _context27.stop();
1737
1755
  }