@webex/plugin-meetings 3.0.0-beta.15 → 3.0.0-beta.16

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 (183) hide show
  1. package/dist/common/browser-detection.js +1 -21
  2. package/dist/common/browser-detection.js.map +1 -1
  3. package/dist/common/collection.js +5 -20
  4. package/dist/common/collection.js.map +1 -1
  5. package/dist/common/config.js +0 -7
  6. package/dist/common/config.js.map +1 -1
  7. package/dist/common/errors/captcha-error.js +0 -21
  8. package/dist/common/errors/captcha-error.js.map +1 -1
  9. package/dist/common/errors/intent-to-join.js +0 -21
  10. package/dist/common/errors/intent-to-join.js.map +1 -1
  11. package/dist/common/errors/join-meeting.js +0 -21
  12. package/dist/common/errors/join-meeting.js.map +1 -1
  13. package/dist/common/errors/media.js +0 -21
  14. package/dist/common/errors/media.js.map +1 -1
  15. package/dist/common/errors/parameter.js +0 -28
  16. package/dist/common/errors/parameter.js.map +1 -1
  17. package/dist/common/errors/password-error.js +0 -21
  18. package/dist/common/errors/password-error.js.map +1 -1
  19. package/dist/common/errors/permission.js +0 -21
  20. package/dist/common/errors/permission.js.map +1 -1
  21. package/dist/common/errors/reconnection-in-progress.js +0 -17
  22. package/dist/common/errors/reconnection-in-progress.js.map +1 -1
  23. package/dist/common/errors/reconnection.js +0 -21
  24. package/dist/common/errors/reconnection.js.map +1 -1
  25. package/dist/common/errors/stats.js +0 -21
  26. package/dist/common/errors/stats.js.map +1 -1
  27. package/dist/common/errors/webex-errors.js +6 -41
  28. package/dist/common/errors/webex-errors.js.map +1 -1
  29. package/dist/common/errors/webex-meetings-error.js +1 -24
  30. package/dist/common/errors/webex-meetings-error.js.map +1 -1
  31. package/dist/common/events/events-scope.js +0 -22
  32. package/dist/common/events/events-scope.js.map +1 -1
  33. package/dist/common/events/events.js +0 -23
  34. package/dist/common/events/events.js.map +1 -1
  35. package/dist/common/events/trigger-proxy.js +0 -12
  36. package/dist/common/events/trigger-proxy.js.map +1 -1
  37. package/dist/common/events/util.js +0 -15
  38. package/dist/common/events/util.js.map +1 -1
  39. package/dist/common/logs/logger-config.js +0 -4
  40. package/dist/common/logs/logger-config.js.map +1 -1
  41. package/dist/common/logs/logger-proxy.js +1 -8
  42. package/dist/common/logs/logger-proxy.js.map +1 -1
  43. package/dist/common/logs/request.js +35 -61
  44. package/dist/common/logs/request.js.map +1 -1
  45. package/dist/common/queue.js +4 -14
  46. package/dist/common/queue.js.map +1 -1
  47. package/dist/config.js +1 -5
  48. package/dist/config.js.map +1 -1
  49. package/dist/constants.js +45 -40
  50. package/dist/constants.js.map +1 -1
  51. package/dist/index.js +1 -17
  52. package/dist/index.js.map +1 -1
  53. package/dist/locus-info/controlsUtils.js +10 -28
  54. package/dist/locus-info/controlsUtils.js.map +1 -1
  55. package/dist/locus-info/embeddedAppsUtils.js +3 -26
  56. package/dist/locus-info/embeddedAppsUtils.js.map +1 -1
  57. package/dist/locus-info/fullState.js +0 -15
  58. package/dist/locus-info/fullState.js.map +1 -1
  59. package/dist/locus-info/hostUtils.js +4 -12
  60. package/dist/locus-info/hostUtils.js.map +1 -1
  61. package/dist/locus-info/index.js +90 -185
  62. package/dist/locus-info/index.js.map +1 -1
  63. package/dist/locus-info/infoUtils.js +0 -38
  64. package/dist/locus-info/infoUtils.js.map +1 -1
  65. package/dist/locus-info/mediaSharesUtils.js +12 -38
  66. package/dist/locus-info/mediaSharesUtils.js.map +1 -1
  67. package/dist/locus-info/parser.js +88 -125
  68. package/dist/locus-info/parser.js.map +1 -1
  69. package/dist/locus-info/selfUtils.js +15 -81
  70. package/dist/locus-info/selfUtils.js.map +1 -1
  71. package/dist/media/index.js +43 -97
  72. package/dist/media/index.js.map +1 -1
  73. package/dist/media/internal-media-core-wrapper.js +0 -4
  74. package/dist/media/internal-media-core-wrapper.js.map +1 -1
  75. package/dist/media/properties.js +64 -110
  76. package/dist/media/properties.js.map +1 -1
  77. package/dist/media/util.js +1 -8
  78. package/dist/media/util.js.map +1 -1
  79. package/dist/mediaQualityMetrics/config.js +10 -12
  80. package/dist/mediaQualityMetrics/config.js.map +1 -1
  81. package/dist/meeting/effectsState.js +119 -191
  82. package/dist/meeting/effectsState.js.map +1 -1
  83. package/dist/meeting/in-meeting-actions.js +0 -13
  84. package/dist/meeting/in-meeting-actions.js.map +1 -1
  85. package/dist/meeting/index.js +729 -1504
  86. package/dist/meeting/index.js.map +1 -1
  87. package/dist/meeting/muteState.js +30 -77
  88. package/dist/meeting/muteState.js.map +1 -1
  89. package/dist/meeting/request.js +160 -230
  90. package/dist/meeting/request.js.map +1 -1
  91. package/dist/meeting/request.type.js +0 -1
  92. package/dist/meeting/state.js +16 -26
  93. package/dist/meeting/state.js.map +1 -1
  94. package/dist/meeting/util.js +19 -158
  95. package/dist/meeting/util.js.map +1 -1
  96. package/dist/meeting-info/collection.js +3 -25
  97. package/dist/meeting-info/collection.js.map +1 -1
  98. package/dist/meeting-info/index.js +8 -31
  99. package/dist/meeting-info/index.js.map +1 -1
  100. package/dist/meeting-info/meeting-info-v2.js +131 -220
  101. package/dist/meeting-info/meeting-info-v2.js.map +1 -1
  102. package/dist/meeting-info/request.js +1 -16
  103. package/dist/meeting-info/request.js.map +1 -1
  104. package/dist/meeting-info/util.js +98 -183
  105. package/dist/meeting-info/util.js.map +1 -1
  106. package/dist/meeting-info/utilv2.js +137 -228
  107. package/dist/meeting-info/utilv2.js.map +1 -1
  108. package/dist/meetings/collection.js +3 -21
  109. package/dist/meetings/collection.js.map +1 -1
  110. package/dist/meetings/index.js +202 -335
  111. package/dist/meetings/index.js.map +1 -1
  112. package/dist/meetings/request.js +5 -28
  113. package/dist/meetings/request.js.map +1 -1
  114. package/dist/meetings/util.js +85 -141
  115. package/dist/meetings/util.js.map +1 -1
  116. package/dist/member/index.js +18 -58
  117. package/dist/member/index.js.map +1 -1
  118. package/dist/member/util.js +17 -68
  119. package/dist/member/util.js.map +1 -1
  120. package/dist/members/collection.js +2 -12
  121. package/dist/members/collection.js.map +1 -1
  122. package/dist/members/index.js +29 -151
  123. package/dist/members/index.js.map +1 -1
  124. package/dist/members/request.js +21 -56
  125. package/dist/members/request.js.map +1 -1
  126. package/dist/members/util.js +9 -38
  127. package/dist/members/util.js.map +1 -1
  128. package/dist/metrics/config.js +0 -2
  129. package/dist/metrics/config.js.map +1 -1
  130. package/dist/metrics/constants.js +1 -2
  131. package/dist/metrics/constants.js.map +1 -1
  132. package/dist/metrics/index.js +30 -121
  133. package/dist/metrics/index.js.map +1 -1
  134. package/dist/multistream/mediaRequestManager.js +12 -28
  135. package/dist/multistream/mediaRequestManager.js.map +1 -1
  136. package/dist/multistream/multistreamMedia.js +11 -22
  137. package/dist/multistream/multistreamMedia.js.map +1 -1
  138. package/dist/multistream/receiveSlot.js +7 -47
  139. package/dist/multistream/receiveSlot.js.map +1 -1
  140. package/dist/multistream/receiveSlotManager.js +37 -78
  141. package/dist/multistream/receiveSlotManager.js.map +1 -1
  142. package/dist/multistream/remoteMedia.js +11 -56
  143. package/dist/multistream/remoteMedia.js.map +1 -1
  144. package/dist/multistream/remoteMediaGroup.js +6 -40
  145. package/dist/multistream/remoteMediaGroup.js.map +1 -1
  146. package/dist/multistream/remoteMediaManager.js +221 -380
  147. package/dist/multistream/remoteMediaManager.js.map +1 -1
  148. package/dist/networkQualityMonitor/index.js +20 -49
  149. package/dist/networkQualityMonitor/index.js.map +1 -1
  150. package/dist/personal-meeting-room/index.js +3 -38
  151. package/dist/personal-meeting-room/index.js.map +1 -1
  152. package/dist/personal-meeting-room/request.js +2 -33
  153. package/dist/personal-meeting-room/request.js.map +1 -1
  154. package/dist/personal-meeting-room/util.js +0 -13
  155. package/dist/personal-meeting-room/util.js.map +1 -1
  156. package/dist/reachability/index.js +100 -166
  157. package/dist/reachability/index.js.map +1 -1
  158. package/dist/reachability/request.js +2 -18
  159. package/dist/reachability/request.js.map +1 -1
  160. package/dist/reactions/reactions.js +0 -2
  161. package/dist/reactions/reactions.js.map +1 -1
  162. package/dist/reactions/reactions.type.js +0 -6
  163. package/dist/reactions/reactions.type.js.map +1 -1
  164. package/dist/reconnection-manager/index.js +290 -455
  165. package/dist/reconnection-manager/index.js.map +1 -1
  166. package/dist/roap/index.js +13 -48
  167. package/dist/roap/index.js.map +1 -1
  168. package/dist/roap/request.js +13 -55
  169. package/dist/roap/request.js.map +1 -1
  170. package/dist/roap/turnDiscovery.js +10 -52
  171. package/dist/roap/turnDiscovery.js.map +1 -1
  172. package/dist/statsAnalyzer/global.js +0 -2
  173. package/dist/statsAnalyzer/global.js.map +1 -1
  174. package/dist/statsAnalyzer/index.js +66 -174
  175. package/dist/statsAnalyzer/index.js.map +1 -1
  176. package/dist/statsAnalyzer/mqaUtil.js +54 -53
  177. package/dist/statsAnalyzer/mqaUtil.js.map +1 -1
  178. package/dist/transcription/index.js +9 -44
  179. package/dist/transcription/index.js.map +1 -1
  180. package/package.json +18 -18
  181. package/test/integration/spec/journey.js +1 -1
  182. package/test/integration/spec/space-meeting.js +1 -1
  183. package/test/integration/spec/transcription.js +1 -1
