@webex/calling 3.12.0-llmrefactor.1 → 3.12.0-llmrefactor.3

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 (39) hide show
  1. package/dist/CallingClient/constants.js +4 -2
  2. package/dist/CallingClient/constants.js.map +1 -1
  3. package/dist/CallingClient/line/index.js +4 -0
  4. package/dist/CallingClient/line/index.js.map +1 -1
  5. package/dist/CallingClient/line/line.test.js +47 -10
  6. package/dist/CallingClient/line/line.test.js.map +1 -1
  7. package/dist/CallingClient/registration/register.js +466 -390
  8. package/dist/CallingClient/registration/register.js.map +1 -1
  9. package/dist/CallingClient/registration/register.test.js +349 -80
  10. package/dist/CallingClient/registration/register.test.js.map +1 -1
  11. package/dist/CallingClient/registration/types.js +26 -0
  12. package/dist/CallingClient/registration/types.js.map +1 -1
  13. package/dist/Errors/types.js +2 -0
  14. package/dist/Errors/types.js.map +1 -1
  15. package/dist/Events/types.js.map +1 -1
  16. package/dist/common/Utils.js +85 -50
  17. package/dist/common/Utils.js.map +1 -1
  18. package/dist/common/Utils.test.js +270 -195
  19. package/dist/common/Utils.test.js.map +1 -1
  20. package/dist/module/CallingClient/constants.js +2 -0
  21. package/dist/module/CallingClient/line/index.js +2 -0
  22. package/dist/module/CallingClient/registration/register.js +36 -10
  23. package/dist/module/CallingClient/registration/types.js +5 -1
  24. package/dist/module/Errors/types.js +2 -0
  25. package/dist/module/common/Utils.js +26 -8
  26. package/dist/types/CallingClient/constants.d.ts +2 -0
  27. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  28. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  29. package/dist/types/CallingClient/registration/register.d.ts +2 -1
  30. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  31. package/dist/types/CallingClient/registration/types.d.ts +23 -0
  32. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  33. package/dist/types/Errors/types.d.ts +2 -0
  34. package/dist/types/Errors/types.d.ts.map +1 -1
  35. package/dist/types/Events/types.d.ts +1 -1
  36. package/dist/types/Events/types.d.ts.map +1 -1
  37. package/dist/types/common/Utils.d.ts +2 -5
  38. package/dist/types/common/Utils.d.ts.map +1 -1
  39. package/package.json +10 -10
@@ -4,8 +4,8 @@ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/defi
4
4
  _Object$defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.URL_ENDPOINT = exports.TYPE = exports.TRANSPORT = exports.TRANSFER_ENDPOINT = exports.TOTAL_SAMPLES_DURATION = exports.TOTAL_ROUND_TRIP_TIME = exports.TIMESTAMP = exports.TARGET_BIT_RATE = exports.SUPPLEMENTARY_SERVICES_TIMEOUT = exports.SPARK_USER_AGENT = exports.SELECTED_CANDIDATE_PAIR_ID = exports.SEC_TO_MSEC_MFACTOR = exports.RTP_TX_STAT = exports.RTP_RX_STAT = exports.RTC_ICE_CANDIDATE_PAIR = exports.RTC_ICE_CANDIDATE = exports.RTC_CODEC = exports.ROUND_TRIP_TIME_MEASUREMENTS = exports.RETRY_TIMER_UPPER_LIMIT = exports.RESUME_ENDPOINT = exports.REQUEST_FILE = exports.REPO_NAME = exports.REMOTE_INBOUND_RTP = exports.REG_TRY_BACKUP_TIMER_VAL_IN_SEC = exports.REG_RANDOM_T_FACTOR_UPPER_LIMIT = exports.REG_FAILBACK_429_MAX_RETRIES = exports.REG_429_RETRY_UTIL = exports.REGISTRATION_UTIL = exports.REGISTRATION_FILE = exports.REGISTER_UTIL = exports.REGISTER_RETRY_TIMEOUT = exports.RECONNECT_UTIL = exports.RECONNECT_ON_FAILURE_UTIL = exports.PACKETS_SENT = exports.PACKETS_RECEIVED = exports.PACKETS_LOST = exports.PACKETS_DISCARDED = exports.OUTBOUND_RTP = exports.OUTBOUND_CODEC_MATCH = exports.NOISE_REDUCTION_EFFECT = exports.NETWORK_TYPE = exports.NETWORK_FLAP_TIMEOUT = exports.MOBIUS_US_PROD = exports.MOBIUS_US_INT = exports.MOBIUS_SOCKET_MAPPER_FILE = exports.MOBIUS_EU_PROD = exports.MOBIUS_EU_INT = exports.MINUTES_TO_SEC_MFACTOR = exports.MIME_TYPE = exports.METRIC_FILE = exports.METHODS = exports.MEDIA_SOURCE = exports.MEDIA_ID = exports.MEDIA_ENDPOINT_RESOURCE = exports.MAX_CALL_KEEPALIVE_RETRY_COUNT = exports.LOCAL_CANDIDATE_ID = exports.LINE_FILE = exports.KEEPALIVE_UTIL = exports.JITTER_BUFFER_EMITTED_COUNT = exports.JITTER_BUFFER_DELAY = exports.IP_ENDPOINT = exports.INITIAL_SEQ_NUMBER = exports.INBOUND_RTP = exports.INBOUND_CODEC_MATCH = exports.ICE_LITE_CANDIDATES_TIMEOUT = exports.ICE_CANDIDATES_TIMEOUT = exports.HOLD_ENDPOINT = exports.GET_MOBIUS_SERVERS_UTIL = exports.FAILOVER_UTIL = exports.FAILOVER_CACHE_PREFIX = exports.FAILBACK_UTIL = exports.DUMMY_MOBIUS_URL = exports.DUMMY_METRICS = exports.DISCOVERY_URL = exports.DEVICES_ENDPOINT_RESOURCE = exports.DEFAULT_SESSION_TIMER = exports.DEFAULT_REHOMING_INTERVAL_MIN = exports.DEFAULT_REHOMING_INTERVAL_MAX = exports.DEFAULT_LOCAL_CALL_ID = exports.DEFAULT_KEEPALIVE_INTERVAL = exports.CRLF = exports.CODEC_ID = exports.CISCO_DEVICE_URL = exports.CALL_TRANSFER_SERVICE = exports.CALL_STATUS_RESOURCE = exports.CALL_MANAGER_FILE = exports.CALL_HOLD_SERVICE = exports.CALL_FILE = exports.CALL_ENDPOINT_RESOURCE = exports.CALLS_ENDPOINT_RESOURCE = exports.CALLS_CLEARED_HANDLER_UTIL = exports.CALLING_USER_AGENT = exports.CALLING_CLIENT_FILE = exports.CALLER_ID_FILE = exports.BYTES_SENT = exports.BYTES_RECEIVED = exports.BASE_REG_TIMER_MFACTOR = exports.BASE_REG_RETRY_TIMER_VAL_IN_SEC = exports.API_V1 = exports.ACTIVE_MOBIUS_STORAGE_KEY = void 0;
8
- exports.WS_FEATURE_FLAG_FILE = exports.WEB_AGENT = exports.WEBEX_WEB_CLIENT = exports.WEBEX = exports.WCC_CALLING_RTMS_DOMAIN = exports.VERSION = exports.VALID_PHONE_REGEX = exports.UTILS_FILE = exports.USER_AGENT_VERSION = void 0;
7
+ exports.TYPE = exports.TRANSPORT = exports.TRANSFER_ENDPOINT = exports.TOTAL_SAMPLES_DURATION = exports.TOTAL_ROUND_TRIP_TIME = exports.TIMESTAMP = exports.TARGET_BIT_RATE = exports.SUPPLEMENTARY_SERVICES_TIMEOUT = exports.SPARK_USER_AGENT = exports.SESSION_SUPERSEDED_MESSAGE = exports.SELECTED_CANDIDATE_PAIR_ID = exports.SEC_TO_MSEC_MFACTOR = exports.RTP_TX_STAT = exports.RTP_RX_STAT = exports.RTC_ICE_CANDIDATE_PAIR = exports.RTC_ICE_CANDIDATE = exports.RTC_CODEC = exports.ROUND_TRIP_TIME_MEASUREMENTS = exports.RETRY_TIMER_UPPER_LIMIT = exports.RESUME_ENDPOINT = exports.REQUEST_FILE = exports.REPO_NAME = exports.REMOTE_INBOUND_RTP = exports.REG_TRY_BACKUP_TIMER_VAL_IN_SEC = exports.REG_RANDOM_T_FACTOR_UPPER_LIMIT = exports.REG_FAILBACK_429_MAX_RETRIES = exports.REG_429_RETRY_UTIL = exports.REGISTRATION_UTIL = exports.REGISTRATION_FILE = exports.REGISTER_UTIL = exports.REGISTER_RETRY_TIMEOUT = exports.RECONNECT_UTIL = exports.RECONNECT_ON_FAILURE_UTIL = exports.PACKETS_SENT = exports.PACKETS_RECEIVED = exports.PACKETS_LOST = exports.PACKETS_DISCARDED = exports.OUTBOUND_RTP = exports.OUTBOUND_CODEC_MATCH = exports.NOISE_REDUCTION_EFFECT = exports.NETWORK_TYPE = exports.NETWORK_FLAP_TIMEOUT = exports.MOBIUS_US_PROD = exports.MOBIUS_US_INT = exports.MOBIUS_SOCKET_MAPPER_FILE = exports.MOBIUS_EU_PROD = exports.MOBIUS_EU_INT = exports.MINUTES_TO_SEC_MFACTOR = exports.MIME_TYPE = exports.METRIC_FILE = exports.METHODS = exports.MEDIA_SOURCE = exports.MEDIA_ID = exports.MEDIA_ENDPOINT_RESOURCE = exports.MAX_CALL_KEEPALIVE_RETRY_COUNT = exports.LOCAL_CANDIDATE_ID = exports.LINE_FILE = exports.KEEPALIVE_UTIL = exports.JITTER_BUFFER_EMITTED_COUNT = exports.JITTER_BUFFER_DELAY = exports.IP_ENDPOINT = exports.INITIAL_SEQ_NUMBER = exports.INBOUND_RTP = exports.INBOUND_CODEC_MATCH = exports.ICE_LITE_CANDIDATES_TIMEOUT = exports.ICE_CANDIDATES_TIMEOUT = exports.HOLD_ENDPOINT = exports.GET_MOBIUS_SERVERS_UTIL = exports.FAILOVER_UTIL = exports.FAILOVER_CACHE_PREFIX = exports.FAILBACK_UTIL = exports.DUMMY_MOBIUS_URL = exports.DUMMY_METRICS = exports.DISCOVERY_URL = exports.DEVICES_ENDPOINT_RESOURCE = exports.DEFAULT_SESSION_TIMER = exports.DEFAULT_REHOMING_INTERVAL_MIN = exports.DEFAULT_REHOMING_INTERVAL_MAX = exports.DEFAULT_LOCAL_CALL_ID = exports.DEFAULT_KEEPALIVE_INTERVAL = exports.CRLF = exports.CODEC_ID = exports.CISCO_DEVICE_URL = exports.CALL_TRANSFER_SERVICE = exports.CALL_STATUS_RESOURCE = exports.CALL_MANAGER_FILE = exports.CALL_HOLD_SERVICE = exports.CALL_FILE = exports.CALL_ENDPOINT_RESOURCE = exports.CALLS_ENDPOINT_RESOURCE = exports.CALLS_CLEARED_HANDLER_UTIL = exports.CALLING_USER_AGENT = exports.CALLING_CLIENT_FILE = exports.CALLER_ID_FILE = exports.BYTES_SENT = exports.BYTES_RECEIVED = exports.BASE_REG_TIMER_MFACTOR = exports.BASE_REG_RETRY_TIMER_VAL_IN_SEC = exports.API_V1 = exports.ACTIVE_MOBIUS_STORAGE_KEY = void 0;
8
+ exports.WS_FEATURE_FLAG_FILE = exports.WEB_AGENT = exports.WEBEX_WEB_CLIENT = exports.WEBEX = exports.WCC_CALLING_RTMS_DOMAIN = exports.VERSION = exports.VALID_PHONE_REGEX = exports.UTILS_FILE = exports.USER_AGENT_VERSION = exports.URL_ENDPOINT = void 0;
9
9
  var VERSION = exports.VERSION = 'unknown';
10
10
  var USER_AGENT_VERSION = exports.USER_AGENT_VERSION = 'beta';
11
11
  var REPO_NAME = exports.REPO_NAME = 'webex-calling';
@@ -141,6 +141,7 @@ var ICE_CANDIDATES_TIMEOUT = exports.ICE_CANDIDATES_TIMEOUT = 3000;
141
141
  // Reduced ICE candidates timeout used for ice-lite offers.
142
142
  var ICE_LITE_CANDIDATES_TIMEOUT = exports.ICE_LITE_CANDIDATES_TIMEOUT = 500;
143
143
  var WCC_CALLING_RTMS_DOMAIN = exports.WCC_CALLING_RTMS_DOMAIN = 'wcc-calling-rtms-domain';
144
+ var SESSION_SUPERSEDED_MESSAGE = exports.SESSION_SUPERSEDED_MESSAGE = 'This calling session has been superseded by another registration for the same user, for example calling opened in another browser tab or device. Calling is no longer available on this session.';
144
145
 
145
146
  // Define constants for method names
