@webex/calling 3.0.0-next.2 → 3.0.0-next.21

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 (152) hide show
  1. package/CHANGELOG.md +1403 -0
  2. package/dist/CallHistory/CallHistory.js +1 -3
  3. package/dist/CallHistory/CallHistory.js.map +1 -1
  4. package/dist/CallHistory/callHistoryFixtures.js +9 -0
  5. package/dist/CallHistory/callHistoryFixtures.js.map +1 -1
  6. package/dist/CallHistory/types.js.map +1 -1
  7. package/dist/CallSettings/CallSettings.js +0 -2
  8. package/dist/CallSettings/CallSettings.js.map +1 -1
  9. package/dist/CallSettings/types.js.map +1 -1
  10. package/dist/CallingClient/CallingClient.js +119 -62
  11. package/dist/CallingClient/CallingClient.js.map +1 -1
  12. package/dist/CallingClient/CallingClient.test.js +161 -102
  13. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  14. package/dist/CallingClient/calling/CallerId/index.js +3 -23
  15. package/dist/CallingClient/calling/CallerId/index.js.map +1 -1
  16. package/dist/CallingClient/calling/CallerId/types.js.map +1 -1
  17. package/dist/CallingClient/calling/call.js +78 -33
  18. package/dist/CallingClient/calling/call.js.map +1 -1
  19. package/dist/CallingClient/calling/call.test.js +483 -351
  20. package/dist/CallingClient/calling/call.test.js.map +1 -1
  21. package/dist/CallingClient/calling/callManager.js +0 -9
  22. package/dist/CallingClient/calling/callManager.js.map +1 -1
  23. package/dist/CallingClient/calling/callManager.test.js +1 -1
  24. package/dist/CallingClient/calling/callManager.test.js.map +1 -1
  25. package/dist/CallingClient/calling/types.js.map +1 -1
  26. package/dist/CallingClient/callingClientFixtures.js +107 -1
  27. package/dist/CallingClient/callingClientFixtures.js.map +1 -1
  28. package/dist/CallingClient/constants.js +14 -6
  29. package/dist/CallingClient/constants.js.map +1 -1
  30. package/dist/CallingClient/line/index.js +12 -12
  31. package/dist/CallingClient/line/index.js.map +1 -1
  32. package/dist/CallingClient/line/line.test.js +9 -9
  33. package/dist/CallingClient/line/line.test.js.map +1 -1
  34. package/dist/CallingClient/line/types.js +4 -7
  35. package/dist/CallingClient/line/types.js.map +1 -1
  36. package/dist/CallingClient/registration/register.js +62 -80
  37. package/dist/CallingClient/registration/register.js.map +1 -1
  38. package/dist/CallingClient/registration/register.test.js +28 -28
  39. package/dist/CallingClient/registration/register.test.js.map +1 -1
  40. package/dist/CallingClient/registration/types.js.map +1 -1
  41. package/dist/CallingClient/types.js.map +1 -1
  42. package/dist/Contacts/ContactsClient.js +8 -2
  43. package/dist/Contacts/ContactsClient.js.map +1 -1
  44. package/dist/Contacts/types.js +3 -0
  45. package/dist/Contacts/types.js.map +1 -1
  46. package/dist/Errors/catalog/CallingDeviceError.js +1 -1
  47. package/dist/Errors/catalog/CallingDeviceError.js.map +1 -1
  48. package/dist/Errors/catalog/LineError.js +2 -2
  49. package/dist/Errors/catalog/LineError.js.map +1 -1
  50. package/dist/Errors/index.js +7 -0
  51. package/dist/Errors/index.js.map +1 -1
  52. package/dist/Errors/types.js.map +1 -1
  53. package/dist/Events/types.js +0 -1
  54. package/dist/Events/types.js.map +1 -1
  55. package/dist/Metrics/index.test.js +1 -1
  56. package/dist/Metrics/index.test.js.map +1 -1
  57. package/dist/SDKConnector/types.js.map +1 -1
  58. package/dist/Voicemail/Voicemail.js +18 -21
  59. package/dist/Voicemail/Voicemail.js.map +1 -1
  60. package/dist/Voicemail/WxCallBackendConnector.js +1 -1
  61. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
  62. package/dist/Voicemail/types.js.map +1 -1
  63. package/dist/api.js +43 -20
  64. package/dist/api.js.map +1 -1
  65. package/dist/common/Utils.js +13 -18
  66. package/dist/common/Utils.js.map +1 -1
  67. package/dist/common/Utils.test.js +1 -1
  68. package/dist/common/Utils.test.js.map +1 -1
  69. package/dist/common/testUtil.js +2 -1
  70. package/dist/common/testUtil.js.map +1 -1
  71. package/dist/common/types.js +8 -7
  72. package/dist/common/types.js.map +1 -1
  73. package/dist/index.js +233 -0
  74. package/dist/index.js.map +1 -1
  75. package/dist/module/CallHistory/callHistoryFixtures.js +9 -0
  76. package/dist/module/CallingClient/CallingClient.js +59 -42
  77. package/dist/module/CallingClient/calling/CallerId/index.js +3 -23
  78. package/dist/module/CallingClient/calling/call.js +54 -17
  79. package/dist/module/CallingClient/calling/callManager.js +0 -6
  80. package/dist/module/CallingClient/callingClientFixtures.js +119 -1
  81. package/dist/module/CallingClient/constants.js +8 -4
  82. package/dist/module/CallingClient/line/index.js +7 -10
  83. package/dist/module/CallingClient/line/types.js +0 -5
  84. package/dist/module/CallingClient/registration/register.js +28 -20
  85. package/dist/module/Contacts/ContactsClient.js +3 -0
  86. package/dist/module/Errors/catalog/CallingDeviceError.js +2 -2
  87. package/dist/module/Errors/catalog/LineError.js +2 -2
  88. package/dist/module/Errors/index.js +1 -0
  89. package/dist/module/api.js +6 -5
  90. package/dist/module/common/Utils.js +14 -19
  91. package/dist/module/common/testUtil.js +2 -1
  92. package/dist/module/common/types.js +6 -5
  93. package/dist/module/index.js +7 -0
  94. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  95. package/dist/types/CallHistory/callHistoryFixtures.d.ts.map +1 -1
  96. package/dist/types/CallSettings/CallSettings.d.ts.map +1 -1
  97. package/dist/types/CallSettings/types.d.ts.map +1 -1
  98. package/dist/types/CallingClient/CallingClient.d.ts +2 -0
  99. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  100. package/dist/types/CallingClient/calling/CallerId/index.d.ts.map +1 -1
  101. package/dist/types/CallingClient/calling/CallerId/types.d.ts.map +1 -1
  102. package/dist/types/CallingClient/calling/call.d.ts +2 -0
  103. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  104. package/dist/types/CallingClient/calling/callManager.d.ts +0 -1
  105. package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
  106. package/dist/types/CallingClient/calling/types.d.ts +30 -30
  107. package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
  108. package/dist/types/CallingClient/callingClientFixtures.d.ts +69 -1
  109. package/dist/types/CallingClient/callingClientFixtures.d.ts.map +1 -1
  110. package/dist/types/CallingClient/constants.d.ts +7 -3
  111. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  112. package/dist/types/CallingClient/line/index.d.ts +4 -5
  113. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  114. package/dist/types/CallingClient/line/types.d.ts +8 -13
  115. package/dist/types/CallingClient/line/types.d.ts.map +1 -1
  116. package/dist/types/CallingClient/registration/register.d.ts +3 -3
  117. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  118. package/dist/types/CallingClient/registration/types.d.ts +14 -14
  119. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  120. package/dist/types/CallingClient/types.d.ts +6 -4
  121. package/dist/types/CallingClient/types.d.ts.map +1 -1
  122. package/dist/types/Contacts/ContactsClient.d.ts +3 -2
  123. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  124. package/dist/types/Contacts/types.d.ts +2 -0
  125. package/dist/types/Contacts/types.d.ts.map +1 -1
  126. package/dist/types/Errors/catalog/CallingDeviceError.d.ts +4 -4
  127. package/dist/types/Errors/catalog/CallingDeviceError.d.ts.map +1 -1
  128. package/dist/types/Errors/catalog/LineError.d.ts +4 -4
  129. package/dist/types/Errors/catalog/LineError.d.ts.map +1 -1
  130. package/dist/types/Errors/index.d.ts +1 -0
  131. package/dist/types/Errors/index.d.ts.map +1 -1
  132. package/dist/types/Errors/types.d.ts +2 -3
  133. package/dist/types/Errors/types.d.ts.map +1 -1
  134. package/dist/types/Events/types.d.ts +11 -0
  135. package/dist/types/Events/types.d.ts.map +1 -1
  136. package/dist/types/SDKConnector/types.d.ts +2 -1
  137. package/dist/types/SDKConnector/types.d.ts.map +1 -1
  138. package/dist/types/Voicemail/UcmBackendConnector.d.ts +1 -1
  139. package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
  140. package/dist/types/Voicemail/WxCallBackendConnector.d.ts +1 -1
  141. package/dist/types/Voicemail/types.d.ts +10 -10
  142. package/dist/types/Voicemail/types.d.ts.map +1 -1
  143. package/dist/types/api.d.ts +10 -10
  144. package/dist/types/api.d.ts.map +1 -1
  145. package/dist/types/common/Utils.d.ts.map +1 -1
  146. package/dist/types/common/testUtil.d.ts +1 -0
  147. package/dist/types/common/testUtil.d.ts.map +1 -1
  148. package/dist/types/common/types.d.ts +3 -2
  149. package/dist/types/common/types.d.ts.map +1 -1
  150. package/dist/types/index.d.ts +11 -0
  151. package/dist/types/index.d.ts.map +1 -1
  152. package/package.json +6 -5
