@webex/calling 3.10.0-next.8 → 3.10.0-wxc-disconnect.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/dist/CallHistory/CallHistory.js +41 -42
  2. package/dist/CallHistory/CallHistory.js.map +1 -1
  3. package/dist/CallHistory/CallHistory.test.js +5 -120
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -1
  5. package/dist/CallSettings/UcmBackendConnector.js +6 -6
  6. package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
  7. package/dist/CallSettings/UcmBackendConnector.test.js +1 -2
  8. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
  9. package/dist/CallSettings/WxCallBackendConnector.js +43 -38
  10. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
  11. package/dist/CallSettings/WxCallBackendConnector.test.js +1 -4
  12. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
  13. package/dist/CallingClient/CallingClient.js +207 -161
  14. package/dist/CallingClient/CallingClient.js.map +1 -1
  15. package/dist/CallingClient/CallingClient.test.js +290 -152
  16. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  17. package/dist/CallingClient/calling/call.js +53 -50
  18. package/dist/CallingClient/calling/call.js.map +1 -1
  19. package/dist/CallingClient/calling/call.test.js +51 -93
  20. package/dist/CallingClient/calling/call.test.js.map +1 -1
  21. package/dist/CallingClient/calling/callManager.test.js +1 -1
  22. package/dist/CallingClient/calling/callManager.test.js.map +1 -1
  23. package/dist/CallingClient/registration/register.js +4 -5
  24. package/dist/CallingClient/registration/register.js.map +1 -1
  25. package/dist/CallingClient/registration/webWorker.js +3 -3
  26. package/dist/CallingClient/registration/webWorker.js.map +1 -1
  27. package/dist/CallingClient/registration/webWorkerStr.js +1 -1
  28. package/dist/CallingClient/registration/webWorkerStr.js.map +1 -1
  29. package/dist/Contacts/ContactsClient.js +45 -39
  30. package/dist/Contacts/ContactsClient.js.map +1 -1
  31. package/dist/Contacts/ContactsClient.test.js +3 -4
  32. package/dist/Contacts/ContactsClient.test.js.map +1 -1
  33. package/dist/Events/impl/index.js +1 -1
  34. package/dist/Events/impl/index.js.map +1 -1
  35. package/dist/Logger/index.js +3 -3
  36. package/dist/Logger/index.js.map +1 -1
  37. package/dist/Logger/index.test.js +1 -1
  38. package/dist/Logger/index.test.js.map +1 -1
  39. package/dist/SDKConnector/types.js.map +1 -1
  40. package/dist/Voicemail/BroadworksBackendConnector.js +54 -47
  41. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -1
  42. package/dist/Voicemail/BroadworksBackendConnector.test.js +2 -10
  43. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -1
  44. package/dist/Voicemail/UcmBackendConnector.js +32 -29
  45. package/dist/Voicemail/UcmBackendConnector.js.map +1 -1
  46. package/dist/Voicemail/Voicemail.js +102 -77
  47. package/dist/Voicemail/Voicemail.js.map +1 -1
  48. package/dist/Voicemail/WxCallBackendConnector.js +59 -46
  49. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
  50. package/dist/Voicemail/WxCallBackendConnector.test.js +18 -44
  51. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -1
  52. package/dist/common/Utils.js +2 -2
  53. package/dist/common/Utils.js.map +1 -1
  54. package/dist/common/Utils.test.js +8 -4
  55. package/dist/common/Utils.test.js.map +1 -1
  56. package/dist/common/testUtil.js +1 -2
  57. package/dist/common/testUtil.js.map +1 -1
  58. package/dist/module/CallHistory/CallHistory.js +11 -20
  59. package/dist/module/CallSettings/UcmBackendConnector.js +2 -1
  60. package/dist/module/CallSettings/WxCallBackendConnector.js +15 -10
  61. package/dist/module/CallingClient/CallingClient.js +123 -83
  62. package/dist/module/CallingClient/calling/call.js +23 -17
  63. package/dist/module/CallingClient/registration/register.js +3 -3
  64. package/dist/module/CallingClient/registration/webWorker.js +2 -2
  65. package/dist/module/CallingClient/registration/webWorkerStr.js +2 -2
  66. package/dist/module/Contacts/ContactsClient.js +25 -19
  67. package/dist/module/Events/impl/index.js +1 -1
  68. package/dist/module/Logger/index.js +2 -2
  69. package/dist/module/Voicemail/BroadworksBackendConnector.js +18 -10
  70. package/dist/module/Voicemail/UcmBackendConnector.js +11 -7
  71. package/dist/module/Voicemail/Voicemail.js +68 -42
  72. package/dist/module/Voicemail/WxCallBackendConnector.js +28 -14
  73. package/dist/module/common/Utils.js +2 -2
  74. package/dist/module/common/testUtil.js +0 -1
  75. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  76. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  77. package/dist/types/CallSettings/WxCallBackendConnector.d.ts.map +1 -1
  78. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  79. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  80. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  81. package/dist/types/CallingClient/registration/webWorkerStr.d.ts +1 -1
  82. package/dist/types/CallingClient/registration/webWorkerStr.d.ts.map +1 -1
  83. package/dist/types/Contacts/ContactsClient.d.ts +0 -1
  84. package/dist/types/Contacts/ContactsClient.d.ts.map +1 -1
  85. package/dist/types/Logger/index.d.ts +2 -1
  86. package/dist/types/Logger/index.d.ts.map +1 -1
  87. package/dist/types/SDKConnector/types.d.ts +0 -10
  88. package/dist/types/SDKConnector/types.d.ts.map +1 -1
  89. package/dist/types/Voicemail/BroadworksBackendConnector.d.ts.map +1 -1
  90. package/dist/types/Voicemail/UcmBackendConnector.d.ts.map +1 -1
  91. package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
  92. package/dist/types/Voicemail/WxCallBackendConnector.d.ts.map +1 -1
  93. package/dist/types/common/Utils.d.ts.map +1 -1
  94. package/dist/types/common/testUtil.d.ts +0 -1
  95. package/dist/types/common/testUtil.d.ts.map +1 -1
  96. package/package.json +4 -4