@@ -1,76 +1,46 @@
1
1
  "use strict";
2
2
 
3
3
  var _Reflect$construct = require("@babel/runtime-corejs2/core-js/reflect/construct");
4
-
5
4
  var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
6
-
7
5
  var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
8
-
9
6
  var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
10
-
11
7
  var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
12
-
13
8
  var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
14
-
15
9
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
16
-
17
10
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
18
-
19
11
  _Object$defineProperty(exports, "__esModule", {
20
12
  value: true
21
13
  });
22
-
23
14
  exports.default = exports.MeetingInfoV2PasswordError = exports.MeetingInfoV2CaptchaError = exports.MeetingInfoV2AdhocMeetingError = void 0;
24
-
25
15
  var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
26
-
27
16
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
28
-
29
17
  var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/createClass"));
30
-
31
18
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/classCallCheck"));
32
-
33
19
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/assertThisInitialized"));
34
-
35
20
  var _inherits2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inherits"));
36
-
37
21
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/possibleConstructorReturn"));
38
-
39
22
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/getPrototypeOf"));
40
-
41
23
  var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/wrapNativeSuper"));
42
-
43
24
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
44
-
45
25
  var _constants = require("../constants");
46
-
47
26
  var _metrics = _interopRequireDefault(require("../metrics"));
48
-
49
27
  var _constants2 = _interopRequireDefault(require("../metrics/constants"));
50
-
51
28
  var _utilv = _interopRequireDefault(require("./utilv2"));