@@ -4,14 +4,12 @@ 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.WEB_AGENT = exports.WEBEX_WEB_CLIENT = exports.WEBEX = exports.VERSION = exports.VALID_PHONE = exports.UTILS_FILE = 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.SCIM_USER_FILTER = exports.SCIM_ENDPOINT_RESOURCE = 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.RESUME_ENDPOINT = 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.REGISTRATION_FILE = exports.REGISTER_UTIL = exports.REGISTER_RETRY_TIMEOUT = exports.RECONNECT_UTIL = exports.PACKETS_SENT = exports.PACKETS_RECEIVED = exports.PACKETS_LOST = exports.PACKETS_DISCARDED = exports.OUTBOUND_RTP = exports.OUTBOUND_CODEC_MATCH = exports.NETWORK_TYPE = exports.NETWORK_FLAP_TIMEOUT = exports.NETWORK_CHANGE_DETECTION_UTIL = exports.MINUTES_TO_SEC_MFACTOR = exports.MIME_TYPE = exports.METRIC_FILE = exports.MEDIA_SOURCE = exports.MEDIA_ID = exports.MEDIA_ENDPOINT_RESOURCE = 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.IDENTITY_ENDPOINT_RESOURCE = exports.IDENTITY_BROKER = exports.HOLD_ENDPOINT = exports.GET_MOBIUS_SERVERS_UTIL = exports.FETCH_NAME = exports.FAILOVER_UTIL = exports.FAILBACK_UTIL = exports.FAILBACK_429_RETRY_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_FEATURE = 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 = void 0;
8
- var VERSION = '1.71.1';
7
+ exports.WEB_AGENT = exports.WEBEX_WEB_CLIENT = exports.WEBEX = exports.VERSION = exports.VALID_PHONE = exports.UTILS_FILE = 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.SCIM_USER_FILTER = exports.SCIM_ENDPOINT_RESOURCE = 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.RESUME_ENDPOINT = 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.REGISTRATION_FILE = exports.REGISTER_UTIL = exports.REGISTER_RETRY_TIMEOUT = exports.RECONNECT_UTIL = exports.PACKETS_SENT = exports.PACKETS_RECEIVED = exports.PACKETS_LOST = exports.PACKETS_DISCARDED = exports.OUTBOUND_RTP = exports.OUTBOUND_CODEC_MATCH = exports.NETWORK_TYPE = exports.NETWORK_FLAP_TIMEOUT = exports.NETWORK_CHANGE_DETECTION_UTIL = exports.MOBIUS_US_PROD = exports.MOBIUS_US_INT = exports.MOBIUS_EU_PROD = exports.MOBIUS_EU_INT = exports.MINUTES_TO_SEC_MFACTOR = exports.MIME_TYPE = exports.METRIC_FILE = exports.MEDIA_SOURCE = exports.MEDIA_ID = exports.MEDIA_ENDPOINT_RESOURCE = 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.IDENTITY_ENDPOINT_RESOURCE = exports.IDENTITY_BROKER = exports.HOLD_ENDPOINT = exports.GET_MOBIUS_SERVERS_UTIL = exports.FETCH_NAME = exports.FAILOVER_UTIL = exports.FAILBACK_UTIL = exports.FAILBACK_429_RETRY_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 = void 0;
8
+ var VERSION = 'beta';
9
9
  exports.VERSION = VERSION;
10
- var REPO_NAME = 'web-calling-sdk';
10
+ var REPO_NAME = 'webex-calling';
11
11
  exports.REPO_NAME = REPO_NAME;
12
- var CALLING_FEATURE = 'web-calling';
13
- exports.CALLING_FEATURE = CALLING_FEATURE;
14
- var CALLING_USER_AGENT = "".concat(REPO_NAME, "/").concat(VERSION, " (").concat(CALLING_FEATURE, ")");
12
+ var CALLING_USER_AGENT = "".concat(REPO_NAME, "/").concat(VERSION);
15
13
  exports.CALLING_USER_AGENT = CALLING_USER_AGENT;
16
14
  var CALL_ENDPOINT_RESOURCE = 'call';
17
15
  exports.CALL_ENDPOINT_RESOURCE = CALL_ENDPOINT_RESOURCE;
@@ -101,6 +99,8 @@ var REGISTER_RETRY_TIMEOUT = 10000;
101
99
  exports.REGISTER_RETRY_TIMEOUT = REGISTER_RETRY_TIMEOUT;
102
100
  var SUPPLEMENTARY_SERVICES_TIMEOUT = 10000;
103
101
  exports.SUPPLEMENTARY_SERVICES_TIMEOUT = SUPPLEMENTARY_SERVICES_TIMEOUT;
102
+ var API_V1 = '/api/v1';
103
+ exports.API_V1 = API_V1;
104
104
  var URL_ENDPOINT = '/calling/web/';
105
105
  exports.URL_ENDPOINT = URL_ENDPOINT;