@@ -1309,15 +1309,15 @@ describe('State Machine handler tests', function () {
1309
1309
  return (0, _testUtil.flushPromises)(2);
1310
1310
  case 12:
1311
1311
  expect(call.isConnected()).toBe(false);
1312
- expect(call['mediaStateMachine'].state.value).toBe('S_ROAP_TEARDOWN');
1313
- expect(call['callStateMachine'].state.value).toBe('S_CALL_CLEARED');
1312
+ expect(call['mediaStateMachine'].state.value).toBe('S_ROAP_ERROR');
1313
+ expect(call['callStateMachine'].state.value).toBe('S_UNKNOWN');
1314
1314
  expect(warnSpy).toHaveBeenCalledWith('Failed to process MediaOk request', {
1315
1315
  file: 'call',
1316
1316
  method: 'handleRoapEstablished'
1317
1317
  });
1318
- expect(warnSpy).toHaveBeenCalledWith('Call failed due to media issue', {
1319
- file: 'call',
1320
- method: 'handleRoapError'
1318
+ expect(uploadLogsSpy).toHaveBeenCalledWith({
1319
+ correlationId: call.getCorrelationId(),
1320
+ callId: call.getCallId()
1321
1321
  });
1322
1322
  case 17:
1323
1323
  case "end":
@@ -1661,76 +1661,10 @@ describe('State Machine handler tests', function () {
1661
1661
  }
1662
1662
  }, _callee31);
1663
1663
  })));