52
-
53
29
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
54
-
55
30
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
56
-
57
31
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
58
-
59
32
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_Reflect$construct) return false; if (_Reflect$construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
60
-
61
33
  var PASSWORD_ERROR_DEFAULT_MESSAGE = 'Password required. Call fetchMeetingInfo() with password argument';
62
34
  var CAPTCHA_ERROR_DEFAULT_MESSAGE = 'Captcha required. Call fetchMeetingInfo() with captchaInfo argument';
63
35
  var ADHOC_MEETING_DEFAULT_ERROR = 'Failed starting the adhoc meeting, Please contact support team ';
64
36
  var CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES = [423005, 423006];
37
+
65
38
  /**
66
39
  * Error to indicate that wbxappapi requires a password
67
40
  */
68
-
69
41
  var MeetingInfoV2PasswordError = /*#__PURE__*/function (_Error) {
70
42
  (0, _inherits2.default)(MeetingInfoV2PasswordError, _Error);
71
-
72
43
  var _super = _createSuper(MeetingInfoV2PasswordError);
73
-
74
44
  /**
75
45
  *
76
46
  * @constructor
@@ -80,7 +50,6 @@ var MeetingInfoV2PasswordError = /*#__PURE__*/function (_Error) {
80
50
  */
81
51
  function MeetingInfoV2PasswordError(wbxAppApiErrorCode, meetingInfo) {
82
52
  var _this;
83
-
84
53
  var message = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : PASSWORD_ERROR_DEFAULT_MESSAGE;
85
54
  (0, _classCallCheck2.default)(this, MeetingInfoV2PasswordError);
86
55
  _this = _super.call(this, "".concat(message, ", code=").concat(wbxAppApiErrorCode));
@@ -94,21 +63,15 @@ var MeetingInfoV2PasswordError = /*#__PURE__*/function (_Error) {
94
63
  _this.meetingInfo = meetingInfo;
95
64
  return _this;
96
65
  }
97
-
98
66
  return (0, _createClass2.default)(MeetingInfoV2PasswordError);
99
67
  }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
100
68
  /**
101
69
  * Error generating a adhoc space meeting
102
70
  */
103
-
104
-
105
71
  exports.MeetingInfoV2PasswordError = MeetingInfoV2PasswordError;
106
-
107
72
  var MeetingInfoV2AdhocMeetingError = /*#__PURE__*/function (_Error2) {
108
73
  (0, _inherits2.default)(MeetingInfoV2AdhocMeetingError, _Error2);
109
-
110
74
  var _super2 = _createSuper(MeetingInfoV2AdhocMeetingError);
111
-
112
75
  /**
113
76
  *
114
77
  * @constructor
@@ -117,7 +80,6 @@ var MeetingInfoV2AdhocMeetingError = /*#__PURE__*/function (_Error2) {
117
80
  */
118
81
  function MeetingInfoV2AdhocMeetingError(wbxAppApiErrorCode) {
119
82
  var _this2;
120
-
121
83
  var message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ADHOC_MEETING_DEFAULT_ERROR;
122
84
  (0, _classCallCheck2.default)(this, MeetingInfoV2AdhocMeetingError);
123
85
  _this2 = _super2.call(this, "".concat(message, ", code=").concat(wbxAppApiErrorCode));
@@ -129,21 +91,15 @@ var MeetingInfoV2AdhocMeetingError = /*#__PURE__*/function (_Error2) {
129
91
  _this2.wbxAppApiCode = wbxAppApiErrorCode;
130
92
  return _this2;
131
93
  }
132
-
133
94
  return (0, _createClass2.default)(MeetingInfoV2AdhocMeetingError);
134
95
  }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
135
96
  /**
136
97
  * Error to indicate that preferred webex site not present to start adhoc meeting
137
98
  */
138
-
139
-
140
99
  exports.MeetingInfoV2AdhocMeetingError = MeetingInfoV2AdhocMeetingError;
141
-
142
100
  var MeetingInfoV2CaptchaError = /*#__PURE__*/function (_Error3) {
143
101
  (0, _inherits2.default)(MeetingInfoV2CaptchaError, _Error3);
144
-
145
102
  var _super3 = _createSuper(MeetingInfoV2CaptchaError);
146
-
147
103
  /**
148
104
  *
149
105
  * @constructor
@@ -153,7 +109,6 @@ var MeetingInfoV2CaptchaError = /*#__PURE__*/function (_Error3) {
153
109
  */
154
110
  function MeetingInfoV2CaptchaError(wbxAppApiErrorCode, captchaInfo) {
155
111
  var _this3;
156
-
157
112
  var message = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : CAPTCHA_ERROR_DEFAULT_MESSAGE;
158
113
  (0, _classCallCheck2.default)(this, MeetingInfoV2CaptchaError);
159
114
  _this3 = _super3.call(this, "".concat(message, ", code=").concat(wbxAppApiErrorCode));
@@ -169,16 +124,12 @@ var MeetingInfoV2CaptchaError = /*#__PURE__*/function (_Error3) {
169
124
  _this3.captchaInfo = captchaInfo;
170
125
  return _this3;
171
126
  }
172
-
173
127
  return (0, _createClass2.default)(MeetingInfoV2CaptchaError);
174
128
  }( /*#__PURE__*/(0, _wrapNativeSuper2.default)(Error));
175
129
  /**
176
130
  * @class MeetingInfo
177
131
  */
178
-
179
-
180
132
  exports.MeetingInfoV2CaptchaError = MeetingInfoV2CaptchaError;
181
-
182
133
  var MeetingInfoV2 = /*#__PURE__*/function () {
183
134
  /**
184
135
  *
@@ -189,6 +140,7 @@ var MeetingInfoV2 = /*#__PURE__*/function () {
189
140
  (0, _defineProperty2.default)(this, "webex", void 0);
190
141
  this.webex = webex;
191
142
  }
143
+
192
144
  /**
193
145
  * converts hydra id into conversation url and persons Id
194
146
  * @param {String} destination one of many different types of destinations to look up info for
@@ -197,8 +149,6 @@ var MeetingInfoV2 = /*#__PURE__*/function () {
197
149
  * @public
198
150
  * @memberof MeetingInfo
199
151
  */
200
-
201
-
202
152
  (0, _createClass2.default)(MeetingInfoV2, [{
203
153
  key: "fetchInfoOptions",
204
154
  value: function fetchInfoOptions(destination) {
@@ -209,6 +159,7 @@ var MeetingInfoV2 = /*#__PURE__*/function () {
209
159
  webex: this.webex
210
160
  });
211
161
  }
162
+
212
163
  /**
213
164
  * Creates adhoc space meetings for a space by fetching the conversation infomation
214
165
  * @param {String} conversationUrl conversationUrl to start adhoc meeting on
@@ -216,89 +167,72 @@ var MeetingInfoV2 = /*#__PURE__*/function () {
216
167
  * @public
217
168
  * @memberof MeetingInfo
218
169
  */
219
-
220
170
  }, {
221
171
  key: "createAdhocSpaceMeeting",
222
172
  value: function () {
223
173
  var _createAdhocSpaceMeeting = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(conversationUrl) {
224
174
  var _this4 = this;
225
-
226
175
  var getInvitees;
227
176
  return _regenerator.default.wrap(function _callee$(_context) {
228
- while (1) {
229
- switch (_context.prev = _context.next) {
230
- case 0:
231
- if (this.webex.meetings.preferredWebexSite) {
232
- _context.next = 2;
233
- break;
234
- }
235
-
236
- throw Error('No preferred webex site found');
237
-
238
- case 2:
239
- getInvitees = function getInvitees() {
240
- var particpants = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
241
- var invitees = [];
242
-
243
- if (particpants) {
244
- particpants.forEach(function (participant) {
245
- invitees.push({
246
- email: participant.emailAddress,
247
- ciUserUuid: participant.entryUUID
248
- });
177
+ while (1) switch (_context.prev = _context.next) {
178
+ case 0:
179
+ if (this.webex.meetings.preferredWebexSite) {
180
+ _context.next = 2;
181
+ break;
182
+ }
183
+ throw Error('No preferred webex site found');
184
+ case 2:
185
+ getInvitees = function getInvitees() {
186
+ var particpants = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
187
+ var invitees = [];
188
+ if (particpants) {
189
+ particpants.forEach(function (participant) {
190
+ invitees.push({
191
+ email: participant.emailAddress,
192
+ ciUserUuid: participant.entryUUID
249
193
  });
250
- }
251
-
252
- return invitees;
253
- };
254
-
255
- return _context.abrupt("return", this.webex.internal.conversation.get({
256
- url: conversationUrl
257
- }, {
258
- includeParticipants: true,
259
- disableTransform: true
260
- }).then(function (conversation) {
261
- var _conversation$partici;
262
-
263
- var body = {
264
- title: conversation.displayName,
265
- spaceUrl: conversation.url,
266
- keyUrl: conversation.encryptionKeyUrl,
267
- kroUrl: conversation.kmsResourceObjectUrl,
268
- invitees: getInvitees((_conversation$partici = conversation.participants) === null || _conversation$partici === void 0 ? void 0 : _conversation$partici.items)
269
- };
270
- var uri = _this4.webex.meetings.preferredWebexSite ? "https://".concat(_this4.webex.meetings.preferredWebexSite, "/wbxappapi/v2/meetings/spaceInstant") : '';
271
-
272
- _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_SUCCESS);
273
-
274
- return _this4.webex.request({
275
- method: _constants.HTTP_VERBS.POST,
276
- uri: uri,
277
- body: body
278
194
  });
279
- }).catch(function (err) {
280
- var _err$body, _err$body2;
281
-
282
- _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_FAILURE, {
283
- reason: err.message,
284
- stack: err.stack
285
- });
286
-
287
- throw new MeetingInfoV2AdhocMeetingError((_err$body = err.body) === null || _err$body === void 0 ? void 0 : _err$body.code, (_err$body2 = err.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.message);
288
- }));
289
-
290
- case 4:
291
- case "end":
292
- return _context.stop();
293
- }
195
+ }
196
+ return invitees;
197
+ };
198
+ return _context.abrupt("return", this.webex.internal.conversation.get({
199
+ url: conversationUrl
200
+ }, {
201
+ includeParticipants: true,
202
+ disableTransform: true
203
+ }).then(function (conversation) {
204
+ var _conversation$partici;
205
+ var body = {
206
+ title: conversation.displayName,
207
+ spaceUrl: conversation.url,
208
+ keyUrl: conversation.encryptionKeyUrl,
209
+ kroUrl: conversation.kmsResourceObjectUrl,
210
+ invitees: getInvitees((_conversation$partici = conversation.participants) === null || _conversation$partici === void 0 ? void 0 : _conversation$partici.items)
211
+ };
212
+ var uri = _this4.webex.meetings.preferredWebexSite ? "https://".concat(_this4.webex.meetings.preferredWebexSite, "/wbxappapi/v2/meetings/spaceInstant") : '';
213
+ _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_SUCCESS);
214
+ return _this4.webex.request({
215
+ method: _constants.HTTP_VERBS.POST,
216
+ uri: uri,
217
+ body: body
218
+ });
219
+ }).catch(function (err) {
220
+ var _err$body, _err$body2;
221
+ _metrics.default.sendBehavioralMetric(_constants2.default.ADHOC_MEETING_FAILURE, {
222
+ reason: err.message,
223
+ stack: err.stack
224
+ });
225
+ throw new MeetingInfoV2AdhocMeetingError((_err$body = err.body) === null || _err$body === void 0 ? void 0 : _err$body.code, (_err$body2 = err.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.message);
226
+ }));
227
+ case 4:
228
+ case "end":
229
+ return _context.stop();
294
230
  }
295
231
  }, _callee, this);
296
232
  }));
297
-
298
233
  function createAdhocSpaceMeeting(_x) {
299
234
  return _createAdhocSpaceMeeting.apply(this, arguments);
300
235
  }
301
-
302
236
  return createAdhocSpaceMeeting;
303
237
  }()
304
238
  /**
@@ -313,126 +247,103 @@ var MeetingInfoV2 = /*#__PURE__*/function () {
313
247
  * @public
314
248
  * @memberof MeetingInfo
315
249
  */
316
-
317
250
  }, {
318
251
  key: "fetchMeetingInfo",
319
252
  value: function () {
320
253
  var _fetchMeetingInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(destination) {
321
254
  var type,
322
- password,
323
- captchaInfo,
324
- destinationType,
325
- body,
326
- options,
327
- directURI,
328
- _args2 = arguments;
255
+ password,
256
+ captchaInfo,
257
+ destinationType,
258
+ body,
259
+ options,
260
+ directURI,
261
+ _args2 = arguments;
329
262
  return _regenerator.default.wrap(function _callee2$(_context2) {
330
- while (1) {
331
- switch (_context2.prev = _context2.next) {
332
- case 0:
333
- type = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : null;
334
- password = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : null;
335
- captchaInfo = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : null;
336
- _context2.next = 5;
337
- return _utilv.default.getDestinationType({
338
- destination: destination,
339
- type: type,
340
- webex: this.webex
341
- });
342
-
343
- case 5:
344
- destinationType = _context2.sent;
345
-
346
- if (!(destinationType.type === _constants._CONVERSATION_URL_ && this.webex.config.meetings.experimental.enableAdhocMeetings && this.webex.meetings.preferredWebexSite)) {
347
- _context2.next = 8;
348
- break;
349
- }
350
-
351
- return _context2.abrupt("return", this.createAdhocSpaceMeeting(destinationType.destination));
352
-
353
- case 8:
354
- _context2.next = 10;
355
- return _utilv.default.getRequestBody(_objectSpread(_objectSpread({}, destinationType), {}, {
356
- password: password,
357
- captchaInfo: captchaInfo
358
- }));
359
-
360
- case 10:
361
- body = _context2.sent;
362
- options = {
363
- method: _constants.HTTP_VERBS.POST,
364
- body: body
365
- };
366
- _context2.next = 14;
367
- return _utilv.default.getDirectMeetingInfoURI(destinationType);
368
-
369
- case 14:
370
- directURI = _context2.sent;
371
-
372
- if (directURI) {
373
- options.uri = directURI;
374
- } else {
375
- options.service = _constants.WBXAPPAPI_SERVICE;
376
- options.resource = 'meetingInfo';
263
+ while (1) switch (_context2.prev = _context2.next) {
264
+ case 0:
265
+ type = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : null;
266
+ password = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : null;
267
+ captchaInfo = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : null;
268
+ _context2.next = 5;
269
+ return _utilv.default.getDestinationType({
270
+ destination: destination,
271
+ type: type,
272
+ webex: this.webex
273
+ });
274
+ case 5:
275
+ destinationType = _context2.sent;
276
+ if (!(destinationType.type === _constants._CONVERSATION_URL_ && this.webex.config.meetings.experimental.enableAdhocMeetings && this.webex.meetings.preferredWebexSite)) {
277
+ _context2.next = 8;
278
+ break;
279
+ }
280
+ return _context2.abrupt("return", this.createAdhocSpaceMeeting(destinationType.destination));
281
+ case 8:
282
+ _context2.next = 10;
283
+ return _utilv.default.getRequestBody(_objectSpread(_objectSpread({}, destinationType), {}, {
284
+ password: password,
285
+ captchaInfo: captchaInfo
286
+ }));
287
+ case 10:
288
+ body = _context2.sent;
289
+ options = {
290
+ method: _constants.HTTP_VERBS.POST,
291
+ body: body
292
+ };
293
+ _context2.next = 14;
294
+ return _utilv.default.getDirectMeetingInfoURI(destinationType);
295
+ case 14:
296
+ directURI = _context2.sent;
297
+ if (directURI) {
298
+ options.uri = directURI;
299
+ } else {
300
+ options.service = _constants.WBXAPPAPI_SERVICE;
301
+ options.resource = 'meetingInfo';
302
+ }
303
+ return _context2.abrupt("return", this.webex.request(options).then(function (response) {
304
+ _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_SUCCESS);
305
+ return response;
306
+ }).catch(function (err) {
307
+ if ((err === null || err === void 0 ? void 0 : err.statusCode) === 403) {
308
+ var _err$body3, _err$body4, _err$body4$data;
309
+ _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_PASSWORD_ERROR, {
310
+ reason: err.message,
311
+ stack: err.stack
312
+ });
313
+ throw new MeetingInfoV2PasswordError((_err$body3 = err.body) === null || _err$body3 === void 0 ? void 0 : _err$body3.code, (_err$body4 = err.body) === null || _err$body4 === void 0 ? void 0 : (_err$body4$data = _err$body4.data) === null || _err$body4$data === void 0 ? void 0 : _err$body4$data.meetingInfo);
377
314
  }
378
-
379
- return _context2.abrupt("return", this.webex.request(options).then(function (response) {
380
- _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_SUCCESS);
381
-
382
- return response;
383
- }).catch(function (err) {
384
- if ((err === null || err === void 0 ? void 0 : err.statusCode) === 403) {
385
- var _err$body3, _err$body4, _err$body4$data;
386
-
387
- _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_PASSWORD_ERROR, {
388
- reason: err.message,
389
- stack: err.stack
390
- });
391
-
392
- throw new MeetingInfoV2PasswordError((_err$body3 = err.body) === null || _err$body3 === void 0 ? void 0 : _err$body3.code, (_err$body4 = err.body) === null || _err$body4 === void 0 ? void 0 : (_err$body4$data = _err$body4.data) === null || _err$body4$data === void 0 ? void 0 : _err$body4$data.meetingInfo);
393
- }
394
-
395
- if ((err === null || err === void 0 ? void 0 : err.statusCode) === 423) {
396
- var _err$body5;
397
-
398
- _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_CAPTCHA_ERROR, {
399
- reason: err.message,
400
- stack: err.stack
401
- });
402
-
403
- throw new MeetingInfoV2CaptchaError((_err$body5 = err.body) === null || _err$body5 === void 0 ? void 0 : _err$body5.code, {
404
- captchaId: err.body.captchaID,
405
- verificationImageURL: err.body.verificationImageURL,
406
- verificationAudioURL: err.body.verificationAudioURL,
407
- refreshURL: err.body.refreshURL
408
- });
409
- }
410
-
411
- _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_FAILURE, {
315
+ if ((err === null || err === void 0 ? void 0 : err.statusCode) === 423) {
316
+ var _err$body5;
317
+ _metrics.default.sendBehavioralMetric(_constants2.default.VERIFY_CAPTCHA_ERROR, {
412
318
  reason: err.message,
413
319
  stack: err.stack
414
320
  });
415
-
416
- throw err;
417
- }));
418
-
419
- case 17:
420
- case "end":
421
- return _context2.stop();
422
- }
321
+ throw new MeetingInfoV2CaptchaError((_err$body5 = err.body) === null || _err$body5 === void 0 ? void 0 : _err$body5.code, {
322
+ captchaId: err.body.captchaID,
323
+ verificationImageURL: err.body.verificationImageURL,
324
+ verificationAudioURL: err.body.verificationAudioURL,
325
+ refreshURL: err.body.refreshURL
326
+ });
327
+ }
328
+ _metrics.default.sendBehavioralMetric(_constants2.default.FETCH_MEETING_INFO_V1_FAILURE, {
329
+ reason: err.message,
330
+ stack: err.stack
331
+ });
332
+ throw err;
333
+ }));
334
+ case 17:
335
+ case "end":
336
+ return _context2.stop();
423
337
  }
424
338
  }, _callee2, this);
425
339
  }));
426
-
427
340
  function fetchMeetingInfo(_x2) {
428
341
  return _fetchMeetingInfo.apply(this, arguments);
429
342
  }
430
-
431
343
  return fetchMeetingInfo;
432
344
  }()
433
345
  }]);
434
346
  return MeetingInfoV2;
435
347
  }();
436
-
437
348
  exports.default = MeetingInfoV2;
438
349
  //# sourceMappingURL=meeting-info-v2.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["PASSWORD_ERROR_DEFAULT_MESSAGE","CAPTCHA_ERROR_DEFAULT_MESSAGE","ADHOC_MEETING_DEFAULT_ERROR","CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES","MeetingInfoV2PasswordError","wbxAppApiErrorCode","meetingInfo","message","name","sdkMessage","stack","Error","wbxAppApiCode","MeetingInfoV2AdhocMeetingError","MeetingInfoV2CaptchaError","captchaInfo","isPasswordRequired","includes","MeetingInfoV2","webex","destination","type","MeetingInfoUtil","getDestinationType","conversationUrl","meetings","preferredWebexSite","getInvitees","particpants","invitees","forEach","participant","push","email","emailAddress","ciUserUuid","entryUUID","internal","conversation","get","url","includeParticipants","disableTransform","then","body","title","displayName","spaceUrl","keyUrl","encryptionKeyUrl","kroUrl","kmsResourceObjectUrl","participants","items","uri","Metrics","sendBehavioralMetric","BEHAVIORAL_METRICS","ADHOC_MEETING_SUCCESS","request","method","HTTP_VERBS","POST","catch","err","ADHOC_MEETING_FAILURE","reason","code","password","destinationType","_CONVERSATION_URL_","config","experimental","enableAdhocMeetings","createAdhocSpaceMeeting","getRequestBody","options","getDirectMeetingInfoURI","directURI","service","WBXAPPAPI_SERVICE","resource","response","FETCH_MEETING_INFO_V1_SUCCESS","statusCode","VERIFY_PASSWORD_ERROR","data","VERIFY_CAPTCHA_ERROR","captchaId","captchaID","verificationImageURL","verificationAudioURL","refreshURL","FETCH_MEETING_INFO_V1_FAILURE"],"sources":["meeting-info-v2.ts"],"sourcesContent":["import {HTTP_VERBS, _CONVERSATION_URL_, WBXAPPAPI_SERVICE} from '../constants';\nimport Metrics from '../metrics';\nimport BEHAVIORAL_METRICS from '../metrics/constants';\n\nimport MeetingInfoUtil from './utilv2';\n\nconst PASSWORD_ERROR_DEFAULT_MESSAGE =\n 'Password required. Call fetchMeetingInfo() with password argument';\nconst CAPTCHA_ERROR_DEFAULT_MESSAGE =\n 'Captcha required. Call fetchMeetingInfo() with captchaInfo argument';\nconst ADHOC_MEETING_DEFAULT_ERROR =\n 'Failed starting the adhoc meeting, Please contact support team ';\nconst CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES = [423005, 423006];\n\n/**\n * Error to indicate that wbxappapi requires a password\n */\nexport class MeetingInfoV2PasswordError extends Error {\n meetingInfo: any;\n sdkMessage: any;\n wbxAppApiCode: any;\n\n /**\n *\n * @constructor\n * @param {Number} [wbxAppApiErrorCode]\n * @param {Object} [meetingInfo]\n * @param {String} [message]\n */\n constructor(\n wbxAppApiErrorCode?: number,\n meetingInfo?: object,\n message: string = PASSWORD_ERROR_DEFAULT_MESSAGE\n ) {\n super(`${message}, code=${wbxAppApiErrorCode}`);\n this.name = 'MeetingInfoV2PasswordError';\n this.sdkMessage = message;\n this.stack = new Error().stack;\n this.wbxAppApiCode = wbxAppApiErrorCode;\n this.meetingInfo = meetingInfo;\n }\n}\n\n/**\n * Error generating a adhoc space meeting\n */\nexport class MeetingInfoV2AdhocMeetingError extends Error {\n sdkMessage: any;\n wbxAppApiCode: any;\n /**\n *\n * @constructor\n * @param {Number} [wbxAppApiErrorCode]\n * @param {String} [message]\n */\n constructor(wbxAppApiErrorCode?: number, message: string = ADHOC_MEETING_DEFAULT_ERROR) {\n super(`${message}, code=${wbxAppApiErrorCode}`);\n this.name = 'MeetingInfoV2AdhocMeetingError';\n this.sdkMessage = message;\n this.stack = new Error().stack;\n this.wbxAppApiCode = wbxAppApiErrorCode;\n }\n}\n\n/**\n * Error to indicate that preferred webex site not present to start adhoc meeting\n */\nexport class MeetingInfoV2CaptchaError extends Error {\n captchaInfo: any;\n isPasswordRequired: any;\n sdkMessage: any;\n wbxAppApiCode: any;\n /**\n *\n * @constructor\n * @param {Number} [wbxAppApiErrorCode]\n * @param {Object} [captchaInfo]\n * @param {String} [message]\n */\n constructor(\n wbxAppApiErrorCode?: number,\n captchaInfo?: object,\n message: string = CAPTCHA_ERROR_DEFAULT_MESSAGE\n ) {\n super(`${message}, code=${wbxAppApiErrorCode}`);\n this.name = 'MeetingInfoV2PasswordError';\n this.sdkMessage = message;\n this.stack = new Error().stack;\n this.wbxAppApiCode = wbxAppApiErrorCode;\n this.isPasswordRequired = CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES.includes(wbxAppApiErrorCode);\n this.captchaInfo = captchaInfo;\n }\n}\n\n/**\n * @class MeetingInfo\n */\nexport default class MeetingInfoV2 {\n webex: any;\n\n /**\n *\n * @param {WebexSDK} webex\n */\n constructor(webex) {\n this.webex = webex;\n }\n\n /**\n * converts hydra id into conversation url and persons Id\n * @param {String} destination one of many different types of destinations to look up info for\n * @param {String} [type] to match up with the destination value\n * @returns {Promise} destination and type\n * @public\n * @memberof MeetingInfo\n */\n fetchInfoOptions(destination: string, type: string = null) {\n return MeetingInfoUtil.getDestinationType({\n destination,\n type,\n webex: this.webex,\n });\n }\n\n /**\n * Creates adhoc space meetings for a space by fetching the conversation infomation\n * @param {String} conversationUrl conversationUrl to start adhoc meeting on\n * @returns {Promise} returns a meeting info object\n * @public\n * @memberof MeetingInfo\n */\n async createAdhocSpaceMeeting(conversationUrl: string) {\n if (!this.webex.meetings.preferredWebexSite) {\n throw Error('No preferred webex site found');\n }\n const getInvitees = (particpants = []) => {\n const invitees = [];\n\n if (particpants) {\n particpants.forEach((participant) => {\n invitees.push({\n email: participant.emailAddress,\n ciUserUuid: participant.entryUUID,\n });\n });\n }\n\n return invitees;\n };\n\n return this.webex.internal.conversation\n .get({url: conversationUrl}, {includeParticipants: true, disableTransform: true})\n .then((conversation) => {\n const body = {\n title: conversation.displayName,\n spaceUrl: conversation.url,\n keyUrl: conversation.encryptionKeyUrl,\n kroUrl: conversation.kmsResourceObjectUrl,\n invitees: getInvitees(conversation.participants?.items),\n };\n\n const uri = this.webex.meetings.preferredWebexSite\n ? `https://${this.webex.meetings.preferredWebexSite}/wbxappapi/v2/meetings/spaceInstant`\n : '';\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.ADHOC_MEETING_SUCCESS);\n\n return this.webex.request({\n method: HTTP_VERBS.POST,\n uri,\n body,\n });\n })\n .catch((err) => {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.ADHOC_MEETING_FAILURE, {\n reason: err.message,\n stack: err.stack,\n });\n throw new MeetingInfoV2AdhocMeetingError(err.body?.code, err.body?.message);\n });\n }\n\n /**\n * Fetches meeting info from the server\n * @param {String} destination one of many different types of destinations to look up info for\n * @param {String} [type] to match up with the destination value\n * @param {String} password\n * @param {Object} captchaInfo\n * @param {String} captchaInfo.code\n * @param {String} captchaInfo.id\n * @returns {Promise} returns a meeting info object\n * @public\n * @memberof MeetingInfo\n */\n async fetchMeetingInfo(\n destination: string,\n type: string = null,\n password: string = null,\n captchaInfo: {\n code: string;\n id: string;\n } = null\n ) {\n const destinationType = await MeetingInfoUtil.getDestinationType({\n destination,\n type,\n webex: this.webex,\n });\n\n if (\n destinationType.type === _CONVERSATION_URL_ &&\n this.webex.config.meetings.experimental.enableAdhocMeetings &&\n this.webex.meetings.preferredWebexSite\n ) {\n return this.createAdhocSpaceMeeting(destinationType.destination);\n }\n\n const body = await MeetingInfoUtil.getRequestBody({...destinationType, password, captchaInfo});\n\n const options: any = {\n method: HTTP_VERBS.POST,\n body,\n };\n\n const directURI = await MeetingInfoUtil.getDirectMeetingInfoURI(destinationType);\n\n if (directURI) {\n options.uri = directURI;\n } else {\n options.service = WBXAPPAPI_SERVICE;\n options.resource = 'meetingInfo';\n }\n\n return this.webex\n .request(options)\n .then((response) => {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.FETCH_MEETING_INFO_V1_SUCCESS);\n\n return response;\n })\n .catch((err) => {\n if (err?.statusCode === 403) {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.VERIFY_PASSWORD_ERROR, {\n reason: err.message,\n stack: err.stack,\n });\n\n throw new MeetingInfoV2PasswordError(err.body?.code, err.body?.data?.meetingInfo);\n }\n if (err?.statusCode === 423) {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.VERIFY_CAPTCHA_ERROR, {\n reason: err.message,\n stack: err.stack,\n });\n\n throw new MeetingInfoV2CaptchaError(err.body?.code, {\n captchaId: err.body.captchaID,\n verificationImageURL: err.body.verificationImageURL,\n verificationAudioURL: err.body.verificationAudioURL,\n refreshURL: err.body.refreshURL,\n });\n }\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.FETCH_MEETING_INFO_V1_FAILURE, {\n reason: err.message,\n stack: err.stack,\n });\n throw err;\n });\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["PASSWORD_ERROR_DEFAULT_MESSAGE","CAPTCHA_ERROR_DEFAULT_MESSAGE","ADHOC_MEETING_DEFAULT_ERROR","CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES","MeetingInfoV2PasswordError","wbxAppApiErrorCode","meetingInfo","message","name","sdkMessage","stack","Error","wbxAppApiCode","MeetingInfoV2AdhocMeetingError","MeetingInfoV2CaptchaError","captchaInfo","isPasswordRequired","includes","MeetingInfoV2","webex","destination","type","MeetingInfoUtil","getDestinationType","conversationUrl","meetings","preferredWebexSite","getInvitees","particpants","invitees","forEach","participant","push","email","emailAddress","ciUserUuid","entryUUID","internal","conversation","get","url","includeParticipants","disableTransform","then","body","title","displayName","spaceUrl","keyUrl","encryptionKeyUrl","kroUrl","kmsResourceObjectUrl","participants","items","uri","Metrics","sendBehavioralMetric","BEHAVIORAL_METRICS","ADHOC_MEETING_SUCCESS","request","method","HTTP_VERBS","POST","catch","err","ADHOC_MEETING_FAILURE","reason","code","password","destinationType","_CONVERSATION_URL_","config","experimental","enableAdhocMeetings","createAdhocSpaceMeeting","getRequestBody","options","getDirectMeetingInfoURI","directURI","service","WBXAPPAPI_SERVICE","resource","response","FETCH_MEETING_INFO_V1_SUCCESS","statusCode","VERIFY_PASSWORD_ERROR","data","VERIFY_CAPTCHA_ERROR","captchaId","captchaID","verificationImageURL","verificationAudioURL","refreshURL","FETCH_MEETING_INFO_V1_FAILURE"],"sources":["meeting-info-v2.ts"],"sourcesContent":["import {HTTP_VERBS, _CONVERSATION_URL_, WBXAPPAPI_SERVICE} from '../constants';\nimport Metrics from '../metrics';\nimport BEHAVIORAL_METRICS from '../metrics/constants';\n\nimport MeetingInfoUtil from './utilv2';\n\nconst PASSWORD_ERROR_DEFAULT_MESSAGE =\n 'Password required. Call fetchMeetingInfo() with password argument';\nconst CAPTCHA_ERROR_DEFAULT_MESSAGE =\n 'Captcha required. Call fetchMeetingInfo() with captchaInfo argument';\nconst ADHOC_MEETING_DEFAULT_ERROR =\n 'Failed starting the adhoc meeting, Please contact support team ';\nconst CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES = [423005, 423006];\n\n/**\n * Error to indicate that wbxappapi requires a password\n */\nexport class MeetingInfoV2PasswordError extends Error {\n meetingInfo: any;\n sdkMessage: any;\n wbxAppApiCode: any;\n\n /**\n *\n * @constructor\n * @param {Number} [wbxAppApiErrorCode]\n * @param {Object} [meetingInfo]\n * @param {String} [message]\n */\n constructor(\n wbxAppApiErrorCode?: number,\n meetingInfo?: object,\n message: string = PASSWORD_ERROR_DEFAULT_MESSAGE\n ) {\n super(`${message}, code=${wbxAppApiErrorCode}`);\n this.name = 'MeetingInfoV2PasswordError';\n this.sdkMessage = message;\n this.stack = new Error().stack;\n this.wbxAppApiCode = wbxAppApiErrorCode;\n this.meetingInfo = meetingInfo;\n }\n}\n\n/**\n * Error generating a adhoc space meeting\n */\nexport class MeetingInfoV2AdhocMeetingError extends Error {\n sdkMessage: any;\n wbxAppApiCode: any;\n /**\n *\n * @constructor\n * @param {Number} [wbxAppApiErrorCode]\n * @param {String} [message]\n */\n constructor(wbxAppApiErrorCode?: number, message: string = ADHOC_MEETING_DEFAULT_ERROR) {\n super(`${message}, code=${wbxAppApiErrorCode}`);\n this.name = 'MeetingInfoV2AdhocMeetingError';\n this.sdkMessage = message;\n this.stack = new Error().stack;\n this.wbxAppApiCode = wbxAppApiErrorCode;\n }\n}\n\n/**\n * Error to indicate that preferred webex site not present to start adhoc meeting\n */\nexport class MeetingInfoV2CaptchaError extends Error {\n captchaInfo: any;\n isPasswordRequired: any;\n sdkMessage: any;\n wbxAppApiCode: any;\n /**\n *\n * @constructor\n * @param {Number} [wbxAppApiErrorCode]\n * @param {Object} [captchaInfo]\n * @param {String} [message]\n */\n constructor(\n wbxAppApiErrorCode?: number,\n captchaInfo?: object,\n message: string = CAPTCHA_ERROR_DEFAULT_MESSAGE\n ) {\n super(`${message}, code=${wbxAppApiErrorCode}`);\n this.name = 'MeetingInfoV2PasswordError';\n this.sdkMessage = message;\n this.stack = new Error().stack;\n this.wbxAppApiCode = wbxAppApiErrorCode;\n this.isPasswordRequired = CAPTCHA_ERROR_REQUIRES_PASSWORD_CODES.includes(wbxAppApiErrorCode);\n this.captchaInfo = captchaInfo;\n }\n}\n\n/**\n * @class MeetingInfo\n */\nexport default class MeetingInfoV2 {\n webex: any;\n\n /**\n *\n * @param {WebexSDK} webex\n */\n constructor(webex) {\n this.webex = webex;\n }\n\n /**\n * converts hydra id into conversation url and persons Id\n * @param {String} destination one of many different types of destinations to look up info for\n * @param {String} [type] to match up with the destination value\n * @returns {Promise} destination and type\n * @public\n * @memberof MeetingInfo\n */\n fetchInfoOptions(destination: string, type: string = null) {\n return MeetingInfoUtil.getDestinationType({\n destination,\n type,\n webex: this.webex,\n });\n }\n\n /**\n * Creates adhoc space meetings for a space by fetching the conversation infomation\n * @param {String} conversationUrl conversationUrl to start adhoc meeting on\n * @returns {Promise} returns a meeting info object\n * @public\n * @memberof MeetingInfo\n */\n async createAdhocSpaceMeeting(conversationUrl: string) {\n if (!this.webex.meetings.preferredWebexSite) {\n throw Error('No preferred webex site found');\n }\n const getInvitees = (particpants = []) => {\n const invitees = [];\n\n if (particpants) {\n particpants.forEach((participant) => {\n invitees.push({\n email: participant.emailAddress,\n ciUserUuid: participant.entryUUID,\n });\n });\n }\n\n return invitees;\n };\n\n return this.webex.internal.conversation\n .get({url: conversationUrl}, {includeParticipants: true, disableTransform: true})\n .then((conversation) => {\n const body = {\n title: conversation.displayName,\n spaceUrl: conversation.url,\n keyUrl: conversation.encryptionKeyUrl,\n kroUrl: conversation.kmsResourceObjectUrl,\n invitees: getInvitees(conversation.participants?.items),\n };\n\n const uri = this.webex.meetings.preferredWebexSite\n ? `https://${this.webex.meetings.preferredWebexSite}/wbxappapi/v2/meetings/spaceInstant`\n : '';\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.ADHOC_MEETING_SUCCESS);\n\n return this.webex.request({\n method: HTTP_VERBS.POST,\n uri,\n body,\n });\n })\n .catch((err) => {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.ADHOC_MEETING_FAILURE, {\n reason: err.message,\n stack: err.stack,\n });\n throw new MeetingInfoV2AdhocMeetingError(err.body?.code, err.body?.message);\n });\n }\n\n /**\n * Fetches meeting info from the server\n * @param {String} destination one of many different types of destinations to look up info for\n * @param {String} [type] to match up with the destination value\n * @param {String} password\n * @param {Object} captchaInfo\n * @param {String} captchaInfo.code\n * @param {String} captchaInfo.id\n * @returns {Promise} returns a meeting info object\n * @public\n * @memberof MeetingInfo\n */\n async fetchMeetingInfo(\n destination: string,\n type: string = null,\n password: string = null,\n captchaInfo: {\n code: string;\n id: string;\n } = null\n ) {\n const destinationType = await MeetingInfoUtil.getDestinationType({\n destination,\n type,\n webex: this.webex,\n });\n\n if (\n destinationType.type === _CONVERSATION_URL_ &&\n this.webex.config.meetings.experimental.enableAdhocMeetings &&\n this.webex.meetings.preferredWebexSite\n ) {\n return this.createAdhocSpaceMeeting(destinationType.destination);\n }\n\n const body = await MeetingInfoUtil.getRequestBody({...destinationType, password, captchaInfo});\n\n const options: any = {\n method: HTTP_VERBS.POST,\n body,\n };\n\n const directURI = await MeetingInfoUtil.getDirectMeetingInfoURI(destinationType);\n\n if (directURI) {\n options.uri = directURI;\n } else {\n options.service = WBXAPPAPI_SERVICE;\n options.resource = 'meetingInfo';\n }\n\n return this.webex\n .request(options)\n .then((response) => {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.FETCH_MEETING_INFO_V1_SUCCESS);\n\n return response;\n })\n .catch((err) => {\n if (err?.statusCode === 403) {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.VERIFY_PASSWORD_ERROR, {\n reason: err.message,\n stack: err.stack,\n });\n\n throw new MeetingInfoV2PasswordError(err.body?.code, err.body?.data?.meetingInfo);\n }\n if (err?.statusCode === 423) {\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.VERIFY_CAPTCHA_ERROR, {\n reason: err.message,\n stack: err.stack,\n });\n\n throw new MeetingInfoV2CaptchaError(err.body?.code, {\n captchaId: err.body.captchaID,\n verificationImageURL: err.body.verificationImageURL,\n verificationAudioURL: err.body.verificationAudioURL,\n refreshURL: err.body.refreshURL,\n });\n }\n\n Metrics.sendBehavioralMetric(BEHAVIORAL_METRICS.FETCH_MEETING_INFO_V1_FAILURE, {\n reason: err.message,\n stack: err.stack,\n });\n throw err;\n });\n }\n}\n"],"mappings":"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"}