@webex/plugin-meetings 3.0.0-beta.170 → 3.0.0-beta.172
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.
- package/README.md +0 -6
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/media/index.js +3 -3
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +22 -5
- package/dist/media/properties.js.map +1 -1
- package/dist/meeting/index.js +529 -415
- package/dist/meeting/index.js.map +1 -1
- package/dist/member/index.js +15 -0
- package/dist/member/index.js.map +1 -1
- package/dist/member/types.js +11 -1
- package/dist/member/types.js.map +1 -1
- package/dist/member/util.js +15 -0
- package/dist/member/util.js.map +1 -1
- package/dist/reconnection-manager/index.js +1 -2
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/media/properties.d.ts +10 -3
- package/dist/types/meeting/index.d.ts +41 -9
- package/dist/types/member/index.d.ts +2 -1
- package/dist/types/member/types.d.ts +11 -0
- package/package.json +20 -20
- package/src/index.ts +2 -0
- package/src/media/index.ts +11 -5
- package/src/media/properties.ts +24 -5
- package/src/meeting/index.ts +210 -77
- package/src/member/index.ts +17 -1
- package/src/member/types.ts +14 -0
- package/src/member/util.ts +23 -1
- package/src/reconnection-manager/index.ts +4 -1
- package/test/integration/spec/journey.js +9 -9
- package/test/unit/spec/media/index.ts +13 -3
- package/test/unit/spec/meeting/index.js +106 -15
- package/test/unit/spec/member/index.js +36 -13
- package/test/unit/spec/member/util.js +31 -0
package/dist/meeting/index.js
CHANGED
|
@@ -15,7 +15,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequ
|
|
|
15
15
|
_Object$defineProperty(exports, "__esModule", {
|
|
16
16
|
value: true
|
|
17
17
|
});
|
|
18
|
-
exports.default = exports.MEDIA_UPDATE_TYPE = void 0;
|
|
18
|
+
exports.default = exports.ScreenShareFloorStatus = exports.MEDIA_UPDATE_TYPE = void 0;
|
|
19
19
|
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
|
|
20
20
|
var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
|
|
21
21
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
@@ -108,7 +108,8 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
108
108
|
SHARE_FLOOR_REQUEST: 'SHARE_FLOOR_REQUEST',
|
|
109
109
|
UPDATE_MEDIA: 'UPDATE_MEDIA'
|
|
110
110
|
};
|
|
111
|
-
|
|
111
|
+
exports.MEDIA_UPDATE_TYPE = MEDIA_UPDATE_TYPE;
|
|
112
|
+
var ScreenShareFloorStatus;
|
|
112
113
|
/**
|
|
113
114
|
* MediaDirection
|
|
114
115
|
* @typedef {Object} MediaDirection
|
|
@@ -120,14 +121,12 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
120
121
|
* @property {boolean} receiveShare
|
|
121
122
|
* @property {boolean} isSharing
|
|
122
123
|
*/
|
|
123
|
-
|
|
124
124
|
/**
|
|
125
125
|
* SharePreferences
|
|
126
126
|
* @typedef {Object} SharePreferences
|
|
127
127
|
* @property {Object} [shareConstraints]
|
|
128
128
|
* @property {Boolean} [highFrameRate]
|
|
129
129
|
*/
|
|
130
|
-
|
|
131
130
|
/**
|
|
132
131
|
* JoinOptions
|
|
133
132
|
* @typedef {Object} JoinOptions
|
|
@@ -140,14 +139,12 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
140
139
|
* @property {Boolean} [enableMultistream]
|
|
141
140
|
* @property {String} [correlationId]
|
|
142
141
|
*/
|
|
143
|
-
|
|
144
142
|
/**
|
|
145
143
|
* Recording
|
|
146
144
|
* @typedef {Object} Recording
|
|
147
145
|
* @property {Object} state
|
|
148
146
|
* @property {String} modifiedBy
|
|
149
147
|
*/
|
|
150
|
-
|
|
151
148
|
/**
|
|
152
149
|
* Meeting State Change Event
|
|
153
150
|
* Emitted when ever there is a meeting state change
|
|
@@ -158,7 +155,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
158
155
|
* @property {String} previousState previous state of the meeting
|
|
159
156
|
* @memberof Meeting
|
|
160
157
|
*/
|
|
161
|
-
|
|
162
158
|
/**
|
|
163
159
|
* Media Ready Event
|
|
164
160
|
* Emitted when a stream is ready to be rendered
|
|
@@ -169,7 +165,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
169
165
|
* @property {String} type what type of stream, remote, local
|
|
170
166
|
* @memberof Meeting
|
|
171
167
|
*/
|
|
172
|
-
|
|
173
168
|
/**
|
|
174
169
|
* Media Stopped Event
|
|
175
170
|
* Emitted when a stream has stopped sending
|
|
@@ -179,7 +174,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
179
174
|
* @property {String} type what type of stream, remote, local
|
|
180
175
|
* @memberof Meeting
|
|
181
176
|
*/
|
|
182
|
-
|
|
183
177
|
/**
|
|
184
178
|
* Meeting Ringing Event
|
|
185
179
|
* Emitted when this client should play a ringing sound, because this member is getting an incoming meeting
|
|
@@ -191,7 +185,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
191
185
|
* @property {String} id
|
|
192
186
|
* @memberof Meeting
|
|
193
187
|
*/
|
|
194
|
-
|
|
195
188
|
/**
|
|
196
189
|
* Meeting Ringing Stop Event
|
|
197
190
|
* Emitted when this client should stop playing a ringing sound
|
|
@@ -204,7 +197,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
204
197
|
* @property {String} id
|
|
205
198
|
* @memberof Meeting
|
|
206
199
|
*/
|
|
207
|
-
|
|
208
200
|
/**
|
|
209
201
|
* Meeting Started Sharing Local Event
|
|
210
202
|
* Emitted when this member starts sharing
|
|
@@ -213,7 +205,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
213
205
|
* @type {Object}
|
|
214
206
|
* @memberof Meeting
|
|
215
207
|
*/
|
|
216
|
-
|
|
217
208
|
/**
|
|
218
209
|
* Meeting Stopped Sharing Local Event
|
|
219
210
|
* Emitted when this member stops sharing
|
|
@@ -222,7 +213,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
222
213
|
* @type {Object}
|
|
223
214
|
* @memberof Meeting
|
|
224
215
|
*/
|
|
225
|
-
|
|
226
216
|
/**
|
|
227
217
|
* Meeting Started Sharing Remote Event
|
|
228
218
|
* Emitted when remote sharing starts
|
|
@@ -232,7 +222,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
232
222
|
* @property {Boolean} memberId id of the meeting member that started screen share
|
|
233
223
|
* @memberof Meeting
|
|
234
224
|
*/
|
|
235
|
-
|
|
236
225
|
/**
|
|
237
226
|
* Meeting Stopped Sharing Remote Event
|
|
238
227
|
* Emitted when remote screen sharing ends
|
|
@@ -241,7 +230,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
241
230
|
* @type {Object}
|
|
242
231
|
* @memberof Meeting
|
|
243
232
|
*/
|
|
244
|
-
|
|
245
233
|
/**
|
|
246
234
|
* Meeting Locked Event
|
|
247
235
|
* Emitted when a meeting is locked
|
|
@@ -251,7 +239,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
251
239
|
* @property {Object} info
|
|
252
240
|
* @memberof Meeting
|
|
253
241
|
*/
|
|
254
|
-
|
|
255
242
|
/**
|
|
256
243
|
* Meeting Unlocked Event
|
|
257
244
|
* Emitted when a meeting is unlocked
|
|
@@ -261,7 +248,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
261
248
|
* @property {Object} info
|
|
262
249
|
* @memberof Meeting
|
|
263
250
|
*/
|
|
264
|
-
|
|
265
251
|
/**
|
|
266
252
|
* Meeting Actions Update Event
|
|
267
253
|
* Emitted when a user can take actions on a meeting such as lock, unlock, assign host
|
|
@@ -273,7 +259,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
273
259
|
* @property {Boolean} canAssignHost
|
|
274
260
|
* @memberof Meeting
|
|
275
261
|
*/
|
|
276
|
-
|
|
277
262
|
/**
|
|
278
263
|
* Meeting Unmuted By Others Event
|
|
279
264
|
* Emitted when a member is unmuted by another member
|
|
@@ -283,7 +268,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
283
268
|
* @property {Object} payload
|
|
284
269
|
* @memberof Meeting
|
|
285
270
|
*/
|
|
286
|
-
|
|
287
271
|
/**
|
|
288
272
|
* Meeting Muted By Others Event
|
|
289
273
|
* Emitted when a member is muted by another member
|
|
@@ -294,7 +278,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
294
278
|
* @property {Boolean} payload.unmuteAllowed - whether the user is allowed to unmute self
|
|
295
279
|
* @memberof Meeting
|
|
296
280
|
*/
|
|
297
|
-
|
|
298
281
|
/**
|
|
299
282
|
* Meeting Muted By Others Event
|
|
300
283
|
* Emitted when the host(moderator)/co-host requests a user to unmute
|
|
@@ -304,7 +287,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
304
287
|
* @property {Object} payload
|
|
305
288
|
* @memberof Meeting
|
|
306
289
|
*/
|
|
307
|
-
|
|
308
290
|
/**
|
|
309
291
|
* Meeting Self Guest Admitted Event
|
|
310
292
|
* Emitted when a joined user get admitted to the meeting by another member or host
|
|
@@ -314,7 +296,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
314
296
|
* @property {Object} payload
|
|
315
297
|
* @memberof Meeting
|
|
316
298
|
*/
|
|
317
|
-
|
|
318
299
|
/**
|
|
319
300
|
* Meeting Self Lobby Waiting Event
|
|
320
301
|
* Emitted when joined user enters the lobby and is waiting for the webex meeting to begin
|
|
@@ -324,7 +305,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
324
305
|
* @property {Object} reason Reason why user left the meeting
|
|
325
306
|
* @memberof Meeting
|
|
326
307
|
*/
|
|
327
|
-
|
|
328
308
|
/**
|
|
329
309
|
* Meeting Self Left State
|
|
330
310
|
* Emitted when user is inactive for more then 40 seconds, User can rejoin the meeting again
|
|
@@ -334,7 +314,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
334
314
|
* @property {Object} payload
|
|
335
315
|
* @memberof Meeting
|
|
336
316
|
*/
|
|
337
|
-
|
|
338
317
|
/**
|
|
339
318
|
* Reconnection Starting Event
|
|
340
319
|
* Emitted when reconnection of media to the active meeting was successful
|
|
@@ -342,7 +321,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
342
321
|
* @instance
|
|
343
322
|
* @memberof Meeting
|
|
344
323
|
*/
|
|
345
|
-
|
|
346
324
|
/**
|
|
347
325
|
* Reconnection Success Event
|
|
348
326
|
* Emitted when reconnection of media to the active meeting was successful
|
|
@@ -352,7 +330,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
352
330
|
* @property {Object} reconnect
|
|
353
331
|
* @memberof Meeting
|
|
354
332
|
*/
|
|
355
|
-
|
|
356
333
|
/**
|
|
357
334
|
* Reconnection Failure Event
|
|
358
335
|
* Emitted when reconnection of media to the active meeting was successful
|
|
@@ -362,7 +339,6 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
362
339
|
* @property {Error} error
|
|
363
340
|
* @memberof Meeting
|
|
364
341
|
*/
|
|
365
|
-
|
|
366
342
|
/**
|
|
367
343
|
* Meeting network quality event
|
|
368
344
|
* Emitted on each interval of retrieving stats Analyzer data
|
|
@@ -372,13 +348,17 @@ var MEDIA_UPDATE_TYPE = {
|
|
|
372
348
|
* @property {number} networkQualityScore - {1|0} 1 indicates acceptable uplink 0 indicates unacceptable uplink based on threshold
|
|
373
349
|
* @memberof Meeting
|
|
374
350
|
*/
|
|
375
|
-
|
|
376
351
|
/**
|
|
377
352
|
* @description Meeting is the crux of the plugin
|
|
378
353
|
* @export
|
|
379
354
|
* @class Meeting
|
|
380
355
|
*/
|
|
381
|
-
exports.
|
|
356
|
+
exports.ScreenShareFloorStatus = ScreenShareFloorStatus;
|
|
357
|
+
(function (ScreenShareFloorStatus) {
|
|
358
|
+
ScreenShareFloorStatus["PENDING"] = "floor_request_pending";
|
|
359
|
+
ScreenShareFloorStatus["GRANTED"] = "floor_request_granted";
|
|
360
|
+
ScreenShareFloorStatus["RELEASED"] = "floor_released";
|
|
361
|
+
})(ScreenShareFloorStatus || (exports.ScreenShareFloorStatus = ScreenShareFloorStatus = {}));
|
|
382
362
|
var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
383
363
|
(0, _inherits2.default)(Meeting, _StatelessWebexPlugin);
|
|
384
364
|
var _super = _createSuper(Meeting);
|
|
@@ -449,7 +429,6 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
449
429
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "inMeetingActions", void 0);
|
|
450
430
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isLocalShareLive", void 0);
|
|
451
431
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isRoapInProgress", void 0);
|
|
452
|
-
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "isSharing", void 0);
|
|
453
432
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "keepAliveTimerId", void 0);
|
|
454
433
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "lastVideoLayoutInfo", void 0);
|
|
455
434
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "locusInfo", void 0);
|
|
@@ -470,6 +449,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
470
449
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "receiveSlotManager", void 0);
|
|
471
450
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "selfUserPolicies", void 0);
|
|
472
451
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "shareStatus", void 0);
|
|
452
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "screenShareFloorState", void 0);
|
|
473
453
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "statsAnalyzer", void 0);
|
|
474
454
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "transcription", void 0);
|
|
475
455
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "updateMediaConnections", void 0);
|
|
@@ -951,11 +931,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
951
931
|
});
|
|
952
932
|
}
|
|
953
933
|
});
|
|
954
|
-
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "
|
|
934
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleShareAudioTrackEnded", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
955
935
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
956
936
|
while (1) switch (_context.prev = _context.next) {
|
|
957
937
|
case 0:
|
|
958
|
-
if (!_this.wirelessShare) {
|
|
938
|
+
if (!(_this.wirelessShare && !_this.mediaProperties.shareVideoTrack)) {
|
|
959
939
|
_context.next = 4;
|
|
960
940
|
break;
|
|
961
941
|
}
|
|
@@ -967,31 +947,68 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
967
947
|
case 4:
|
|
968
948
|
_context.prev = 4;
|
|
969
949
|
_context.next = 7;
|
|
970
|
-
return _this.unpublishTracks([_this.mediaProperties.
|
|
950
|
+
return _this.unpublishTracks([_this.mediaProperties.shareAudioTrack]);
|
|
971
951
|
case 7:
|
|
972
952
|
_context.next = 12;
|
|
973
953
|
break;
|
|
974
954
|
case 9:
|
|
975
955
|
_context.prev = 9;
|
|
976
956
|
_context.t0 = _context["catch"](4);
|
|
977
|
-
_loggerProxy.default.logger.log('Meeting:index#
|
|
957
|
+
_loggerProxy.default.logger.log('Meeting:index#handleShareAudioTrackEnded --> Error stopping share: ', _context.t0);
|
|
978
958
|
case 12:
|
|
979
|
-
|
|
980
|
-
file: 'meeting/index',
|
|
981
|
-
function: 'handleShareTrackEnded'
|
|
982
|
-
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
|
|
983
|
-
reason: _constants.SHARE_STOPPED_REASON.TRACK_ENDED
|
|
984
|
-
});
|
|
959
|
+
_this.triggerStoppedSharing();
|
|
985
960
|
case 13:
|
|
986
961
|
case "end":
|
|
987
962
|
return _context.stop();
|
|
988
963
|
}
|
|
989
964
|
}, _callee, null, [[4, 9]]);
|
|
990
965
|
})));
|
|
966
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "handleShareVideoTrackEnded", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
|
|
967
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
968
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
969
|
+
case 0:
|
|
970
|
+
if (!(_this.wirelessShare && !_this.mediaProperties.shareAudioTrack)) {
|
|
971
|
+
_context2.next = 4;
|
|
972
|
+
break;
|
|
973
|
+
}
|
|
974
|
+
_this.leave({
|
|
975
|
+
reason: _constants.MEETING_REMOVED_REASON.USER_ENDED_SHARE_STREAMS
|
|
976
|
+
});
|
|
977
|
+
_context2.next = 12;
|
|
978
|
+
break;
|
|
979
|
+
case 4:
|
|
980
|
+
_context2.prev = 4;
|
|
981
|
+
_context2.next = 7;
|
|
982
|
+
return _this.unpublishTracks([_this.mediaProperties.shareVideoTrack]);
|
|
983
|
+
case 7:
|
|
984
|
+
_context2.next = 12;
|
|
985
|
+
break;
|
|
986
|
+
case 9:
|
|
987
|
+
_context2.prev = 9;
|
|
988
|
+
_context2.t0 = _context2["catch"](4);
|
|
989
|
+
_loggerProxy.default.logger.log('Meeting:index#handleShareVideoTrackEnded --> Error stopping share: ', _context2.t0);
|
|
990
|
+
case 12:
|
|
991
|
+
_this.triggerStoppedSharing();
|
|
992
|
+
case 13:
|
|
993
|
+
case "end":
|
|
994
|
+
return _context2.stop();
|
|
995
|
+
}
|
|
996
|
+
}, _callee2, null, [[4, 9]]);
|
|
997
|
+
})));
|
|
998
|
+
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "triggerStoppedSharing", function () {
|
|
999
|
+
if (!_this.mediaProperties.hasLocalShareTrack()) {
|
|
1000
|
+
_triggerProxy.default.trigger((0, _assertThisInitialized2.default)(_this), {
|
|
1001
|
+
file: 'meeting/index',
|
|
1002
|
+
function: 'handleShareTrackEnded'
|
|
1003
|
+
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
|
|
1004
|
+
reason: _constants.SHARE_STOPPED_REASON.TRACK_ENDED
|
|
1005
|
+
});
|
|
1006
|
+
}
|
|
1007
|
+
});
|
|
991
1008
|
(0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "clearMeetingData", function () {
|
|
992
1009
|
_this.audio = null;
|
|
993
1010
|
_this.video = null;
|
|
994
|
-
_this.
|
|
1011
|
+
_this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
995
1012
|
if (_this.shareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE) {
|
|
996
1013
|
_this.shareStatus = _constants.SHARE_STATUS.NO_SHARE;
|
|
997
1014
|
}
|
|
@@ -1419,24 +1436,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1419
1436
|
*/
|
|
1420
1437
|
_this.inMeetingActions = new _inMeetingActions.default();
|
|
1421
1438
|
/**
|
|
1422
|
-
* This is deprecated, please use shareStatus instead.
|
|
1423
1439
|
* @instance
|
|
1424
|
-
* @type {
|
|
1440
|
+
* @type {string}
|
|
1425
1441
|
* @readonly
|
|
1426
1442
|
* @public
|
|
1427
1443
|
* @memberof Meeting
|
|
1428
|
-
* @deprecated after v1.118.13
|
|
1429
1444
|
*/
|
|
1430
|
-
_this.
|
|
1445
|
+
_this.shareStatus = _constants.SHARE_STATUS.NO_SHARE;
|
|
1431
1446
|
/**
|
|
1432
1447
|
* @instance
|
|
1433
|
-
* @type {
|
|
1434
|
-
* @
|
|
1435
|
-
* @
|
|
1436
|
-
* @memberof Meeting
|
|
1448
|
+
* @type {ScreenShareFloorStatus}
|
|
1449
|
+
* @private
|
|
1450
|
+
* @memberof
|
|
1437
1451
|
*/
|
|
1438
|
-
_this.
|
|
1439
|
-
|
|
1452
|
+
_this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
1440
1453
|
/**
|
|
1441
1454
|
* @instance
|
|
1442
1455
|
* @type {Array}
|
|
@@ -1722,42 +1735,42 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1722
1735
|
}, {
|
|
1723
1736
|
key: "fetchMeetingInfo",
|
|
1724
1737
|
value: function () {
|
|
1725
|
-
var _fetchMeetingInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
1726
|
-
var
|
|
1727
|
-
return _regenerator.default.wrap(function
|
|
1728
|
-
while (1) switch (
|
|
1738
|
+
var _fetchMeetingInfo = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(_ref4) {
|
|
1739
|
+
var _ref4$password, password, _ref4$captchaCode, captchaCode, _ref4$extraParams, extraParams, captchaInfo, info, _err$body, _err$body2;
|
|
1740
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
1741
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
1729
1742
|
case 0:
|
|
1730
|
-
|
|
1743
|
+
_ref4$password = _ref4.password, password = _ref4$password === void 0 ? null : _ref4$password, _ref4$captchaCode = _ref4.captchaCode, captchaCode = _ref4$captchaCode === void 0 ? null : _ref4$captchaCode, _ref4$extraParams = _ref4.extraParams, extraParams = _ref4$extraParams === void 0 ? {} : _ref4$extraParams;
|
|
1731
1744
|
// when fetch meeting info is called directly by the client, we want to clear out the random timer for sdk to do it
|
|
1732
1745
|
if (this.fetchMeetingInfoTimeoutId) {
|
|
1733
1746
|
clearTimeout(this.fetchMeetingInfoTimeoutId);
|
|
1734
1747
|
this.fetchMeetingInfoTimeoutId = undefined;
|
|
1735
1748
|
}
|
|
1736
1749
|
if (!(captchaCode && !this.requiredCaptcha)) {
|
|
1737
|
-
|
|
1750
|
+
_context3.next = 4;
|
|
1738
1751
|
break;
|
|
1739
1752
|
}
|
|
1740
|
-
return
|
|
1753
|
+
return _context3.abrupt("return", _promise.default.reject(new Error('fetchMeetingInfo() called with captchaCode when captcha was not required')));
|
|
1741
1754
|
case 4:
|
|
1742
1755
|
if (!(password && this.passwordStatus !== _constants.PASSWORD_STATUS.REQUIRED && this.passwordStatus !== _constants.PASSWORD_STATUS.UNKNOWN)) {
|
|
1743
|
-
|
|
1756
|
+
_context3.next = 6;
|
|
1744
1757
|
break;
|
|
1745
1758
|
}
|
|
1746
|
-
return
|
|
1759
|
+
return _context3.abrupt("return", _promise.default.reject(new Error('fetchMeetingInfo() called with password when password was not required')));
|
|
1747
1760
|
case 6:
|
|
1748
|
-
|
|
1761
|
+
_context3.prev = 6;
|
|
1749
1762
|
captchaInfo = captchaCode ? {
|
|
1750
1763
|
code: captchaCode,
|
|
1751
1764
|
id: this.requiredCaptcha.captchaId
|
|
1752
1765
|
} : null;
|
|
1753
|
-
|
|
1766
|
+
_context3.next = 10;
|
|
1754
1767
|
return this.attrs.meetingInfoProvider.fetchMeetingInfo(this.destination, this.destinationType, password, captchaInfo,
|
|
1755
1768
|
// @ts-ignore - config coming from registerPlugin
|
|
1756
1769
|
this.config.installedOrgID, this.locusId, extraParams, {
|
|
1757
1770
|
meetingId: this.id
|
|
1758
1771
|
});
|
|
1759
1772
|
case 10:
|
|
1760
|
-
info =
|
|
1773
|
+
info = _context3.sent;
|
|
1761
1774
|
this.parseMeetingInfo(info, this.destination);
|
|
1762
1775
|
this.meetingInfo = info ? _objectSpread(_objectSpread({}, info.body), {}, {
|
|
1763
1776
|
meetingLookupUrl: info === null || info === void 0 ? void 0 : info.url
|
|
@@ -1773,66 +1786,66 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
1773
1786
|
file: 'meetings',
|
|
1774
1787
|
function: 'fetchMeetingInfo'
|
|
1775
1788
|
}, _constants.EVENT_TRIGGERS.MEETING_INFO_AVAILABLE);
|
|
1776
|
-
return
|
|
1789
|
+
return _context3.abrupt("return", _promise.default.resolve());
|
|
1777
1790
|
case 20:
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
if (!(
|
|
1781
|
-
|
|
1791
|
+
_context3.prev = 20;
|
|
1792
|
+
_context3.t0 = _context3["catch"](6);
|
|
1793
|
+
if (!(_context3.t0 instanceof _meetingInfoV.MeetingInfoV2PolicyError)) {
|
|
1794
|
+
_context3.next = 29;
|
|
1782
1795
|
break;
|
|
1783
1796
|
}
|
|
1784
1797
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.POLICY;
|
|
1785
|
-
this.meetingInfoFailureCode =
|
|
1786
|
-
if (
|
|
1787
|
-
this.meetingInfo =
|
|
1798
|
+
this.meetingInfoFailureCode = _context3.t0.wbxAppApiCode;
|
|
1799
|
+
if (_context3.t0.meetingInfo) {
|
|
1800
|
+
this.meetingInfo = _context3.t0.meetingInfo;
|
|
1788
1801
|
}
|
|
1789
1802
|
throw new _permission.default();
|
|
1790
1803
|
case 29:
|
|
1791
|
-
if (!(
|
|
1792
|
-
|
|
1804
|
+
if (!(_context3.t0 instanceof _meetingInfoV.MeetingInfoV2PasswordError)) {
|
|
1805
|
+
_context3.next = 41;
|
|
1793
1806
|
break;
|
|
1794
1807
|
}
|
|
1795
1808
|
_loggerProxy.default.logger.info( // @ts-ignore
|
|
1796
|
-
"Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - password required (code=").concat(
|
|
1809
|
+
"Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - password required (code=").concat(_context3.t0 === null || _context3.t0 === void 0 ? void 0 : (_err$body = _context3.t0.body) === null || _err$body === void 0 ? void 0 : _err$body.code, ")."));
|
|
1797
1810
|
|
|
1798
1811
|
// when wbxappapi requires password it still populates partial meeting info in the response
|
|
1799
|
-
if (
|
|
1800
|
-
this.meetingInfo =
|
|
1801
|
-
this.meetingNumber =
|
|
1812
|
+
if (_context3.t0.meetingInfo) {
|
|
1813
|
+
this.meetingInfo = _context3.t0.meetingInfo;
|
|
1814
|
+
this.meetingNumber = _context3.t0.meetingInfo.meetingNumber;
|
|
1802
1815
|
}
|
|
1803
|
-
this.meetingInfoFailureCode =
|
|
1816
|
+
this.meetingInfoFailureCode = _context3.t0.wbxAppApiCode;
|
|
1804
1817
|
this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
|
|
1805
1818
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
|
|
1806
1819
|
if (!this.requiredCaptcha) {
|
|
1807
|
-
|
|
1820
|
+
_context3.next = 38;
|
|
1808
1821
|
break;
|
|
1809
1822
|
}
|
|
1810
|
-
|
|
1823
|
+
_context3.next = 38;
|
|
1811
1824
|
return this.refreshCaptcha();
|
|
1812
1825
|
case 38:
|
|
1813
1826
|
throw new _passwordError.default();
|
|
1814
1827
|
case 41:
|
|
1815
|
-
if (!(
|
|
1816
|
-
|
|
1828
|
+
if (!(_context3.t0 instanceof _meetingInfoV.MeetingInfoV2CaptchaError)) {
|
|
1829
|
+
_context3.next = 50;
|
|
1817
1830
|
break;
|
|
1818
1831
|
}
|
|
1819
1832
|
_loggerProxy.default.logger.info( // @ts-ignore
|
|
1820
|
-
"Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - captcha required (code=").concat(
|
|
1833
|
+
"Meeting:index#fetchMeetingInfo --> Info Unable to fetch meeting info for ".concat(this.destination, " - captcha required (code=").concat(_context3.t0 === null || _context3.t0 === void 0 ? void 0 : (_err$body2 = _context3.t0.body) === null || _err$body2 === void 0 ? void 0 : _err$body2.code, ")."));
|
|
1821
1834
|
this.meetingInfoFailureReason = this.requiredCaptcha ? _constants.MEETING_INFO_FAILURE_REASON.WRONG_CAPTCHA : _constants.MEETING_INFO_FAILURE_REASON.WRONG_PASSWORD;
|
|
1822
|
-
this.meetingInfoFailureCode =
|
|
1823
|
-
if (
|
|
1835
|
+
this.meetingInfoFailureCode = _context3.t0.wbxAppApiCode;
|
|
1836
|
+
if (_context3.t0.isPasswordRequired) {
|
|
1824
1837
|
this.passwordStatus = _constants.PASSWORD_STATUS.REQUIRED;
|
|
1825
1838
|
}
|
|
1826
|
-
this.requiredCaptcha =
|
|
1839
|
+
this.requiredCaptcha = _context3.t0.captchaInfo;
|
|
1827
1840
|
throw new _captchaError.default();
|
|
1828
1841
|
case 50:
|
|
1829
1842
|
this.meetingInfoFailureReason = _constants.MEETING_INFO_FAILURE_REASON.OTHER;
|
|
1830
|
-
throw
|
|
1843
|
+
throw _context3.t0;
|
|
1831
1844
|
case 52:
|
|
1832
1845
|
case "end":
|
|
1833
|
-
return
|
|
1846
|
+
return _context3.stop();
|
|
1834
1847
|
}
|
|
1835
|
-
},
|
|
1848
|
+
}, _callee3, this, [[6, 20]]);
|
|
1836
1849
|
}));
|
|
1837
1850
|
function fetchMeetingInfo(_x) {
|
|
1838
1851
|
return _fetchMeetingInfo.apply(this, arguments);
|
|
@@ -2271,10 +2284,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2271
2284
|
key: "setupLocusControlsListener",
|
|
2272
2285
|
value: function setupLocusControlsListener() {
|
|
2273
2286
|
var _this13 = this;
|
|
2274
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RECORDING_UPDATED, function (
|
|
2275
|
-
var state =
|
|
2276
|
-
modifiedBy =
|
|
2277
|
-
lastModified =
|
|
2287
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RECORDING_UPDATED, function (_ref5) {
|
|
2288
|
+
var state = _ref5.state,
|
|
2289
|
+
modifiedBy = _ref5.modifiedBy,
|
|
2290
|
+
lastModified = _ref5.lastModified;
|
|
2278
2291
|
var event;
|
|
2279
2292
|
switch (state) {
|
|
2280
2293
|
case _constants.RECORDING_STATE.RECORDING:
|
|
@@ -2305,8 +2318,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2305
2318
|
function: 'setupLocusControlsListener'
|
|
2306
2319
|
}, event, _this13.recording);
|
|
2307
2320
|
});
|
|
2308
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_CONTAINER_UPDATED, function (
|
|
2309
|
-
var meetingContainerUrl =
|
|
2321
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_CONTAINER_UPDATED, function (_ref6) {
|
|
2322
|
+
var meetingContainerUrl = _ref6.meetingContainerUrl;
|
|
2310
2323
|
_triggerProxy.default.trigger(_this13, {
|
|
2311
2324
|
file: 'meeting/index',
|
|
2312
2325
|
function: 'setupLocusControlsListener'
|
|
@@ -2314,9 +2327,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2314
2327
|
meetingContainerUrl: meetingContainerUrl
|
|
2315
2328
|
});
|
|
2316
2329
|
});
|
|
2317
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_TRANSCRIBE_UPDATED, function (
|
|
2318
|
-
var caption =
|
|
2319
|
-
transcribing =
|
|
2330
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_TRANSCRIBE_UPDATED, function (_ref7) {
|
|
2331
|
+
var caption = _ref7.caption,
|
|
2332
|
+
transcribing = _ref7.transcribing;
|
|
2320
2333
|
// @ts-ignore - config coming from registerPlugin
|
|
2321
2334
|
if (transcribing && _this13.transcription && _this13.config.receiveTranscription) {
|
|
2322
2335
|
_this13.receiveTranscription();
|
|
@@ -2330,24 +2343,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2330
2343
|
});
|
|
2331
2344
|
}
|
|
2332
2345
|
});
|
|
2333
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_BREAKOUT_UPDATED, function (
|
|
2334
|
-
var breakout =
|
|
2346
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_BREAKOUT_UPDATED, function (_ref8) {
|
|
2347
|
+
var breakout = _ref8.breakout;
|
|
2335
2348
|
_this13.breakouts.updateBreakout(breakout);
|
|
2336
2349
|
_triggerProxy.default.trigger(_this13, {
|
|
2337
2350
|
file: 'meeting/index',
|
|
2338
2351
|
function: 'setupLocusControlsListener'
|
|
2339
2352
|
}, _constants.EVENT_TRIGGERS.MEETING_BREAKOUTS_UPDATE);
|
|
2340
2353
|
});
|
|
2341
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_INTERPRETATION_UPDATED, function (
|
|
2342
|
-
var interpretation =
|
|
2354
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MEETING_INTERPRETATION_UPDATED, function (_ref9) {
|
|
2355
|
+
var interpretation = _ref9.interpretation;
|
|
2343
2356
|
_this13.simultaneousInterpretation.updateInterpretation(interpretation);
|
|
2344
2357
|
_triggerProxy.default.trigger(_this13, {
|
|
2345
2358
|
file: 'meeting/index',
|
|
2346
2359
|
function: 'setupLocusControlsListener'
|
|
2347
2360
|
}, _constants.EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE);
|
|
2348
2361
|
});
|
|
2349
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_JOIN_BREAKOUT_FROM_MAIN, function (
|
|
2350
|
-
var mainLocusUrl =
|
|
2362
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_JOIN_BREAKOUT_FROM_MAIN, function (_ref10) {
|
|
2363
|
+
var mainLocusUrl = _ref10.mainLocusUrl;
|
|
2351
2364
|
_this13.meetingRequest.getLocusStatusByUrl(mainLocusUrl).catch(function (error) {
|
|
2352
2365
|
// clear main session cache when attendee join into breakout and forbidden to get locus from main locus url,
|
|
2353
2366
|
// which means main session is not active for the attendee
|
|
@@ -2356,8 +2369,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2356
2369
|
}
|
|
2357
2370
|
});
|
|
2358
2371
|
});
|
|
2359
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_ENTRY_EXIT_TONE_UPDATED, function (
|
|
2360
|
-
var entryExitTone =
|
|
2372
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_ENTRY_EXIT_TONE_UPDATED, function (_ref11) {
|
|
2373
|
+
var entryExitTone = _ref11.entryExitTone;
|
|
2361
2374
|
_triggerProxy.default.trigger(_this13, {
|
|
2362
2375
|
file: 'meeting/index',
|
|
2363
2376
|
function: 'setupLocusControlsListener'
|
|
@@ -2365,8 +2378,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2365
2378
|
entryExitTone: entryExitTone
|
|
2366
2379
|
});
|
|
2367
2380
|
});
|
|
2368
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MUTE_ON_ENTRY_CHANGED, function (
|
|
2369
|
-
var state =
|
|
2381
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_MUTE_ON_ENTRY_CHANGED, function (_ref12) {
|
|
2382
|
+
var state = _ref12.state;
|
|
2370
2383
|
_triggerProxy.default.trigger(_this13, {
|
|
2371
2384
|
file: 'meeting/index',
|
|
2372
2385
|
function: 'setupLocusControlsListener'
|
|
@@ -2374,8 +2387,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2374
2387
|
state: state
|
|
2375
2388
|
});
|
|
2376
2389
|
});
|
|
2377
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_SHARE_CONTROL_CHANGED, function (
|
|
2378
|
-
var state =
|
|
2390
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_SHARE_CONTROL_CHANGED, function (_ref13) {
|
|
2391
|
+
var state = _ref13.state;
|
|
2379
2392
|
_triggerProxy.default.trigger(_this13, {
|
|
2380
2393
|
file: 'meeting/index',
|
|
2381
2394
|
function: 'setupLocusControlsListener'
|
|
@@ -2383,8 +2396,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2383
2396
|
state: state
|
|
2384
2397
|
});
|
|
2385
2398
|
});
|
|
2386
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_DISALLOW_UNMUTE_CHANGED, function (
|
|
2387
|
-
var state =
|
|
2399
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_DISALLOW_UNMUTE_CHANGED, function (_ref14) {
|
|
2400
|
+
var state = _ref14.state;
|
|
2388
2401
|
_triggerProxy.default.trigger(_this13, {
|
|
2389
2402
|
file: 'meeting/index',
|
|
2390
2403
|
function: 'setupLocusControlsListener'
|
|
@@ -2392,8 +2405,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2392
2405
|
state: state
|
|
2393
2406
|
});
|
|
2394
2407
|
});
|
|
2395
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_REACTIONS_CHANGED, function (
|
|
2396
|
-
var state =
|
|
2408
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_REACTIONS_CHANGED, function (_ref15) {
|
|
2409
|
+
var state = _ref15.state;
|
|
2397
2410
|
_triggerProxy.default.trigger(_this13, {
|
|
2398
2411
|
file: 'meeting/index',
|
|
2399
2412
|
function: 'setupLocusControlsListener'
|
|
@@ -2401,8 +2414,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2401
2414
|
state: state
|
|
2402
2415
|
});
|
|
2403
2416
|
});
|
|
2404
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED, function (
|
|
2405
|
-
var state =
|
|
2417
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIEW_THE_PARTICIPANTS_LIST_CHANGED, function (_ref16) {
|
|
2418
|
+
var state = _ref16.state;
|
|
2406
2419
|
_triggerProxy.default.trigger(_this13, {
|
|
2407
2420
|
file: 'meeting/index',
|
|
2408
2421
|
function: 'setupLocusControlsListener'
|
|
@@ -2410,8 +2423,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2410
2423
|
state: state
|
|
2411
2424
|
});
|
|
2412
2425
|
});
|
|
2413
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RAISE_HAND_CHANGED, function (
|
|
2414
|
-
var state =
|
|
2426
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_RAISE_HAND_CHANGED, function (_ref17) {
|
|
2427
|
+
var state = _ref17.state;
|
|
2415
2428
|
_triggerProxy.default.trigger(_this13, {
|
|
2416
2429
|
file: 'meeting/index',
|
|
2417
2430
|
function: 'setupLocusControlsListener'
|
|
@@ -2419,8 +2432,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2419
2432
|
state: state
|
|
2420
2433
|
});
|
|
2421
2434
|
});
|
|
2422
|
-
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIDEO_CHANGED, function (
|
|
2423
|
-
var state =
|
|
2435
|
+
this.locusInfo.on(_constants.LOCUSINFO.EVENTS.CONTROLS_VIDEO_CHANGED, function (_ref18) {
|
|
2436
|
+
var state = _ref18.state;
|
|
2424
2437
|
_triggerProxy.default.trigger(_this13, {
|
|
2425
2438
|
file: 'meeting/index',
|
|
2426
2439
|
function: 'setupLocusControlsListener'
|
|
@@ -2466,21 +2479,21 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2466
2479
|
var _this14 = this;
|
|
2467
2480
|
// Will get triggered on local and remote share
|
|
2468
2481
|
this.locusInfo.on(_constants.EVENTS.LOCUS_INFO_UPDATE_MEDIA_SHARES, /*#__PURE__*/function () {
|
|
2469
|
-
var
|
|
2482
|
+
var _ref19 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(payload) {
|
|
2470
2483
|
var _payload$previous, _payload$previous2;
|
|
2471
2484
|
var _payload$current, contentShare, whiteboardShare, previousContentShare, previousWhiteboardShare, newShareStatus, oldShareStatus, sendStartedSharingRemote, _this14$mediaProperti;
|
|
2472
|
-
return _regenerator.default.wrap(function
|
|
2473
|
-
while (1) switch (
|
|
2485
|
+
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
2486
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
2474
2487
|
case 0:
|
|
2475
2488
|
_payload$current = payload.current, contentShare = _payload$current.content, whiteboardShare = _payload$current.whiteboard;
|
|
2476
2489
|
previousContentShare = (_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.content;
|
|
2477
2490
|
previousWhiteboardShare = (_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.whiteboard;
|
|
2478
2491
|
_this14.triggerAnnotationInfoEvent(contentShare, previousContentShare);
|
|
2479
2492
|
if (!(contentShare.beneficiaryId === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.beneficiaryId) && contentShare.disposition === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.disposition) && whiteboardShare.beneficiaryId === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.beneficiaryId) && whiteboardShare.disposition === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.disposition) && whiteboardShare.resourceUrl === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.resourceUrl))) {
|
|
2480
|
-
|
|
2493
|
+
_context4.next = 6;
|
|
2481
2494
|
break;
|
|
2482
2495
|
}
|
|
2483
|
-
return
|
|
2496
|
+
return _context4.abrupt("return");
|
|
2484
2497
|
case 6:
|
|
2485
2498
|
newShareStatus = _this14.shareStatus; // REMOTE - check if remote started sharing
|
|
2486
2499
|
if (_this14.selfId !== contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
|
|
@@ -2504,22 +2517,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2504
2517
|
newShareStatus = _constants.SHARE_STATUS.NO_SHARE;
|
|
2505
2518
|
}
|
|
2506
2519
|
if (!(newShareStatus !== _this14.shareStatus)) {
|
|
2507
|
-
|
|
2520
|
+
_context4.next = 45;
|
|
2508
2521
|
break;
|
|
2509
2522
|
}
|
|
2510
2523
|
oldShareStatus = _this14.shareStatus; // update our state before we send out any notifications
|
|
2511
2524
|
_this14.shareStatus = newShareStatus;
|
|
2512
2525
|
|
|
2513
2526
|
// send out "stop" notifications for the old state
|
|
2514
|
-
|
|
2515
|
-
|
|
2527
|
+
_context4.t0 = oldShareStatus;
|
|
2528
|
+
_context4.next = _context4.t0 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 14 : _context4.t0 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 16 : _context4.t0 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 18 : _context4.t0 === _constants.SHARE_STATUS.NO_SHARE ? 20 : 21;
|
|
2516
2529
|
break;
|
|
2517
2530
|
case 14:
|
|
2518
2531
|
_triggerProxy.default.trigger(_this14, {
|
|
2519
2532
|
file: 'meetings/index',
|
|
2520
2533
|
function: 'remoteShare'
|
|
2521
2534
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_REMOTE);
|
|
2522
|
-
return
|
|
2535
|
+
return _context4.abrupt("break", 22);
|
|
2523
2536
|
case 16:
|
|
2524
2537
|
_triggerProxy.default.trigger(_this14, {
|
|
2525
2538
|
file: 'meeting/index',
|
|
@@ -2527,20 +2540,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2527
2540
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_LOCAL, {
|
|
2528
2541
|
reason: _constants.SHARE_STOPPED_REASON.SELF_STOPPED
|
|
2529
2542
|
});
|
|
2530
|
-
return
|
|
2543
|
+
return _context4.abrupt("break", 22);
|
|
2531
2544
|
case 18:
|
|
2532
2545
|
_triggerProxy.default.trigger(_this14, {
|
|
2533
2546
|
file: 'meeting/index',
|
|
2534
2547
|
function: 'stopWhiteboardShare'
|
|
2535
2548
|
}, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_WHITEBOARD);
|
|
2536
|
-
return
|
|
2549
|
+
return _context4.abrupt("break", 22);
|
|
2537
2550
|
case 20:
|
|
2538
|
-
return
|
|
2551
|
+
return _context4.abrupt("break", 22);
|
|
2539
2552
|
case 21:
|
|
2540
|
-
return
|
|
2553
|
+
return _context4.abrupt("break", 22);
|
|
2541
2554
|
case 22:
|
|
2542
|
-
|
|
2543
|
-
|
|
2555
|
+
_context4.t1 = newShareStatus;
|
|
2556
|
+
_context4.next = _context4.t1 === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE ? 25 : _context4.t1 === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE ? 34 : _context4.t1 === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE ? 37 : _context4.t1 === _constants.SHARE_STATUS.NO_SHARE ? 40 : 41;
|
|
2544
2557
|
break;
|
|
2545
2558
|
case 25:
|
|
2546
2559
|
sendStartedSharingRemote = function sendStartedSharingRemote() {
|
|
@@ -2553,19 +2566,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2553
2566
|
shareInstanceId: contentShare.shareInstanceId
|
|
2554
2567
|
});
|
|
2555
2568
|
};
|
|
2556
|
-
|
|
2569
|
+
_context4.prev = 26;
|
|
2557
2570
|
if (!((_this14$mediaProperti = _this14.mediaProperties.mediaDirection) !== null && _this14$mediaProperti !== void 0 && _this14$mediaProperti.sendShare && oldShareStatus === _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE)) {
|
|
2558
|
-
|
|
2571
|
+
_context4.next = 30;
|
|
2559
2572
|
break;
|
|
2560
2573
|
}
|
|
2561
|
-
|
|
2562
|
-
return _this14.unpublishTracks([_this14.mediaProperties.
|
|
2574
|
+
_context4.next = 30;
|
|
2575
|
+
return _this14.unpublishTracks([_this14.mediaProperties.shareVideoTrack, _this14.mediaProperties.shareAudioTrack]);
|
|
2563
2576
|
case 30:
|
|
2564
|
-
|
|
2577
|
+
_context4.prev = 30;
|
|
2565
2578
|
sendStartedSharingRemote();
|
|
2566
|
-
return
|
|
2579
|
+
return _context4.finish(30);
|
|
2567
2580
|
case 33:
|
|
2568
|
-
return
|
|
2581
|
+
return _context4.abrupt("break", 42);
|
|
2569
2582
|
case 34:
|
|
2570
2583
|
_triggerProxy.default.trigger(_this14, {
|
|
2571
2584
|
file: 'meeting/index',
|
|
@@ -2581,7 +2594,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2581
2594
|
meetingId: _this14.id
|
|
2582
2595
|
}
|
|
2583
2596
|
});
|
|
2584
|
-
return
|
|
2597
|
+
return _context4.abrupt("break", 42);
|
|
2585
2598
|
case 37:
|
|
2586
2599
|
_triggerProxy.default.trigger(_this14, {
|
|
2587
2600
|
file: 'meeting/index',
|
|
@@ -2600,14 +2613,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2600
2613
|
meetingId: _this14.id
|
|
2601
2614
|
}
|
|
2602
2615
|
});
|
|
2603
|
-
return
|
|
2616
|
+
return _context4.abrupt("break", 42);
|
|
2604
2617
|
case 40:
|
|
2605
|
-
return
|
|
2618
|
+
return _context4.abrupt("break", 42);
|
|
2606
2619
|
case 41:
|
|
2607
|
-
return
|
|
2620
|
+
return _context4.abrupt("break", 42);
|
|
2608
2621
|
case 42:
|
|
2609
2622
|
_this14.members.locusMediaSharesUpdate(payload);
|
|
2610
|
-
|
|
2623
|
+
_context4.next = 46;
|
|
2611
2624
|
break;
|
|
2612
2625
|
case 45:
|
|
2613
2626
|
if (newShareStatus === _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE) {
|
|
@@ -2646,12 +2659,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
2646
2659
|
}
|
|
2647
2660
|
case 46:
|
|
2648
2661
|
case "end":
|
|
2649
|
-
return
|
|
2662
|
+
return _context4.stop();
|
|
2650
2663
|
}
|
|
2651
|
-
},
|
|
2664
|
+
}, _callee4, null, [[26,, 30, 33]]);
|
|
2652
2665
|
}));
|
|
2653
2666
|
return function (_x2) {
|
|
2654
|
-
return
|
|
2667
|
+
return _ref19.apply(this, arguments);
|
|
2655
2668
|
};
|
|
2656
2669
|
}());
|
|
2657
2670
|
}
|
|
@@ -3113,43 +3126,50 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3113
3126
|
}
|
|
3114
3127
|
});
|
|
3115
3128
|
this.locusInfo.on(_constants.EVENTS.DESTROY_MEETING, /*#__PURE__*/function () {
|
|
3116
|
-
var
|
|
3117
|
-
return _regenerator.default.wrap(function
|
|
3118
|
-
while (1) switch (
|
|
3129
|
+
var _ref20 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(payload) {
|
|
3130
|
+
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
3131
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
3119
3132
|
case 0:
|
|
3120
3133
|
if (!_this21.wirelessShare) {
|
|
3121
|
-
|
|
3134
|
+
_context5.next = 7;
|
|
3122
3135
|
break;
|
|
3123
3136
|
}
|
|
3124
|
-
if (!_this21.mediaProperties.
|
|
3125
|
-
|
|
3137
|
+
if (!_this21.mediaProperties.shareVideoTrack) {
|
|
3138
|
+
_context5.next = 4;
|
|
3126
3139
|
break;
|
|
3127
3140
|
}
|
|
3128
|
-
|
|
3129
|
-
return _this21.
|
|
3141
|
+
_context5.next = 4;
|
|
3142
|
+
return _this21.setLocalShareVideoTrack(undefined);
|
|
3130
3143
|
case 4:
|
|
3144
|
+
if (!_this21.mediaProperties.shareAudioTrack) {
|
|
3145
|
+
_context5.next = 7;
|
|
3146
|
+
break;
|
|
3147
|
+
}
|
|
3148
|
+
_context5.next = 7;
|
|
3149
|
+
return _this21.setLocalShareAudioTrack(undefined);
|
|
3150
|
+
case 7:
|
|
3131
3151
|
if (!payload.shouldLeave) {
|
|
3132
|
-
|
|
3152
|
+
_context5.next = 19;
|
|
3133
3153
|
break;
|
|
3134
3154
|
}
|
|
3135
|
-
|
|
3136
|
-
|
|
3155
|
+
_context5.prev = 8;
|
|
3156
|
+
_context5.next = 11;
|
|
3137
3157
|
return _this21.leave({
|
|
3138
3158
|
reason: payload.reason
|
|
3139
3159
|
});
|
|
3140
|
-
case
|
|
3160
|
+
case 11:
|
|
3141
3161
|
_loggerProxy.default.logger.warn('Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. The meeting has been left, but has not been destroyed, you should see a later event for leave.');
|
|
3142
|
-
|
|
3162
|
+
_context5.next = 17;
|
|
3143
3163
|
break;
|
|
3144
|
-
case 11:
|
|
3145
|
-
_context4.prev = 11;
|
|
3146
|
-
_context4.t0 = _context4["catch"](5);
|
|
3147
|
-
// @ts-ignore
|
|
3148
|
-
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this21, ", error: ").concat(_context4.t0));
|
|
3149
3164
|
case 14:
|
|
3150
|
-
|
|
3165
|
+
_context5.prev = 14;
|
|
3166
|
+
_context5.t0 = _context5["catch"](8);
|
|
3167
|
+
// @ts-ignore
|
|
3168
|
+
_loggerProxy.default.logger.error("Meeting:index#setUpLocusInfoMeetingListener --> DESTROY_MEETING. Issue with leave for meeting, meeting still in collection: ".concat(_this21, ", error: ").concat(_context5.t0));
|
|
3169
|
+
case 17:
|
|
3170
|
+
_context5.next = 22;
|
|
3151
3171
|
break;
|
|
3152
|
-
case
|
|
3172
|
+
case 19:
|
|
3153
3173
|
_loggerProxy.default.logger.info('Meeting:index#setUpLocusInfoMeetingListener --> MEETING_REMOVED_REASON', payload.reason);
|
|
3154
3174
|
_util.default.cleanUp(_this21);
|
|
3155
3175
|
_triggerProxy.default.trigger(_this21, {
|
|
@@ -3159,14 +3179,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3159
3179
|
reason: payload.reason,
|
|
3160
3180
|
meetingId: _this21.id
|
|
3161
3181
|
});
|
|
3162
|
-
case
|
|
3182
|
+
case 22:
|
|
3163
3183
|
case "end":
|
|
3164
|
-
return
|
|
3184
|
+
return _context5.stop();
|
|
3165
3185
|
}
|
|
3166
|
-
},
|
|
3186
|
+
}, _callee5, null, [[8, 14]]);
|
|
3167
3187
|
}));
|
|
3168
3188
|
return function (_x3) {
|
|
3169
|
-
return
|
|
3189
|
+
return _ref20.apply(this, arguments);
|
|
3170
3190
|
};
|
|
3171
3191
|
}());
|
|
3172
3192
|
}
|
|
@@ -3521,10 +3541,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3521
3541
|
}, {
|
|
3522
3542
|
key: "setLocalAudioTrack",
|
|
3523
3543
|
value: function () {
|
|
3524
|
-
var _setLocalAudioTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
3544
|
+
var _setLocalAudioTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(localTrack) {
|
|
3525
3545
|
var oldTrack;
|
|
3526
|
-
return _regenerator.default.wrap(function
|
|
3527
|
-
while (1) switch (
|
|
3546
|
+
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
3547
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
3528
3548
|
case 0:
|
|
3529
3549
|
oldTrack = this.mediaProperties.audioTrack;
|
|
3530
3550
|
oldTrack === null || oldTrack === void 0 ? void 0 : oldTrack.off(_mediaHelpers.LocalTrackEvents.Muted, this.localAudioTrackMuteStateHandler);
|
|
@@ -3536,19 +3556,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3536
3556
|
localTrack === null || localTrack === void 0 ? void 0 : localTrack.on(_mediaHelpers.LocalTrackEvents.Muted, this.localAudioTrackMuteStateHandler);
|
|
3537
3557
|
localTrack === null || localTrack === void 0 ? void 0 : localTrack.on(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3538
3558
|
if (!(!this.isMultistream || !localTrack)) {
|
|
3539
|
-
|
|
3559
|
+
_context6.next = 10;
|
|
3540
3560
|
break;
|
|
3541
3561
|
}
|
|
3542
|
-
|
|
3562
|
+
_context6.next = 10;
|
|
3543
3563
|
return this.unpublishTrack(oldTrack);
|
|
3544
3564
|
case 10:
|
|
3545
|
-
|
|
3565
|
+
_context6.next = 12;
|
|
3546
3566
|
return this.publishTrack(this.mediaProperties.audioTrack);
|
|
3547
3567
|
case 12:
|
|
3548
3568
|
case "end":
|
|
3549
|
-
return
|
|
3569
|
+
return _context6.stop();
|
|
3550
3570
|
}
|
|
3551
|
-
},
|
|
3571
|
+
}, _callee6, this);
|
|
3552
3572
|
}));
|
|
3553
3573
|
function setLocalAudioTrack(_x4) {
|
|
3554
3574
|
return _setLocalAudioTrack.apply(this, arguments);
|
|
@@ -3565,10 +3585,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3565
3585
|
}, {
|
|
3566
3586
|
key: "setLocalVideoTrack",
|
|
3567
3587
|
value: function () {
|
|
3568
|
-
var _setLocalVideoTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
3588
|
+
var _setLocalVideoTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(localTrack) {
|
|
3569
3589
|
var oldTrack;
|
|
3570
|
-
return _regenerator.default.wrap(function
|
|
3571
|
-
while (1) switch (
|
|
3590
|
+
return _regenerator.default.wrap(function _callee7$(_context7) {
|
|
3591
|
+
while (1) switch (_context7.prev = _context7.next) {
|
|
3572
3592
|
case 0:
|
|
3573
3593
|
oldTrack = this.mediaProperties.videoTrack;
|
|
3574
3594
|
oldTrack === null || oldTrack === void 0 ? void 0 : oldTrack.off(_mediaHelpers.LocalTrackEvents.Muted, this.localVideoTrackMuteStateHandler);
|
|
@@ -3580,19 +3600,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3580
3600
|
localTrack === null || localTrack === void 0 ? void 0 : localTrack.on(_mediaHelpers.LocalTrackEvents.Muted, this.localVideoTrackMuteStateHandler);
|
|
3581
3601
|
localTrack === null || localTrack === void 0 ? void 0 : localTrack.on(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3582
3602
|
if (!(!this.isMultistream || !localTrack)) {
|
|
3583
|
-
|
|
3603
|
+
_context7.next = 10;
|
|
3584
3604
|
break;
|
|
3585
3605
|
}
|
|
3586
|
-
|
|
3606
|
+
_context7.next = 10;
|
|
3587
3607
|
return this.unpublishTrack(oldTrack);
|
|
3588
3608
|
case 10:
|
|
3589
|
-
|
|
3609
|
+
_context7.next = 12;
|
|
3590
3610
|
return this.publishTrack(this.mediaProperties.videoTrack);
|
|
3591
3611
|
case 12:
|
|
3592
3612
|
case "end":
|
|
3593
|
-
return
|
|
3613
|
+
return _context7.stop();
|
|
3594
3614
|
}
|
|
3595
|
-
},
|
|
3615
|
+
}, _callee7, this);
|
|
3596
3616
|
}));
|
|
3597
3617
|
function setLocalVideoTrack(_x5) {
|
|
3598
3618
|
return _setLocalVideoTrack.apply(this, arguments);
|
|
@@ -3600,47 +3620,88 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3600
3620
|
return setLocalVideoTrack;
|
|
3601
3621
|
}()
|
|
3602
3622
|
/**
|
|
3603
|
-
* Stores the reference to a new screen share track, sets up the required event listeners
|
|
3623
|
+
* Stores the reference to a new screen share video track, sets up the required event listeners
|
|
3604
3624
|
* on it, cleans up previous track, etc.
|
|
3605
|
-
* It also sends the floor grant/release request.
|
|
3606
3625
|
*
|
|
3607
3626
|
* @param {LocalDisplayTrack | undefined} localDisplayTrack local camera track
|
|
3608
3627
|
* @returns {Promise<void>}
|
|
3609
3628
|
*/
|
|
3610
3629
|
}, {
|
|
3611
|
-
key: "
|
|
3630
|
+
key: "setLocalShareVideoTrack",
|
|
3612
3631
|
value: function () {
|
|
3613
|
-
var
|
|
3632
|
+
var _setLocalShareVideoTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8(localDisplayTrack) {
|
|
3614
3633
|
var oldTrack;
|
|
3615
|
-
return _regenerator.default.wrap(function
|
|
3616
|
-
while (1) switch (
|
|
3634
|
+
return _regenerator.default.wrap(function _callee8$(_context8) {
|
|
3635
|
+
while (1) switch (_context8.prev = _context8.next) {
|
|
3617
3636
|
case 0:
|
|
3618
|
-
oldTrack = this.mediaProperties.
|
|
3619
|
-
oldTrack === null || oldTrack === void 0 ? void 0 : oldTrack.off(_mediaHelpers.LocalTrackEvents.Ended, this.
|
|
3637
|
+
oldTrack = this.mediaProperties.shareVideoTrack;
|
|
3638
|
+
oldTrack === null || oldTrack === void 0 ? void 0 : oldTrack.off(_mediaHelpers.LocalTrackEvents.Ended, this.handleShareVideoTrackEnded);
|
|
3620
3639
|
oldTrack === null || oldTrack === void 0 ? void 0 : oldTrack.off(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3621
|
-
this.mediaProperties.
|
|
3622
|
-
localDisplayTrack === null || localDisplayTrack === void 0 ? void 0 : localDisplayTrack.on(_mediaHelpers.LocalTrackEvents.Ended, this.
|
|
3640
|
+
this.mediaProperties.setLocalShareVideoTrack(localDisplayTrack);
|
|
3641
|
+
localDisplayTrack === null || localDisplayTrack === void 0 ? void 0 : localDisplayTrack.on(_mediaHelpers.LocalTrackEvents.Ended, this.handleShareVideoTrackEnded);
|
|
3623
3642
|
localDisplayTrack === null || localDisplayTrack === void 0 ? void 0 : localDisplayTrack.on(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3624
|
-
this.mediaProperties.mediaDirection.sendShare =
|
|
3643
|
+
this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareTrack();
|
|
3625
3644
|
if (!(!this.isMultistream || !localDisplayTrack)) {
|
|
3626
|
-
|
|
3645
|
+
_context8.next = 10;
|
|
3627
3646
|
break;
|
|
3628
3647
|
}
|
|
3629
|
-
|
|
3648
|
+
_context8.next = 10;
|
|
3630
3649
|
return this.unpublishTrack(oldTrack);
|
|
3631
3650
|
case 10:
|
|
3632
|
-
|
|
3633
|
-
return this.publishTrack(this.mediaProperties.
|
|
3651
|
+
_context8.next = 12;
|
|
3652
|
+
return this.publishTrack(this.mediaProperties.shareVideoTrack);
|
|
3634
3653
|
case 12:
|
|
3635
3654
|
case "end":
|
|
3636
|
-
return
|
|
3655
|
+
return _context8.stop();
|
|
3637
3656
|
}
|
|
3638
|
-
},
|
|
3657
|
+
}, _callee8, this);
|
|
3639
3658
|
}));
|
|
3640
|
-
function
|
|
3641
|
-
return
|
|
3659
|
+
function setLocalShareVideoTrack(_x6) {
|
|
3660
|
+
return _setLocalShareVideoTrack.apply(this, arguments);
|
|
3642
3661
|
}
|
|
3643
|
-
return
|
|
3662
|
+
return setLocalShareVideoTrack;
|
|
3663
|
+
}()
|
|
3664
|
+
/**
|
|
3665
|
+
* Stores the reference to a new screen share audio track, sets up the required event listeners
|
|
3666
|
+
* on it, cleans up previous track, etc.
|
|
3667
|
+
*
|
|
3668
|
+
* @param {LocalSystemAudioTrack | undefined} localSystemAudioTrack local system audio track
|
|
3669
|
+
* @returns {Promise<void>}
|
|
3670
|
+
*/
|
|
3671
|
+
}, {
|
|
3672
|
+
key: "setLocalShareAudioTrack",
|
|
3673
|
+
value: function () {
|
|
3674
|
+
var _setLocalShareAudioTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9(localSystemAudioTrack) {
|
|
3675
|
+
var oldTrack;
|
|
3676
|
+
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
3677
|
+
while (1) switch (_context9.prev = _context9.next) {
|
|
3678
|
+
case 0:
|
|
3679
|
+
oldTrack = this.mediaProperties.shareAudioTrack;
|
|
3680
|
+
oldTrack === null || oldTrack === void 0 ? void 0 : oldTrack.off(_mediaHelpers.LocalTrackEvents.Ended, this.handleShareAudioTrackEnded);
|
|
3681
|
+
oldTrack === null || oldTrack === void 0 ? void 0 : oldTrack.off(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3682
|
+
this.mediaProperties.setLocalShareAudioTrack(localSystemAudioTrack);
|
|
3683
|
+
localSystemAudioTrack === null || localSystemAudioTrack === void 0 ? void 0 : localSystemAudioTrack.on(_mediaHelpers.LocalTrackEvents.Ended, this.handleShareAudioTrackEnded);
|
|
3684
|
+
localSystemAudioTrack === null || localSystemAudioTrack === void 0 ? void 0 : localSystemAudioTrack.on(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3685
|
+
this.mediaProperties.mediaDirection.sendShare = this.mediaProperties.hasLocalShareTrack();
|
|
3686
|
+
if (!(!this.isMultistream || !localSystemAudioTrack)) {
|
|
3687
|
+
_context9.next = 10;
|
|
3688
|
+
break;
|
|
3689
|
+
}
|
|
3690
|
+
_context9.next = 10;
|
|
3691
|
+
return this.unpublishTrack(oldTrack);
|
|
3692
|
+
case 10:
|
|
3693
|
+
_context9.next = 12;
|
|
3694
|
+
return this.publishTrack(this.mediaProperties.shareAudioTrack);
|
|
3695
|
+
case 12:
|
|
3696
|
+
case "end":
|
|
3697
|
+
return _context9.stop();
|
|
3698
|
+
}
|
|
3699
|
+
}, _callee9, this);
|
|
3700
|
+
}));
|
|
3701
|
+
function setLocalShareAudioTrack(_x7) {
|
|
3702
|
+
return _setLocalShareAudioTrack.apply(this, arguments);
|
|
3703
|
+
}
|
|
3704
|
+
return setLocalShareAudioTrack;
|
|
3644
3705
|
}()
|
|
3645
3706
|
/**
|
|
3646
3707
|
* Removes references to local tracks. This function should be called
|
|
@@ -3655,16 +3716,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3655
3716
|
var _this$mediaProperties3 = this.mediaProperties,
|
|
3656
3717
|
audioTrack = _this$mediaProperties3.audioTrack,
|
|
3657
3718
|
videoTrack = _this$mediaProperties3.videoTrack,
|
|
3658
|
-
|
|
3719
|
+
shareVideoTrack = _this$mediaProperties3.shareVideoTrack,
|
|
3720
|
+
shareAudioTrack = _this$mediaProperties3.shareAudioTrack;
|
|
3659
3721
|
audioTrack === null || audioTrack === void 0 ? void 0 : audioTrack.off(_mediaHelpers.LocalTrackEvents.Muted, this.localAudioTrackMuteStateHandler);
|
|
3660
3722
|
audioTrack === null || audioTrack === void 0 ? void 0 : audioTrack.off(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3661
3723
|
videoTrack === null || videoTrack === void 0 ? void 0 : videoTrack.off(_mediaHelpers.LocalTrackEvents.Muted, this.localVideoTrackMuteStateHandler);
|
|
3662
3724
|
videoTrack === null || videoTrack === void 0 ? void 0 : videoTrack.off(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3663
|
-
|
|
3664
|
-
|
|
3725
|
+
shareVideoTrack === null || shareVideoTrack === void 0 ? void 0 : shareVideoTrack.off(_mediaHelpers.LocalTrackEvents.Ended, this.handleShareVideoTrackEnded);
|
|
3726
|
+
shareVideoTrack === null || shareVideoTrack === void 0 ? void 0 : shareVideoTrack.off(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3727
|
+
shareAudioTrack === null || shareAudioTrack === void 0 ? void 0 : shareAudioTrack.off(_mediaHelpers.LocalTrackEvents.Ended, this.handleShareAudioTrackEnded);
|
|
3728
|
+
shareAudioTrack === null || shareAudioTrack === void 0 ? void 0 : shareAudioTrack.off(_mediaHelpers.LocalTrackEvents.UnderlyingTrackChange, this.underlyingLocalTrackChangeHandler);
|
|
3665
3729
|
this.mediaProperties.setLocalAudioTrack(undefined);
|
|
3666
3730
|
this.mediaProperties.setLocalVideoTrack(undefined);
|
|
3667
|
-
this.mediaProperties.
|
|
3731
|
+
this.mediaProperties.setLocalShareVideoTrack(undefined);
|
|
3732
|
+
this.mediaProperties.setLocalShareAudioTrack(undefined);
|
|
3668
3733
|
this.mediaProperties.mediaDirection.sendAudio = false;
|
|
3669
3734
|
this.mediaProperties.mediaDirection.sendVideo = false;
|
|
3670
3735
|
this.mediaProperties.mediaDirection.sendShare = false;
|
|
@@ -3673,7 +3738,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3673
3738
|
// (we have to do it for transcoded meetings anyway, so we might as well do for multistream too)
|
|
3674
3739
|
audioTrack === null || audioTrack === void 0 ? void 0 : audioTrack.setPublished(false);
|
|
3675
3740
|
videoTrack === null || videoTrack === void 0 ? void 0 : videoTrack.setPublished(false);
|
|
3676
|
-
|
|
3741
|
+
shareVideoTrack === null || shareVideoTrack === void 0 ? void 0 : shareVideoTrack.setPublished(false);
|
|
3742
|
+
shareAudioTrack === null || shareAudioTrack === void 0 ? void 0 : shareAudioTrack.setPublished(false);
|
|
3677
3743
|
}
|
|
3678
3744
|
|
|
3679
3745
|
/**
|
|
@@ -3783,6 +3849,19 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
3783
3849
|
this.correlationId = id;
|
|
3784
3850
|
}
|
|
3785
3851
|
|
|
3852
|
+
/**
|
|
3853
|
+
* Enqueue request for screenshare floor and set the status to pending
|
|
3854
|
+
* @returns {Promise}
|
|
3855
|
+
* @private
|
|
3856
|
+
* @memberof Meeting
|
|
3857
|
+
*/
|
|
3858
|
+
}, {
|
|
3859
|
+
key: "enqueueScreenShareFloorRequest",
|
|
3860
|
+
value: function enqueueScreenShareFloorRequest() {
|
|
3861
|
+
this.screenShareFloorState = ScreenShareFloorStatus.PENDING;
|
|
3862
|
+
return this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.SHARE_FLOOR_REQUEST);
|
|
3863
|
+
}
|
|
3864
|
+
|
|
3786
3865
|
/**
|
|
3787
3866
|
* Mute the audio for a meeting
|
|
3788
3867
|
* @returns {Promise} resolves the data from muting audio {mute, self} or rejects if there is no audio set
|
|
@@ -4154,16 +4233,16 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4154
4233
|
}, {
|
|
4155
4234
|
key: "receiveTranscription",
|
|
4156
4235
|
value: function () {
|
|
4157
|
-
var _receiveTranscription = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
4236
|
+
var _receiveTranscription = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {
|
|
4158
4237
|
var _this32 = this;
|
|
4159
4238
|
var datachannelUrl, _yield$this$request, webSocketUrl;
|
|
4160
|
-
return _regenerator.default.wrap(function
|
|
4161
|
-
while (1) switch (
|
|
4239
|
+
return _regenerator.default.wrap(function _callee10$(_context10) {
|
|
4240
|
+
while (1) switch (_context10.prev = _context10.next) {
|
|
4162
4241
|
case 0:
|
|
4163
4242
|
_loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n Attempting to generate a web socket url.");
|
|
4164
|
-
|
|
4243
|
+
_context10.prev = 1;
|
|
4165
4244
|
datachannelUrl = this.locusInfo.info.datachannelUrl; // @ts-ignore - fix type
|
|
4166
|
-
|
|
4245
|
+
_context10.next = 5;
|
|
4167
4246
|
return this.request({
|
|
4168
4247
|
method: _constants.HTTP_VERBS.POST,
|
|
4169
4248
|
uri: datachannelUrl,
|
|
@@ -4172,7 +4251,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4172
4251
|
}
|
|
4173
4252
|
});
|
|
4174
4253
|
case 5:
|
|
4175
|
-
_yield$this$request =
|
|
4254
|
+
_yield$this$request = _context10.sent;
|
|
4176
4255
|
webSocketUrl = _yield$this$request.body.webSocketUrl;
|
|
4177
4256
|
_loggerProxy.default.logger.info("Meeting:index#receiveTranscription -->\n Generated web socket url succesfully.");
|
|
4178
4257
|
this.transcription = new _transcription.default(webSocketUrl,
|
|
@@ -4190,22 +4269,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4190
4269
|
this.monitorTranscriptionSocketConnection();
|
|
4191
4270
|
// @ts-ignore - fix type
|
|
4192
4271
|
this.transcription.connect(this.webex.credentials.supertoken.access_token);
|
|
4193
|
-
|
|
4272
|
+
_context10.next = 19;
|
|
4194
4273
|
break;
|
|
4195
4274
|
case 15:
|
|
4196
|
-
|
|
4197
|
-
|
|
4198
|
-
_loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> ".concat(
|
|
4275
|
+
_context10.prev = 15;
|
|
4276
|
+
_context10.t0 = _context10["catch"](1);
|
|
4277
|
+
_loggerProxy.default.logger.error("Meeting:index#receiveTranscription --> ".concat(_context10.t0));
|
|
4199
4278
|
_metrics.default.sendBehavioralMetric(_constants2.default.RECEIVE_TRANSCRIPTION_FAILURE, {
|
|
4200
4279
|
correlation_id: this.correlationId,
|
|
4201
|
-
reason:
|
|
4202
|
-
stack:
|
|
4280
|
+
reason: _context10.t0.message,
|
|
4281
|
+
stack: _context10.t0.stack
|
|
4203
4282
|
});
|
|
4204
4283
|
case 19:
|
|
4205
4284
|
case "end":
|
|
4206
|
-
return
|
|
4285
|
+
return _context10.stop();
|
|
4207
4286
|
}
|
|
4208
|
-
},
|
|
4287
|
+
}, _callee10, this, [[1, 15]]);
|
|
4209
4288
|
}));
|
|
4210
4289
|
function receiveTranscription() {
|
|
4211
4290
|
return _receiveTranscription.apply(this, arguments);
|
|
@@ -4389,63 +4468,63 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4389
4468
|
});
|
|
4390
4469
|
return join;
|
|
4391
4470
|
}).then( /*#__PURE__*/function () {
|
|
4392
|
-
var
|
|
4393
|
-
return _regenerator.default.wrap(function
|
|
4394
|
-
while (1) switch (
|
|
4471
|
+
var _ref21 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11(join) {
|
|
4472
|
+
return _regenerator.default.wrap(function _callee11$(_context11) {
|
|
4473
|
+
while (1) switch (_context11.prev = _context11.next) {
|
|
4395
4474
|
case 0:
|
|
4396
4475
|
if (!_this33.config.enableAutomaticLLM) {
|
|
4397
|
-
|
|
4476
|
+
_context11.next = 3;
|
|
4398
4477
|
break;
|
|
4399
4478
|
}
|
|
4400
|
-
|
|
4479
|
+
_context11.next = 3;
|
|
4401
4480
|
return _this33.updateLLMConnection();
|
|
4402
4481
|
case 3:
|
|
4403
|
-
return
|
|
4482
|
+
return _context11.abrupt("return", join);
|
|
4404
4483
|
case 4:
|
|
4405
4484
|
case "end":
|
|
4406
|
-
return
|
|
4485
|
+
return _context11.stop();
|
|
4407
4486
|
}
|
|
4408
|
-
},
|
|
4487
|
+
}, _callee11);
|
|
4409
4488
|
}));
|
|
4410
|
-
return function (
|
|
4411
|
-
return
|
|
4489
|
+
return function (_x8) {
|
|
4490
|
+
return _ref21.apply(this, arguments);
|
|
4412
4491
|
};
|
|
4413
4492
|
}()).then( /*#__PURE__*/function () {
|
|
4414
|
-
var
|
|
4415
|
-
return _regenerator.default.wrap(function
|
|
4416
|
-
while (1) switch (
|
|
4493
|
+
var _ref22 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12(join) {
|
|
4494
|
+
return _regenerator.default.wrap(function _callee12$(_context12) {
|
|
4495
|
+
while (1) switch (_context12.prev = _context12.next) {
|
|
4417
4496
|
case 0:
|
|
4418
4497
|
if (!isBrowser) {
|
|
4419
|
-
|
|
4498
|
+
_context12.next = 8;
|
|
4420
4499
|
break;
|
|
4421
4500
|
}
|
|
4422
4501
|
if (!(_this33.config.receiveTranscription || options.receiveTranscription)) {
|
|
4423
|
-
|
|
4502
|
+
_context12.next = 6;
|
|
4424
4503
|
break;
|
|
4425
4504
|
}
|
|
4426
4505
|
if (!_this33.isTranscriptionSupported()) {
|
|
4427
|
-
|
|
4506
|
+
_context12.next = 6;
|
|
4428
4507
|
break;
|
|
4429
4508
|
}
|
|
4430
|
-
|
|
4509
|
+
_context12.next = 5;
|
|
4431
4510
|
return _this33.receiveTranscription();
|
|
4432
4511
|
case 5:
|
|
4433
4512
|
_loggerProxy.default.logger.info('Meeting:index#join --> enabled to recieve transcription!');
|
|
4434
4513
|
case 6:
|
|
4435
|
-
|
|
4514
|
+
_context12.next = 9;
|
|
4436
4515
|
break;
|
|
4437
4516
|
case 8:
|
|
4438
4517
|
_loggerProxy.default.logger.error('Meeting:index#join --> Receving transcription is not supported on this platform');
|
|
4439
4518
|
case 9:
|
|
4440
|
-
return
|
|
4519
|
+
return _context12.abrupt("return", join);
|
|
4441
4520
|
case 10:
|
|
4442
4521
|
case "end":
|
|
4443
|
-
return
|
|
4522
|
+
return _context12.stop();
|
|
4444
4523
|
}
|
|
4445
|
-
},
|
|
4524
|
+
}, _callee12);
|
|
4446
4525
|
}));
|
|
4447
|
-
return function (
|
|
4448
|
-
return
|
|
4526
|
+
return function (_x9) {
|
|
4527
|
+
return _ref22.apply(this, arguments);
|
|
4449
4528
|
};
|
|
4450
4529
|
}()).catch(function (error) {
|
|
4451
4530
|
var _this33$meetingInfo, _error$error;
|
|
@@ -4494,38 +4573,38 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4494
4573
|
}, {
|
|
4495
4574
|
key: "updateLLMConnection",
|
|
4496
4575
|
value: function () {
|
|
4497
|
-
var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
4576
|
+
var _updateLLMConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13() {
|
|
4498
4577
|
var _this34 = this;
|
|
4499
4578
|
var _this$locusInfo6, url, _this$locusInfo6$info, _this$locusInfo6$info2, datachannelUrl, isJoined;
|
|
4500
|
-
return _regenerator.default.wrap(function
|
|
4501
|
-
while (1) switch (
|
|
4579
|
+
return _regenerator.default.wrap(function _callee13$(_context13) {
|
|
4580
|
+
while (1) switch (_context13.prev = _context13.next) {
|
|
4502
4581
|
case 0:
|
|
4503
4582
|
// @ts-ignore - Fix type
|
|
4504
4583
|
_this$locusInfo6 = this.locusInfo, url = _this$locusInfo6.url, _this$locusInfo6$info = _this$locusInfo6.info, _this$locusInfo6$info2 = _this$locusInfo6$info === void 0 ? {} : _this$locusInfo6$info, datachannelUrl = _this$locusInfo6$info2.datachannelUrl;
|
|
4505
4584
|
isJoined = this.isJoined(); // @ts-ignore - Fix type
|
|
4506
4585
|
if (!this.webex.internal.llm.isConnected()) {
|
|
4507
|
-
|
|
4586
|
+
_context13.next = 8;
|
|
4508
4587
|
break;
|
|
4509
4588
|
}
|
|
4510
4589
|
if (!(url === this.webex.internal.llm.getLocusUrl() && isJoined)) {
|
|
4511
|
-
|
|
4590
|
+
_context13.next = 5;
|
|
4512
4591
|
break;
|
|
4513
4592
|
}
|
|
4514
|
-
return
|
|
4593
|
+
return _context13.abrupt("return", undefined);
|
|
4515
4594
|
case 5:
|
|
4516
|
-
|
|
4595
|
+
_context13.next = 7;
|
|
4517
4596
|
return this.webex.internal.llm.disconnectLLM();
|
|
4518
4597
|
case 7:
|
|
4519
4598
|
// @ts-ignore - Fix type
|
|
4520
4599
|
this.webex.internal.llm.off('event:relay.event', this.processRelayEvent);
|
|
4521
4600
|
case 8:
|
|
4522
4601
|
if (isJoined) {
|
|
4523
|
-
|
|
4602
|
+
_context13.next = 10;
|
|
4524
4603
|
break;
|
|
4525
4604
|
}
|
|
4526
|
-
return
|
|
4605
|
+
return _context13.abrupt("return", undefined);
|
|
4527
4606
|
case 10:
|
|
4528
|
-
return
|
|
4607
|
+
return _context13.abrupt("return", this.webex.internal.llm.registerAndConnect(url, datachannelUrl).then(function (registerAndConnectResult) {
|
|
4529
4608
|
// @ts-ignore - Fix type
|
|
4530
4609
|
_this34.webex.internal.llm.off('event:relay.event', _this34.processRelayEvent);
|
|
4531
4610
|
// @ts-ignore - Fix type
|
|
@@ -4535,9 +4614,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4535
4614
|
}));
|
|
4536
4615
|
case 11:
|
|
4537
4616
|
case "end":
|
|
4538
|
-
return
|
|
4617
|
+
return _context13.stop();
|
|
4539
4618
|
}
|
|
4540
|
-
},
|
|
4619
|
+
}, _callee13, this);
|
|
4541
4620
|
}));
|
|
4542
4621
|
function updateLLMConnection() {
|
|
4543
4622
|
return _updateLLMConnection.apply(this, arguments);
|
|
@@ -4708,17 +4787,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4708
4787
|
meetingId: this.id
|
|
4709
4788
|
}
|
|
4710
4789
|
});
|
|
4711
|
-
this.locusInfo.once(_constants.LOCUSINFO.EVENTS.SELF_OBSERVING, /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
4790
|
+
this.locusInfo.once(_constants.LOCUSINFO.EVENTS.SELF_OBSERVING, /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
|
|
4712
4791
|
var mediaSettings;
|
|
4713
|
-
return _regenerator.default.wrap(function
|
|
4714
|
-
while (1) switch (
|
|
4792
|
+
return _regenerator.default.wrap(function _callee14$(_context14) {
|
|
4793
|
+
while (1) switch (_context14.prev = _context14.next) {
|
|
4715
4794
|
case 0:
|
|
4716
|
-
|
|
4717
|
-
if (!_this37.
|
|
4718
|
-
|
|
4795
|
+
_context14.prev = 0;
|
|
4796
|
+
if (!(_this37.screenShareFloorState === ScreenShareFloorStatus.GRANTED)) {
|
|
4797
|
+
_context14.next = 4;
|
|
4719
4798
|
break;
|
|
4720
4799
|
}
|
|
4721
|
-
|
|
4800
|
+
_context14.next = 4;
|
|
4722
4801
|
return _this37.releaseScreenShareFloor();
|
|
4723
4802
|
case 4:
|
|
4724
4803
|
mediaSettings = {
|
|
@@ -4738,28 +4817,28 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4738
4817
|
// when a move to is intiated by the client , Locus delets the existing media node from the server as soon the DX answers the meeting
|
|
4739
4818
|
// once the DX answers we establish connection back the media server with only receiveShare enabled
|
|
4740
4819
|
// @ts-ignore - reconnectMedia does not accept any argument
|
|
4741
|
-
|
|
4820
|
+
_context14.next = 10;
|
|
4742
4821
|
return _this37.reconnectionManager.reconnectMedia(mediaSettings).then(function () {
|
|
4743
4822
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_SUCCESS);
|
|
4744
4823
|
});
|
|
4745
4824
|
case 10:
|
|
4746
|
-
|
|
4825
|
+
_context14.next = 16;
|
|
4747
4826
|
break;
|
|
4748
4827
|
case 12:
|
|
4749
|
-
|
|
4750
|
-
|
|
4751
|
-
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId',
|
|
4828
|
+
_context14.prev = 12;
|
|
4829
|
+
_context14.t0 = _context14["catch"](0);
|
|
4830
|
+
_loggerProxy.default.logger.error('Meeting:index#moveTo --> Failed to moveTo resourceId', _context14.t0);
|
|
4752
4831
|
_metrics.default.sendBehavioralMetric(_constants2.default.MOVE_TO_FAILURE, {
|
|
4753
4832
|
correlation_id: _this37.correlationId,
|
|
4754
4833
|
locus_id: _this37.locusUrl.split('/').pop(),
|
|
4755
|
-
reason:
|
|
4756
|
-
stack:
|
|
4834
|
+
reason: _context14.t0.message,
|
|
4835
|
+
stack: _context14.t0.stack
|
|
4757
4836
|
});
|
|
4758
4837
|
case 16:
|
|
4759
4838
|
case "end":
|
|
4760
|
-
return
|
|
4839
|
+
return _context14.stop();
|
|
4761
4840
|
}
|
|
4762
|
-
},
|
|
4841
|
+
}, _callee14, null, [[0, 12]]);
|
|
4763
4842
|
})));
|
|
4764
4843
|
_loggerProxy.default.logger.info('Meeting:index#moveTo --> Initated moved to using resourceId', resourceId);
|
|
4765
4844
|
return _util.default.joinMeetingOptions(this, {
|
|
@@ -4848,10 +4927,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4848
4927
|
}, {
|
|
4849
4928
|
key: "createMediaConnection",
|
|
4850
4929
|
value: function () {
|
|
4851
|
-
var _createMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
4930
|
+
var _createMediaConnection = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15(turnServerInfo, bundlePolicy) {
|
|
4852
4931
|
var mc;
|
|
4853
|
-
return _regenerator.default.wrap(function
|
|
4854
|
-
while (1) switch (
|
|
4932
|
+
return _regenerator.default.wrap(function _callee15$(_context15) {
|
|
4933
|
+
while (1) switch (_context15.prev = _context15.next) {
|
|
4855
4934
|
case 0:
|
|
4856
4935
|
// create the actual media connection
|
|
4857
4936
|
mc = _media.default.createMediaConnection(this.isMultistream, this.getMediaConnectionDebugId(), {
|
|
@@ -4869,34 +4948,41 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4869
4948
|
|
|
4870
4949
|
// publish the tracks
|
|
4871
4950
|
if (!this.mediaProperties.audioTrack) {
|
|
4872
|
-
|
|
4951
|
+
_context15.next = 6;
|
|
4873
4952
|
break;
|
|
4874
4953
|
}
|
|
4875
|
-
|
|
4954
|
+
_context15.next = 6;
|
|
4876
4955
|
return this.publishTrack(this.mediaProperties.audioTrack);
|
|
4877
4956
|
case 6:
|
|
4878
4957
|
if (!this.mediaProperties.videoTrack) {
|
|
4879
|
-
|
|
4958
|
+
_context15.next = 9;
|
|
4880
4959
|
break;
|
|
4881
4960
|
}
|
|
4882
|
-
|
|
4961
|
+
_context15.next = 9;
|
|
4883
4962
|
return this.publishTrack(this.mediaProperties.videoTrack);
|
|
4884
4963
|
case 9:
|
|
4885
|
-
if (!this.mediaProperties.
|
|
4886
|
-
|
|
4964
|
+
if (!this.mediaProperties.shareVideoTrack) {
|
|
4965
|
+
_context15.next = 12;
|
|
4887
4966
|
break;
|
|
4888
4967
|
}
|
|
4889
|
-
|
|
4890
|
-
return this.publishTrack(this.mediaProperties.
|
|
4968
|
+
_context15.next = 12;
|
|
4969
|
+
return this.publishTrack(this.mediaProperties.shareVideoTrack);
|
|
4891
4970
|
case 12:
|
|
4892
|
-
|
|
4893
|
-
|
|
4971
|
+
if (!(this.isMultistream && this.mediaProperties.shareAudioTrack)) {
|
|
4972
|
+
_context15.next = 15;
|
|
4973
|
+
break;
|
|
4974
|
+
}
|
|
4975
|
+
_context15.next = 15;
|
|
4976
|
+
return this.publishTrack(this.mediaProperties.shareAudioTrack);
|
|
4977
|
+
case 15:
|
|
4978
|
+
return _context15.abrupt("return", mc);
|
|
4979
|
+
case 16:
|
|
4894
4980
|
case "end":
|
|
4895
|
-
return
|
|
4981
|
+
return _context15.stop();
|
|
4896
4982
|
}
|
|
4897
|
-
},
|
|
4983
|
+
}, _callee15, this);
|
|
4898
4984
|
}));
|
|
4899
|
-
function createMediaConnection(
|
|
4985
|
+
function createMediaConnection(_x10, _x11) {
|
|
4900
4986
|
return _createMediaConnection.apply(this, arguments);
|
|
4901
4987
|
}
|
|
4902
4988
|
return createMediaConnection;
|
|
@@ -4934,6 +5020,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
4934
5020
|
key: "addMedia",
|
|
4935
5021
|
value: function addMedia() {
|
|
4936
5022
|
var _localTracks$screenSh,
|
|
5023
|
+
_localTracks$screenSh2,
|
|
4937
5024
|
_this40 = this;
|
|
4938
5025
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
4939
5026
|
var LOG_HEADER = 'Meeting:index#addMedia -->';
|
|
@@ -5025,44 +5112,47 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5025
5112
|
promises.push(this.setLocalVideoTrack(localTracks.camera));
|
|
5026
5113
|
}
|
|
5027
5114
|
if (localTracks !== null && localTracks !== void 0 && (_localTracks$screenSh = localTracks.screenShare) !== null && _localTracks$screenSh !== void 0 && _localTracks$screenSh.video) {
|
|
5028
|
-
promises.push(this.
|
|
5115
|
+
promises.push(this.setLocalShareVideoTrack(localTracks.screenShare.video));
|
|
5116
|
+
}
|
|
5117
|
+
if (this.isMultistream && localTracks !== null && localTracks !== void 0 && (_localTracks$screenSh2 = localTracks.screenShare) !== null && _localTracks$screenSh2 !== void 0 && _localTracks$screenSh2.audio) {
|
|
5118
|
+
promises.push(this.setLocalShareAudioTrack(localTracks.screenShare.audio));
|
|
5029
5119
|
}
|
|
5030
5120
|
return _promise.default.all(promises).then(function () {
|
|
5031
5121
|
return _this40.roap.doTurnDiscovery(_this40, false);
|
|
5032
5122
|
}).then( /*#__PURE__*/function () {
|
|
5033
|
-
var
|
|
5123
|
+
var _ref24 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16(turnDiscoveryObject) {
|
|
5034
5124
|
var turnServerInfo, mc;
|
|
5035
|
-
return _regenerator.default.wrap(function
|
|
5036
|
-
while (1) switch (
|
|
5125
|
+
return _regenerator.default.wrap(function _callee16$(_context16) {
|
|
5126
|
+
while (1) switch (_context16.prev = _context16.next) {
|
|
5037
5127
|
case 0:
|
|
5038
5128
|
turnDiscoverySkippedReason = turnDiscoveryObject.turnDiscoverySkippedReason;
|
|
5039
5129
|
turnServerUsed = !turnDiscoverySkippedReason;
|
|
5040
5130
|
turnServerInfo = turnDiscoveryObject.turnServerInfo;
|
|
5041
|
-
|
|
5131
|
+
_context16.next = 5;
|
|
5042
5132
|
return _this40.createMediaConnection(turnServerInfo, bundlePolicy);
|
|
5043
5133
|
case 5:
|
|
5044
|
-
mc =
|
|
5134
|
+
mc = _context16.sent;
|
|
5045
5135
|
if (!_this40.isMultistream) {
|
|
5046
|
-
|
|
5136
|
+
_context16.next = 13;
|
|
5047
5137
|
break;
|
|
5048
5138
|
}
|
|
5049
5139
|
_this40.remoteMediaManager = new _remoteMediaManager.RemoteMediaManager(_this40.receiveSlotManager, _this40.mediaRequestManagers, remoteMediaManagerConfig);
|
|
5050
5140
|
_this40.forwardEvent(_this40.remoteMediaManager, _remoteMediaManager.Event.AudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_AUDIO_CREATED);
|
|
5051
5141
|
_this40.forwardEvent(_this40.remoteMediaManager, _remoteMediaManager.Event.ScreenShareAudioCreated, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_SCREEN_SHARE_AUDIO_CREATED);
|
|
5052
5142
|
_this40.forwardEvent(_this40.remoteMediaManager, _remoteMediaManager.Event.VideoLayoutChanged, _constants.EVENT_TRIGGERS.REMOTE_MEDIA_VIDEO_LAYOUT_CHANGED);
|
|
5053
|
-
|
|
5143
|
+
_context16.next = 13;
|
|
5054
5144
|
return _this40.remoteMediaManager.start();
|
|
5055
5145
|
case 13:
|
|
5056
|
-
|
|
5146
|
+
_context16.next = 15;
|
|
5057
5147
|
return mc.initiateOffer();
|
|
5058
5148
|
case 15:
|
|
5059
5149
|
case "end":
|
|
5060
|
-
return
|
|
5150
|
+
return _context16.stop();
|
|
5061
5151
|
}
|
|
5062
|
-
},
|
|
5152
|
+
}, _callee16);
|
|
5063
5153
|
}));
|
|
5064
|
-
return function (
|
|
5065
|
-
return
|
|
5154
|
+
return function (_x12) {
|
|
5155
|
+
return _ref24.apply(this, arguments);
|
|
5066
5156
|
};
|
|
5067
5157
|
}()).then(function () {
|
|
5068
5158
|
_this40.setMercuryListener();
|
|
@@ -5130,10 +5220,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5130
5220
|
throw new Error("Timed out waiting for media connection to be connected, correlationId=".concat(_this40.correlationId));
|
|
5131
5221
|
});
|
|
5132
5222
|
}).then(function () {
|
|
5133
|
-
|
|
5134
|
-
|
|
5135
|
-
_this40.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.SHARE_FLOOR_REQUEST);
|
|
5223
|
+
if (_this40.mediaProperties.hasLocalShareTrack()) {
|
|
5224
|
+
return _this40.enqueueScreenShareFloorRequest();
|
|
5136
5225
|
}
|
|
5226
|
+
return _promise.default.resolve();
|
|
5137
5227
|
}).then(function () {
|
|
5138
5228
|
return _this40.mediaProperties.getCurrentConnectionType();
|
|
5139
5229
|
}).then(function (connectionType) {
|
|
@@ -5258,32 +5348,32 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5258
5348
|
* @memberof Meeting
|
|
5259
5349
|
*/
|
|
5260
5350
|
function () {
|
|
5261
|
-
var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
5351
|
+
var _updateMedia = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17(options) {
|
|
5262
5352
|
var audioEnabled, videoEnabled, receiveShare;
|
|
5263
|
-
return _regenerator.default.wrap(function
|
|
5264
|
-
while (1) switch (
|
|
5353
|
+
return _regenerator.default.wrap(function _callee17$(_context17) {
|
|
5354
|
+
while (1) switch (_context17.prev = _context17.next) {
|
|
5265
5355
|
case 0:
|
|
5266
5356
|
this.checkMediaConnection();
|
|
5267
5357
|
audioEnabled = options.audioEnabled, videoEnabled = options.videoEnabled, receiveShare = options.receiveShare;
|
|
5268
5358
|
_loggerProxy.default.logger.log("Meeting:index#updateMedia --> called with options=".concat((0, _stringify.default)(options)));
|
|
5269
5359
|
if (this.canUpdateMedia()) {
|
|
5270
|
-
|
|
5360
|
+
_context17.next = 5;
|
|
5271
5361
|
break;
|
|
5272
5362
|
}
|
|
5273
|
-
return
|
|
5363
|
+
return _context17.abrupt("return", this.enqueueMediaUpdate(MEDIA_UPDATE_TYPE.UPDATE_MEDIA, options));
|
|
5274
5364
|
case 5:
|
|
5275
5365
|
if (!this.isMultistream) {
|
|
5276
|
-
|
|
5366
|
+
_context17.next = 10;
|
|
5277
5367
|
break;
|
|
5278
5368
|
}
|
|
5279
5369
|
if (!(videoEnabled !== undefined)) {
|
|
5280
|
-
|
|
5370
|
+
_context17.next = 8;
|
|
5281
5371
|
break;
|
|
5282
5372
|
}
|
|
5283
5373
|
throw new Error('enabling/disabling video in a meeting is not supported for multistream, it can only be done upfront when calling addMedia()');
|
|
5284
5374
|
case 8:
|
|
5285
5375
|
if (!(receiveShare !== undefined)) {
|
|
5286
|
-
|
|
5376
|
+
_context17.next = 10;
|
|
5287
5377
|
break;
|
|
5288
5378
|
}
|
|
5289
5379
|
throw new Error('toggling receiveShare in a multistream meeting is not supported, to control receiving screen share call meeting.remoteMediaManager.setLayout() with appropriate layout');
|
|
@@ -5302,30 +5392,30 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5302
5392
|
this.mediaProperties.mediaDirection.receiveShare = receiveShare;
|
|
5303
5393
|
}
|
|
5304
5394
|
if (!this.isMultistream) {
|
|
5305
|
-
|
|
5395
|
+
_context17.next = 19;
|
|
5306
5396
|
break;
|
|
5307
5397
|
}
|
|
5308
5398
|
if (!(audioEnabled !== undefined)) {
|
|
5309
|
-
|
|
5399
|
+
_context17.next = 17;
|
|
5310
5400
|
break;
|
|
5311
5401
|
}
|
|
5312
|
-
|
|
5402
|
+
_context17.next = 17;
|
|
5313
5403
|
return this.mediaProperties.webrtcMediaConnection.enableMultistreamAudio(audioEnabled);
|
|
5314
5404
|
case 17:
|
|
5315
|
-
|
|
5405
|
+
_context17.next = 21;
|
|
5316
5406
|
break;
|
|
5317
5407
|
case 19:
|
|
5318
|
-
|
|
5408
|
+
_context17.next = 21;
|
|
5319
5409
|
return this.updateTranscodedMediaConnection();
|
|
5320
5410
|
case 21:
|
|
5321
|
-
return
|
|
5411
|
+
return _context17.abrupt("return", undefined);
|
|
5322
5412
|
case 22:
|
|
5323
5413
|
case "end":
|
|
5324
|
-
return
|
|
5414
|
+
return _context17.stop();
|
|
5325
5415
|
}
|
|
5326
|
-
},
|
|
5416
|
+
}, _callee17, this);
|
|
5327
5417
|
}));
|
|
5328
|
-
function updateMedia(
|
|
5418
|
+
function updateMedia(_x13) {
|
|
5329
5419
|
return _updateMedia.apply(this, arguments);
|
|
5330
5420
|
}
|
|
5331
5421
|
return updateMedia;
|
|
@@ -5506,7 +5596,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5506
5596
|
body.resourceToken = resourceToken;
|
|
5507
5597
|
}
|
|
5508
5598
|
return this.meetingRequest.changeMeetingFloor(body).then(function () {
|
|
5509
|
-
_this45.
|
|
5599
|
+
_this45.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
5510
5600
|
return _promise.default.resolve();
|
|
5511
5601
|
}).catch(function (error) {
|
|
5512
5602
|
_loggerProxy.default.logger.error('Meeting:index#startWhiteboardShare --> Error ', error);
|
|
@@ -5584,11 +5674,13 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5584
5674
|
key: "requestScreenShareFloor",
|
|
5585
5675
|
value: function requestScreenShareFloor() {
|
|
5586
5676
|
var _this47 = this;
|
|
5587
|
-
if (!this.mediaProperties.
|
|
5588
|
-
_loggerProxy.default.logger.log("Meeting:index#requestScreenShareFloor --> NOT requesting floor, because we don't have the share track anymore (
|
|
5677
|
+
if (!this.mediaProperties.hasLocalShareTrack() || !this.mediaProperties.mediaDirection.sendShare) {
|
|
5678
|
+
_loggerProxy.default.logger.log("Meeting:index#requestScreenShareFloor --> NOT requesting floor, because we don't have the share track anymore (shareVideoTrack=".concat(this.mediaProperties.shareVideoTrack ? 'yes' : 'no', ", shareAudioTrack=").concat(this.mediaProperties.shareAudioTrack ? 'yes' : 'no', ", sendShare=").concat(this.mediaProperties.mediaDirection.sendShare, ")"));
|
|
5679
|
+
this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
5589
5680
|
return _promise.default.resolve({});
|
|
5590
5681
|
}
|
|
5591
5682
|
if (this.state === _constants.MEETING_STATE.STATES.JOINED) {
|
|
5683
|
+
this.screenShareFloorState = ScreenShareFloorStatus.PENDING;
|
|
5592
5684
|
var content = this.locusInfo.mediaShares.find(function (element) {
|
|
5593
5685
|
return element.name === _constants.CONTENT;
|
|
5594
5686
|
});
|
|
@@ -5611,7 +5703,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5611
5703
|
resourceUrl: this.resourceUrl,
|
|
5612
5704
|
annotationInfo: this.annotationInfo
|
|
5613
5705
|
}).then(function () {
|
|
5614
|
-
_this47.
|
|
5706
|
+
_this47.screenShareFloorState = ScreenShareFloorStatus.GRANTED;
|
|
5615
5707
|
return _promise.default.resolve();
|
|
5616
5708
|
}).catch(function (error) {
|
|
5617
5709
|
_loggerProxy.default.logger.error('Meeting:index#share --> Error ', error);
|
|
@@ -5621,10 +5713,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5621
5713
|
reason: error.message,
|
|
5622
5714
|
stack: error.stack
|
|
5623
5715
|
});
|
|
5716
|
+
_this47.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
5624
5717
|
return _promise.default.reject(error);
|
|
5625
5718
|
});
|
|
5626
5719
|
}
|
|
5627
|
-
|
|
5720
|
+
if (!content) {
|
|
5721
|
+
this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
5722
|
+
return _promise.default.reject(new _parameter.default('Cannot share without content.'));
|
|
5723
|
+
}
|
|
5724
|
+
return _promise.default.resolve();
|
|
5628
5725
|
}
|
|
5629
5726
|
this.floorGrantPending = true;
|
|
5630
5727
|
return _promise.default.resolve({});
|
|
@@ -5660,6 +5757,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5660
5757
|
var content = this.locusInfo.mediaShares.find(function (element) {
|
|
5661
5758
|
return element.name === _constants.CONTENT;
|
|
5662
5759
|
});
|
|
5760
|
+
if (this.screenShareFloorState === ScreenShareFloorStatus.RELEASED) {
|
|
5761
|
+
return _promise.default.resolve();
|
|
5762
|
+
}
|
|
5763
|
+
this.screenShareFloorState = ScreenShareFloorStatus.RELEASED;
|
|
5663
5764
|
if (content) {
|
|
5664
5765
|
var _content$floor;
|
|
5665
5766
|
// @ts-ignore
|
|
@@ -5674,7 +5775,6 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5674
5775
|
});
|
|
5675
5776
|
if (((_content$floor = content.floor) === null || _content$floor === void 0 ? void 0 : _content$floor.beneficiary.id) !== this.selfId) {
|
|
5676
5777
|
// remote participant started sharing and caused our sharing to stop, we don't want to send any floor action request in that case
|
|
5677
|
-
this.isSharing = false;
|
|
5678
5778
|
return _promise.default.resolve();
|
|
5679
5779
|
}
|
|
5680
5780
|
return this.meetingRequest.changeMeetingFloor({
|
|
@@ -5692,13 +5792,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5692
5792
|
stack: error.stack
|
|
5693
5793
|
});
|
|
5694
5794
|
return _promise.default.reject(error);
|
|
5695
|
-
}).finally(function () {
|
|
5696
|
-
_this49.isSharing = false;
|
|
5697
5795
|
});
|
|
5698
5796
|
}
|
|
5699
5797
|
|
|
5700
5798
|
// according to Locus there is no content, so we don't need to release the floor (it's probably already been released)
|
|
5701
|
-
this.isSharing = false;
|
|
5702
5799
|
return _promise.default.resolve();
|
|
5703
5800
|
}
|
|
5704
5801
|
|
|
@@ -5970,10 +6067,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
5970
6067
|
}
|
|
5971
6068
|
|
|
5972
6069
|
/**
|
|
5973
|
-
* Functionality for when a share is ended.
|
|
6070
|
+
* Functionality for when a share audio is ended.
|
|
5974
6071
|
* @private
|
|
5975
6072
|
* @memberof Meeting
|
|
5976
|
-
* @param {MediaStream} localShare
|
|
5977
6073
|
* @returns {undefined}
|
|
5978
6074
|
*/
|
|
5979
6075
|
}, {
|
|
@@ -6176,39 +6272,39 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6176
6272
|
}, {
|
|
6177
6273
|
key: "enableMusicMode",
|
|
6178
6274
|
value: function () {
|
|
6179
|
-
var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
6180
|
-
return _regenerator.default.wrap(function
|
|
6181
|
-
while (1) switch (
|
|
6275
|
+
var _enableMusicMode = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18(shouldEnableMusicMode) {
|
|
6276
|
+
return _regenerator.default.wrap(function _callee18$(_context18) {
|
|
6277
|
+
while (1) switch (_context18.prev = _context18.next) {
|
|
6182
6278
|
case 0:
|
|
6183
6279
|
this.checkMediaConnection();
|
|
6184
6280
|
if (this.isMultistream) {
|
|
6185
|
-
|
|
6281
|
+
_context18.next = 3;
|
|
6186
6282
|
break;
|
|
6187
6283
|
}
|
|
6188
6284
|
throw new Error('enableMusicMode() only supported with multistream');
|
|
6189
6285
|
case 3:
|
|
6190
6286
|
if (!shouldEnableMusicMode) {
|
|
6191
|
-
|
|
6287
|
+
_context18.next = 8;
|
|
6192
6288
|
break;
|
|
6193
6289
|
}
|
|
6194
|
-
|
|
6290
|
+
_context18.next = 6;
|
|
6195
6291
|
return this.mediaProperties.webrtcMediaConnection.setCodecParameters(_internalMediaCore.MediaType.AudioMain, {
|
|
6196
6292
|
maxaveragebitrate: '64000',
|
|
6197
6293
|
maxplaybackrate: '48000'
|
|
6198
6294
|
});
|
|
6199
6295
|
case 6:
|
|
6200
|
-
|
|
6296
|
+
_context18.next = 10;
|
|
6201
6297
|
break;
|
|
6202
6298
|
case 8:
|
|
6203
|
-
|
|
6299
|
+
_context18.next = 10;
|
|
6204
6300
|
return this.mediaProperties.webrtcMediaConnection.deleteCodecParameters(_internalMediaCore.MediaType.AudioMain, ['maxaveragebitrate', 'maxplaybackrate']);
|
|
6205
6301
|
case 10:
|
|
6206
6302
|
case "end":
|
|
6207
|
-
return
|
|
6303
|
+
return _context18.stop();
|
|
6208
6304
|
}
|
|
6209
|
-
},
|
|
6305
|
+
}, _callee18, this);
|
|
6210
6306
|
}));
|
|
6211
|
-
function enableMusicMode(
|
|
6307
|
+
function enableMusicMode(_x14) {
|
|
6212
6308
|
return _enableMusicMode.apply(this, arguments);
|
|
6213
6309
|
}
|
|
6214
6310
|
return enableMusicMode;
|
|
@@ -6233,7 +6329,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6233
6329
|
localTracks: {
|
|
6234
6330
|
audio: ((_this$mediaProperties6 = this.mediaProperties.audioTrack) === null || _this$mediaProperties6 === void 0 ? void 0 : _this$mediaProperties6.underlyingTrack) || null,
|
|
6235
6331
|
video: ((_this$mediaProperties7 = this.mediaProperties.videoTrack) === null || _this$mediaProperties7 === void 0 ? void 0 : _this$mediaProperties7.underlyingTrack) || null,
|
|
6236
|
-
screenShareVideo: ((_this$mediaProperties8 = this.mediaProperties.
|
|
6332
|
+
screenShareVideo: ((_this$mediaProperties8 = this.mediaProperties.shareVideoTrack) === null || _this$mediaProperties8 === void 0 ? void 0 : _this$mediaProperties8.underlyingTrack) || null
|
|
6237
6333
|
},
|
|
6238
6334
|
direction: {
|
|
6239
6335
|
audio: _media.default.getDirection(true, this.mediaProperties.mediaDirection.receiveAudio, this.mediaProperties.mediaDirection.sendAudio),
|
|
@@ -6264,38 +6360,38 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6264
6360
|
}, {
|
|
6265
6361
|
key: "publishTrack",
|
|
6266
6362
|
value: function () {
|
|
6267
|
-
var _publishTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
6268
|
-
return _regenerator.default.wrap(function
|
|
6269
|
-
while (1) switch (
|
|
6363
|
+
var _publishTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19(track) {
|
|
6364
|
+
return _regenerator.default.wrap(function _callee19$(_context19) {
|
|
6365
|
+
while (1) switch (_context19.prev = _context19.next) {
|
|
6270
6366
|
case 0:
|
|
6271
6367
|
if (track) {
|
|
6272
|
-
|
|
6368
|
+
_context19.next = 2;
|
|
6273
6369
|
break;
|
|
6274
6370
|
}
|
|
6275
|
-
return
|
|
6371
|
+
return _context19.abrupt("return");
|
|
6276
6372
|
case 2:
|
|
6277
6373
|
if (!this.mediaProperties.webrtcMediaConnection) {
|
|
6278
|
-
|
|
6374
|
+
_context19.next = 9;
|
|
6279
6375
|
break;
|
|
6280
6376
|
}
|
|
6281
6377
|
if (!this.isMultistream) {
|
|
6282
|
-
|
|
6378
|
+
_context19.next = 8;
|
|
6283
6379
|
break;
|
|
6284
6380
|
}
|
|
6285
|
-
|
|
6381
|
+
_context19.next = 6;
|
|
6286
6382
|
return this.mediaProperties.webrtcMediaConnection.publishTrack(track);
|
|
6287
6383
|
case 6:
|
|
6288
|
-
|
|
6384
|
+
_context19.next = 9;
|
|
6289
6385
|
break;
|
|
6290
6386
|
case 8:
|
|
6291
6387
|
track.setPublished(true); // for multistream, this call is done by WCME
|
|
6292
6388
|
case 9:
|
|
6293
6389
|
case "end":
|
|
6294
|
-
return
|
|
6390
|
+
return _context19.stop();
|
|
6295
6391
|
}
|
|
6296
|
-
},
|
|
6392
|
+
}, _callee19, this);
|
|
6297
6393
|
}));
|
|
6298
|
-
function publishTrack(
|
|
6394
|
+
function publishTrack(_x15) {
|
|
6299
6395
|
return _publishTrack.apply(this, arguments);
|
|
6300
6396
|
}
|
|
6301
6397
|
return publishTrack;
|
|
@@ -6309,34 +6405,34 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6309
6405
|
}, {
|
|
6310
6406
|
key: "unpublishTrack",
|
|
6311
6407
|
value: function () {
|
|
6312
|
-
var _unpublishTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
6313
|
-
return _regenerator.default.wrap(function
|
|
6314
|
-
while (1) switch (
|
|
6408
|
+
var _unpublishTrack = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20(track) {
|
|
6409
|
+
return _regenerator.default.wrap(function _callee20$(_context20) {
|
|
6410
|
+
while (1) switch (_context20.prev = _context20.next) {
|
|
6315
6411
|
case 0:
|
|
6316
6412
|
if (track) {
|
|
6317
|
-
|
|
6413
|
+
_context20.next = 2;
|
|
6318
6414
|
break;
|
|
6319
6415
|
}
|
|
6320
|
-
return
|
|
6416
|
+
return _context20.abrupt("return");
|
|
6321
6417
|
case 2:
|
|
6322
6418
|
if (!(this.isMultistream && this.mediaProperties.webrtcMediaConnection)) {
|
|
6323
|
-
|
|
6419
|
+
_context20.next = 7;
|
|
6324
6420
|
break;
|
|
6325
6421
|
}
|
|
6326
|
-
|
|
6422
|
+
_context20.next = 5;
|
|
6327
6423
|
return this.mediaProperties.webrtcMediaConnection.unpublishTrack(track);
|
|
6328
6424
|
case 5:
|
|
6329
|
-
|
|
6425
|
+
_context20.next = 8;
|
|
6330
6426
|
break;
|
|
6331
6427
|
case 7:
|
|
6332
6428
|
track.setPublished(false); // for multistream, this call is done by WCME
|
|
6333
6429
|
case 8:
|
|
6334
6430
|
case "end":
|
|
6335
|
-
return
|
|
6431
|
+
return _context20.stop();
|
|
6336
6432
|
}
|
|
6337
|
-
},
|
|
6433
|
+
}, _callee20, this);
|
|
6338
6434
|
}));
|
|
6339
|
-
function unpublishTrack(
|
|
6435
|
+
function unpublishTrack(_x16) {
|
|
6340
6436
|
return _unpublishTrack.apply(this, arguments);
|
|
6341
6437
|
}
|
|
6342
6438
|
return unpublishTrack;
|
|
@@ -6350,64 +6446,73 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6350
6446
|
}, {
|
|
6351
6447
|
key: "publishTracks",
|
|
6352
6448
|
value: function () {
|
|
6353
|
-
var _publishTracks = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
6354
|
-
var _tracks$screenShare, _tracks$screenShare2, _tracks$screenShare3;
|
|
6449
|
+
var _publishTracks = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21(tracks) {
|
|
6450
|
+
var _tracks$screenShare, _tracks$screenShare2, _tracks$screenShare3, _tracks$screenShare5;
|
|
6355
6451
|
var floorRequestNeeded, _tracks$screenShare4;
|
|
6356
|
-
return _regenerator.default.wrap(function
|
|
6357
|
-
while (1) switch (
|
|
6452
|
+
return _regenerator.default.wrap(function _callee21$(_context21) {
|
|
6453
|
+
while (1) switch (_context21.prev = _context21.next) {
|
|
6358
6454
|
case 0:
|
|
6359
6455
|
this.checkMediaConnection();
|
|
6360
6456
|
this.annotationInfo = tracks.annotationInfo;
|
|
6361
6457
|
if (!(!tracks.microphone && !tracks.camera && !((_tracks$screenShare = tracks.screenShare) !== null && _tracks$screenShare !== void 0 && _tracks$screenShare.audio) && !((_tracks$screenShare2 = tracks.screenShare) !== null && _tracks$screenShare2 !== void 0 && _tracks$screenShare2.video))) {
|
|
6362
|
-
|
|
6458
|
+
_context21.next = 4;
|
|
6363
6459
|
break;
|
|
6364
6460
|
}
|
|
6365
|
-
return
|
|
6461
|
+
return _context21.abrupt("return");
|
|
6366
6462
|
case 4:
|
|
6367
6463
|
floorRequestNeeded = false;
|
|
6368
6464
|
if (!((_tracks$screenShare3 = tracks.screenShare) !== null && _tracks$screenShare3 !== void 0 && _tracks$screenShare3.video)) {
|
|
6369
|
-
|
|
6465
|
+
_context21.next = 9;
|
|
6370
6466
|
break;
|
|
6371
6467
|
}
|
|
6372
|
-
|
|
6373
|
-
return this.
|
|
6468
|
+
_context21.next = 8;
|
|
6469
|
+
return this.setLocalShareVideoTrack((_tracks$screenShare4 = tracks.screenShare) === null || _tracks$screenShare4 === void 0 ? void 0 : _tracks$screenShare4.video);
|
|
6374
6470
|
case 8:
|
|
6375
|
-
floorRequestNeeded =
|
|
6471
|
+
floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
|
|
6376
6472
|
case 9:
|
|
6473
|
+
if (!(this.isMultistream && (_tracks$screenShare5 = tracks.screenShare) !== null && _tracks$screenShare5 !== void 0 && _tracks$screenShare5.audio)) {
|
|
6474
|
+
_context21.next = 13;
|
|
6475
|
+
break;
|
|
6476
|
+
}
|
|
6477
|
+
_context21.next = 12;
|
|
6478
|
+
return this.setLocalShareAudioTrack(tracks.screenShare.audio);
|
|
6479
|
+
case 12:
|
|
6480
|
+
floorRequestNeeded = this.screenShareFloorState === ScreenShareFloorStatus.RELEASED;
|
|
6481
|
+
case 13:
|
|
6377
6482
|
if (!tracks.microphone) {
|
|
6378
|
-
|
|
6483
|
+
_context21.next = 16;
|
|
6379
6484
|
break;
|
|
6380
6485
|
}
|
|
6381
|
-
|
|
6486
|
+
_context21.next = 16;
|
|
6382
6487
|
return this.setLocalAudioTrack(tracks.microphone);
|
|
6383
|
-
case
|
|
6488
|
+
case 16:
|
|
6384
6489
|
if (!tracks.camera) {
|
|
6385
|
-
|
|
6490
|
+
_context21.next = 19;
|
|
6386
6491
|
break;
|
|
6387
6492
|
}
|
|
6388
|
-
|
|
6493
|
+
_context21.next = 19;
|
|
6389
6494
|
return this.setLocalVideoTrack(tracks.camera);
|
|
6390
|
-
case
|
|
6495
|
+
case 19:
|
|
6391
6496
|
if (this.isMultistream) {
|
|
6392
|
-
|
|
6497
|
+
_context21.next = 22;
|
|
6393
6498
|
break;
|
|
6394
6499
|
}
|
|
6395
|
-
|
|
6500
|
+
_context21.next = 22;
|
|
6396
6501
|
return this.updateTranscodedMediaConnection();
|
|
6397
|
-
case
|
|
6502
|
+
case 22:
|
|
6398
6503
|
if (!floorRequestNeeded) {
|
|
6399
|
-
|
|
6504
|
+
_context21.next = 25;
|
|
6400
6505
|
break;
|
|
6401
6506
|
}
|
|
6402
|
-
|
|
6403
|
-
return this.
|
|
6404
|
-
case
|
|
6507
|
+
_context21.next = 25;
|
|
6508
|
+
return this.enqueueScreenShareFloorRequest();
|
|
6509
|
+
case 25:
|
|
6405
6510
|
case "end":
|
|
6406
|
-
return
|
|
6511
|
+
return _context21.stop();
|
|
6407
6512
|
}
|
|
6408
|
-
},
|
|
6513
|
+
}, _callee21, this);
|
|
6409
6514
|
}));
|
|
6410
|
-
function publishTracks(
|
|
6515
|
+
function publishTracks(_x17) {
|
|
6411
6516
|
return _publishTracks.apply(this, arguments);
|
|
6412
6517
|
}
|
|
6413
6518
|
return publishTracks;
|
|
@@ -6421,10 +6526,10 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6421
6526
|
}, {
|
|
6422
6527
|
key: "unpublishTracks",
|
|
6423
6528
|
value: function () {
|
|
6424
|
-
var _unpublishTracks = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function
|
|
6529
|
+
var _unpublishTracks = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22(tracks) {
|
|
6425
6530
|
var promises, _iterator, _step, track;
|
|
6426
|
-
return _regenerator.default.wrap(function
|
|
6427
|
-
while (1) switch (
|
|
6531
|
+
return _regenerator.default.wrap(function _callee22$(_context22) {
|
|
6532
|
+
while (1) switch (_context22.prev = _context22.next) {
|
|
6428
6533
|
case 0:
|
|
6429
6534
|
this.checkMediaConnection();
|
|
6430
6535
|
promises = [];
|
|
@@ -6434,13 +6539,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6434
6539
|
try {
|
|
6435
6540
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
6436
6541
|
track = _step.value;
|
|
6437
|
-
if (track === this.mediaProperties.
|
|
6438
|
-
|
|
6439
|
-
|
|
6440
|
-
|
|
6441
|
-
|
|
6442
|
-
}
|
|
6443
|
-
promises.push(this.setLocalShareTrack(undefined));
|
|
6542
|
+
if (track === this.mediaProperties.shareVideoTrack) {
|
|
6543
|
+
promises.push(this.setLocalShareVideoTrack(undefined));
|
|
6544
|
+
}
|
|
6545
|
+
if (track === this.mediaProperties.shareAudioTrack) {
|
|
6546
|
+
promises.push(this.setLocalShareAudioTrack(undefined));
|
|
6444
6547
|
}
|
|
6445
6548
|
if (track === this.mediaProperties.audioTrack) {
|
|
6446
6549
|
promises.push(this.setLocalAudioTrack(undefined));
|
|
@@ -6457,15 +6560,26 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
6457
6560
|
if (!this.isMultistream) {
|
|
6458
6561
|
promises.push(this.updateTranscodedMediaConnection());
|
|
6459
6562
|
}
|
|
6460
|
-
|
|
6563
|
+
_context22.next = 7;
|
|
6461
6564
|
return _promise.default.all(promises);
|
|
6462
6565
|
case 7:
|
|
6566
|
+
// we're allowing for the SDK to support just audio share as well
|
|
6567
|
+
// so a share could be active with only video, only audio, or both
|
|
6568
|
+
// we're only releasing the floor if both tracks have ended
|
|
6569
|
+
if (!this.mediaProperties.hasLocalShareTrack()) {
|
|
6570
|
+
try {
|
|
6571
|
+
this.releaseScreenShareFloor(); // we ignore the returned promise here on purpose
|
|
6572
|
+
} catch (e) {
|
|
6573
|
+
// nothing to do here, error is logged already inside releaseScreenShareFloor()
|
|
6574
|
+
}
|
|
6575
|
+
}
|
|
6576
|
+
case 8:
|
|
6463
6577
|
case "end":
|
|
6464
|
-
return
|
|
6578
|
+
return _context22.stop();
|
|
6465
6579
|
}
|
|
6466
|
-
},
|
|
6580
|
+
}, _callee22, this);
|
|
6467
6581
|
}));
|
|
6468
|
-
function unpublishTracks(
|
|
6582
|
+
function unpublishTracks(_x18) {
|
|
6469
6583
|
return _unpublishTracks.apply(this, arguments);
|
|
6470
6584
|
}
|
|
6471
6585
|
return unpublishTracks;
|