1664
- it('incoming call: failing ROAP_ANSWER posts error path and tears down', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee32() {
1665
- var statusPayload, warnSpy, postMediaSpy, setupEvent, connectEvent, offerEvent, answerEvent;
1664
+ it('state changes during successful incoming call with out of order events', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee32() {
1665
+ var statusPayload, dummyEvent, postMediaSpy, dummyOkEvent, dummyOfferEvent;
1666
1666
  return _regenerator.default.wrap(function _callee32$(_context32) {
1667
1667
  while (1) switch (_context32.prev = _context32.next) {
1668
- case 0:
1669
- statusPayload = {
1670
- statusCode: 403,
1671
- body: mockStatusBody
1672
- };
1673
- warnSpy = jest.spyOn(_Logger.default, 'warn');
1674
- postMediaSpy = jest.spyOn(call, 'postMedia').mockRejectedValueOnce(statusPayload); // Simulate inbound call flow
1675
- call['direction'] = _types3.CallDirection.INBOUND;
1676
- setupEvent = {
1677
- type: 'E_RECV_CALL_SETUP',
1678
- data: {
1679
- seq: 1,
1680
- messageType: 'OFFER'
1681
- }
1682
- };
1683
- call.sendCallStateMachineEvt(setupEvent);
1684
- expect(call['callStateMachine'].state.value).toBe('S_SEND_CALL_PROGRESS');
1685
- connectEvent = {
1686
- type: 'E_SEND_CALL_CONNECT'
1687
- };
1688
- call.sendCallStateMachineEvt(connectEvent);
1689
- expect(call['callStateMachine'].state.value).toBe('S_SEND_CALL_CONNECT');
1690
- offerEvent = {
1691
- type: 'E_RECV_ROAP_OFFER',
1692
- data: {
1693
- seq: 1,
1694
- messageType: 'OFFER'
1695
- }
1696
- };
1697
- call.sendMediaStateMachineEvt(offerEvent);
1698
- answerEvent = {
1699
- type: 'E_SEND_ROAP_ANSWER',
1700
- data: {
1701
- seq: 1,
1702
- messageType: 'ANSWER'
1703
- }
1704
- };
1705
- _context32.next = 15;
1706
- return call.sendMediaStateMachineEvt(answerEvent);
1707
- case 15:
1708
- _context32.next = 17;
1709
- return (0, _testUtil.flushPromises)(2);
1710
- case 17:
1711
- expect(postMediaSpy).toBeCalledOnceWith(answerEvent.data);
1712
- expect(warnSpy).toHaveBeenCalledWith('Failed to send MediaAnswer request', {
1713
- file: 'call',
1714
- method: 'handleOutgoingRoapAnswer'
1715
- });
1716
- expect(warnSpy).toHaveBeenCalledWith('Call failed due to media issue', {
1717
- file: 'call',
1718
- method: 'handleRoapError'
1719
- });
1720
-
1721
- // Final state should be torn down and cleared for unconnected call
1722
- expect(call['mediaStateMachine'].state.value).toBe('S_ROAP_TEARDOWN');
1723
- expect(call['callStateMachine'].state.value).toBe('S_CALL_CLEARED');
1724
- case 22:
1725
- case "end":
1726
- return _context32.stop();
1727
- }
1728
- }, _callee32);
1729
- })));
1730
- it('state changes during successful incoming call with out of order events', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee33() {
1731
- var statusPayload, dummyEvent, postMediaSpy, dummyOkEvent, dummyOfferEvent;
1732
- return _regenerator.default.wrap(function _callee33$(_context33) {
1733
- while (1) switch (_context33.prev = _context33.next) {
1734
1668
  case 0:
1735
1669
  statusPayload = {
1736
1670
  statusCode: 200,
@@ -1763,7 +1697,7 @@ describe('State Machine handler tests', function () {
1763
1697
  seq: 1,
1764
1698
  messageType: 'ANSWER'
1765
1699
  };
1766
- _context33.next = 17;
1700
+ _context32.next = 17;
1767
1701
  return call.sendMediaStateMachineEvt(dummyEvent);
1768
1702
  case 17:
1769
1703
  expect(postMediaSpy).toBeCalledOnceWith(dummyEvent.data);
@@ -1785,7 +1719,7 @@ describe('State Machine handler tests', function () {
1785
1719
  seq: 2,
1786
1720
  messageType: 'OFFER_REQUEST'
1787
1721
  };
1788
- _context33.next = 23;
1722
+ _context32.next = 23;
1789
1723
  return call.sendMediaStateMachineEvt(dummyEvent);
1790
1724
  case 23:
1791
1725
  expect(call['receivedRoapOKSeq']).toBe(0);
@@ -1835,7 +1769,7 @@ describe('State Machine handler tests', function () {
1835
1769
  };
1836
1770
  call.sendCallStateMachineEvt(dummyEvent);
1837
1771
  dummyEvent.type = 'E_RECV_ROAP_OFFER';
1838
- _context33.next = 49;
1772
+ _context32.next = 49;
1839
1773
  return call.sendMediaStateMachineEvt(dummyEvent);
1840
1774
  case 49:
1841
1775
  expect(_testUtil.mediaConnection.roapMessageReceived).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -1844,7 +1778,7 @@ describe('State Machine handler tests', function () {
1844
1778
  seq: 3,
1845
1779
  messageType: 'ANSWER'
1846
1780
  };
1847
- _context33.next = 54;
1781
+ _context32.next = 54;
1848
1782
  return call.sendMediaStateMachineEvt(dummyEvent);
1849
1783
  case 54:
1850
1784
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -1863,7 +1797,7 @@ describe('State Machine handler tests', function () {
1863
1797
  messageType: 'OK'
1864
1798
  }
1865
1799
  };
1866
- _context33.next = 63;
1800
+ _context32.next = 63;
1867
1801
  return call.sendMediaStateMachineEvt(dummyOkEvent);
1868
1802
  case 63:
1869
1803
  expect(_testUtil.mediaConnection.roapMessageReceived).toHaveBeenNthCalledWith(6, dummyOkEvent.data.message);
@@ -1878,14 +1812,14 @@ describe('State Machine handler tests', function () {
1878
1812
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
1879
1813
  case 70:
1880
1814
  case "end":
1881
- return _context33.stop();
1815
+ return _context32.stop();
1882
1816
  }
1883
- }, _callee33);
1817
+ }, _callee32);
1884
1818
  })));
1885
- it('successfully handles out of order events when ROAP OK is received while executing outgoingRoapAnswer', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee34() {
1819
+ it('successfully handles out of order events when ROAP OK is received while executing outgoingRoapAnswer', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee33() {
1886
1820
  var mockStatusBody, statusPayload, dummyEvent, postMediaSpy, dummyOkEvent, dummyOfferEvent;
1887
- return _regenerator.default.wrap(function _callee34$(_context34) {
1888
- while (1) switch (_context34.prev = _context34.next) {
1821
+ return _regenerator.default.wrap(function _callee33$(_context33) {
1822
+ while (1) switch (_context33.prev = _context33.next) {
1889
1823
  case 0:
1890
1824
  mockStatusBody = {
1891
1825
  device: {
@@ -1925,7 +1859,7 @@ describe('State Machine handler tests', function () {
1925
1859
  seq: 1,
1926
1860
  messageType: 'ANSWER'
1927
1861
  };
1928
- _context34.next = 18;
1862
+ _context33.next = 18;
1929
1863
  return call.sendMediaStateMachineEvt(dummyEvent);
1930
1864
  case 18:
1931
1865
  expect(postMediaSpy).toBeCalledOnceWith(dummyEvent.data);
@@ -1947,7 +1881,7 @@ describe('State Machine handler tests', function () {
1947
1881
  seq: 2,
1948
1882
  messageType: 'OFFER_REQUEST'
1949
1883
  };
1950
- _context34.next = 24;
1884
+ _context33.next = 24;
1951
1885
  return call.sendMediaStateMachineEvt(dummyEvent);
1952
1886
  case 24:
1953
1887
  expect(call['receivedRoapOKSeq']).toBe(0);
@@ -1997,7 +1931,7 @@ describe('State Machine handler tests', function () {
1997
1931
  };
1998
1932
  call.sendCallStateMachineEvt(dummyEvent);
1999
1933
  dummyEvent.type = 'E_RECV_ROAP_OFFER';
2000
- _context34.next = 50;
1934
+ _context33.next = 50;
2001
1935
  return call.sendMediaStateMachineEvt(dummyEvent);
2002
1936
  case 50:
2003
1937
  expect(_testUtil.mediaConnection.roapMessageReceived).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -2006,7 +1940,7 @@ describe('State Machine handler tests', function () {
2006
1940
  seq: 3,
2007
1941
  messageType: 'ANSWER'
2008
1942
  };
2009
- _context34.next = 55;
1943
+ _context33.next = 55;
2010
1944
  return call.sendMediaStateMachineEvt(dummyEvent);
2011
1945
  case 55:
2012
1946
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -2023,7 +1957,7 @@ describe('State Machine handler tests', function () {
2023
1957
  }
2024
1958
  };
2025
1959
  call.sendMediaStateMachineEvt(dummyEvent);
2026
- _context34.next = 62;
1960
+ _context33.next = 62;
2027
1961
  return call.sendMediaStateMachineEvt(dummyOkEvent);
2028
1962
  case 62:
2029
1963
  expect(call['receivedRoapOKSeq']).toBe(3);
@@ -2039,14 +1973,14 @@ describe('State Machine handler tests', function () {
2039
1973
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
2040
1974
  case 70:
2041
1975
  case "end":
2042
- return _context34.stop();
1976
+ return _context33.stop();
2043
1977
  }
2044
- }, _callee34);
1978
+ }, _callee33);
2045
1979
  })));
2046
- it('handle hold event successfully when media received after progress but before connect', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee35() {
1980
+ it('handle hold event successfully when media received after progress but before connect', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee34() {
2047
1981
  var statusPayload, dummyEvent, postMediaSpy, infoSpy, dummyOkEvent;
2048
- return _regenerator.default.wrap(function _callee35$(_context35) {
2049
- while (1) switch (_context35.prev = _context35.next) {
1982
+ return _regenerator.default.wrap(function _callee34$(_context34) {
1983
+ while (1) switch (_context34.prev = _context34.next) {
2050
1984
  case 0:
2051
1985
  statusPayload = {
2052
1986
  statusCode: 200,
@@ -2112,6 +2046,30 @@ describe('State Machine handler tests', function () {
2112
2046
  method: 'handleCallHold'
2113
2047
  });
2114
2048
  case 33:
2049
+ case "end":
2050
+ return _context34.stop();
2051
+ }
2052
+ }, _callee34);
2053
+ })));
2054
+ it('emits DISCONNECT before mobius delete request is invoked', /*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee35() {
2055
+ var emitSpy, deleteSpy;
2056
+ return _regenerator.default.wrap(function _callee35$(_context35) {
2057
+ while (1) switch (_context35.prev = _context35.next) {
2058
+ case 0:
2059
+ emitSpy = jest.spyOn(call, 'emit');
2060
+ deleteSpy = jest.spyOn(call, 'delete').mockResolvedValue({
2061
+ statusCode: 200
2062
+ });
2063
+ call.sendCallStateMachineEvt({
2064
+ type: 'E_RECV_CALL_DISCONNECT'
2065
+ });
2066
+ _context35.next = 5;
2067
+ return (0, _testUtil.flushPromises)(1);
2068
+ case 5:
2069
+ expect(emitSpy).toHaveBeenCalledWith(_types2.CALL_EVENT_KEYS.DISCONNECT, call.getCorrelationId());
2070
+ expect(deleteSpy).toHaveBeenCalled();
2071
+ expect(emitSpy.mock.invocationCallOrder[0]).toBeLessThan(deleteSpy.mock.invocationCallOrder[0]);
2072
+ case 8:
2115
2073
  case "end":
2116
2074
  return _context35.stop();
2117
2075
  }