106
106
  var VALID_PHONE = /[\d\s()*#+.-]+/;
@@ -223,4 +223,12 @@ var CALLS_CLEARED_HANDLER_UTIL = 'callsClearedHandler';
223
223
  exports.CALLS_CLEARED_HANDLER_UTIL = CALLS_CLEARED_HANDLER_UTIL;
224
224
  var RECONNECT_UTIL = 'reconnectOnFailure';
225
225
  exports.RECONNECT_UTIL = RECONNECT_UTIL;
226
+ var MOBIUS_US_PROD = 'mobius-us-east-1.prod.infra.webex.com';
227
+ exports.MOBIUS_US_PROD = MOBIUS_US_PROD;
228
+ var MOBIUS_EU_PROD = 'mobius-eu-central-1.prod.infra.webex.com';
229
+ exports.MOBIUS_EU_PROD = MOBIUS_EU_PROD;
230
+ var MOBIUS_US_INT = 'mobius-us-east-1.int.infra.webex.com';
231
+ exports.MOBIUS_US_INT = MOBIUS_US_INT;
232
+ var MOBIUS_EU_INT = 'mobius-eu-central-1.int.infra.webex.com';
233
+ exports.MOBIUS_EU_INT = MOBIUS_EU_INT;
226
234
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["VERSION","exports","REPO_NAME","CALLING_FEATURE","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","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","FETCH_NAME","IDENTITY_BROKER","IP_ENDPOINT","IDENTITY_ENDPOINT_RESOURCE","INITIAL_SEQ_NUMBER","MEDIA_ENDPOINT_RESOURCE","NETWORK_FLAP_TIMEOUT","CALL_HOLD_SERVICE","CALL_TRANSFER_SERVICE","HOLD_ENDPOINT","TRANSFER_ENDPOINT","RESUME_ENDPOINT","SCIM_ENDPOINT_RESOURCE","SCIM_USER_FILTER","SPARK_USER_AGENT","REGISTER_RETRY_TIMEOUT","SUPPLEMENTARY_SERVICES_TIMEOUT","URL_ENDPOINT","VALID_PHONE","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","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","REGISTER_UTIL","GET_MOBIUS_SERVERS_UTIL","KEEPALIVE_UTIL","FAILBACK_UTIL","FAILBACK_429_RETRY_UTIL","FAILOVER_UTIL","NETWORK_CHANGE_DETECTION_UTIL","CALLS_CLEARED_HANDLER_UTIL","RECONNECT_UTIL"],"sources":["constants.ts"],"sourcesContent":["export const VERSION = '1.71.1';\nexport const REPO_NAME = 'web-calling-sdk';\nexport const CALLING_FEATURE = 'web-calling';\nexport const CALLING_USER_AGENT = `${REPO_NAME}/${VERSION} (${CALLING_FEATURE})`;\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 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 FETCH_NAME = /^[a-zA-Z ]+/;\nexport const IDENTITY_BROKER = 'https://identitybts.webex.com/';\nexport const IP_ENDPOINT = 'myip';\nexport const IDENTITY_ENDPOINT_RESOURCE = 'identity';\nexport const INITIAL_SEQ_NUMBER = 1;\nexport const MEDIA_ENDPOINT_RESOURCE = 'media';\nexport const NETWORK_FLAP_TIMEOUT = 2000;\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 SCIM_ENDPOINT_RESOURCE = 'scim';\nexport const SCIM_USER_FILTER = 'v1/Users?filter=';\nexport const SPARK_USER_AGENT = 'spark-user-agent';\nexport const REGISTER_RETRY_TIMEOUT = 10000;\nexport const SUPPLEMENTARY_SERVICES_TIMEOUT = 10000;\nexport const URL_ENDPOINT = '/calling/web/';\nexport const VALID_PHONE = /[\\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 = 'utils';\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 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 = 1200;\nexport const REG_FAILBACK_429_MAX_RETRIES = 5;\nexport const REGISTER_UTIL = 'registerDevice';\nexport const GET_MOBIUS_SERVERS_UTIL = 'getMobiusServers';\nexport const KEEPALIVE_UTIL = 'startKeepaliveTimer';\nexport const FAILBACK_UTIL = 'executeFailback';\nexport const FAILBACK_429_RETRY_UTIL = 'scheduleFailback429Retry';\nexport const FAILOVER_UTIL = 'startFailoverTimer';\nexport const NETWORK_CHANGE_DETECTION_UTIL = 'detectNetworkChange';\nexport const CALLS_CLEARED_HANDLER_UTIL = 'callsClearedHandler';\nexport const RECONNECT_UTIL = 'reconnectOnFailure';\n"],"mappings":"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"}
1
+ {"version":3,"names":["VERSION","exports","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","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","FETCH_NAME","IDENTITY_BROKER","IP_ENDPOINT","IDENTITY_ENDPOINT_RESOURCE","INITIAL_SEQ_NUMBER","MEDIA_ENDPOINT_RESOURCE","NETWORK_FLAP_TIMEOUT","CALL_HOLD_SERVICE","CALL_TRANSFER_SERVICE","HOLD_ENDPOINT","TRANSFER_ENDPOINT","RESUME_ENDPOINT","SCIM_ENDPOINT_RESOURCE","SCIM_USER_FILTER","SPARK_USER_AGENT","REGISTER_RETRY_TIMEOUT","SUPPLEMENTARY_SERVICES_TIMEOUT","API_V1","URL_ENDPOINT","VALID_PHONE","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","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","REGISTER_UTIL","GET_MOBIUS_SERVERS_UTIL","KEEPALIVE_UTIL","FAILBACK_UTIL","FAILBACK_429_RETRY_UTIL","FAILOVER_UTIL","NETWORK_CHANGE_DETECTION_UTIL","CALLS_CLEARED_HANDLER_UTIL","RECONNECT_UTIL","MOBIUS_US_PROD","MOBIUS_EU_PROD","MOBIUS_US_INT","MOBIUS_EU_INT"],"sources":["constants.ts"],"sourcesContent":["export const VERSION = 'beta';\nexport const REPO_NAME = 'webex-calling';\nexport const CALLING_USER_AGENT = `${REPO_NAME}/${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 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 FETCH_NAME = /^[a-zA-Z ]+/;\nexport const IDENTITY_BROKER = 'https://identitybts.webex.com/';\nexport const IP_ENDPOINT = 'myip';\nexport const IDENTITY_ENDPOINT_RESOURCE = 'identity';\nexport const INITIAL_SEQ_NUMBER = 1;\nexport const MEDIA_ENDPOINT_RESOURCE = 'media';\nexport const NETWORK_FLAP_TIMEOUT = 2000;\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 SCIM_ENDPOINT_RESOURCE = 'scim';\nexport const SCIM_USER_FILTER = 'v1/Users?filter=';\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 = /[\\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 = 'utils';\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 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 = 1200;\nexport const REG_FAILBACK_429_MAX_RETRIES = 5;\nexport const REGISTER_UTIL = 'registerDevice';\nexport const GET_MOBIUS_SERVERS_UTIL = 'getMobiusServers';\nexport const KEEPALIVE_UTIL = 'startKeepaliveTimer';\nexport const FAILBACK_UTIL = 'executeFailback';\nexport const FAILBACK_429_RETRY_UTIL = 'scheduleFailback429Retry';\nexport const FAILOVER_UTIL = 'startFailoverTimer';\nexport const NETWORK_CHANGE_DETECTION_UTIL = 'detectNetworkChange';\nexport const CALLS_CLEARED_HANDLER_UTIL = 'callsClearedHandler';\nexport const RECONNECT_UTIL = 'reconnectOnFailure';\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';\n"],"mappings":"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"}
@@ -44,7 +44,7 @@ var _backupMobiusUris = /*#__PURE__*/new _weakMap.default();
44
44
  var Line = /*#__PURE__*/function (_Eventing) {
45
45
  (0, _inherits2.default)(Line, _Eventing);
46
46
  var _super = _createSuper(Line);
47
- function Line(userId, clientDeviceUri, status, mutex, primaryMobiusUris, backupMobiusUris, logLevel, serviceDataConfig, phoneNumber, extension, voicemail) {
47
+ function Line(userId, clientDeviceUri, mutex, primaryMobiusUris, backupMobiusUris, logLevel, serviceDataConfig, phoneNumber, extension, voicemail) {
48
48
  var _this;
49
49
  (0, _classCallCheck2.default)(this, Line);
50
50
  _this = _super.call(this);
@@ -68,7 +68,6 @@ var Line = /*#__PURE__*/function (_Eventing) {
68
68
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "mobiusUri", void 0);
69
69
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "phoneNumber", void 0);
70
70
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "extension", void 0);
71
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "status", void 0);
72
71
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "sipAddresses", void 0);
73
72
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "voicemail", void 0);
74
73
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "lastSeen", void 0);
@@ -115,7 +114,7 @@ var Line = /*#__PURE__*/function (_Eventing) {
115
114
  /**
116
115
  * Gets registration status
117
116
  */
118
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getRegistrationStatus", function () {
117
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "getStatus", function () {
119
118
  return _this.registration.getStatus();
120
119
  });