146
147
  var METHODS = exports.METHODS = {
@@ -263,6 +264,7 @@ var METHODS = exports.METHODS = {
263
264
  RESTART_REGISTRATION: 'restartRegistration',
264
265
  TRIGGER_REGISTRATION: 'triggerRegistration',
265
266
  HANDLE_404_KEEPALIVE_FAILURE: 'handle404KeepaliveFailure',
267
+ HANDLE_409_KEEPALIVE_FAILURE: 'handle409KeepaliveFailure',
266
268
  INITIATE_FAILBACK: 'initiateFailback',
267
269
  EXECUTE_FAILBACK: 'executeFailback',
268
270
  GET_RTMS_DOMAIN: 'getRTMSDomain'
@@ -1 +1 @@
1
- {"version":3,"names":["VERSION","exports","USER_AGENT_VERSION","REPO_NAME","CALLING_USER_AGENT","concat","CALL_ENDPOINT_RESOURCE","CALL_STATUS_RESOURCE","CALLS_ENDPOINT_RESOURCE","CISCO_DEVICE_URL","CRLF","DEFAULT_KEEPALIVE_INTERVAL","DEFAULT_LOCAL_CALL_ID","DEFAULT_REHOMING_INTERVAL_MAX","DEFAULT_REHOMING_INTERVAL_MIN","DEFAULT_SESSION_TIMER","MAX_CALL_KEEPALIVE_RETRY_COUNT","DEVICES_ENDPOINT_RESOURCE","DISCOVERY_URL","DUMMY_METRICS","Dur","Pkt","Oct","LatePkt","LostPkt","AvgJit","VQMetrics","VoRxCodec","VoPktSizeMs","maxJitter","VoOneWayDelayMs","networkType","hwType","VoTxCodec","rtpBitRate","DUMMY_MOBIUS_URL","IP_ENDPOINT","INITIAL_SEQ_NUMBER","MEDIA_ENDPOINT_RESOURCE","NETWORK_FLAP_TIMEOUT","CALL_HOLD_SERVICE","CALL_TRANSFER_SERVICE","HOLD_ENDPOINT","TRANSFER_ENDPOINT","RESUME_ENDPOINT","SPARK_USER_AGENT","REGISTER_RETRY_TIMEOUT","SUPPLEMENTARY_SERVICES_TIMEOUT","API_V1","URL_ENDPOINT","VALID_PHONE_REGEX","WEB_AGENT","WEBEX","WEBEX_WEB_CLIENT","CALLER_ID_FILE","UTILS_FILE","CALLING_CLIENT_FILE","LINE_FILE","CALL_FILE","CALL_MANAGER_FILE","METRIC_FILE","REGISTRATION_FILE","REQUEST_FILE","MOBIUS_SOCKET_MAPPER_FILE","WS_FEATURE_FLAG_FILE","CODEC_ID","MEDIA_ID","RTC_ICE_CANDIDATE_PAIR","LOCAL_CANDIDATE_ID","RTC_ICE_CANDIDATE","NETWORK_TYPE","RTC_CODEC","INBOUND_CODEC_MATCH","OUTBOUND_CODEC_MATCH","MIME_TYPE","REMOTE_INBOUND_RTP","TOTAL_ROUND_TRIP_TIME","ROUND_TRIP_TIME_MEASUREMENTS","INBOUND_RTP","OUTBOUND_RTP","PACKETS_RECEIVED","PACKETS_SENT","PACKETS_LOST","PACKETS_DISCARDED","JITTER_BUFFER_DELAY","JITTER_BUFFER_EMITTED_COUNT","TIMESTAMP","TYPE","TRANSPORT","TARGET_BIT_RATE","MEDIA_SOURCE","BYTES_RECEIVED","BYTES_SENT","SELECTED_CANDIDATE_PAIR_ID","TOTAL_SAMPLES_DURATION","RTP_RX_STAT","RTP_TX_STAT","BASE_REG_TIMER_MFACTOR","BASE_REG_RETRY_TIMER_VAL_IN_SEC","SEC_TO_MSEC_MFACTOR","MINUTES_TO_SEC_MFACTOR","REG_RANDOM_T_FACTOR_UPPER_LIMIT","REG_TRY_BACKUP_TIMER_VAL_IN_SEC","REG_FAILBACK_429_MAX_RETRIES","RETRY_TIMER_UPPER_LIMIT","REGISTRATION_UTIL","REGISTER_UTIL","GET_MOBIUS_SERVERS_UTIL","KEEPALIVE_UTIL","RECONNECT_ON_FAILURE_UTIL","FAILBACK_UTIL","REG_429_RETRY_UTIL","FAILOVER_UTIL","CALLS_CLEARED_HANDLER_UTIL","RECONNECT_UTIL","NOISE_REDUCTION_EFFECT","MOBIUS_US_PROD","MOBIUS_EU_PROD","MOBIUS_US_INT","MOBIUS_EU_INT","FAILOVER_CACHE_PREFIX","ACTIVE_MOBIUS_STORAGE_KEY","ICE_CANDIDATES_TIMEOUT","ICE_LITE_CANDIDATES_TIMEOUT","WCC_CALLING_RTMS_DOMAIN","METHODS","CONSTRUCTOR","CREATE_CALL","HANDLE_INCOMING_CALL_SETUP","HANDLE_OUTGOING_CALL_SETUP","HANDLE_CALL_HOLD","HANDLE_CALL_RESUME","HANDLE_INCOMING_CALL_PROGRESS","HANDLE_INCOMING_ROAP_OFFER_REQUEST","HANDLE_OUTGOING_CALL_ALERTING","HANDLE_INCOMING_CALL_CONNECT","HANDLE_OUTGOING_CALL_CONNECT","HANDLE_INCOMING_CALL_DISCONNECT","HANDLE_OUTGOING_CALL_DISCONNECT","HANDLE_CALL_ESTABLISHED","HANDLE_UNKNOWN_STATE","HANDLE_TIMEOUT","GET_EMITTER_CALLBACK","HANDLE_ROAP_ESTABLISHED","HANDLE_ROAP_ERROR","HANDLE_OUTGOING_ROAP_OFFER","HANDLE_OUTGOING_ROAP_ANSWER","HANDLE_INCOMING_ROAP_OFFER","HANDLE_INCOMING_ROAP_ANSWER","INIT","FORCE_SEND_STATS_REPORT","UPDATE_ACTIVE_MOBIUS","DEQUEUE_WS_EVENTS","GET_CALL","GET_ACTIVE_CALLS","UPDATE_LINE","GET_LINE_ID","INIT_MEDIA_CONNECTION","GET_DIRECTION","GET_CALL_ID","GET_CORRELATION_ID","SEND_CALL_STATE_MACHINE_EVT","SEND_MEDIA_STATE_MACHINE_EVT","SET_CALL_ID","SET_DISCONNECT_REASON","GET_DISCONNECT_REASON","ANSWER","DIAL","POST","PATCH","POST_SS_REQUEST","POST_STATUS","COMPLETE_TRANSFER","GET_CALL_STATS","POST_MEDIA","MEDIA_ROAP_EVENTS_LISTENER","MEDIA_TRACK_LISTENER","MEDIA_ICE_EVENTS_LISTENER","ON_EFFECT_ENABLED","ON_EFFECT_DISABLED","UPDATE_TRACK","REGISTER_EFFECT_LISTENER","UNREGISTER_LISTENERS","REGISTER_LISTENERS","DELETE","SUBMIT_CALL_ERROR_METRIC","HANDLE_MID_CALL_EVENT","GET_CALLER_INFO","END","DO_HOLD_RESUME","START_CALLER_ID_RESOLUTION","SEND_DIGIT","MUTE","IS_MUTED","IS_CONNECTED","IS_HELD","UPDATE_MEDIA","SET_BROADWORKS_CORRELATION_INFO","GET_BROADWORKS_CORRELATION_INFO","GET_CALL_RTP_STATS","REGISTER","DEREGISTER","DELETE_REGISTRATION","NORMALIZE_LINE","LINE_EMITTER","GET_LOGGING_LEVEL","GET_ACTIVE_MOBIUS_URL","GET_STATUS","GET_DEVICE_ID","MAKE_CALL","INCOMING_CALL_LISTENER","SET_MOBIUS_SERVERS","HANDLE_CONNECTION_RESTORATION","RECONNECT_ON_FAILURE","MERCURY_OFFLINE","MERCURY_ONLINE","NETWORK_OFFLINE","NETWORK_ONLINE","GET_CLIENT_REGION_INFO","GET_MOBIUS_SERVERS","REGISTER_CALLS_CLEARED_LISTENER","CALLS_CLEARED_HANDLER","REGISTER_SESSIONS_LISTENER","CREATE_LINE","GET_LINES","GET_DEVICES","UPLOAD_LOGS","GET_SDK_CONNECTOR","GET_CONNECTED_CALL","CONNECT_TO_MOBIUS_SOCKET","SET_SOCKET_ENABLED","REGISTER_MOBIUS_SOCKET_LISTENER","UNREGISTER_MOBIUS_SOCKET_LISTENER","REGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER","UNREGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER","HANDLE_MOBIUS_ASYNC_EVENT","HANDLE_REGISTRATION_DOWN_EVENT","DISCONNECT_FROM_MOBIUS_SOCKET","MAKE_REQUEST","DERIVE_MOBIUS_SOCKET_MESSAGE_TYPE","IS_MOBIUS_WSS_ENABLED","RESTORE_PREVIOUS_REGISTRATION","RESTART_REGISTRATION","TRIGGER_REGISTRATION","HANDLE_404_KEEPALIVE_FAILURE","INITIATE_FAILBACK","EXECUTE_FAILBACK","GET_RTMS_DOMAIN"],"sources":["constants.ts"],"sourcesContent":["export const VERSION = 'unknown';\nexport const USER_AGENT_VERSION = 'beta';\nexport const REPO_NAME = 'webex-calling';\nexport const CALLING_USER_AGENT = `${REPO_NAME}/${USER_AGENT_VERSION}`;\nexport const CALL_ENDPOINT_RESOURCE = 'call';\nexport const CALL_STATUS_RESOURCE = 'status';\nexport const CALLS_ENDPOINT_RESOURCE = 'calls';\nexport const CISCO_DEVICE_URL = 'cisco-device-url';\nexport const CRLF = '\\r\\n';\nexport const DEFAULT_KEEPALIVE_INTERVAL = 30;\nexport const DEFAULT_LOCAL_CALL_ID = 'DefaultLocalId';\nexport const DEFAULT_REHOMING_INTERVAL_MAX = 120;\nexport const DEFAULT_REHOMING_INTERVAL_MIN = 60;\nexport const DEFAULT_SESSION_TIMER = 1000 * 60 * 10;\nexport const MAX_CALL_KEEPALIVE_RETRY_COUNT = 4;\nexport const DEVICES_ENDPOINT_RESOURCE = 'devices';\nexport const DISCOVERY_URL = 'https://ds.ciscospark.com/v1/region';\nexport const DUMMY_METRICS = {\n 'rtp-rxstat': {\n Dur: 0,\n Pkt: 0,\n Oct: 0,\n LatePkt: 0,\n LostPkt: 0,\n AvgJit: 0,\n VQMetrics: {\n VoRxCodec: 'unknown',\n VoPktSizeMs: 0,\n maxJitter: 0,\n VoOneWayDelayMs: 0,\n networkType: 'unknown',\n hwType: 'unknown',\n },\n },\n 'rtp-txstat': {\n Dur: 0,\n Pkt: 0,\n Oct: 0,\n VQMetrics: {\n VoTxCodec: 'unknown',\n rtpBitRate: 0,\n },\n },\n};\nexport const DUMMY_MOBIUS_URL = 'https://mobius.aintgen-a-1.int.infra.webex.com/api/v1';\nexport const IP_ENDPOINT = 'myip';\nexport const INITIAL_SEQ_NUMBER = 1;\nexport const MEDIA_ENDPOINT_RESOURCE = 'media';\nexport const NETWORK_FLAP_TIMEOUT = 5000;\nexport const CALL_HOLD_SERVICE = 'callhold';\nexport const CALL_TRANSFER_SERVICE = 'calltransfer';\nexport const HOLD_ENDPOINT = 'hold';\nexport const TRANSFER_ENDPOINT = 'commit';\nexport const RESUME_ENDPOINT = 'resume';\nexport const SPARK_USER_AGENT = 'spark-user-agent';\nexport const REGISTER_RETRY_TIMEOUT = 10000;\nexport const SUPPLEMENTARY_SERVICES_TIMEOUT = 10000;\nexport const API_V1 = '/api/v1';\nexport const URL_ENDPOINT = '/calling/web/';\nexport const VALID_PHONE_REGEX = /[\\d\\s()*#+.-]+/;\nexport const WEB_AGENT = '(web)';\nexport const WEBEX = 'webex';\nexport const WEBEX_WEB_CLIENT = 'webex-web-client';\nexport const CALLER_ID_FILE = 'CallerId';\nexport const UTILS_FILE = 'src/common/Utils.ts';\nexport const CALLING_CLIENT_FILE = 'CallingClient';\nexport const LINE_FILE = 'line';\nexport const CALL_FILE = 'call';\nexport const CALL_MANAGER_FILE = 'callManager';\nexport const METRIC_FILE = 'metric';\nexport const REGISTRATION_FILE = 'register';\nexport const REQUEST_FILE = 'REQUEST';\nexport const MOBIUS_SOCKET_MAPPER_FILE = 'mobiusSocketMapper';\nexport const WS_FEATURE_FLAG_FILE = 'wsFeatureFlag';\nexport const CODEC_ID = 'codecId';\nexport const MEDIA_ID = 'id';\nexport const RTC_ICE_CANDIDATE_PAIR = 'RTCIceCandidatePair_';\nexport const LOCAL_CANDIDATE_ID = 'localCandidateId';\nexport const RTC_ICE_CANDIDATE = 'RTCIceCandidate_';\nexport const NETWORK_TYPE = 'networkType';\nexport const RTC_CODEC = 'RTCCodec_';\nexport const INBOUND_CODEC_MATCH = 'CIT01_';\nexport const OUTBOUND_CODEC_MATCH = 'COT01_';\nexport const MIME_TYPE = 'mimeType';\nexport const REMOTE_INBOUND_RTP = 'remote-inbound-rtp';\nexport const TOTAL_ROUND_TRIP_TIME = 'totalRoundTripTime';\nexport const ROUND_TRIP_TIME_MEASUREMENTS = 'roundTripTimeMeasurements';\nexport const INBOUND_RTP = 'inbound-rtp';\nexport const OUTBOUND_RTP = 'outbound-rtp';\nexport const PACKETS_RECEIVED = 'packetsReceived';\nexport const PACKETS_SENT = 'packetsSent';\nexport const PACKETS_LOST = 'packetsLost';\nexport const PACKETS_DISCARDED = 'packetsDiscarded';\nexport const JITTER_BUFFER_DELAY = 'jitterBufferDelay';\nexport const JITTER_BUFFER_EMITTED_COUNT = 'jitterBufferEmittedCount';\nexport const TIMESTAMP = 'timestamp';\nexport const TYPE = 'type';\nexport const TRANSPORT = 'transport';\nexport const TARGET_BIT_RATE = 'targetBitrate';\nexport const MEDIA_SOURCE = 'media-source';\nexport const BYTES_RECEIVED = 'bytesReceived';\nexport const BYTES_SENT = 'bytesSent';\nexport const SELECTED_CANDIDATE_PAIR_ID = 'selectedCandidatePairId';\nexport const TOTAL_SAMPLES_DURATION = 'totalSamplesDuration';\nexport const RTP_RX_STAT = 'rtp-rxstat';\nexport const RTP_TX_STAT = 'rtp-txstat';\nexport const BASE_REG_TIMER_MFACTOR = 2;\nexport const BASE_REG_RETRY_TIMER_VAL_IN_SEC = 30;\nexport const SEC_TO_MSEC_MFACTOR = 1000;\nexport const MINUTES_TO_SEC_MFACTOR = 60;\nexport const REG_RANDOM_T_FACTOR_UPPER_LIMIT = 10000;\nexport const REG_TRY_BACKUP_TIMER_VAL_IN_SEC = 114;\nexport const REG_FAILBACK_429_MAX_RETRIES = 5;\nexport const RETRY_TIMER_UPPER_LIMIT = 60;\nexport const REGISTRATION_UTIL = 'triggerRegistration';\nexport const REGISTER_UTIL = 'attemptRegistrationWithServers';\nexport const GET_MOBIUS_SERVERS_UTIL = 'getMobiusServers';\nexport const KEEPALIVE_UTIL = 'startKeepaliveTimer';\nexport const RECONNECT_ON_FAILURE_UTIL = 'reconnectOnFailure';\nexport const FAILBACK_UTIL = 'executeFailback';\nexport const REG_429_RETRY_UTIL = 'handle429Retry';\nexport const FAILOVER_UTIL = 'startFailoverTimer';\nexport const CALLS_CLEARED_HANDLER_UTIL = 'callsClearedHandler';\nexport const RECONNECT_UTIL = 'reconnectOnFailure';\nexport const NOISE_REDUCTION_EFFECT = 'noise-reduction-effect';\nexport const MOBIUS_US_PROD = 'mobius-us-east-1.prod.infra.webex.com';\nexport const MOBIUS_EU_PROD = 'mobius-eu-central-1.prod.infra.webex.com';\nexport const MOBIUS_US_INT = 'mobius-us-east-1.int.infra.webex.com';\nexport const MOBIUS_EU_INT = 'mobius-eu-central-1.int.infra.webex.com';\nexport const FAILOVER_CACHE_PREFIX = 'wxc-failover-state';\nexport const ACTIVE_MOBIUS_STORAGE_KEY = 'wxc-active-mobius';\nexport const ICE_CANDIDATES_TIMEOUT = 3000;\n// Reduced ICE candidates timeout used for ice-lite offers.\nexport const ICE_LITE_CANDIDATES_TIMEOUT = 500;\nexport const WCC_CALLING_RTMS_DOMAIN = 'wcc-calling-rtms-domain';\n\n// Define constants for method names\nexport const METHODS = {\n CONSTRUCTOR: 'constructor',\n CREATE_CALL: 'createCall',\n HANDLE_INCOMING_CALL_SETUP: 'handleIncomingCallSetup',\n HANDLE_OUTGOING_CALL_SETUP: 'handleOutgoingCallSetup',\n HANDLE_CALL_HOLD: 'handleCallHold',\n HANDLE_CALL_RESUME: 'handleCallResume',\n HANDLE_INCOMING_CALL_PROGRESS: 'handleIncomingCallProgress',\n HANDLE_INCOMING_ROAP_OFFER_REQUEST: 'handleIncomingRoapOfferRequest',\n HANDLE_OUTGOING_CALL_ALERTING: 'handleOutgoingCallAlerting',\n HANDLE_INCOMING_CALL_CONNECT: 'handleIncomingCallConnect',\n HANDLE_OUTGOING_CALL_CONNECT: 'handleOutgoingCallConnect',\n HANDLE_INCOMING_CALL_DISCONNECT: 'handleIncomingCallDisconnect',\n HANDLE_OUTGOING_CALL_DISCONNECT: 'handleOutgoingCallDisconnect',\n HANDLE_CALL_ESTABLISHED: 'handleCallEstablished',\n HANDLE_UNKNOWN_STATE: 'handleUnknownState',\n HANDLE_TIMEOUT: 'handleTimeout',\n GET_EMITTER_CALLBACK: 'getEmitterCallback',\n HANDLE_ROAP_ESTABLISHED: 'handleRoapEstablished',\n HANDLE_ROAP_ERROR: 'handleRoapError',\n HANDLE_OUTGOING_ROAP_OFFER: 'handleOutgoingRoapOffer',\n HANDLE_OUTGOING_ROAP_ANSWER: 'handleOutgoingRoapAnswer',\n HANDLE_INCOMING_ROAP_OFFER: 'handleIncomingRoapOffer',\n HANDLE_INCOMING_ROAP_ANSWER: 'handleIncomingRoapAnswer',\n INIT: 'init',\n FORCE_SEND_STATS_REPORT: 'forceSendStatsReport',\n UPDATE_ACTIVE_MOBIUS: 'updateActiveMobius',\n DEQUEUE_WS_EVENTS: 'dequeueWsEvents',\n GET_CALL: 'getCall',\n GET_ACTIVE_CALLS: 'getActiveCalls',\n UPDATE_LINE: 'updateLine',\n GET_LINE_ID: 'getLineId',\n INIT_MEDIA_CONNECTION: 'initMediaConnection',\n GET_DIRECTION: 'getDirection',\n GET_CALL_ID: 'getCallId',\n GET_CORRELATION_ID: 'getCorrelationId',\n SEND_CALL_STATE_MACHINE_EVT: 'sendCallStateMachineEvt',\n SEND_MEDIA_STATE_MACHINE_EVT: 'sendMediaStateMachineEvt',\n SET_CALL_ID: 'setCallId',\n SET_DISCONNECT_REASON: 'setDisconnectReason',\n GET_DISCONNECT_REASON: 'getDisconnectReason',\n ANSWER: 'answer',\n DIAL: 'dial',\n POST: 'post',\n PATCH: 'patch',\n POST_SS_REQUEST: 'postSSRequest',\n POST_STATUS: 'postStatus',\n COMPLETE_TRANSFER: 'completeTransfer',\n GET_CALL_STATS: 'getCallStats',\n POST_MEDIA: 'postMedia',\n MEDIA_ROAP_EVENTS_LISTENER: 'mediaRoapEventsListener',\n MEDIA_TRACK_LISTENER: 'mediaTrackListener',\n MEDIA_ICE_EVENTS_LISTENER: 'mediaIceEventsListener',\n ON_EFFECT_ENABLED: 'onEffectEnabled',\n ON_EFFECT_DISABLED: 'onEffectDisabled',\n UPDATE_TRACK: 'updateTrack',\n REGISTER_EFFECT_LISTENER: 'registerEffectListener',\n UNREGISTER_LISTENERS: 'unregisterListeners',\n REGISTER_LISTENERS: 'registerListeners',\n DELETE: 'delete',\n SUBMIT_CALL_ERROR_METRIC: 'submitCallErrorMetric',\n HANDLE_MID_CALL_EVENT: 'handleMidCallEvent',\n GET_CALLER_INFO: 'getCallerInfo',\n END: 'end',\n DO_HOLD_RESUME: 'doHoldResume',\n START_CALLER_ID_RESOLUTION: 'startCallerIdResolution',\n SEND_DIGIT: 'sendDigit',\n MUTE: 'mute',\n IS_MUTED: 'isMuted',\n IS_CONNECTED: 'isConnected',\n IS_HELD: 'isHeld',\n UPDATE_MEDIA: 'updateMedia',\n SET_BROADWORKS_CORRELATION_INFO: 'setBroadworksCorrelationInfo',\n GET_BROADWORKS_CORRELATION_INFO: 'getBroadworksCorrelationInfo',\n GET_CALL_RTP_STATS: 'getCallRtpStats',\n REGISTER: 'register',\n DEREGISTER: 'deregister',\n DELETE_REGISTRATION: 'deleteRegistration',\n NORMALIZE_LINE: 'normalizeLine',\n LINE_EMITTER: 'lineEmitter',\n GET_LOGGING_LEVEL: 'getLoggingLevel',\n GET_ACTIVE_MOBIUS_URL: 'getActiveMobiusUrl',\n GET_STATUS: 'getStatus',\n GET_DEVICE_ID: 'getDeviceId',\n MAKE_CALL: 'makeCall',\n INCOMING_CALL_LISTENER: 'incomingCallListener',\n SET_MOBIUS_SERVERS: 'setMobiusServers',\n HANDLE_CONNECTION_RESTORATION: 'handleConnectionRestoration',\n RECONNECT_ON_FAILURE: 'reconnectOnFailure',\n MERCURY_OFFLINE: 'handleMercuryOffline',\n MERCURY_ONLINE: 'handleMercuryOnline',\n NETWORK_OFFLINE: 'handleNetworkOffline',\n NETWORK_ONLINE: 'handleNetworkOnline',\n GET_CLIENT_REGION_INFO: 'getClientRegionInfo',\n GET_MOBIUS_SERVERS: 'getMobiusServers',\n REGISTER_CALLS_CLEARED_LISTENER: 'registerCallsClearedListener',\n CALLS_CLEARED_HANDLER: 'callsClearedHandler',\n REGISTER_SESSIONS_LISTENER: 'registerSessionsListener',\n CREATE_LINE: 'createLine',\n GET_LINES: 'getLines',\n GET_DEVICES: 'getDevices',\n UPLOAD_LOGS: 'uploadLogs',\n GET_SDK_CONNECTOR: 'getSDKConnector',\n GET_CONNECTED_CALL: 'getConnectedCall',\n CONNECT_TO_MOBIUS_SOCKET: 'connectToMobiusSocket',\n SET_SOCKET_ENABLED: 'setSocketEnabled',\n REGISTER_MOBIUS_SOCKET_LISTENER: 'registerMobiusSocketListener',\n UNREGISTER_MOBIUS_SOCKET_LISTENER: 'unregisterMobiusSocketListener',\n REGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER: 'registerMobiusSocketConnectionListener',\n UNREGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER: 'unregisterMobiusSocketConnectionListener',\n HANDLE_MOBIUS_ASYNC_EVENT: 'handleMobiusAsyncEvent',\n HANDLE_REGISTRATION_DOWN_EVENT: 'handleRegistrationDownEvent',\n DISCONNECT_FROM_MOBIUS_SOCKET: 'disconnectFromMobiusSocket',\n MAKE_REQUEST: 'makeRequest',\n DERIVE_MOBIUS_SOCKET_MESSAGE_TYPE: 'deriveMobiusSocketMessageType',\n IS_MOBIUS_WSS_ENABLED: 'isMobiusWssEnabled',\n RESTORE_PREVIOUS_REGISTRATION: 'restorePreviousRegistration',\n RESTART_REGISTRATION: 'restartRegistration',\n TRIGGER_REGISTRATION: 'triggerRegistration',\n HANDLE_404_KEEPALIVE_FAILURE: 'handle404KeepaliveFailure',\n INITIATE_FAILBACK: 'initiateFailback',\n EXECUTE_FAILBACK: 'executeFailback',\n GET_RTMS_DOMAIN: 'getRTMSDomain',\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["VERSION","exports","USER_AGENT_VERSION","REPO_NAME","CALLING_USER_AGENT","concat","CALL_ENDPOINT_RESOURCE","CALL_STATUS_RESOURCE","CALLS_ENDPOINT_RESOURCE","CISCO_DEVICE_URL","CRLF","DEFAULT_KEEPALIVE_INTERVAL","DEFAULT_LOCAL_CALL_ID","DEFAULT_REHOMING_INTERVAL_MAX","DEFAULT_REHOMING_INTERVAL_MIN","DEFAULT_SESSION_TIMER","MAX_CALL_KEEPALIVE_RETRY_COUNT","DEVICES_ENDPOINT_RESOURCE","DISCOVERY_URL","DUMMY_METRICS","Dur","Pkt","Oct","LatePkt","LostPkt","AvgJit","VQMetrics","VoRxCodec","VoPktSizeMs","maxJitter","VoOneWayDelayMs","networkType","hwType","VoTxCodec","rtpBitRate","DUMMY_MOBIUS_URL","IP_ENDPOINT","INITIAL_SEQ_NUMBER","MEDIA_ENDPOINT_RESOURCE","NETWORK_FLAP_TIMEOUT","CALL_HOLD_SERVICE","CALL_TRANSFER_SERVICE","HOLD_ENDPOINT","TRANSFER_ENDPOINT","RESUME_ENDPOINT","SPARK_USER_AGENT","REGISTER_RETRY_TIMEOUT","SUPPLEMENTARY_SERVICES_TIMEOUT","API_V1","URL_ENDPOINT","VALID_PHONE_REGEX","WEB_AGENT","WEBEX","WEBEX_WEB_CLIENT","CALLER_ID_FILE","UTILS_FILE","CALLING_CLIENT_FILE","LINE_FILE","CALL_FILE","CALL_MANAGER_FILE","METRIC_FILE","REGISTRATION_FILE","REQUEST_FILE","MOBIUS_SOCKET_MAPPER_FILE","WS_FEATURE_FLAG_FILE","CODEC_ID","MEDIA_ID","RTC_ICE_CANDIDATE_PAIR","LOCAL_CANDIDATE_ID","RTC_ICE_CANDIDATE","NETWORK_TYPE","RTC_CODEC","INBOUND_CODEC_MATCH","OUTBOUND_CODEC_MATCH","MIME_TYPE","REMOTE_INBOUND_RTP","TOTAL_ROUND_TRIP_TIME","ROUND_TRIP_TIME_MEASUREMENTS","INBOUND_RTP","OUTBOUND_RTP","PACKETS_RECEIVED","PACKETS_SENT","PACKETS_LOST","PACKETS_DISCARDED","JITTER_BUFFER_DELAY","JITTER_BUFFER_EMITTED_COUNT","TIMESTAMP","TYPE","TRANSPORT","TARGET_BIT_RATE","MEDIA_SOURCE","BYTES_RECEIVED","BYTES_SENT","SELECTED_CANDIDATE_PAIR_ID","TOTAL_SAMPLES_DURATION","RTP_RX_STAT","RTP_TX_STAT","BASE_REG_TIMER_MFACTOR","BASE_REG_RETRY_TIMER_VAL_IN_SEC","SEC_TO_MSEC_MFACTOR","MINUTES_TO_SEC_MFACTOR","REG_RANDOM_T_FACTOR_UPPER_LIMIT","REG_TRY_BACKUP_TIMER_VAL_IN_SEC","REG_FAILBACK_429_MAX_RETRIES","RETRY_TIMER_UPPER_LIMIT","REGISTRATION_UTIL","REGISTER_UTIL","GET_MOBIUS_SERVERS_UTIL","KEEPALIVE_UTIL","RECONNECT_ON_FAILURE_UTIL","FAILBACK_UTIL","REG_429_RETRY_UTIL","FAILOVER_UTIL","CALLS_CLEARED_HANDLER_UTIL","RECONNECT_UTIL","NOISE_REDUCTION_EFFECT","MOBIUS_US_PROD","MOBIUS_EU_PROD","MOBIUS_US_INT","MOBIUS_EU_INT","FAILOVER_CACHE_PREFIX","ACTIVE_MOBIUS_STORAGE_KEY","ICE_CANDIDATES_TIMEOUT","ICE_LITE_CANDIDATES_TIMEOUT","WCC_CALLING_RTMS_DOMAIN","SESSION_SUPERSEDED_MESSAGE","METHODS","CONSTRUCTOR","CREATE_CALL","HANDLE_INCOMING_CALL_SETUP","HANDLE_OUTGOING_CALL_SETUP","HANDLE_CALL_HOLD","HANDLE_CALL_RESUME","HANDLE_INCOMING_CALL_PROGRESS","HANDLE_INCOMING_ROAP_OFFER_REQUEST","HANDLE_OUTGOING_CALL_ALERTING","HANDLE_INCOMING_CALL_CONNECT","HANDLE_OUTGOING_CALL_CONNECT","HANDLE_INCOMING_CALL_DISCONNECT","HANDLE_OUTGOING_CALL_DISCONNECT","HANDLE_CALL_ESTABLISHED","HANDLE_UNKNOWN_STATE","HANDLE_TIMEOUT","GET_EMITTER_CALLBACK","HANDLE_ROAP_ESTABLISHED","HANDLE_ROAP_ERROR","HANDLE_OUTGOING_ROAP_OFFER","HANDLE_OUTGOING_ROAP_ANSWER","HANDLE_INCOMING_ROAP_OFFER","HANDLE_INCOMING_ROAP_ANSWER","INIT","FORCE_SEND_STATS_REPORT","UPDATE_ACTIVE_MOBIUS","DEQUEUE_WS_EVENTS","GET_CALL","GET_ACTIVE_CALLS","UPDATE_LINE","GET_LINE_ID","INIT_MEDIA_CONNECTION","GET_DIRECTION","GET_CALL_ID","GET_CORRELATION_ID","SEND_CALL_STATE_MACHINE_EVT","SEND_MEDIA_STATE_MACHINE_EVT","SET_CALL_ID","SET_DISCONNECT_REASON","GET_DISCONNECT_REASON","ANSWER","DIAL","POST","PATCH","POST_SS_REQUEST","POST_STATUS","COMPLETE_TRANSFER","GET_CALL_STATS","POST_MEDIA","MEDIA_ROAP_EVENTS_LISTENER","MEDIA_TRACK_LISTENER","MEDIA_ICE_EVENTS_LISTENER","ON_EFFECT_ENABLED","ON_EFFECT_DISABLED","UPDATE_TRACK","REGISTER_EFFECT_LISTENER","UNREGISTER_LISTENERS","REGISTER_LISTENERS","DELETE","SUBMIT_CALL_ERROR_METRIC","HANDLE_MID_CALL_EVENT","GET_CALLER_INFO","END","DO_HOLD_RESUME","START_CALLER_ID_RESOLUTION","SEND_DIGIT","MUTE","IS_MUTED","IS_CONNECTED","IS_HELD","UPDATE_MEDIA","SET_BROADWORKS_CORRELATION_INFO","GET_BROADWORKS_CORRELATION_INFO","GET_CALL_RTP_STATS","REGISTER","DEREGISTER","DELETE_REGISTRATION","NORMALIZE_LINE","LINE_EMITTER","GET_LOGGING_LEVEL","GET_ACTIVE_MOBIUS_URL","GET_STATUS","GET_DEVICE_ID","MAKE_CALL","INCOMING_CALL_LISTENER","SET_MOBIUS_SERVERS","HANDLE_CONNECTION_RESTORATION","RECONNECT_ON_FAILURE","MERCURY_OFFLINE","MERCURY_ONLINE","NETWORK_OFFLINE","NETWORK_ONLINE","GET_CLIENT_REGION_INFO","GET_MOBIUS_SERVERS","REGISTER_CALLS_CLEARED_LISTENER","CALLS_CLEARED_HANDLER","REGISTER_SESSIONS_LISTENER","CREATE_LINE","GET_LINES","GET_DEVICES","UPLOAD_LOGS","GET_SDK_CONNECTOR","GET_CONNECTED_CALL","CONNECT_TO_MOBIUS_SOCKET","SET_SOCKET_ENABLED","REGISTER_MOBIUS_SOCKET_LISTENER","UNREGISTER_MOBIUS_SOCKET_LISTENER","REGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER","UNREGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER","HANDLE_MOBIUS_ASYNC_EVENT","HANDLE_REGISTRATION_DOWN_EVENT","DISCONNECT_FROM_MOBIUS_SOCKET","MAKE_REQUEST","DERIVE_MOBIUS_SOCKET_MESSAGE_TYPE","IS_MOBIUS_WSS_ENABLED","RESTORE_PREVIOUS_REGISTRATION","RESTART_REGISTRATION","TRIGGER_REGISTRATION","HANDLE_404_KEEPALIVE_FAILURE","HANDLE_409_KEEPALIVE_FAILURE","INITIATE_FAILBACK","EXECUTE_FAILBACK","GET_RTMS_DOMAIN"],"sources":["constants.ts"],"sourcesContent":["export const VERSION = 'unknown';\nexport const USER_AGENT_VERSION = 'beta';\nexport const REPO_NAME = 'webex-calling';\nexport const CALLING_USER_AGENT = `${REPO_NAME}/${USER_AGENT_VERSION}`;\nexport const CALL_ENDPOINT_RESOURCE = 'call';\nexport const CALL_STATUS_RESOURCE = 'status';\nexport const CALLS_ENDPOINT_RESOURCE = 'calls';\nexport const CISCO_DEVICE_URL = 'cisco-device-url';\nexport const CRLF = '\\r\\n';\nexport const DEFAULT_KEEPALIVE_INTERVAL = 30;\nexport const DEFAULT_LOCAL_CALL_ID = 'DefaultLocalId';\nexport const DEFAULT_REHOMING_INTERVAL_MAX = 120;\nexport const DEFAULT_REHOMING_INTERVAL_MIN = 60;\nexport const DEFAULT_SESSION_TIMER = 1000 * 60 * 10;\nexport const MAX_CALL_KEEPALIVE_RETRY_COUNT = 4;\nexport const DEVICES_ENDPOINT_RESOURCE = 'devices';\nexport const DISCOVERY_URL = 'https://ds.ciscospark.com/v1/region';\nexport const DUMMY_METRICS = {\n 'rtp-rxstat': {\n Dur: 0,\n Pkt: 0,\n Oct: 0,\n LatePkt: 0,\n LostPkt: 0,\n AvgJit: 0,\n VQMetrics: {\n VoRxCodec: 'unknown',\n VoPktSizeMs: 0,\n maxJitter: 0,\n VoOneWayDelayMs: 0,\n networkType: 'unknown',\n hwType: 'unknown',\n },\n },\n 'rtp-txstat': {\n Dur: 0,\n Pkt: 0,\n Oct: 0,\n VQMetrics: {\n VoTxCodec: 'unknown',\n rtpBitRate: 0,\n },\n },\n};\nexport const DUMMY_MOBIUS_URL = 'https://mobius.aintgen-a-1.int.infra.webex.com/api/v1';\nexport const IP_ENDPOINT = 'myip';\nexport const INITIAL_SEQ_NUMBER = 1;\nexport const MEDIA_ENDPOINT_RESOURCE = 'media';\nexport const NETWORK_FLAP_TIMEOUT = 5000;\nexport const CALL_HOLD_SERVICE = 'callhold';\nexport const CALL_TRANSFER_SERVICE = 'calltransfer';\nexport const HOLD_ENDPOINT = 'hold';\nexport const TRANSFER_ENDPOINT = 'commit';\nexport const RESUME_ENDPOINT = 'resume';\nexport const SPARK_USER_AGENT = 'spark-user-agent';\nexport const REGISTER_RETRY_TIMEOUT = 10000;\nexport const SUPPLEMENTARY_SERVICES_TIMEOUT = 10000;\nexport const API_V1 = '/api/v1';\nexport const URL_ENDPOINT = '/calling/web/';\nexport const VALID_PHONE_REGEX = /[\\d\\s()*#+.-]+/;\nexport const WEB_AGENT = '(web)';\nexport const WEBEX = 'webex';\nexport const WEBEX_WEB_CLIENT = 'webex-web-client';\nexport const CALLER_ID_FILE = 'CallerId';\nexport const UTILS_FILE = 'src/common/Utils.ts';\nexport const CALLING_CLIENT_FILE = 'CallingClient';\nexport const LINE_FILE = 'line';\nexport const CALL_FILE = 'call';\nexport const CALL_MANAGER_FILE = 'callManager';\nexport const METRIC_FILE = 'metric';\nexport const REGISTRATION_FILE = 'register';\nexport const REQUEST_FILE = 'REQUEST';\nexport const MOBIUS_SOCKET_MAPPER_FILE = 'mobiusSocketMapper';\nexport const WS_FEATURE_FLAG_FILE = 'wsFeatureFlag';\nexport const CODEC_ID = 'codecId';\nexport const MEDIA_ID = 'id';\nexport const RTC_ICE_CANDIDATE_PAIR = 'RTCIceCandidatePair_';\nexport const LOCAL_CANDIDATE_ID = 'localCandidateId';\nexport const RTC_ICE_CANDIDATE = 'RTCIceCandidate_';\nexport const NETWORK_TYPE = 'networkType';\nexport const RTC_CODEC = 'RTCCodec_';\nexport const INBOUND_CODEC_MATCH = 'CIT01_';\nexport const OUTBOUND_CODEC_MATCH = 'COT01_';\nexport const MIME_TYPE = 'mimeType';\nexport const REMOTE_INBOUND_RTP = 'remote-inbound-rtp';\nexport const TOTAL_ROUND_TRIP_TIME = 'totalRoundTripTime';\nexport const ROUND_TRIP_TIME_MEASUREMENTS = 'roundTripTimeMeasurements';\nexport const INBOUND_RTP = 'inbound-rtp';\nexport const OUTBOUND_RTP = 'outbound-rtp';\nexport const PACKETS_RECEIVED = 'packetsReceived';\nexport const PACKETS_SENT = 'packetsSent';\nexport const PACKETS_LOST = 'packetsLost';\nexport const PACKETS_DISCARDED = 'packetsDiscarded';\nexport const JITTER_BUFFER_DELAY = 'jitterBufferDelay';\nexport const JITTER_BUFFER_EMITTED_COUNT = 'jitterBufferEmittedCount';\nexport const TIMESTAMP = 'timestamp';\nexport const TYPE = 'type';\nexport const TRANSPORT = 'transport';\nexport const TARGET_BIT_RATE = 'targetBitrate';\nexport const MEDIA_SOURCE = 'media-source';\nexport const BYTES_RECEIVED = 'bytesReceived';\nexport const BYTES_SENT = 'bytesSent';\nexport const SELECTED_CANDIDATE_PAIR_ID = 'selectedCandidatePairId';\nexport const TOTAL_SAMPLES_DURATION = 'totalSamplesDuration';\nexport const RTP_RX_STAT = 'rtp-rxstat';\nexport const RTP_TX_STAT = 'rtp-txstat';\nexport const BASE_REG_TIMER_MFACTOR = 2;\nexport const BASE_REG_RETRY_TIMER_VAL_IN_SEC = 30;\nexport const SEC_TO_MSEC_MFACTOR = 1000;\nexport const MINUTES_TO_SEC_MFACTOR = 60;\nexport const REG_RANDOM_T_FACTOR_UPPER_LIMIT = 10000;\nexport const REG_TRY_BACKUP_TIMER_VAL_IN_SEC = 114;\nexport const REG_FAILBACK_429_MAX_RETRIES = 5;\nexport const RETRY_TIMER_UPPER_LIMIT = 60;\nexport const REGISTRATION_UTIL = 'triggerRegistration';\nexport const REGISTER_UTIL = 'attemptRegistrationWithServers';\nexport const GET_MOBIUS_SERVERS_UTIL = 'getMobiusServers';\nexport const KEEPALIVE_UTIL = 'startKeepaliveTimer';\nexport const RECONNECT_ON_FAILURE_UTIL = 'reconnectOnFailure';\nexport const FAILBACK_UTIL = 'executeFailback';\nexport const REG_429_RETRY_UTIL = 'handle429Retry';\nexport const FAILOVER_UTIL = 'startFailoverTimer';\nexport const CALLS_CLEARED_HANDLER_UTIL = 'callsClearedHandler';\nexport const RECONNECT_UTIL = 'reconnectOnFailure';\nexport const NOISE_REDUCTION_EFFECT = 'noise-reduction-effect';\nexport const MOBIUS_US_PROD = 'mobius-us-east-1.prod.infra.webex.com';\nexport const MOBIUS_EU_PROD = 'mobius-eu-central-1.prod.infra.webex.com';\nexport const MOBIUS_US_INT = 'mobius-us-east-1.int.infra.webex.com';\nexport const MOBIUS_EU_INT = 'mobius-eu-central-1.int.infra.webex.com';\nexport const FAILOVER_CACHE_PREFIX = 'wxc-failover-state';\nexport const ACTIVE_MOBIUS_STORAGE_KEY = 'wxc-active-mobius';\nexport const ICE_CANDIDATES_TIMEOUT = 3000;\n// Reduced ICE candidates timeout used for ice-lite offers.\nexport const ICE_LITE_CANDIDATES_TIMEOUT = 500;\nexport const WCC_CALLING_RTMS_DOMAIN = 'wcc-calling-rtms-domain';\nexport const SESSION_SUPERSEDED_MESSAGE =\n 'This calling session has been superseded by another registration for the same user, for example calling opened in another browser tab or device. Calling is no longer available on this session.';\n\n// Define constants for method names\nexport const METHODS = {\n CONSTRUCTOR: 'constructor',\n CREATE_CALL: 'createCall',\n HANDLE_INCOMING_CALL_SETUP: 'handleIncomingCallSetup',\n HANDLE_OUTGOING_CALL_SETUP: 'handleOutgoingCallSetup',\n HANDLE_CALL_HOLD: 'handleCallHold',\n HANDLE_CALL_RESUME: 'handleCallResume',\n HANDLE_INCOMING_CALL_PROGRESS: 'handleIncomingCallProgress',\n HANDLE_INCOMING_ROAP_OFFER_REQUEST: 'handleIncomingRoapOfferRequest',\n HANDLE_OUTGOING_CALL_ALERTING: 'handleOutgoingCallAlerting',\n HANDLE_INCOMING_CALL_CONNECT: 'handleIncomingCallConnect',\n HANDLE_OUTGOING_CALL_CONNECT: 'handleOutgoingCallConnect',\n HANDLE_INCOMING_CALL_DISCONNECT: 'handleIncomingCallDisconnect',\n HANDLE_OUTGOING_CALL_DISCONNECT: 'handleOutgoingCallDisconnect',\n HANDLE_CALL_ESTABLISHED: 'handleCallEstablished',\n HANDLE_UNKNOWN_STATE: 'handleUnknownState',\n HANDLE_TIMEOUT: 'handleTimeout',\n GET_EMITTER_CALLBACK: 'getEmitterCallback',\n HANDLE_ROAP_ESTABLISHED: 'handleRoapEstablished',\n HANDLE_ROAP_ERROR: 'handleRoapError',\n HANDLE_OUTGOING_ROAP_OFFER: 'handleOutgoingRoapOffer',\n HANDLE_OUTGOING_ROAP_ANSWER: 'handleOutgoingRoapAnswer',\n HANDLE_INCOMING_ROAP_OFFER: 'handleIncomingRoapOffer',\n HANDLE_INCOMING_ROAP_ANSWER: 'handleIncomingRoapAnswer',\n INIT: 'init',\n FORCE_SEND_STATS_REPORT: 'forceSendStatsReport',\n UPDATE_ACTIVE_MOBIUS: 'updateActiveMobius',\n DEQUEUE_WS_EVENTS: 'dequeueWsEvents',\n GET_CALL: 'getCall',\n GET_ACTIVE_CALLS: 'getActiveCalls',\n UPDATE_LINE: 'updateLine',\n GET_LINE_ID: 'getLineId',\n INIT_MEDIA_CONNECTION: 'initMediaConnection',\n GET_DIRECTION: 'getDirection',\n GET_CALL_ID: 'getCallId',\n GET_CORRELATION_ID: 'getCorrelationId',\n SEND_CALL_STATE_MACHINE_EVT: 'sendCallStateMachineEvt',\n SEND_MEDIA_STATE_MACHINE_EVT: 'sendMediaStateMachineEvt',\n SET_CALL_ID: 'setCallId',\n SET_DISCONNECT_REASON: 'setDisconnectReason',\n GET_DISCONNECT_REASON: 'getDisconnectReason',\n ANSWER: 'answer',\n DIAL: 'dial',\n POST: 'post',\n PATCH: 'patch',\n POST_SS_REQUEST: 'postSSRequest',\n POST_STATUS: 'postStatus',\n COMPLETE_TRANSFER: 'completeTransfer',\n GET_CALL_STATS: 'getCallStats',\n POST_MEDIA: 'postMedia',\n MEDIA_ROAP_EVENTS_LISTENER: 'mediaRoapEventsListener',\n MEDIA_TRACK_LISTENER: 'mediaTrackListener',\n MEDIA_ICE_EVENTS_LISTENER: 'mediaIceEventsListener',\n ON_EFFECT_ENABLED: 'onEffectEnabled',\n ON_EFFECT_DISABLED: 'onEffectDisabled',\n UPDATE_TRACK: 'updateTrack',\n REGISTER_EFFECT_LISTENER: 'registerEffectListener',\n UNREGISTER_LISTENERS: 'unregisterListeners',\n REGISTER_LISTENERS: 'registerListeners',\n DELETE: 'delete',\n SUBMIT_CALL_ERROR_METRIC: 'submitCallErrorMetric',\n HANDLE_MID_CALL_EVENT: 'handleMidCallEvent',\n GET_CALLER_INFO: 'getCallerInfo',\n END: 'end',\n DO_HOLD_RESUME: 'doHoldResume',\n START_CALLER_ID_RESOLUTION: 'startCallerIdResolution',\n SEND_DIGIT: 'sendDigit',\n MUTE: 'mute',\n IS_MUTED: 'isMuted',\n IS_CONNECTED: 'isConnected',\n IS_HELD: 'isHeld',\n UPDATE_MEDIA: 'updateMedia',\n SET_BROADWORKS_CORRELATION_INFO: 'setBroadworksCorrelationInfo',\n GET_BROADWORKS_CORRELATION_INFO: 'getBroadworksCorrelationInfo',\n GET_CALL_RTP_STATS: 'getCallRtpStats',\n REGISTER: 'register',\n DEREGISTER: 'deregister',\n DELETE_REGISTRATION: 'deleteRegistration',\n NORMALIZE_LINE: 'normalizeLine',\n LINE_EMITTER: 'lineEmitter',\n GET_LOGGING_LEVEL: 'getLoggingLevel',\n GET_ACTIVE_MOBIUS_URL: 'getActiveMobiusUrl',\n GET_STATUS: 'getStatus',\n GET_DEVICE_ID: 'getDeviceId',\n MAKE_CALL: 'makeCall',\n INCOMING_CALL_LISTENER: 'incomingCallListener',\n SET_MOBIUS_SERVERS: 'setMobiusServers',\n HANDLE_CONNECTION_RESTORATION: 'handleConnectionRestoration',\n RECONNECT_ON_FAILURE: 'reconnectOnFailure',\n MERCURY_OFFLINE: 'handleMercuryOffline',\n MERCURY_ONLINE: 'handleMercuryOnline',\n NETWORK_OFFLINE: 'handleNetworkOffline',\n NETWORK_ONLINE: 'handleNetworkOnline',\n GET_CLIENT_REGION_INFO: 'getClientRegionInfo',\n GET_MOBIUS_SERVERS: 'getMobiusServers',\n REGISTER_CALLS_CLEARED_LISTENER: 'registerCallsClearedListener',\n CALLS_CLEARED_HANDLER: 'callsClearedHandler',\n REGISTER_SESSIONS_LISTENER: 'registerSessionsListener',\n CREATE_LINE: 'createLine',\n GET_LINES: 'getLines',\n GET_DEVICES: 'getDevices',\n UPLOAD_LOGS: 'uploadLogs',\n GET_SDK_CONNECTOR: 'getSDKConnector',\n GET_CONNECTED_CALL: 'getConnectedCall',\n CONNECT_TO_MOBIUS_SOCKET: 'connectToMobiusSocket',\n SET_SOCKET_ENABLED: 'setSocketEnabled',\n REGISTER_MOBIUS_SOCKET_LISTENER: 'registerMobiusSocketListener',\n UNREGISTER_MOBIUS_SOCKET_LISTENER: 'unregisterMobiusSocketListener',\n REGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER: 'registerMobiusSocketConnectionListener',\n UNREGISTER_MOBIUS_SOCKET_CONNECTION_LISTENER: 'unregisterMobiusSocketConnectionListener',\n HANDLE_MOBIUS_ASYNC_EVENT: 'handleMobiusAsyncEvent',\n HANDLE_REGISTRATION_DOWN_EVENT: 'handleRegistrationDownEvent',\n DISCONNECT_FROM_MOBIUS_SOCKET: 'disconnectFromMobiusSocket',\n MAKE_REQUEST: 'makeRequest',\n DERIVE_MOBIUS_SOCKET_MESSAGE_TYPE: 'deriveMobiusSocketMessageType',\n IS_MOBIUS_WSS_ENABLED: 'isMobiusWssEnabled',\n RESTORE_PREVIOUS_REGISTRATION: 'restorePreviousRegistration',\n RESTART_REGISTRATION: 'restartRegistration',\n TRIGGER_REGISTRATION: 'triggerRegistration',\n HANDLE_404_KEEPALIVE_FAILURE: 'handle404KeepaliveFailure',\n HANDLE_409_KEEPALIVE_FAILURE: 'handle409KeepaliveFailure',\n INITIATE_FAILBACK: 'initiateFailback',\n EXECUTE_FAILBACK: 'executeFailback',\n GET_RTMS_DOMAIN: 'getRTMSDomain',\n};\n"],"mappings":"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","ignoreList":[]}
@@ -87,6 +87,10 @@ var Line = exports.default = /*#__PURE__*/function (_Eventing) {
87
87
  }
88
88
  break;
89
89
  case _types2.LINE_EVENTS.UNREGISTERED:
90
+ /* lineError is present only when the SDK knows why the registration ended and
91
+ * will not re-establish it, for example a session superseded by another tab. */
92
+ _this.emit(event, lineError);
93
+ break;
90
94
  case _types2.LINE_EVENTS.RECONNECTED:
91
95
  case _types2.LINE_EVENTS.RECONNECTING:
92
96
  _this.emit(event);
@@ -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","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":[]}
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 /* lineError is present only when the SDK knows why the registration ended and\n * will not re-establish it, for example a session superseded by another tab. */\n this.emit(event, lineError);\n break;\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":";;;;;;;;;;;;;;;;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAUA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAC,sBAAA,CAAAN,OAAA;AAEA,IAAAO,aAAA,GAAAP,OAAA;AAGA,IAAAQ,KAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAEA,IAAAU,OAAA,GAAAV,OAAA;AACA,IAAAW,aAAA,GAAAL,sBAAA,CAAAN,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AAEA,IAAAa,YAAA,GAAAb,OAAA;AACA,IAAAc,OAAA,GAAAd,OAAA;AAA8C,SAAAe,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;AAAA,SAAAc,2BAAAZ,CAAA,EAAAF,CAAA,EAAAe,CAAA,IAAAC,0BAAA,CAAAd,CAAA,EAAAF,CAAA,GAAAA,CAAA,CAAAiB,GAAA,CAAAf,CAAA,EAAAa,CAAA;AAAA,SAAAC,2BAAAd,CAAA,EAAAF,CAAA,QAAAA,CAAA,CAAAkB,GAAA,CAAAhB,CAAA,aAAAiB,SAAA;AAAA,SAAAC,sBAAAC,CAAA,EAAAN,CAAA,WAAAM,CAAA,CAAAC,GAAA,CAAAC,iBAAA,CAAAF,CAAA,EAAAN,CAAA;AAAA,SAAAS,sBAAAH,CAAA,EAAAN,CAAA,EAAAU,CAAA,WAAAJ,CAAA,CAAAJ,GAAA,CAAAM,iBAAA,CAAAF,CAAA,EAAAN,CAAA,GAAAU,CAAA,GAAAA,CAAA;AAAA,SAAAF,kBAAArB,CAAA,EAAAF,CAAA,EAAA0B,CAAA,6BAAAxB,CAAA,GAAAA,CAAA,KAAAF,CAAA,GAAAE,CAAA,CAAAgB,GAAA,CAAAlB,CAAA,UAAA2B,SAAA,CAAAC,MAAA,OAAA5B,CAAA,GAAA0B,CAAA,YAAAP,SAAA;AAAA,IAAAU,MAAA,oBAAAC,QAAA,CAAA1B,OAAA;AAAA,IAAA2B,MAAA,oBAAAD,QAAA,CAAA1B,OAAA;AAAA,IAAA4B,aAAA,oBAAAF,QAAA,CAAA1B,OAAA;AAAA,IAAA6B,kBAAA,oBAAAH,QAAA,CAAA1B,OAAA;AAAA,IAAA8B,iBAAA,oBAAAJ,QAAA,CAAA1B,OAAA;AAAA,IAEzB+B,IAAI,GAAAC,OAAA,CAAAhC,OAAA,0BAAAiC,SAAA;EAiDvB,SAAAF,KACEG,MAAc,EACdC,eAAuB,EACvBC,KAAY,EACZC,iBAA2B,EAC3BC,gBAA0B,EAC1BC,QAAgB,EAChBC,iBAAsD,EACtDC,GAAY,EACZC,WAAoB,EACpBC,SAAkB,EAClBC,SAAkB,EAClB;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,CAAA9C,OAAA,QAAA+B,IAAA;IACAc,KAAA,GAAAlD,UAAA,OAAAoC,IAAA;IA7DFrB,0BAAA,CAAAmC,KAAA,EAAApB,MAAM;IAENf,0BAAA,CAAAmC,KAAA,EAAAlB,MAAM;IAENjB,0BAAA,CAAAmC,KAAA,EAAAjB,aAAa;IAAgB,IAAAmB,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA,kBAkBG,EAAE;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAAA,IAAAE,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA;IAsBlCnC,0BAAA,CAAAmC,KAAA,EAAAhB,kBAAkB;IAElBnB,0BAAA,CAAAmC,KAAA,EAAAf,iBAAiB;IA6GjB;AACF;AACA;IAFE,IAAAiB,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA,iBAGqB,UAACG,KAAkB,EAAEC,UAAwB,EAAEC,SAAqB,EAAK;MAC5FC,eAAG,CAACC,IAAI,CAACC,+BAAoB,EAAE;QAC7BC,IAAI,EAAEC,qBAAS;QACfC,MAAM,EAAEC,mBAAO,CAACC;MAClB,CAAC,CAAC;MACF,QAAQV,KAAK;QACX,KAAKW,mBAAW,CAACC,UAAU;UACzB,IAAIX,UAAU,EAAE;YACdJ,KAAA,CAAKgB,aAAa,CAACZ,UAAU,CAAC;YAC9BJ,KAAA,CAAKiB,IAAI,CAACd,KAAK,EAAAH,KAAM,CAAC;UACxB;UACA;QACF,KAAKc,mBAAW,CAACI,YAAY;UAC3B;AACR;UACQlB,KAAA,CAAKiB,IAAI,CAACd,KAAK,EAAEE,SAAS,CAAC;UAC3B;QACF,KAAKS,mBAAW,CAACK,WAAW;QAC5B,KAAKL,mBAAW,CAACM,YAAY;UAC3BpB,KAAA,CAAKiB,IAAI,CAACd,KAAK,CAAC;UAChB;QACF,KAAKW,mBAAW,CAACO,KAAK;UACpB,IAAIhB,SAAS,EAAE;YACbL,KAAA,CAAKiB,IAAI,CAACd,KAAK,EAAEE,SAAS,CAAC;UAC7B;UACA;QACF;UACE;MACJ;IACF,CAAC;IAgBD;AACF;AACA;IAFE,IAAAH,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA,eAGmB;MAAA,OAA0BA,KAAA,CAAKsB,YAAY,CAACC,SAAS,CAAC,CAAC;IAAA;IAE1E;AACF;AACA;IAFE,IAAArB,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA,iBAGqB;MAAA,IAAAwB,qBAAA;MAAA,QAAAA,qBAAA,GACnBxB,KAAA,CAAKsB,YAAY,CAACG,aAAa,CAAC,CAAC,CAACC,MAAM,cAAAF,qBAAA,uBAAxCA,qBAAA,CAA0CG,QAAQ;IAAA;IAEpD;AACF;AACA;AACA;IAHE,IAAAzB,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA,cAIkB,UAAC4B,IAAkB,EAAwB;MAC3DtB,eAAG,CAACC,IAAI,CAACC,+BAAoB,EAAE;QAC7BC,IAAI,EAAEC,qBAAS;QACfC,MAAM,EAAEC,mBAAO,CAACiB;MAClB,CAAC,CAAC;MACF,IAAIjE,IAAI;MAER,IAAIgE,IAAI,EAAE;QACR,IAAME,KAAK,GAAGF,IAAI,CAACG,OAAO,CAACD,KAAK,CAACE,6BAAiB,CAAC;QAEnD,IAAIF,KAAK,IAAIA,KAAK,CAAC,CAAC,CAAC,CAACnD,MAAM,KAAKiD,IAAI,CAACG,OAAO,CAACpD,MAAM,EAAE;UAAA,IAAAsD,sBAAA,EAAAC,KAAA;UACpD,IAAMC,eAAe,GAAGP,IAAI,CAACG,OAAO,CACjCK,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAC3BA,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CACpBA,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;UACrB,IAAMC,aAAa,GAAG;YACpBC,IAAI,EAAEV,IAAI,CAACU,IAAI;YACfP,OAAO,SAAAQ,MAAA,CAASJ,eAAe;UACjC,CAAC;UAEDvE,IAAI,GAAGoC,KAAA,CAAKwC,WAAW,CAACC,UAAU,CAChCC,oBAAa,CAACC,QAAQ,GAAAV,sBAAA,GACtBjC,KAAA,CAAKsB,YAAY,CAACG,aAAa,CAAC,CAAC,CAACC,MAAM,cAAAO,sBAAA,uBAAxCA,sBAAA,CAA0CN,QAAQ,EAClD3B,KAAA,CAAK4C,MAAM,EACXP,aACF,CAAC;UACD/B,eAAG,CAACA,GAAG,8BAAAiC,MAAA,EAAAL,KAAA,GAA8BtE,IAAI,cAAAsE,KAAA,uBAAJA,KAAA,CAAMW,SAAS,CAAC,CAAC,GAAI;YACxDpC,IAAI,EAAEC,qBAAS;YACfC,MAAM,EAAEC,mBAAO,CAACiB;UAClB,CAAC,CAAC;QACJ,CAAC,MAAM;UACLvB,eAAG,CAACwC,IAAI,CAAC,+BAA+B,EAAE;YACxCrC,IAAI,EAAEC,qBAAS;YACfC,MAAM,EAAEC,mBAAO,CAACiB;UAClB,CAAC,CAAC;UAEF,IAAMkB,GAAG,GAAG,IAAIC,oBAAS,CACvB,uEAAuE,EACvE,CAAC,CAAC,EACFC,kBAAU,CAACC,UAAU,EACrBC,yBAAkB,CAACC,MACrB,CAAC;UAEDpD,KAAA,CAAKiB,IAAI,CAACH,mBAAW,CAACO,KAAK,EAAE0B,GAAG,CAAC;QACnC;QAEA,OAAOnF,IAAI;MACb;MACA,IAAIoC,KAAA,CAAKqD,WAAW,CAACC,SAAS,KAAKC,uBAAgB,CAACC,aAAa,EAAE;QAAA,IAAAC,sBAAA;QACjE7F,IAAI,GAAGoC,KAAA,CAAKwC,WAAW,CAACC,UAAU,CAChCC,oBAAa,CAACC,QAAQ,GAAAc,sBAAA,GACtBzD,KAAA,CAAKsB,YAAY,CAACG,aAAa,CAAC,CAAC,CAACC,MAAM,cAAA+B,sBAAA,uBAAxCA,sBAAA,CAA0C9B,QAAQ,EAClD3B,KAAA,CAAK4C,MACP,CAAC;QACDtC,eAAG,CAACC,IAAI,oCAAAgC,MAAA,CAAoC3E,IAAI,CAACiF,SAAS,CAAC,CAAC,GAAI;UAC9DpC,IAAI,EAAEC,qBAAS;UACfC,MAAM,EAAEC,mBAAO,CAACiB;QAClB,CAAC,CAAC;QAEF,OAAOjE,IAAI;MACb;MAEA,OAAO8F,SAAS;IAClB,CAAC;IAmBD;AACF;AACA;AACA;IAHE,IAAAxD,gBAAA,CAAA/C,OAAA,EAAA6C,KAAA,aAIiB,UAAC2D,aAA4B,EAAY;MACxD,OAAO3D,KAAA,CAAKwC,WAAW,CAACoB,OAAO,CAACD,aAAa,CAAC;IAChD,CAAC;IApPC3D,KAAA,CAAK4C,MAAM,GAAG,IAAAiB,QAAI,EAAC,CAAC;IACpB7D,KAAA,CAAKX,MAAM,GAAGA,MAAM;IACpBW,KAAA,CAAKV,eAAe,GAAGA,eAAe;IACtCU,KAAA,CAAKH,WAAW,GAAGA,WAAW;IAC9BG,KAAA,CAAKF,SAAS,GAAGA,SAAS;IAC1BE,KAAA,CAAKD,SAAS,GAAGA,SAAS;IAE1BxB,qBAAA,CAAKQ,aAAa,EAAAiB,KAAA,EAAG8D,qBAAJ,CAAC;IAClBvF,qBAAA,CAAKK,MAAM,EAAAoB,KAAA,EAAG7B,qBAAA,CAAKY,aAAa,EAAAiB,KAAD,CAAC,CAAC+D,QAAQ,CAAC,CAAhC,CAAC;IACXxF,qBAAA,CAAKO,MAAM,EAAAkB,KAAA,EAAGT,KAAJ,CAAC;IAEXhB,qBAAA,CAAKS,kBAAkB,EAAAgB,KAAA,EAAGR,iBAAJ,CAAC;IACvBjB,qBAAA,CAAKU,iBAAiB,EAAAe,KAAA,EAAGP,gBAAJ,CAAC;IAEtBO,KAAA,CAAKqD,WAAW,GAAG1D,iBAAiB,aAAjBA,iBAAiB,eAAjBA,iBAAiB,CAAE2D,SAAS,GAC3C3D,iBAAiB,GACjB;MAAC2D,SAAS,EAAEC,uBAAgB,CAACS,OAAO;MAAEC,MAAM,EAAE;IAAE,CAAC;IAErD,IAAAC,2BAAmB,EAAClE,KAAA,CAAKqD,WAAW,CAAC;IAErCrD,KAAA,CAAKsB,YAAY,GAAG,IAAA6C,gCAAkB,EACpChG,qBAAA,CAAKS,MAAM,EAAAoB,KAAD,CAAC,EACXA,KAAA,CAAKqD,WAAW,EAChBlF,qBAAA,CAAKW,MAAM,EAAAkB,KAAD,CAAC,EACXA,KAAA,CAAKoE,WAAW,EAChB1E,QAAQ,EACRE,GACF,CAAC;IAEDU,eAAG,CAAC+D,SAAS,CAAC3E,QAAQ,EAAEgB,qBAAS,CAAC;IAElCV,KAAA,CAAKwC,WAAW,GAAG,IAAA8B,2BAAc,EAACnG,qBAAA,CAAKS,MAAM,EAAAoB,KAAD,CAAC,EAAEA,KAAA,CAAKqD,WAAW,CAACC,SAAS,CAAC;IAE1EtD,KAAA,CAAKuE,oBAAoB,CAAC,CAAC;IAAC,OAAAvE,KAAA;EAC9B;;EAEA;AACF;AACA;EAFE,IAAAwE,UAAA,CAAArH,OAAA,EAAA+B,IAAA,EAAAE,SAAA;EAAA,WAAAqF,aAAA,CAAAtH,OAAA,EAAA+B,IAAA;IAAAwF,GAAA;IAAAC,KAAA;MAAA,IAAAC,SAAA,OAAAC,kBAAA,CAAA1H,OAAA,eAAA2H,YAAA,CAAA3H,OAAA,CAAA4H,IAAA,CAGA,SAAAC,SAAA;QAAA,IAAAC,MAAA;QAAA,OAAAH,YAAA,CAAA3H,OAAA,CAAA+H,IAAA,WAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAAC,IAAA,GAAAD,SAAA,CAAAE,IAAA;YAAA;cACE/E,eAAG,CAACC,IAAI,CAACC,+BAAoB,EAAE;gBAC7BC,IAAI,EAAEC,qBAAS;gBACfC,MAAM,EAAEC,mBAAO,CAAC0E;cAClB,CAAC,CAAC;cAACH,SAAA,CAAAE,IAAA;cAAA,OACGlH,qBAAA,CAAKW,MAAM,EAAX,IAAU,CAAC,CAACyG,YAAY,kBAAAV,kBAAA,CAAA1H,OAAA,eAAA2H,YAAA,CAAA3H,OAAA,CAAA4H,IAAA,CAAC,SAAAS,QAAA;gBAAA,OAAAV,YAAA,CAAA3H,OAAA,CAAA+H,IAAA,WAAAO,QAAA;kBAAA,kBAAAA,QAAA,CAAAL,IAAA,GAAAK,QAAA,CAAAJ,IAAA;oBAAA;sBAC7BJ,MAAI,CAAChE,IAAI,CAACH,mBAAW,CAAC4E,UAAU,CAAC;sBAEjCT,MAAI,CAAC3D,YAAY,CAACqE,gBAAgB,CAACxH,qBAAA,CAAKa,kBAAkB,EAAvBiG,MAAsB,CAAC,EAAE9G,qBAAA,CAAKc,iBAAiB,EAAtBgG,MAAqB,CAAC,CAAC;sBAACQ,QAAA,CAAAJ,IAAA;sBAAA,OAC9EJ,MAAI,CAAC3D,YAAY,CAACsE,mBAAmB,CAAC,CAAC;oBAAA;oBAAA;sBAAA,OAAAH,QAAA,CAAAI,IAAA;kBAAA;gBAAA,GAAAL,OAAA;cAAA,CAC9C,GAAC;YAAA;YAAA;cAAA,OAAAL,SAAA,CAAAU,IAAA;UAAA;QAAA,GAAAb,QAAA;MAAA,CACH;MAAA,SAXYc,QAAQA,CAAA;QAAA,OAAAlB,SAAA,CAAApH,KAAA,OAAAkB,SAAA;MAAA;MAAA,OAARoH,QAAQ;IAAA;IAarB;AACF;AACA;IAFE;EAAA;IAAApB,GAAA;IAAAC,KAAA;MAAA,IAAAoB,WAAA,OAAAlB,kBAAA,CAAA1H,OAAA,eAAA2H,YAAA,CAAA3H,OAAA,CAAA4H,IAAA,CAGA,SAAAiB,SAAA;QAAA,IAAAC,cAAA;UAAAC,MAAA,GAAAxH,SAAA;QAAA,OAAAoG,YAAA,CAAA3H,OAAA,CAAA+H,IAAA,WAAAiB,SAAA;UAAA,kBAAAA,SAAA,CAAAf,IAAA,GAAAe,SAAA,CAAAd,IAAA;YAAA;cAAwBY,cAAc,GAAAC,MAAA,CAAAvH,MAAA,QAAAuH,MAAA,QAAAxC,SAAA,GAAAwC,MAAA,MAAG,KAAK;cAC5C5F,eAAG,CAACC,IAAI,CAACC,+BAAoB,EAAE;gBAC7BC,IAAI,EAAEC,qBAAS;gBACfC,MAAM,EAAEC,mBAAO,CAACwF;cAClB,CAAC,CAAC;cAACD,SAAA,CAAAd,IAAA;cAAA,OACG,IAAI,CAAC/D,YAAY,CAAC+E,UAAU,CAACJ,cAAc,CAAC;YAAA;cAClD,IAAI,CAAC3E,YAAY,CAACgF,SAAS,CAACnD,yBAAkB,CAACoD,IAAI,CAAC;YAAC;YAAA;cAAA,OAAAJ,SAAA,CAAAN,IAAA;UAAA;QAAA,GAAAG,QAAA;MAAA,CACtD;MAAA,SAPYK,UAAUA,CAAA;QAAA,OAAAN,WAAA,CAAAvI,KAAA,OAAAkB,SAAA;MAAA;MAAA,OAAV2H,UAAU;IAAA;IASvB;AACF;AACA;IAFE;EAAA;IAAA3B,GAAA;IAAAC,KAAA,EAGA,SAAQ3D,aAAaA,CAACZ,UAAuB,EAAE;MAAA,IAAAoG,iBAAA;MAC7C,IACE9E,MAAM,GAOJtB,UAAU,CAPZsB,MAAM;QACN+E,iBAAiB,GAMfrG,UAAU,CANZqG,iBAAiB;QACjBC,qBAAqB,GAKnBtG,UAAU,CALZsG,qBAAqB;QACrBC,mBAAmB,GAIjBvG,UAAU,CAJZuG,mBAAmB;QACnBC,mBAAmB,GAGjBxG,UAAU,CAHZwG,mBAAmB;QACnBC,iBAAiB,GAEfzG,UAAU,CAFZyG,iBAAiB;QACjBC,oBAAoB,GAClB1G,UAAU,CADZ0G,oBAAoB;MAGtB,IAAI,CAACC,cAAc,GAAGrF,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEC,QAAQ;MACtC,IAAI,CAACqF,SAAS,GAAGtF,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEuF,GAAG;MAC5B,IAAI,CAACC,QAAQ,GAAGxF,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEwF,QAAQ;MAChC,IAAI,CAACC,YAAY,IAAAX,iBAAA,GAAG9E,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAE0F,SAAS,cAAAZ,iBAAA,cAAAA,iBAAA,GAAI,EAAE;MAC3C,IAAI,CAACC,iBAAiB,GAAGA,iBAAiB;MAC1C,IAAI,CAACC,qBAAqB,GAAGA,qBAAqB;MAClD,IAAI,CAACC,mBAAmB,GAAGA,mBAAmB;MAC9C,IAAI,CAACC,mBAAmB,GAAGA,mBAAmB;MAC9C,IAAI,CAACC,iBAAiB,GAAGA,iBAAiB;MAC1C,IAAI,CAACC,oBAAoB,GAAGA,oBAAoB;MAChD,IAAI,IAAI,CAACC,cAAc,EAAE;QACvB,IAAI,CAACvE,WAAW,CAAC6E,UAAU,CAAC,IAAI,CAACN,cAAc,EAAE,IAAI,CAAC;MACxD;IACF;EAAC;IAAArC,GAAA;IAAAC,KAAA;IAoCD;AACF;AACA;IACE,SAAO2C,eAAeA,CAAA,EAAW;MAC/B,OAAOhH,eAAG,CAACiH,WAAW,CAAC,CAAC;IAC1B;;IAEA;AACF;AACA;EAFE;IAAA7C,GAAA;IAAAC,KAAA,EAGA,SAAO6C,kBAAkBA,CAAA,EAAW;MAClC,OAAO,IAAI,CAAClG,YAAY,CAACkG,kBAAkB,CAAC,CAAC;IAC/C;EAAC;IAAA9C,GAAA;IAAAC,KAAA;IAkFD;AACF;AACA;IACE,SAAQJ,oBAAoBA,CAAA,EAAG;MAAA,IAAAkD,MAAA;MAC7BnH,eAAG,CAACC,IAAI,CAACC,+BAAoB,EAAE;QAC7BC,IAAI,EAAEC,qBAAS;QACfC,MAAM,EAAEC,mBAAO,CAAC8G;MAClB,CAAC,CAAC;MACFpH,eAAG,CAACC,IAAI,CAAC,kCAAkC,EAAE;QAC3CE,IAAI,EAAEC,qBAAS;QACfC,MAAM,EAAEC,mBAAO,CAAC8G;MAClB,CAAC,CAAC;MACF,IAAI,CAAClF,WAAW,CAACmF,EAAE,CAACC,uBAAe,CAACC,aAAa,EAAE,UAACC,OAAc,EAAK;QACrEL,MAAI,CAACxG,IAAI,CAACH,mBAAW,CAAC+G,aAAa,EAAEC,OAAO,CAAC;MAC/C,CAAC,CAAC;IACJ;EAAC;AAAA,EA3S+BC,cAAQ","ignoreList":[]}
@@ -22,8 +22,10 @@ var _types2 = require("./types");
22
22
  var _ = _interopRequireDefault(require("."));
23
23
  var utils = _interopRequireWildcard(require("../../common/Utils"));
24
24
  var _SDKConnector = _interopRequireDefault(require("../../SDKConnector"));
25
+ var _LineError = require("../../Errors/catalog/LineError");
26
+ var _types3 = require("../../Errors/types");
25
27
  var _constants = require("../constants");
26
- var _types3 = require("../../Logger/types");
28
+ var _types4 = require("../../Logger/types");
27
29
  var regUtils = _interopRequireWildcard(require("../registration/register"));
28
30
  var _request = require("../utils/request");
29
31
  function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
@@ -82,7 +84,7 @@ describe('Line Tests', function () {
82
84
  body: mockRegistrationBody
83
85
  };
84
86
  beforeEach(function () {
85
- line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO);
87
+ line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types4.LOGGER.INFO);
86
88
  });
87
89
  afterEach(function () {
88
90
  jest.clearAllTimers();
@@ -96,7 +98,7 @@ describe('Line Tests', function () {
96
98
  case 0:
97
99
  jest.useFakeTimers();
98
100
  webex.request.mockReturnValue(registrationPayload);
99
- expect(createRegistrationSpy).toBeCalledOnceWith(webex, defaultServiceData, expect.any(_asyncMutex.Mutex), expect.anything(), _types3.LOGGER.INFO, undefined);
101
+ expect(createRegistrationSpy).toBeCalledOnceWith(webex, defaultServiceData, expect.any(_asyncMutex.Mutex), expect.anything(), _types4.LOGGER.INFO, undefined);
100
102
  expect(line.getStatus()).toEqual(_types.RegistrationStatus.IDLE);
101
103
  _context.next = 1;
102
104
  return line.register();
@@ -113,7 +115,7 @@ describe('Line Tests', function () {
113
115
  expect(handleErrorSpy).not.toBeCalled();
114
116
  expect(line.getStatus()).toEqual(_types.RegistrationStatus.ACTIVE);
115
117
  expect(line.getActiveMobiusUrl()).toEqual(primaryUrl);
116
- expect(line.getLoggingLevel()).toEqual(_types3.LOGGER.INFO);
118
+ expect(line.getLoggingLevel()).toEqual(_types4.LOGGER.INFO);
117
119
  expect(line.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);
118
120
  expect(line.callManager.lineDict[mockRegistrationBody.device.deviceId]).toEqual(line);
119
121
  webex.request.mockClear();
@@ -134,10 +136,10 @@ describe('Line Tests', function () {
134
136
  while (1) switch (_context2.prev = _context2.next) {
135
137
  case 0:
136
138
  createRegistrationSpy.mockClear();
137
- guestLine = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO, guestServiceData, mockJwe);
139
+ guestLine = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types4.LOGGER.INFO, guestServiceData, mockJwe);
138
140
  jest.useFakeTimers();
139
141
  webex.request.mockReturnValue(registrationPayload);
140
- expect(createRegistrationSpy).toBeCalledOnceWith(webex, guestServiceData, expect.any(_asyncMutex.Mutex), expect.anything(), _types3.LOGGER.INFO, mockJwe);
142
+ expect(createRegistrationSpy).toBeCalledOnceWith(webex, guestServiceData, expect.any(_asyncMutex.Mutex), expect.anything(), _types4.LOGGER.INFO, mockJwe);
141
143
  expect(guestLine.getStatus()).toEqual(_types.RegistrationStatus.IDLE);
142
144
  _context2.next = 1;
143
145
  return guestLine.register();
@@ -156,7 +158,7 @@ describe('Line Tests', function () {
156
158
  expect(handleErrorSpy).not.toBeCalled();
157
159
  expect(guestLine.getStatus()).toEqual(_types.RegistrationStatus.ACTIVE);
158
160
  expect(guestLine.getActiveMobiusUrl()).toEqual(primaryUrl);
159
- expect(guestLine.getLoggingLevel()).toEqual(_types3.LOGGER.INFO);
161
+ expect(guestLine.getLoggingLevel()).toEqual(_types4.LOGGER.INFO);
160
162
  expect(guestLine.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);
161
163
  webex.request.mockClear();
162
164
  jest.advanceTimersByTime(30 * 1000);
@@ -190,7 +192,7 @@ describe('Line Tests', function () {
190
192
  expect(handleErrorSpy).toBeCalledOnceWith(expect.anything(), expect.anything(), {
191
193
  file: _constants.REGISTRATION_FILE,
192
194
  method: 'triggerRegistration'
193
- }, expect.anything(), expect.anything(), expect.any(Number));
195
+ }, expect.anything(), expect.any(Number));
194
196
  case 2:
195
197
  case "end":
196
198
  return _context3.stop();
@@ -218,10 +220,45 @@ describe('Line Tests', function () {
218
220
  }, _callee4);
219
221
  })));
220
222
  });
223
+ describe('Line event emission tests', function () {
224
+ var line;
225
+ beforeEach(function () {
226
+ line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types4.LOGGER.INFO);
227
+ });
228
+ afterEach(function () {
229
+ jest.clearAllMocks();
230
+ line.removeAllListeners();
231
+ });
232
+ var supersededError = function supersededError() {
233
+ return (0, _LineError.createLineError)('session superseded', {
234
+ file: _constants.REGISTRATION_FILE,
235
+ method: 'startKeepaliveTimer'
236
+ }, _types3.ERROR_TYPE.SESSION_SUPERSEDED, _types.RegistrationStatus.INACTIVE);
237
+ };
238
+ it.each([_types2.LINE_EVENTS.ERROR, _types2.LINE_EVENTS.UNREGISTERED])('re-emits %s with the line error to the consumer', function (event) {
239
+ var listener = jest.fn();
240
+ var lineError = supersededError();
241
+ line.on(event, listener);
242
+ line.lineEmitter(event, undefined, lineError);
243
+ expect(listener).toBeCalledOnceWith(lineError);
244
+ });
245
+ it('emits unregistered without a reason when no line error is provided', function () {
246
+ var listener = jest.fn();
247
+ line.on(_types2.LINE_EVENTS.UNREGISTERED, listener);
248
+ line.lineEmitter(_types2.LINE_EVENTS.UNREGISTERED);
249
+ expect(listener).toBeCalledOnceWith(undefined);
250
+ });
251
+ it('does not emit error when no line error is provided', function () {
252
+ var listener = jest.fn();
253
+ line.on(_types2.LINE_EVENTS.ERROR, listener);
254
+ line.lineEmitter(_types2.LINE_EVENTS.ERROR);
255
+ expect(listener).not.toBeCalled();
256
+ });
257
+ });
221
258
  describe('Line calling tests', function () {
222
259
  var line;
223
260
  beforeEach(function () {
224
- line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO);
261
+ line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types4.LOGGER.INFO);
225
262
  });
226
263
  afterEach(function () {
227
264
  jest.clearAllTimers();
@@ -330,7 +367,7 @@ describe('Line Tests', function () {
330
367
  var createCallSpy = jest.spyOn(line.callManager, 'createCall');
331
368
 
332
369
  // Mocking the serviceData to have GUEST_CALLING indicator
333
- line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO, {
370
+ line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types4.LOGGER.INFO, {
334
371
  indicator: _types.ServiceIndicator.GUEST_CALLING
335
372
  });
336
373
  var call = line.makeCall();
@@ -1 +1 @@
1
- {"version":3,"names":["_asyncMutex","require","_testUtil","_registerFixtures","_common","_types","_types2","_","_interopRequireDefault","utils","_interopRequireWildcard","_SDKConnector","_constants","_types3","regUtils","_request","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","ownKeys","_Object$keys","_Object$getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","jest","mock","getMobiusSocketInstance","fn","mockReturnValue","sendWssRequest","spyOn","mockResolvedValue","undefined","describe","mutex","Mutex","webex","getTestUtilsWebex","SDKConnector","setWebex","beforeEach","APIRequest","resetInstance","getInstance","isMobiusSocketEnabled","defaultServiceData","indicator","ServiceIndicator","CALLING","domain","createRegistrationSpy","mobiusUris","filterMobiusUris","getMobiusDiscoveryResponse","URL","primaryMobiusUris","primary","backupMobiusUris","backup","userId","internal","device","clientDeviceUri","url","mockJwe","guestServiceData","GUEST_CALLING","guestName","handleErrorSpy","global","fetch","request","clearAllMocks","line","mockRegistrationBody","getMockDeviceInfo","discoveryBody","primaryUrl","concat","uris","registrationPayload","statusCode","body","Line","LOGGER","INFO","afterEach","clearAllTimers","useRealTimers","removeAllListeners","it","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_context","prev","next","useFakeTimers","expect","toBeCalledOnceWith","any","anything","getStatus","toEqual","RegistrationStatus","IDLE","register","getMockRequestTemplate","serviceData","uri","method","not","toBeCalled","ACTIVE","getActiveMobiusUrl","getLoggingLevel","getDeviceId","deviceId","callManager","lineDict","mockClear","advanceTimersByTime","_promise","resolve","stop","_callee2","guestLine","_context2","jwe","_callee3","_context3","LINE_EVENTS","ERROR","mockRejectedValue","on","error","message","toBe","waitForMsecs","INACTIVE","file","REGISTRATION_FILE","Number","_callee4","_context4","mockReturnValueOnce","deregister","createCallSpy","makeCall","address","type","CallType","URI","CallDirection","OUTBOUND","lineId","toBeTruthy","getCall","getCorrelationId","direction","toStrictEqual","end","destination","done","toBeUndefined","assertions","toBeCalledWith","String"],"sources":["line.test.ts"],"sourcesContent":["import {Mutex} from 'async-mutex';\nimport {\n getMobiusDiscoveryResponse,\n getMockDeviceInfo,\n getMockRequestTemplate,\n getTestUtilsWebex,\n} from '../../common/testUtil';\nimport {URL} from '../registration/registerFixtures';\nimport {filterMobiusUris} from '../../common';\nimport {\n CallDirection,\n CallType,\n MobiusServers,\n RegistrationStatus,\n ServiceIndicator,\n WebexRequestPayload,\n} from '../../common/types';\nimport {LINE_EVENTS} from './types';\nimport Line from '.';\nimport * as utils from '../../common/Utils';\nimport SDKConnector from '../../SDKConnector';\nimport {REGISTRATION_FILE} from '../constants';\nimport {LOGGER} from '../../Logger/types';\nimport * as regUtils from '../registration/register';\nimport {APIRequest} from '../utils/request';\n\njest.mock('../../mobius-socket', () => ({\n getMobiusSocketInstance: jest.fn().mockReturnValue({\n sendWssRequest: jest.fn(),\n }),\n}));\njest.spyOn(utils, 'uploadLogs').mockResolvedValue(undefined);\n\ndescribe('Line Tests', () => {\n const mutex = new Mutex();\n const webex = getTestUtilsWebex();\n SDKConnector.setWebex(webex);\n\n beforeEach(() => {\n APIRequest.resetInstance();\n APIRequest.getInstance({webex, isMobiusSocketEnabled: false});\n });\n\n const defaultServiceData = {indicator: ServiceIndicator.CALLING, domain: ''};\n const createRegistrationSpy = jest.spyOn(regUtils, 'createRegistration');\n\n const mobiusUris = filterMobiusUris(getMobiusDiscoveryResponse(), URL);\n const primaryMobiusUris = jest.fn(() => mobiusUris.primary);\n const backupMobiusUris = jest.fn(() => mobiusUris.backup);\n const userId = webex.internal.device.userId;\n const clientDeviceUri = webex.internal.device.url;\n const mockJwe = 'mockJwe';\n const guestServiceData = {\n indicator: ServiceIndicator.GUEST_CALLING,\n domain: '',\n guestName: 'testUser',\n };\n\n const handleErrorSpy = jest.spyOn(utils, 'handleRegistrationErrors');\n // Simulate node fetch by adding the mock webex.request\n global.fetch = webex.request;\n\n jest.clearAllMocks();\n\n describe('Line Registration tests', () => {\n let line;\n const mockRegistrationBody = getMockDeviceInfo();\n\n const discoveryBody: MobiusServers = getMobiusDiscoveryResponse();\n const primaryUrl = `${discoveryBody.primary.uris[0]}/calling/web/`;\n\n const registrationPayload = <WebexRequestPayload>(<unknown>{\n statusCode: 200,\n body: mockRegistrationBody,\n });\n\n beforeEach(() => {\n line = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO\n );\n });\n\n afterEach(() => {\n jest.clearAllTimers();\n jest.clearAllMocks();\n jest.useRealTimers();\n line.removeAllListeners();\n });\n\n it('verify successful Registration cases and keepalive', async () => {\n jest.useFakeTimers();\n webex.request.mockReturnValue(registrationPayload);\n\n expect(createRegistrationSpy).toBeCalledOnceWith(\n webex,\n defaultServiceData,\n expect.any(Mutex),\n expect.anything(),\n LOGGER.INFO,\n undefined\n );\n expect(line.getStatus()).toEqual(RegistrationStatus.IDLE);\n await line.register();\n\n expect(webex.request).toBeCalledOnceWith({\n ...getMockRequestTemplate(),\n body: {\n userId,\n clientDeviceUri,\n serviceData: defaultServiceData,\n },\n uri: `${primaryUrl}device`,\n method: 'POST',\n });\n expect(handleErrorSpy).not.toBeCalled();\n\n expect(line.getStatus()).toEqual(RegistrationStatus.ACTIVE);\n expect(line.getActiveMobiusUrl()).toEqual(primaryUrl);\n expect(line.getLoggingLevel()).toEqual(LOGGER.INFO);\n expect(line.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);\n expect(line.callManager.lineDict[mockRegistrationBody.device.deviceId]).toEqual(line);\n\n webex.request.mockClear();\n\n jest.advanceTimersByTime(30 * 1000);\n await Promise.resolve();\n\n jest.useRealTimers();\n });\n\n it('verify successful Registration cases and keepalive for a guest user', async () => {\n createRegistrationSpy.mockClear();\n const guestLine = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO,\n guestServiceData,\n mockJwe\n );\n jest.useFakeTimers();\n webex.request.mockReturnValue(registrationPayload);\n\n expect(createRegistrationSpy).toBeCalledOnceWith(\n webex,\n guestServiceData,\n expect.any(Mutex),\n expect.anything(),\n LOGGER.INFO,\n mockJwe\n );\n expect(guestLine.getStatus()).toEqual(RegistrationStatus.IDLE);\n await guestLine.register();\n\n expect(webex.request).toBeCalledOnceWith({\n ...getMockRequestTemplate(),\n body: {\n userId,\n clientDeviceUri,\n serviceData: {...guestServiceData, jwe: mockJwe},\n },\n uri: `${primaryUrl}device`,\n method: 'POST',\n });\n expect(handleErrorSpy).not.toBeCalled();\n\n expect(guestLine.getStatus()).toEqual(RegistrationStatus.ACTIVE);\n expect(guestLine.getActiveMobiusUrl()).toEqual(primaryUrl);\n expect(guestLine.getLoggingLevel()).toEqual(LOGGER.INFO);\n expect(guestLine.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);\n\n webex.request.mockClear();\n\n jest.advanceTimersByTime(30 * 1000);\n await Promise.resolve();\n\n jest.useRealTimers();\n });\n\n it('verify failure Registration cases all requests fail ', async () => {\n line.removeAllListeners(LINE_EVENTS.ERROR);\n\n webex.request.mockRejectedValue({\n statusCode: 401,\n });\n\n line.on(LINE_EVENTS.ERROR, (error) => {\n expect(error.message).toBe(\n 'User is unauthorized due to an expired token. Sign out, then sign back in.'\n );\n });\n\n expect(line.getStatus()).toBe(RegistrationStatus.IDLE);\n line.register();\n await utils.waitForMsecs(20);\n\n expect(line.getStatus()).toBe(RegistrationStatus.INACTIVE);\n expect(handleErrorSpy).toBeCalledOnceWith(\n expect.anything(),\n expect.anything(),\n {\n file: REGISTRATION_FILE,\n method: 'triggerRegistration',\n },\n expect.anything(),\n expect.anything(),\n expect.any(Number)\n );\n });\n\n it('verify successful de-registration cases', async () => {\n webex.request.mockReturnValueOnce(registrationPayload);\n\n expect(line.getStatus()).toEqual(RegistrationStatus.IDLE);\n await line.register();\n expect(line.getStatus()).toEqual(RegistrationStatus.ACTIVE);\n\n await line.deregister();\n expect(line.getStatus()).toEqual(RegistrationStatus.IDLE);\n });\n });\n\n describe('Line calling tests', () => {\n let line;\n\n beforeEach(() => {\n line = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO\n );\n });\n\n afterEach(() => {\n jest.clearAllTimers();\n jest.clearAllMocks();\n jest.useRealTimers();\n line.removeAllListeners();\n });\n it('Return a successful call object while making call', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '5003', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:5003',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(line.getCall(call ? call.getCorrelationId() : '')).toBe(call);\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n call?.end();\n });\n\n it('Return a successful call object while making call to FAC codes', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '*25', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:*25',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n call?.end();\n });\n\n it('Remove spaces from dialled number while making call', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '+91 123 456 7890', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:+911234567890',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n expect(call ? call.destination.address : undefined).toStrictEqual('tel:+911234567890');\n call?.end();\n });\n\n it('Remove hyphen from dialled number while making call', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '123-456-7890', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:1234567890',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n expect(call ? call.destination.address : undefined).toStrictEqual('tel:1234567890');\n call?.end();\n });\n\n it('attempt to create call with incorrect number format 1', (done) => {\n // There may be other listeners , which may create race\n line.removeAllListeners(LINE_EVENTS.ERROR);\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n\n line.on(LINE_EVENTS.ERROR, (error) => {\n expect(error.message).toBe(\n 'An invalid phone number was detected. Check the number and try again.'\n );\n done();\n });\n try {\n const call = line.makeCall({address: 'select#$@^^', type: CallType.URI});\n\n expect(call).toBeUndefined();\n expect(createCallSpy).not.toBeCalledOnceWith({});\n } catch (error) {\n done(error);\n }\n });\n\n it('attempt to create call with incorrect number format 2', (done) => {\n expect.assertions(4);\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n\n line.on(LINE_EVENTS.ERROR, (error) => {\n expect(error.message).toBe(\n 'An invalid phone number was detected. Check the number and try again.'\n );\n done();\n });\n\n try {\n const call = line.makeCall({address: '+1@8883332505', type: CallType.URI});\n\n expect(call).toBeUndefined();\n expect(createCallSpy).not.toBeCalledOnceWith({});\n } catch (error) {\n done(error);\n }\n });\n\n it('attempt to create call with guest calling service indicator', () => {\n expect.assertions(2);\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n\n // Mocking the serviceData to have GUEST_CALLING indicator\n line = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO,\n {indicator: ServiceIndicator.GUEST_CALLING}\n );\n const call = line.makeCall();\n\n expect(call).toBeTruthy();\n expect(createCallSpy).toBeCalledWith(CallDirection.OUTBOUND, undefined, expect.any(String));\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_asyncMutex","require","_testUtil","_registerFixtures","_common","_types","_types2","_","_interopRequireDefault","utils","_interopRequireWildcard","_SDKConnector","_LineError","_types3","_constants","_types4","regUtils","_request","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","ownKeys","_Object$keys","_Object$getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","Object","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","jest","mock","getMobiusSocketInstance","fn","mockReturnValue","sendWssRequest","spyOn","mockResolvedValue","undefined","describe","mutex","Mutex","webex","getTestUtilsWebex","SDKConnector","setWebex","beforeEach","APIRequest","resetInstance","getInstance","isMobiusSocketEnabled","defaultServiceData","indicator","ServiceIndicator","CALLING","domain","createRegistrationSpy","mobiusUris","filterMobiusUris","getMobiusDiscoveryResponse","URL","primaryMobiusUris","primary","backupMobiusUris","backup","userId","internal","device","clientDeviceUri","url","mockJwe","guestServiceData","GUEST_CALLING","guestName","handleErrorSpy","global","fetch","request","clearAllMocks","line","mockRegistrationBody","getMockDeviceInfo","discoveryBody","primaryUrl","concat","uris","registrationPayload","statusCode","body","Line","LOGGER","INFO","afterEach","clearAllTimers","useRealTimers","removeAllListeners","it","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_context","prev","next","useFakeTimers","expect","toBeCalledOnceWith","any","anything","getStatus","toEqual","RegistrationStatus","IDLE","register","getMockRequestTemplate","serviceData","uri","method","not","toBeCalled","ACTIVE","getActiveMobiusUrl","getLoggingLevel","getDeviceId","deviceId","callManager","lineDict","mockClear","advanceTimersByTime","_promise","resolve","stop","_callee2","guestLine","_context2","jwe","_callee3","_context3","LINE_EVENTS","ERROR","mockRejectedValue","on","error","message","toBe","waitForMsecs","INACTIVE","file","REGISTRATION_FILE","Number","_callee4","_context4","mockReturnValueOnce","deregister","supersededError","createLineError","ERROR_TYPE","SESSION_SUPERSEDED","each","UNREGISTERED","event","listener","lineError","lineEmitter","createCallSpy","makeCall","address","type","CallType","URI","CallDirection","OUTBOUND","lineId","toBeTruthy","getCall","getCorrelationId","direction","toStrictEqual","end","destination","done","toBeUndefined","assertions","toBeCalledWith","String"],"sources":["line.test.ts"],"sourcesContent":["import {Mutex} from 'async-mutex';\nimport {\n getMobiusDiscoveryResponse,\n getMockDeviceInfo,\n getMockRequestTemplate,\n getTestUtilsWebex,\n} from '../../common/testUtil';\nimport {URL} from '../registration/registerFixtures';\nimport {filterMobiusUris} from '../../common';\nimport {\n CallDirection,\n CallType,\n MobiusServers,\n RegistrationStatus,\n ServiceIndicator,\n WebexRequestPayload,\n} from '../../common/types';\nimport {LINE_EVENTS} from './types';\nimport Line from '.';\nimport * as utils from '../../common/Utils';\nimport SDKConnector from '../../SDKConnector';\nimport {createLineError} from '../../Errors/catalog/LineError';\nimport {ERROR_TYPE} from '../../Errors/types';\nimport {REGISTRATION_FILE} from '../constants';\nimport {LOGGER} from '../../Logger/types';\nimport * as regUtils from '../registration/register';\nimport {APIRequest} from '../utils/request';\n\njest.mock('../../mobius-socket', () => ({\n getMobiusSocketInstance: jest.fn().mockReturnValue({\n sendWssRequest: jest.fn(),\n }),\n}));\njest.spyOn(utils, 'uploadLogs').mockResolvedValue(undefined);\n\ndescribe('Line Tests', () => {\n const mutex = new Mutex();\n const webex = getTestUtilsWebex();\n SDKConnector.setWebex(webex);\n\n beforeEach(() => {\n APIRequest.resetInstance();\n APIRequest.getInstance({webex, isMobiusSocketEnabled: false});\n });\n\n const defaultServiceData = {indicator: ServiceIndicator.CALLING, domain: ''};\n const createRegistrationSpy = jest.spyOn(regUtils, 'createRegistration');\n\n const mobiusUris = filterMobiusUris(getMobiusDiscoveryResponse(), URL);\n const primaryMobiusUris = jest.fn(() => mobiusUris.primary);\n const backupMobiusUris = jest.fn(() => mobiusUris.backup);\n const userId = webex.internal.device.userId;\n const clientDeviceUri = webex.internal.device.url;\n const mockJwe = 'mockJwe';\n const guestServiceData = {\n indicator: ServiceIndicator.GUEST_CALLING,\n domain: '',\n guestName: 'testUser',\n };\n\n const handleErrorSpy = jest.spyOn(utils, 'handleRegistrationErrors');\n // Simulate node fetch by adding the mock webex.request\n global.fetch = webex.request;\n\n jest.clearAllMocks();\n\n describe('Line Registration tests', () => {\n let line;\n const mockRegistrationBody = getMockDeviceInfo();\n\n const discoveryBody: MobiusServers = getMobiusDiscoveryResponse();\n const primaryUrl = `${discoveryBody.primary.uris[0]}/calling/web/`;\n\n const registrationPayload = <WebexRequestPayload>(<unknown>{\n statusCode: 200,\n body: mockRegistrationBody,\n });\n\n beforeEach(() => {\n line = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO\n );\n });\n\n afterEach(() => {\n jest.clearAllTimers();\n jest.clearAllMocks();\n jest.useRealTimers();\n line.removeAllListeners();\n });\n\n it('verify successful Registration cases and keepalive', async () => {\n jest.useFakeTimers();\n webex.request.mockReturnValue(registrationPayload);\n\n expect(createRegistrationSpy).toBeCalledOnceWith(\n webex,\n defaultServiceData,\n expect.any(Mutex),\n expect.anything(),\n LOGGER.INFO,\n undefined\n );\n expect(line.getStatus()).toEqual(RegistrationStatus.IDLE);\n await line.register();\n\n expect(webex.request).toBeCalledOnceWith({\n ...getMockRequestTemplate(),\n body: {\n userId,\n clientDeviceUri,\n serviceData: defaultServiceData,\n },\n uri: `${primaryUrl}device`,\n method: 'POST',\n });\n expect(handleErrorSpy).not.toBeCalled();\n\n expect(line.getStatus()).toEqual(RegistrationStatus.ACTIVE);\n expect(line.getActiveMobiusUrl()).toEqual(primaryUrl);\n expect(line.getLoggingLevel()).toEqual(LOGGER.INFO);\n expect(line.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);\n expect(line.callManager.lineDict[mockRegistrationBody.device.deviceId]).toEqual(line);\n\n webex.request.mockClear();\n\n jest.advanceTimersByTime(30 * 1000);\n await Promise.resolve();\n\n jest.useRealTimers();\n });\n\n it('verify successful Registration cases and keepalive for a guest user', async () => {\n createRegistrationSpy.mockClear();\n const guestLine = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO,\n guestServiceData,\n mockJwe\n );\n jest.useFakeTimers();\n webex.request.mockReturnValue(registrationPayload);\n\n expect(createRegistrationSpy).toBeCalledOnceWith(\n webex,\n guestServiceData,\n expect.any(Mutex),\n expect.anything(),\n LOGGER.INFO,\n mockJwe\n );\n expect(guestLine.getStatus()).toEqual(RegistrationStatus.IDLE);\n await guestLine.register();\n\n expect(webex.request).toBeCalledOnceWith({\n ...getMockRequestTemplate(),\n body: {\n userId,\n clientDeviceUri,\n serviceData: {...guestServiceData, jwe: mockJwe},\n },\n uri: `${primaryUrl}device`,\n method: 'POST',\n });\n expect(handleErrorSpy).not.toBeCalled();\n\n expect(guestLine.getStatus()).toEqual(RegistrationStatus.ACTIVE);\n expect(guestLine.getActiveMobiusUrl()).toEqual(primaryUrl);\n expect(guestLine.getLoggingLevel()).toEqual(LOGGER.INFO);\n expect(guestLine.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);\n\n webex.request.mockClear();\n\n jest.advanceTimersByTime(30 * 1000);\n await Promise.resolve();\n\n jest.useRealTimers();\n });\n\n it('verify failure Registration cases all requests fail ', async () => {\n line.removeAllListeners(LINE_EVENTS.ERROR);\n\n webex.request.mockRejectedValue({\n statusCode: 401,\n });\n\n line.on(LINE_EVENTS.ERROR, (error) => {\n expect(error.message).toBe(\n 'User is unauthorized due to an expired token. Sign out, then sign back in.'\n );\n });\n\n expect(line.getStatus()).toBe(RegistrationStatus.IDLE);\n line.register();\n await utils.waitForMsecs(20);\n\n expect(line.getStatus()).toBe(RegistrationStatus.INACTIVE);\n expect(handleErrorSpy).toBeCalledOnceWith(\n expect.anything(),\n expect.anything(),\n {\n file: REGISTRATION_FILE,\n method: 'triggerRegistration',\n },\n expect.anything(),\n expect.any(Number)\n );\n });\n\n it('verify successful de-registration cases', async () => {\n webex.request.mockReturnValueOnce(registrationPayload);\n\n expect(line.getStatus()).toEqual(RegistrationStatus.IDLE);\n await line.register();\n expect(line.getStatus()).toEqual(RegistrationStatus.ACTIVE);\n\n await line.deregister();\n expect(line.getStatus()).toEqual(RegistrationStatus.IDLE);\n });\n });\n\n describe('Line event emission tests', () => {\n let line;\n\n beforeEach(() => {\n line = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO\n );\n });\n\n afterEach(() => {\n jest.clearAllMocks();\n line.removeAllListeners();\n });\n\n const supersededError = () =>\n createLineError(\n 'session superseded',\n {file: REGISTRATION_FILE, method: 'startKeepaliveTimer'},\n ERROR_TYPE.SESSION_SUPERSEDED,\n RegistrationStatus.INACTIVE\n );\n\n it.each([LINE_EVENTS.ERROR, LINE_EVENTS.UNREGISTERED])(\n 're-emits %s with the line error to the consumer',\n (event) => {\n const listener = jest.fn();\n const lineError = supersededError();\n\n line.on(event, listener);\n line.lineEmitter(event, undefined, lineError);\n\n expect(listener).toBeCalledOnceWith(lineError);\n }\n );\n\n it('emits unregistered without a reason when no line error is provided', () => {\n const listener = jest.fn();\n\n line.on(LINE_EVENTS.UNREGISTERED, listener);\n line.lineEmitter(LINE_EVENTS.UNREGISTERED);\n\n expect(listener).toBeCalledOnceWith(undefined);\n });\n\n it('does not emit error when no line error is provided', () => {\n const listener = jest.fn();\n\n line.on(LINE_EVENTS.ERROR, listener);\n line.lineEmitter(LINE_EVENTS.ERROR);\n\n expect(listener).not.toBeCalled();\n });\n });\n\n describe('Line calling tests', () => {\n let line;\n\n beforeEach(() => {\n line = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO\n );\n });\n\n afterEach(() => {\n jest.clearAllTimers();\n jest.clearAllMocks();\n jest.useRealTimers();\n line.removeAllListeners();\n });\n it('Return a successful call object while making call', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '5003', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:5003',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(line.getCall(call ? call.getCorrelationId() : '')).toBe(call);\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n call?.end();\n });\n\n it('Return a successful call object while making call to FAC codes', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '*25', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:*25',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n call?.end();\n });\n\n it('Remove spaces from dialled number while making call', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '+91 123 456 7890', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:+911234567890',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n expect(call ? call.destination.address : undefined).toStrictEqual('tel:+911234567890');\n call?.end();\n });\n\n it('Remove hyphen from dialled number while making call', () => {\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n const call = line.makeCall({address: '123-456-7890', type: CallType.URI});\n\n expect(createCallSpy).toBeCalledOnceWith(CallDirection.OUTBOUND, undefined, line.lineId, {\n address: 'tel:1234567890',\n type: 'uri',\n });\n expect(call).toBeTruthy();\n expect(call ? call.direction : undefined).toStrictEqual(CallDirection.OUTBOUND);\n expect(call ? call.destination.address : undefined).toStrictEqual('tel:1234567890');\n call?.end();\n });\n\n it('attempt to create call with incorrect number format 1', (done) => {\n // There may be other listeners , which may create race\n line.removeAllListeners(LINE_EVENTS.ERROR);\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n\n line.on(LINE_EVENTS.ERROR, (error) => {\n expect(error.message).toBe(\n 'An invalid phone number was detected. Check the number and try again.'\n );\n done();\n });\n try {\n const call = line.makeCall({address: 'select#$@^^', type: CallType.URI});\n\n expect(call).toBeUndefined();\n expect(createCallSpy).not.toBeCalledOnceWith({});\n } catch (error) {\n done(error);\n }\n });\n\n it('attempt to create call with incorrect number format 2', (done) => {\n expect.assertions(4);\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n\n line.on(LINE_EVENTS.ERROR, (error) => {\n expect(error.message).toBe(\n 'An invalid phone number was detected. Check the number and try again.'\n );\n done();\n });\n\n try {\n const call = line.makeCall({address: '+1@8883332505', type: CallType.URI});\n\n expect(call).toBeUndefined();\n expect(createCallSpy).not.toBeCalledOnceWith({});\n } catch (error) {\n done(error);\n }\n });\n\n it('attempt to create call with guest calling service indicator', () => {\n expect.assertions(2);\n const createCallSpy = jest.spyOn(line.callManager, 'createCall');\n\n // Mocking the serviceData to have GUEST_CALLING indicator\n line = new Line(\n userId,\n clientDeviceUri,\n mutex,\n primaryMobiusUris(),\n backupMobiusUris(),\n LOGGER.INFO,\n {indicator: ServiceIndicator.GUEST_CALLING}\n );\n const call = line.makeCall();\n\n expect(call).toBeTruthy();\n expect(createCallSpy).toBeCalledWith(CallDirection.OUTBOUND, undefined, expect.any(String));\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}