121
120
  /**
@@ -126,7 +125,8 @@ var Line = /*#__PURE__*/function (_Eventing) {
126
125
  return (_this$registration$ge = _this.registration.getDeviceInfo().device) === null || _this$registration$ge === void 0 ? void 0 : _this$registration$ge.deviceId;
127
126
  });
128
127
  /**
129
- * @param dest -.
128
+ * Initiates a call to the specified destination.
129
+ * @param dest - The call details including destination information.
130
130
  */
131
131
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "makeCall", function (dest) {
132
132
  var call;
@@ -143,7 +143,7 @@ var Line = /*#__PURE__*/function (_Eventing) {
143
143
  _Logger.default.log("New call created, callId: ".concat(call.getCallId()), {});
144
144
  } else {
145
145
  _Logger.default.warn('Invalid phone number detected', {});
146
- var err = new _LineError.LineError('An invalid phone number was detected. Check the number and try again.', {}, _types4.ERROR_TYPE.CALL_ERROR, _types2.LineStatus.ACTIVE);
146
+ var err = new _LineError.LineError('An invalid phone number was detected. Check the number and try again.', {}, _types4.ERROR_TYPE.CALL_ERROR, _types.RegistrationStatus.ACTIVE);
147
147
  _this.emit(_types2.LINE_EVENTS.ERROR, err);
148
148
  }
149
149
  return call;
@@ -160,7 +160,6 @@ var Line = /*#__PURE__*/function (_Eventing) {
160
160
  _this.lineId = (0, _uuid.v4)();
161
161
  _this.userId = userId;
162
162
  _this.clientDeviceUri = clientDeviceUri;
163
- _this.status = status;
164
163
  _this.phoneNumber = phoneNumber;
165
164
  _this.extension = extension;
166
165
  _this.voicemail = voicemail;
@@ -175,7 +174,6 @@ var Line = /*#__PURE__*/function (_Eventing) {
175
174
  };
176
175
  (0, _common.validateServiceData)(serviceData);
177
176
  _this.registration = (0, _registration.createRegistration)((0, _classPrivateFieldGet2.default)((0, _assertThisInitialized2.default)(_this), _webex), serviceData, (0, _classPrivateFieldGet2.default)((0, _assertThisInitialized2.default)(_this), _mutex), _this.lineEmitter, logLevel);
178
- _this.registration.setStatus(_types.MobiusStatus.DEFAULT);
179
177
  _Logger.default.setLogger(logLevel, _constants.LINE_FILE);
180
178
  _this.callManager = (0, _callManager.getCallManager)((0, _classPrivateFieldGet2.default)((0, _assertThisInitialized2.default)(_this), _webex), serviceData.indicator);
181
179
  _this.incomingCallListener();
@@ -198,12 +196,11 @@ var Line = /*#__PURE__*/function (_Eventing) {
198
196
  return _regenerator.default.wrap(function _callee$(_context) {
199
197
  while (1) switch (_context.prev = _context.next) {
200
198
  case 0:
201
- _this2.registration.setStatus(_types.MobiusStatus.DEFAULT);
202
199
  _this2.emit(_types2.LINE_EVENTS.CONNECTING);
203
200
  _this2.registration.setMobiusServers((0, _classPrivateFieldGet2.default)(_this2, _primaryMobiusUris), (0, _classPrivateFieldGet2.default)(_this2, _backupMobiusUris));
204
- _context.next = 5;
201
+ _context.next = 4;
205
202
  return _this2.registration.triggerRegistration();
206
- case 5:
203
+ case 4:
207
204
  case "end":
208
205
  return _context.stop();
209
206
  }
@@ -234,8 +231,11 @@ var Line = /*#__PURE__*/function (_Eventing) {
234
231
  return _regenerator.default.wrap(function _callee3$(_context3) {
235
232
  while (1) switch (_context3.prev = _context3.next) {
236
233
  case 0:
237
- this.registration.deregister();
238
- case 1:
234
+ _context3.next = 2;
235
+ return this.registration.deregister();
236
+ case 2:
237
+ this.registration.setStatus(_types.RegistrationStatus.IDLE);
238
+ case 3:
239
239
  case "end":
240
240
  return _context3.stop();
241
241
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_uuid","require","_types","_types2","_constants","_Logger","_interopRequireDefault","_registration","_impl","_LineError","_common","_SDKConnector","_types3","_callManager","_types4","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","_classPrivateFieldInitSpec","obj","privateMap","value","_checkPrivateRedeclaration","set","privateCollection","has","TypeError","_webex","_weakMap","_mutex","_sdkConnector","_primaryMobiusUris","_backupMobiusUris","Line","_Eventing","_inherits2","_super","userId","clientDeviceUri","status","mutex","primaryMobiusUris","backupMobiusUris","logLevel","serviceDataConfig","phoneNumber","extension","voicemail","_this","_classCallCheck2","_assertThisInitialized2","writable","_defineProperty2","event","deviceInfo","lineError","LINE_EVENTS","REGISTERED","normalizeLine","emit","UNREGISTERED","RECONNECTED","RECONNECTING","ERROR","registration","getStatus","_this$registration$ge","getDeviceInfo","device","deviceId","dest","match","address","VALID_PHONE","length","_this$registration$ge2","sanitizedNumber","replace","formattedDest","type","concat","callManager","createCall","CallDirection","OUTBOUND","lineId","log","getCallId","warn","err","LineError","ERROR_TYPE","CALL_ERROR","LineStatus","ACTIVE","undefined","correlationId","getCall","uuid","_classPrivateFieldSet2","SDKConnector","_classPrivateFieldGet2","getWebex","serviceData","indicator","ServiceIndicator","CALLING","domain","validateServiceData","createRegistration","lineEmitter","setStatus","MobiusStatus","DEFAULT","setLogger","LINE_FILE","getCallManager","incomingCallListener","_createClass2","key","_register","_asyncToGenerator2","_regenerator","mark","_callee2","_this2","wrap","_callee2$","_context2","prev","next","runExclusive","_callee","_callee$","_context","CONNECTING","setMobiusServers","triggerRegistration","stop","mobiusDeviceId","updateLine","register","_deregister","_callee3","_callee3$","_context3","deregister","keepaliveInterval","callKeepaliveInterval","rehomingIntervalMin","rehomingIntervalMax","voicePortalNumber","voicePortalExtension","mobiusUri","uri","lastSeen","sipAddresses","addresses","getLoggingLevel","getLogLevel","getActiveMobiusUrl","_this3","logContext","file","method","name","on","LINE_EVENT_KEYS","INCOMING_CALL","callObj","Eventing","exports"],"sources":["index.ts"],"sourcesContent":["import {Mutex} from 'async-mutex';\nimport {v4 as uuid} from 'uuid';\nimport {\n CallDetails,\n CallDirection,\n CorrelationId,\n IDeviceInfo,\n MobiusDeviceId,\n MobiusStatus,\n ServiceIndicator,\n} from '../../common/types';\nimport {ILine, LINE_EVENTS, LineEventTypes, LineStatus} from './types';\nimport {LINE_FILE, VALID_PHONE} 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} 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 status: LineStatus;\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 #primaryMobiusUris: string[];\n\n #backupMobiusUris: string[];\n\n constructor(\n userId: string,\n clientDeviceUri: string,\n status: LineStatus,\n mutex: Mutex,\n primaryMobiusUris: string[],\n backupMobiusUris: string[],\n logLevel: LOGGER,\n serviceDataConfig?: CallingClientConfig['serviceData'],\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.status = status;\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 const serviceData = serviceDataConfig?.indicator\n ? serviceDataConfig\n : {indicator: ServiceIndicator.CALLING, domain: ''};\n\n validateServiceData(serviceData);\n\n this.registration = createRegistration(\n this.#webex,\n serviceData,\n this.#mutex,\n this.lineEmitter,\n logLevel\n );\n\n this.registration.setStatus(MobiusStatus.DEFAULT);\n log.setLogger(logLevel, LINE_FILE);\n\n this.callManager = getCallManager(this.#webex, serviceData.indicator);\n\n this.incomingCallListener();\n }\n\n /**\n * Wrapper to for device registration.\n */\n public async register() {\n await this.#mutex.runExclusive(async () => {\n this.registration.setStatus(MobiusStatus.DEFAULT);\n this.emit(LINE_EVENTS.CONNECTING);\n\n this.registration.setMobiusServers(this.#primaryMobiusUris, this.#backupMobiusUris);\n await this.registration.triggerRegistration();\n });\n if (this.mobiusDeviceId) {\n this.callManager.updateLine(this.mobiusDeviceId, this);\n }\n }\n\n /**\n * Wrapper to for device deregister.\n */\n public async deregister() {\n this.registration.deregister();\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 }\n\n /**\n * Line events emitter\n */\n public lineEmitter = (event: LINE_EVENTS, deviceInfo?: IDeviceInfo, lineError?: LineError) => {\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 getRegistrationStatus = (): MobiusStatus => this.registration.getStatus();\n\n /**\n * Gets device id\n */\n public getDeviceId = (): MobiusDeviceId | undefined =>\n this.registration.getDeviceInfo().device?.deviceId;\n\n /**\n * @param dest -.\n */\n public makeCall = (dest: CallDetails): ICall | undefined => {\n let call;\n\n if (dest) {\n const match = dest.address.match(VALID_PHONE);\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 formattedDest,\n CallDirection.OUTBOUND,\n this.registration.getDeviceInfo().device?.deviceId as string,\n this.lineId\n );\n log.log(`New call created, callId: ${call.getCallId()}`, {});\n } else {\n log.warn('Invalid phone number detected', {});\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 LineStatus.ACTIVE\n );\n\n this.emit(LINE_EVENTS.ERROR, err);\n }\n\n return call;\n }\n\n return undefined;\n };\n\n /**\n * An Incoming Call listener.\n */\n private incomingCallListener() {\n const logContext = {\n file: LINE_FILE,\n method: this.incomingCallListener.name,\n };\n log.log('Listening for incoming calls... ', logContext);\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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"}
1
+ {"version":3,"names":["_uuid","require","_types","_types2","_constants","_Logger","_interopRequireDefault","_registration","_impl","_LineError","_common","_SDKConnector","_types3","_callManager","_types4","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","_classPrivateFieldInitSpec","obj","privateMap","value","_checkPrivateRedeclaration","set","privateCollection","has","TypeError","_webex","_weakMap","_mutex","_sdkConnector","_primaryMobiusUris","_backupMobiusUris","Line","_Eventing","_inherits2","_super","userId","clientDeviceUri","mutex","primaryMobiusUris","backupMobiusUris","logLevel","serviceDataConfig","phoneNumber","extension","voicemail","_this","_classCallCheck2","_assertThisInitialized2","writable","_defineProperty2","event","deviceInfo","lineError","LINE_EVENTS","REGISTERED","normalizeLine","emit","UNREGISTERED","RECONNECTED","RECONNECTING","ERROR","registration","getStatus","_this$registration$ge","getDeviceInfo","device","deviceId","dest","match","address","VALID_PHONE","length","_this$registration$ge2","sanitizedNumber","replace","formattedDest","type","concat","callManager","createCall","CallDirection","OUTBOUND","lineId","log","getCallId","warn","err","LineError","ERROR_TYPE","CALL_ERROR","RegistrationStatus","ACTIVE","undefined","correlationId","getCall","uuid","_classPrivateFieldSet2","SDKConnector","_classPrivateFieldGet2","getWebex","serviceData","indicator","ServiceIndicator","CALLING","domain","validateServiceData","createRegistration","lineEmitter","setLogger","LINE_FILE","getCallManager","incomingCallListener","_createClass2","key","_register","_asyncToGenerator2","_regenerator","mark","_callee2","_this2","wrap","_callee2$","_context2","prev","next","runExclusive","_callee","_callee$","_context","CONNECTING","setMobiusServers","triggerRegistration","stop","mobiusDeviceId","updateLine","register","_deregister","_callee3","_callee3$","_context3","deregister","setStatus","IDLE","keepaliveInterval","callKeepaliveInterval","rehomingIntervalMin","rehomingIntervalMax","voicePortalNumber","voicePortalExtension","mobiusUri","uri","lastSeen","sipAddresses","addresses","getLoggingLevel","getLogLevel","getActiveMobiusUrl","_this3","logContext","file","method","name","on","LINE_EVENT_KEYS","INCOMING_CALL","callObj","Eventing","exports"],"sources":["index.ts"],"sourcesContent":["import {Mutex} from 'async-mutex';\nimport {v4 as uuid} from 'uuid';\nimport {\n CallDetails,\n CallDirection,\n CorrelationId,\n IDeviceInfo,\n MobiusDeviceId,\n RegistrationStatus,\n ServiceIndicator,\n} from '../../common/types';\nimport {ILine, LINE_EVENTS, LineEventTypes} from './types';\nimport {LINE_FILE, VALID_PHONE} 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} 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 #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 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 const serviceData = serviceDataConfig?.indicator\n ? serviceDataConfig\n : {indicator: ServiceIndicator.CALLING, domain: ''};\n\n validateServiceData(serviceData);\n\n this.registration = createRegistration(\n this.#webex,\n serviceData,\n this.#mutex,\n this.lineEmitter,\n logLevel\n );\n\n log.setLogger(logLevel, LINE_FILE);\n\n this.callManager = getCallManager(this.#webex, serviceData.indicator);\n\n this.incomingCallListener();\n }\n\n /**\n * Wrapper to for device registration.\n */\n public async register() {\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 if (this.mobiusDeviceId) {\n this.callManager.updateLine(this.mobiusDeviceId, this);\n }\n }\n\n /**\n * Wrapper to for device deregister.\n */\n public async deregister() {\n await this.registration.deregister();\n this.registration.setStatus(RegistrationStatus.IDLE);\n }\n\n /**\n * To normalize line class with Mobius response\n */\n private normalizeLine(deviceInfo: IDeviceInfo) {\n const {\n device,\n keepaliveInterval,\n callKeepaliveInterval,\n rehomingIntervalMin,\n rehomingIntervalMax,\n voicePortalNumber,\n voicePortalExtension,\n } = deviceInfo;\n\n this.mobiusDeviceId = device?.deviceId;\n this.mobiusUri = device?.uri;\n this.lastSeen = device?.lastSeen;\n this.sipAddresses = device?.addresses;\n this.keepaliveInterval = keepaliveInterval;\n this.callKeepaliveInterval = callKeepaliveInterval;\n this.rehomingIntervalMin = rehomingIntervalMin;\n this.rehomingIntervalMax = rehomingIntervalMax;\n this.voicePortalNumber = voicePortalNumber;\n this.voicePortalExtension = voicePortalExtension;\n }\n\n /**\n * Line events emitter\n */\n public lineEmitter = (event: LINE_EVENTS, deviceInfo?: IDeviceInfo, lineError?: LineError) => {\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 let call;\n\n if (dest) {\n const match = dest.address.match(VALID_PHONE);\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 formattedDest,\n CallDirection.OUTBOUND,\n this.registration.getDeviceInfo().device?.deviceId as string,\n this.lineId\n );\n log.log(`New call created, callId: ${call.getCallId()}`, {});\n } else {\n log.warn('Invalid phone number detected', {});\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\n return undefined;\n };\n\n /**\n * An Incoming Call listener.\n */\n private incomingCallListener() {\n const logContext = {\n file: LINE_FILE,\n method: this.incomingCallListener.name,\n };\n log.log('Listening for incoming calls... ', logContext);\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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"}
@@ -59,7 +59,7 @@ describe('Line Tests', function () {
59
59
  body: mockRegistrationBody
60
60
  };
61
61
  beforeEach(function () {
62
- line = new _.default(userId, clientDeviceUri, _types2.LineStatus.ACTIVE, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO);
62
+ line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO);
63
63
  });
64
64
  afterEach(function () {
65
65
  jest.clearAllTimers();
@@ -74,7 +74,7 @@ describe('Line Tests', function () {
74
74
  jest.useFakeTimers();
75
75
  webex.request.mockReturnValue(registrationPayload);
76
76
  expect(createRegistrationSpy).toBeCalledOnceWith(webex, defaultServiceData, expect.any(_asyncMutex.Mutex), expect.anything(), _types3.LOGGER.INFO);
77
- expect(line.getRegistrationStatus()).toEqual(_types.MobiusStatus.DEFAULT);
77
+ expect(line.getStatus()).toEqual(_types.RegistrationStatus.IDLE);
78
78
  _context.next = 6;
79
79
  return line.register();
80
80
  case 6:
@@ -88,7 +88,7 @@ describe('Line Tests', function () {
88
88
  method: 'POST'
89
89
  }));
90
90
  expect(handleErrorSpy).not.toBeCalled();
91
- expect(line.getRegistrationStatus()).toEqual(_types.MobiusStatus.ACTIVE);
91
+ expect(line.getStatus()).toEqual(_types.RegistrationStatus.ACTIVE);
92
92
  expect(line.getActiveMobiusUrl()).toEqual(primaryUrl);
93
93
  expect(line.getLoggingLevel()).toEqual(_types3.LOGGER.INFO);
94
94
  expect(line.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);
@@ -119,12 +119,12 @@ describe('Line Tests', function () {
119
119
  line.on(_types2.LINE_EVENTS.ERROR, function (error) {
120
120
  expect(error.message).toBe('User is unauthorized due to an expired token. Sign out, then sign back in.');
121
121
  });
122
- expect(line.getRegistrationStatus()).toBe(_types.MobiusStatus.DEFAULT);
122
+ expect(line.getStatus()).toBe(_types.RegistrationStatus.IDLE);
123
123
  line.register();
124
124
  _context2.next = 7;
125
125
  return utils.waitForMsecs(20);
126
126
  case 7:
127
- expect(line.getRegistrationStatus()).toBe(_types.MobiusStatus.DEFAULT);
127
+ expect(line.getStatus()).toBe(_types.RegistrationStatus.INACTIVE);
128
128
  expect(handleErrorSpy).toBeCalledOnceWith(expect.anything(), expect.anything(), {
129
129
  file: _constants.REGISTRATION_FILE,
130
130
  method: 'attemptRegistrationWithServers'
@@ -140,15 +140,15 @@ describe('Line Tests', function () {
140
140
  while (1) switch (_context3.prev = _context3.next) {
141
141
  case 0:
142
142
  webex.request.mockReturnValueOnce(registrationPayload);
143
- expect(line.getRegistrationStatus()).toEqual(_types.MobiusStatus.DEFAULT);
143
+ expect(line.getStatus()).toEqual(_types.RegistrationStatus.IDLE);
144
144
  _context3.next = 4;
145
145
  return line.register();
146
146
  case 4:
147
- expect(line.getRegistrationStatus()).toEqual(_types.MobiusStatus.ACTIVE);
147
+ expect(line.getStatus()).toEqual(_types.RegistrationStatus.ACTIVE);
148
148
  _context3.next = 7;
149
149
  return line.deregister();
150
150
  case 7:
151
- expect(line.getRegistrationStatus()).toEqual(_types.MobiusStatus.DEFAULT);
151
+ expect(line.getStatus()).toEqual(_types.RegistrationStatus.IDLE);
152
152
  case 8:
153
153
  case "end":
154
154
  return _context3.stop();
@@ -159,7 +159,7 @@ describe('Line Tests', function () {
159
159
  describe('Line calling tests', function () {
160
160
  var line;
161
161
  beforeEach(function () {
162
- line = new _.default(userId, clientDeviceUri, _types2.LineStatus.ACTIVE, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO);
162
+ line = new _.default(userId, clientDeviceUri, mutex, primaryMobiusUris(), backupMobiusUris(), _types3.LOGGER.INFO);
163
163
  });
164
164
  afterEach(function () {
165
165
  jest.clearAllTimers();
@@ -1 +1 @@
1
- {"version":3,"names":["_asyncMutex","require","_testUtil","_registerFixtures","_common","_types","_types2","_","_interopRequireDefault","utils","_interopRequireWildcard","_SDKConnector","_constants","_types3","regUtils","_getRequireWildcardCache","nodeInterop","_WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","_Object$defineProperty","_Object$getOwnPropertyDescriptor","key","Object","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","_Object$keys","_Object$getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","describe","mutex","Mutex","webex","getTestUtilsWebex","SDKConnector","setWebex","defaultServiceData","indicator","ServiceIndicator","CALLING","domain","createRegistrationSpy","jest","spyOn","mobiusUris","filterMobiusUris","getMobiusDiscoveryResponse","URL","primaryMobiusUris","fn","primary","backupMobiusUris","backup","userId","internal","device","clientDeviceUri","url","handleErrorSpy","clearAllMocks","line","mockRegistrationBody","getMockDeviceInfo","discoveryBody","primaryUrl","concat","uris","registrationPayload","statusCode","body","beforeEach","Line","LineStatus","ACTIVE","LOGGER","INFO","afterEach","clearAllTimers","useRealTimers","removeAllListeners","it","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","useFakeTimers","request","mockReturnValue","expect","toBeCalledOnceWith","any","anything","getRegistrationStatus","toEqual","MobiusStatus","DEFAULT","register","getMockRequestTemplate","serviceData","uri","method","not","toBeCalled","getActiveMobiusUrl","getLoggingLevel","getDeviceId","deviceId","mockClear","advanceTimersByTime","_promise","resolve","stop","_callee2","_callee2$","_context2","LINE_EVENTS","ERROR","mockRejectedValue","on","error","message","toBe","waitForMsecs","file","REGISTRATION_FILE","_callee3","_callee3$","_context3","mockReturnValueOnce","deregister","createCallSpy","callManager","makeCall","address","type","CallType","URI","CallDirection","OUTBOUND","undefined","lineId","toBeTruthy","getCall","getCorrelationId","direction","toStrictEqual","end","destination","done","toBeUndefined","assertions"],"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 MobiusStatus,\n ServiceIndicator,\n WebexRequestPayload,\n} from '../../common/types';\nimport {LINE_EVENTS, LineStatus} 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';\n\ndescribe('Line Tests', () => {\n const mutex = new Mutex();\n const webex = getTestUtilsWebex();\n SDKConnector.setWebex(webex);\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\n const handleErrorSpy = jest.spyOn(utils, 'handleRegistrationErrors');\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 LineStatus.ACTIVE,\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 );\n expect(line.getRegistrationStatus()).toEqual(MobiusStatus.DEFAULT);\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.getRegistrationStatus()).toEqual(MobiusStatus.ACTIVE);\n expect(line.getActiveMobiusUrl()).toEqual(primaryUrl);\n expect(line.getLoggingLevel()).toEqual(LOGGER.INFO);\n expect(line.getDeviceId()).toEqual(mockRegistrationBody.device.deviceId);\n\n webex.request.mockClear();\n\n jest.advanceTimersByTime(30 * 1000);\n await Promise.resolve();\n\n expect(webex.request).toBeCalledOnceWith({\n ...getMockRequestTemplate(),\n uri: `${mockRegistrationBody.device.uri}/status`,\n method: 'POST',\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.getRegistrationStatus()).toBe(MobiusStatus.DEFAULT);\n line.register();\n await utils.waitForMsecs(20);\n\n expect(line.getRegistrationStatus()).toBe(MobiusStatus.DEFAULT);\n expect(handleErrorSpy).toBeCalledOnceWith(\n expect.anything(),\n expect.anything(),\n {\n file: REGISTRATION_FILE,\n method: 'attemptRegistrationWithServers',\n },\n expect.anything()\n );\n });\n\n it('verify successful de-registration cases', async () => {\n webex.request.mockReturnValueOnce(registrationPayload);\n\n expect(line.getRegistrationStatus()).toEqual(MobiusStatus.DEFAULT);\n await line.register();\n expect(line.getRegistrationStatus()).toEqual(MobiusStatus.ACTIVE);\n\n await line.deregister();\n expect(line.getRegistrationStatus()).toEqual(MobiusStatus.DEFAULT);\n });\n });\n describe('Line calling tests', () => {\n let line;\n\n beforeEach(() => {\n line = new Line(\n userId,\n clientDeviceUri,\n LineStatus.ACTIVE,\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(\n {address: 'tel:5003', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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(\n {address: 'tel:*25', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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(\n {address: 'tel:+911234567890', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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(\n {address: 'tel:1234567890', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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 // 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\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});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_asyncMutex","require","_testUtil","_registerFixtures","_common","_types","_types2","_","_interopRequireDefault","utils","_interopRequireWildcard","_SDKConnector","_constants","_types3","regUtils","_getRequireWildcardCache","nodeInterop","_WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","default","cache","has","get","newObj","hasPropertyDescriptor","_Object$defineProperty","_Object$getOwnPropertyDescriptor","key","Object","prototype","hasOwnProperty","call","desc","set","ownKeys","object","enumerableOnly","keys","_Object$keys","_Object$getOwnPropertySymbols","symbols","filter","sym","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","_defineProperty2","_Object$getOwnPropertyDescriptors","_Object$defineProperties","describe","mutex","Mutex","webex","getTestUtilsWebex","SDKConnector","setWebex","defaultServiceData","indicator","ServiceIndicator","CALLING","domain","createRegistrationSpy","jest","spyOn","mobiusUris","filterMobiusUris","getMobiusDiscoveryResponse","URL","primaryMobiusUris","fn","primary","backupMobiusUris","backup","userId","internal","device","clientDeviceUri","url","handleErrorSpy","clearAllMocks","line","mockRegistrationBody","getMockDeviceInfo","discoveryBody","primaryUrl","concat","uris","registrationPayload","statusCode","body","beforeEach","Line","LOGGER","INFO","afterEach","clearAllTimers","useRealTimers","removeAllListeners","it","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","useFakeTimers","request","mockReturnValue","expect","toBeCalledOnceWith","any","anything","getStatus","toEqual","RegistrationStatus","IDLE","register","getMockRequestTemplate","serviceData","uri","method","not","toBeCalled","ACTIVE","getActiveMobiusUrl","getLoggingLevel","getDeviceId","deviceId","mockClear","advanceTimersByTime","_promise","resolve","stop","_callee2","_callee2$","_context2","LINE_EVENTS","ERROR","mockRejectedValue","on","error","message","toBe","waitForMsecs","INACTIVE","file","REGISTRATION_FILE","_callee3","_callee3$","_context3","mockReturnValueOnce","deregister","createCallSpy","callManager","makeCall","address","type","CallType","URI","CallDirection","OUTBOUND","undefined","lineId","toBeTruthy","getCall","getCorrelationId","direction","toStrictEqual","end","destination","done","toBeUndefined","assertions"],"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';\n\ndescribe('Line Tests', () => {\n const mutex = new Mutex();\n const webex = getTestUtilsWebex();\n SDKConnector.setWebex(webex);\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\n const handleErrorSpy = jest.spyOn(utils, 'handleRegistrationErrors');\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 );\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\n webex.request.mockClear();\n\n jest.advanceTimersByTime(30 * 1000);\n await Promise.resolve();\n\n expect(webex.request).toBeCalledOnceWith({\n ...getMockRequestTemplate(),\n uri: `${mockRegistrationBody.device.uri}/status`,\n method: 'POST',\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: 'attemptRegistrationWithServers',\n },\n expect.anything()\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(\n {address: 'tel:5003', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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(\n {address: 'tel:*25', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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(\n {address: 'tel:+911234567890', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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(\n {address: 'tel:1234567890', type: 'uri'},\n CallDirection.OUTBOUND,\n undefined,\n line.lineId\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 // 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\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});\n"],"mappings":"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"}
@@ -4,14 +4,11 @@ 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.LineStatus = exports.LINE_EVENTS = void 0;
8
- var LineStatus;
9
- exports.LineStatus = LineStatus;
10
- (function (LineStatus) {
11
- LineStatus["INACTIVE"] = "inactive";
12
- LineStatus["ACTIVE"] = "active";
13
- })(LineStatus || (exports.LineStatus = LineStatus = {}));
7
+ exports.LINE_EVENTS = void 0;
14
8
  var LINE_EVENTS;
9
+ /**
10
+ * Represents an interface for managing a telephony line.
11
+ */
15
12
  exports.LINE_EVENTS = LINE_EVENTS;
16
13
  (function (LINE_EVENTS) {
17
14
  LINE_EVENTS["CONNECTING"] = "connecting";
@@ -1 +1 @@
1
- {"version":3,"names":["LineStatus","exports","LINE_EVENTS"],"sources":["types.ts"],"sourcesContent":["import {IRegistration} from '../registration/types';\nimport {LineError} from '../../Errors/catalog/LineError';\nimport {\n CallDetails,\n CorrelationId,\n IDeviceInfo,\n MobiusDeviceId,\n MobiusStatus,\n} from '../../common/types';\nimport {ICall} from '../calling/types';\n\nexport enum LineStatus {\n INACTIVE = 'inactive',\n ACTIVE = 'active',\n}\n\nexport enum LINE_EVENTS {\n CONNECTING = 'connecting',\n ERROR = 'error',\n RECONNECTED = 'reconnected',\n RECONNECTING = 'reconnecting',\n REGISTERED = 'registered',\n UNREGISTERED = 'unregistered',\n INCOMING_CALL = 'line:incoming_call',\n}\n\nexport interface ILine {\n userId: string;\n clientDeviceUri: string;\n lineId: string;\n status: LineStatus;\n mobiusDeviceId?: string;\n phoneNumber?: string;\n extension?: string;\n sipAddresses?: string[];\n voicemail?: string;\n lastSeen?: string;\n keepaliveInterval?: number;\n callKeepaliveInterval?: number;\n rehomingIntervalMin?: number;\n rehomingIntervalMax?: number;\n voicePortalNumber?: number;\n voicePortalExtension?: number;\n registration: IRegistration;\n register: () => void;\n deregister: () => void;\n getActiveMobiusUrl: () => string;\n getRegistrationStatus: () => MobiusStatus;\n getDeviceId: () => MobiusDeviceId | undefined;\n lineEmitter: (event: LINE_EVENTS, deviceInfo?: IDeviceInfo, lineError?: LineError) => void;\n makeCall: (dest: CallDetails) => ICall | undefined;\n getCall: (correlationId: CorrelationId) => ICall;\n}\n\nexport type LineEventTypes = {\n [LINE_EVENTS.CONNECTING]: () => void;\n [LINE_EVENTS.ERROR]: (error: LineError) => void;\n [LINE_EVENTS.RECONNECTED]: () => void;\n [LINE_EVENTS.RECONNECTING]: () => void;\n [LINE_EVENTS.REGISTERED]: (lineInfo: ILine) => void;\n [LINE_EVENTS.UNREGISTERED]: () => void;\n [LINE_EVENTS.INCOMING_CALL]: (callObj: ICall) => void;\n};\n\nexport type LineEmitterCallback = (\n event: LINE_EVENTS,\n deviceInfo?: IDeviceInfo,\n clientError?: LineError\n) => void;\n\nexport type LineErrorEmitterCallback = (err: LineError, finalError?: boolean) => void;\n"],"mappings":";;;;;;;IAWYA,UAAU;AAAAC,OAAA,CAAAD,UAAA,GAAAA,UAAA;AAAA,WAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;AAAA,GAAVA,UAAU,KAAAC,OAAA,CAAAD,UAAA,GAAVA,UAAU;AAAA,IAKVE,WAAW;AAAAD,OAAA,CAAAC,WAAA,GAAAA,WAAA;AAAA,WAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;AAAA,GAAXA,WAAW,KAAAD,OAAA,CAAAC,WAAA,GAAXA,WAAW"}
1
+ {"version":3,"names":["LINE_EVENTS","exports"],"sources":["types.ts"],"sourcesContent":["import {IRegistration} from '../registration/types';\nimport {LineError} from '../../Errors/catalog/LineError';\nimport {\n CallDetails,\n CorrelationId,\n IDeviceInfo,\n MobiusDeviceId,\n RegistrationStatus,\n} from '../../common/types';\nimport {ICall} from '../calling/types';\n\nexport enum LINE_EVENTS {\n CONNECTING = 'connecting',\n ERROR = 'error',\n RECONNECTED = 'reconnected',\n RECONNECTING = 'reconnecting',\n REGISTERED = 'registered',\n UNREGISTERED = 'unregistered',\n INCOMING_CALL = 'line:incoming_call',\n}\n\n/**\n * Represents an interface for managing a telephony line.\n */\nexport interface ILine {\n /**\n * The unique identifier of the user associated with the line.\n */\n userId: string;\n\n /**\n * The URI of the client device associated with the line.\n */\n clientDeviceUri: string;\n\n /**\n * The unique identifier of the line.\n */\n lineId: string;\n\n /**\n * The optional Mobius device identifier associated with the line.\n */\n mobiusDeviceId?: string;\n\n /**\n * The phone number associated with the line.\n */\n phoneNumber?: string;\n\n /**\n * The extension number associated with the line.\n */\n extension?: string;\n\n /**\n * An array of SIP addresses associated with the line.\n */\n sipAddresses?: string[];\n\n /**\n * The voicemail number associated with the line.\n */\n voicemail?: string;\n\n /**\n * The timestamp when the line was last seen.\n */\n lastSeen?: string;\n\n /**\n * The interval for sending keep-alive messages for the line.\n */\n keepaliveInterval?: number;\n\n /**\n * The interval for sending call keep-alive messages for the line.\n */\n callKeepaliveInterval?: number;\n\n /**\n * The minimum rehoming interval for the line.\n */\n rehomingIntervalMin?: number;\n\n /**\n * The maximum rehoming interval for the line.\n */\n rehomingIntervalMax?: number;\n\n /**\n * The voice portal number associated with the line.\n */\n voicePortalNumber?: number;\n\n /**\n * The voice portal extension associated with the line.\n */\n voicePortalExtension?: number;\n\n /**\n * The registration information for the line as {@link IRegistration}.\n */\n registration: IRegistration;\n\n /**\n * Registers the line.\n */\n register(): void;\n\n /**\n * Deregisters the line.\n */\n deregister(): void;\n\n /**\n * Retrieves the active Mobius server URL associated with the line.\n *\n */\n getActiveMobiusUrl(): string;\n\n /**\n * Retrieves the registration status of the line as {@link MobiusStatus}.\n *\n */\n getStatus(): RegistrationStatus;\n\n /**\n * Retrieves the device identifier associated with the line as {@link MobiusDeviceId},\n * or `undefined` if no device is associated.\n *\n */\n getDeviceId(): MobiusDeviceId | undefined;\n\n /**\n * Emits line-related events.\n *\n * @param event - The line event to emit.\n * @param deviceInfo - Additional device information (optional).\n * @param lineError - Information about line-related errors (optional).\n *\n * @example\n * ```typescript\n * line.lineEmitter(LINE_EVENTS.UNREGISTERED);\n * ```\n * @ignore\n */\n lineEmitter: (event: LINE_EVENTS, deviceInfo?: IDeviceInfo, lineError?: LineError) => void;\n\n /**\n * Initiates a call to the specified destination.\n *\n * @param dest - The call details including destination information.\n *\n * @example\n * ```typescript\n * const callDetails : CallDetails = {type: 'uri', address: 'example@webex.com'};\n * const callObj: ICall = line.makeCall(callDetails);\n * ```\n */\n makeCall(dest: CallDetails): ICall | undefined;\n\n /**\n * Retrieves a call object based on the provided correlation identifier.\n *\n * @param correlationId - The correlation identifier of the call.\n * @example\n * ```typescript\n * const callObj: ICall = line.getCall(correlationId);\n * ```\n */\n getCall(correlationId: CorrelationId): ICall;\n}\n\nexport type LineEventTypes = {\n [LINE_EVENTS.CONNECTING]: () => void;\n [LINE_EVENTS.ERROR]: (error: LineError) => void;\n [LINE_EVENTS.RECONNECTED]: () => void;\n [LINE_EVENTS.RECONNECTING]: () => void;\n [LINE_EVENTS.REGISTERED]: (lineInfo: ILine) => void;\n [LINE_EVENTS.UNREGISTERED]: () => void;\n [LINE_EVENTS.INCOMING_CALL]: (callObj: ICall) => void;\n};\n\nexport type LineEmitterCallback = (\n event: LINE_EVENTS,\n deviceInfo?: IDeviceInfo,\n clientError?: LineError\n) => void;\n\nexport type LineErrorEmitterCallback = (err: LineError, finalError?: boolean) => void;\n"],"mappings":";;;;;;;IAWYA,WAAW;AAUvB;AACA;AACA;AAFAC,OAAA,CAAAD,WAAA,GAAAA,WAAA;AAAA,WAVYA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;AAAA,GAAXA,WAAW,KAAAC,OAAA,CAAAD,WAAA,GAAXA,WAAW"}