@webex/plugin-meetings 3.8.1 → 3.9.0-next.2
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 +26 -13
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/constants.js +32 -3
- package/dist/constants.js.map +1 -1
- package/dist/controls-options-manager/enums.js +1 -0
- package/dist/controls-options-manager/enums.js.map +1 -1
- package/dist/controls-options-manager/types.js.map +1 -1
- package/dist/controls-options-manager/util.js +26 -0
- package/dist/controls-options-manager/util.js.map +1 -1
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/locus-info/controlsUtils.js +11 -3
- package/dist/locus-info/controlsUtils.js.map +1 -1
- package/dist/locus-info/index.js +69 -85
- package/dist/locus-info/index.js.map +1 -1
- package/dist/media/index.js +2 -2
- package/dist/media/index.js.map +1 -1
- package/dist/meeting/brbState.js +17 -14
- package/dist/meeting/brbState.js.map +1 -1
- package/dist/meeting/in-meeting-actions.js +11 -1
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +476 -284
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/request.js +19 -0
- package/dist/meeting/request.js.map +1 -1
- package/dist/meeting/request.type.js.map +1 -1
- package/dist/{rtcMetrics/constants.js → meeting/type.js} +1 -5
- package/dist/meeting/type.js.map +1 -0
- package/dist/meeting/util.js +68 -2
- package/dist/meeting/util.js.map +1 -1
- package/dist/meetings/index.js +35 -33
- package/dist/meetings/index.js.map +1 -1
- package/dist/members/index.js +11 -9
- package/dist/members/index.js.map +1 -1
- package/dist/members/request.js +3 -3
- package/dist/members/request.js.map +1 -1
- package/dist/members/util.js +18 -6
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +1 -0
- package/dist/metrics/constants.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +1 -1
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/multistream/remoteMedia.js +34 -5
- package/dist/multistream/remoteMedia.js.map +1 -1
- package/dist/multistream/remoteMediaGroup.js +42 -2
- package/dist/multistream/remoteMediaGroup.js.map +1 -1
- package/dist/multistream/sendSlotManager.js +32 -2
- package/dist/multistream/sendSlotManager.js.map +1 -1
- package/dist/reachability/index.js +5 -10
- package/dist/reachability/index.js.map +1 -1
- package/dist/types/constants.d.ts +28 -0
- package/dist/types/controls-options-manager/enums.d.ts +2 -1
- package/dist/types/controls-options-manager/types.d.ts +4 -1
- package/dist/types/locus-info/index.d.ts +0 -9
- package/dist/types/meeting/brbState.d.ts +0 -1
- package/dist/types/meeting/in-meeting-actions.d.ts +10 -0
- package/dist/types/meeting/index.d.ts +47 -19
- package/dist/types/meeting/request.d.ts +9 -1
- package/dist/types/meeting/request.type.d.ts +74 -0
- package/dist/types/meeting/type.d.ts +9 -0
- package/dist/types/meeting/util.d.ts +3 -0
- package/dist/types/members/index.d.ts +10 -7
- package/dist/types/members/request.d.ts +1 -1
- package/dist/types/members/util.d.ts +7 -3
- package/dist/types/metrics/constants.d.ts +1 -0
- package/dist/types/multistream/remoteMedia.d.ts +20 -1
- package/dist/types/multistream/remoteMediaGroup.d.ts +11 -0
- package/dist/types/multistream/sendSlotManager.d.ts +16 -0
- package/dist/types/reachability/index.d.ts +2 -2
- package/dist/webinar/index.js +1 -1
- package/package.json +24 -25
- package/src/constants.ts +32 -2
- package/src/controls-options-manager/enums.ts +1 -0
- package/src/controls-options-manager/types.ts +6 -1
- package/src/controls-options-manager/util.ts +31 -0
- package/src/locus-info/controlsUtils.ts +15 -0
- package/src/locus-info/index.ts +89 -86
- package/src/media/index.ts +2 -2
- package/src/meeting/brbState.ts +13 -9
- package/src/meeting/in-meeting-actions.ts +21 -0
- package/src/meeting/index.ts +271 -71
- package/src/meeting/request.ts +16 -0
- package/src/meeting/request.type.ts +64 -0
- package/src/meeting/type.ts +9 -0
- package/src/meeting/util.ts +73 -2
- package/src/meetings/index.ts +3 -2
- package/src/members/index.ts +13 -10
- package/src/members/request.ts +2 -2
- package/src/members/util.ts +16 -4
- package/src/metrics/constants.ts +1 -0
- package/src/multistream/mediaRequestManager.ts +7 -7
- package/src/multistream/remoteMedia.ts +34 -4
- package/src/multistream/remoteMediaGroup.ts +37 -2
- package/src/multistream/sendSlotManager.ts +34 -2
- package/src/reachability/index.ts +5 -13
- package/test/unit/spec/controls-options-manager/util.js +58 -0
- package/test/unit/spec/locus-info/controlsUtils.js +52 -0
- package/test/unit/spec/locus-info/index.js +240 -82
- package/test/unit/spec/media/index.ts +107 -0
- package/test/unit/spec/meeting/brbState.ts +23 -4
- package/test/unit/spec/meeting/in-meeting-actions.ts +10 -0
- package/test/unit/spec/meeting/index.js +954 -85
- package/test/unit/spec/meeting/request.js +71 -0
- package/test/unit/spec/meeting/utils.js +122 -1
- package/test/unit/spec/meetings/index.js +2 -0
- package/test/unit/spec/members/index.js +68 -9
- package/test/unit/spec/members/request.js +2 -2
- package/test/unit/spec/members/utils.js +27 -7
- package/test/unit/spec/multistream/mediaRequestManager.ts +19 -6
- package/test/unit/spec/multistream/remoteMedia.ts +66 -2
- package/test/unit/spec/multistream/sendSlotManager.ts +59 -0
- package/test/unit/spec/reachability/index.ts +2 -6
- package/dist/annotation/annotation.types.d.ts +0 -42
- package/dist/annotation/constants.d.ts +0 -31
- package/dist/annotation/index.d.ts +0 -117
- package/dist/breakouts/breakout.d.ts +0 -8
- package/dist/breakouts/collection.d.ts +0 -5
- package/dist/breakouts/edit-lock-error.d.ts +0 -15
- package/dist/breakouts/events.d.ts +0 -8
- package/dist/breakouts/index.d.ts +0 -5
- package/dist/breakouts/request.d.ts +0 -22
- package/dist/breakouts/utils.d.ts +0 -15
- package/dist/common/browser-detection.d.ts +0 -9
- package/dist/common/collection.d.ts +0 -48
- package/dist/common/config.d.ts +0 -2
- package/dist/common/errors/captcha-error.d.ts +0 -15
- package/dist/common/errors/intent-to-join.d.ts +0 -16
- package/dist/common/errors/join-meeting.d.ts +0 -17
- package/dist/common/errors/media.d.ts +0 -15
- package/dist/common/errors/no-meeting-info.d.ts +0 -14
- package/dist/common/errors/parameter.d.ts +0 -15
- package/dist/common/errors/password-error.d.ts +0 -15
- package/dist/common/errors/permission.d.ts +0 -14
- package/dist/common/errors/reclaim-host-role-error.d.ts +0 -60
- package/dist/common/errors/reclaim-host-role-error.js +0 -158
- package/dist/common/errors/reclaim-host-role-error.js.map +0 -1
- package/dist/common/errors/reclaim-host-role-errors.d.ts +0 -60
- package/dist/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/common/errors/reconnection-in-progress.js +0 -35
- package/dist/common/errors/reconnection-in-progress.js.map +0 -1
- package/dist/common/errors/reconnection.d.ts +0 -15
- package/dist/common/errors/stats.d.ts +0 -15
- package/dist/common/errors/webex-errors.d.ts +0 -81
- package/dist/common/errors/webex-meetings-error.d.ts +0 -20
- package/dist/common/events/events-scope.d.ts +0 -17
- package/dist/common/events/events.d.ts +0 -12
- package/dist/common/events/trigger-proxy.d.ts +0 -2
- package/dist/common/events/util.d.ts +0 -2
- package/dist/common/logs/logger-config.d.ts +0 -2
- package/dist/common/logs/logger-proxy.d.ts +0 -2
- package/dist/common/logs/request.d.ts +0 -34
- package/dist/common/queue.d.ts +0 -32
- package/dist/config.d.ts +0 -73
- package/dist/constants.d.ts +0 -952
- package/dist/controls-options-manager/constants.d.ts +0 -4
- package/dist/controls-options-manager/enums.d.ts +0 -5
- package/dist/controls-options-manager/index.d.ts +0 -120
- package/dist/controls-options-manager/types.d.ts +0 -43
- package/dist/controls-options-manager/util.d.ts +0 -7
- package/dist/index.d.ts +0 -4
- package/dist/interceptors/index.d.ts +0 -2
- package/dist/interceptors/locusRetry.d.ts +0 -27
- package/dist/interpretation/collection.d.ts +0 -5
- package/dist/interpretation/index.d.ts +0 -5
- package/dist/interpretation/siLanguage.d.ts +0 -5
- package/dist/locus-info/controlsUtils.d.ts +0 -2
- package/dist/locus-info/embeddedAppsUtils.d.ts +0 -2
- package/dist/locus-info/fullState.d.ts +0 -2
- package/dist/locus-info/hostUtils.d.ts +0 -2
- package/dist/locus-info/index.d.ts +0 -269
- package/dist/locus-info/infoUtils.d.ts +0 -2
- package/dist/locus-info/mediaSharesUtils.d.ts +0 -2
- package/dist/locus-info/parser.d.ts +0 -212
- package/dist/locus-info/selfUtils.d.ts +0 -2
- package/dist/media/index.d.ts +0 -32
- package/dist/media/properties.d.ts +0 -108
- package/dist/media/util.d.ts +0 -2
- package/dist/mediaQualityMetrics/config.d.ts +0 -233
- package/dist/mediaQualityMetrics/config.js +0 -513
- package/dist/mediaQualityMetrics/config.js.map +0 -1
- package/dist/meeting/effectsState.d.ts +0 -42
- package/dist/meeting/effectsState.js +0 -260
- package/dist/meeting/effectsState.js.map +0 -1
- package/dist/meeting/in-meeting-actions.d.ts +0 -79
- package/dist/meeting/index.d.ts +0 -1622
- package/dist/meeting/locusMediaRequest.d.ts +0 -74
- package/dist/meeting/muteState.d.ts +0 -116
- package/dist/meeting/request.d.ts +0 -257
- package/dist/meeting/request.type.d.ts +0 -11
- package/dist/meeting/state.d.ts +0 -9
- package/dist/meeting/util.d.ts +0 -2
- package/dist/meeting/voicea-meeting.d.ts +0 -16
- package/dist/meeting-info/collection.d.ts +0 -20
- package/dist/meeting-info/index.d.ts +0 -57
- package/dist/meeting-info/meeting-info-v2.d.ts +0 -93
- package/dist/meeting-info/request.d.ts +0 -22
- package/dist/meeting-info/util.d.ts +0 -2
- package/dist/meeting-info/utilv2.d.ts +0 -2
- package/dist/meetings/collection.d.ts +0 -23
- package/dist/meetings/index.d.ts +0 -296
- package/dist/meetings/meetings.types.d.ts +0 -4
- package/dist/meetings/request.d.ts +0 -27
- package/dist/meetings/util.d.ts +0 -18
- package/dist/member/index.d.ts +0 -148
- package/dist/member/member.types.d.ts +0 -11
- package/dist/member/member.types.js +0 -18
- package/dist/member/member.types.js.map +0 -1
- package/dist/member/types.d.ts +0 -32
- package/dist/member/util.d.ts +0 -2
- package/dist/members/collection.d.ts +0 -24
- package/dist/members/index.d.ts +0 -308
- package/dist/members/request.d.ts +0 -58
- package/dist/members/types.d.ts +0 -25
- package/dist/members/util.d.ts +0 -2
- package/dist/metrics/config.d.ts +0 -169
- package/dist/metrics/config.js +0 -289
- package/dist/metrics/config.js.map +0 -1
- package/dist/metrics/constants.d.ts +0 -59
- package/dist/metrics/index.d.ts +0 -152
- package/dist/multistream/mediaRequestManager.d.ts +0 -119
- package/dist/multistream/receiveSlot.d.ts +0 -68
- package/dist/multistream/receiveSlotManager.d.ts +0 -56
- package/dist/multistream/remoteMedia.d.ts +0 -72
- package/dist/multistream/remoteMediaGroup.d.ts +0 -49
- package/dist/multistream/remoteMediaManager.d.ts +0 -300
- package/dist/multistream/sendSlotManager.d.ts +0 -69
- package/dist/networkQualityMonitor/index.d.ts +0 -70
- package/dist/networkQualityMonitor/index.js +0 -226
- package/dist/networkQualityMonitor/index.js.map +0 -1
- package/dist/peer-connection-manager/index.d.ts +0 -6
- package/dist/peer-connection-manager/index.js +0 -671
- package/dist/peer-connection-manager/index.js.map +0 -1
- package/dist/peer-connection-manager/util.d.ts +0 -6
- package/dist/peer-connection-manager/util.js +0 -110
- package/dist/peer-connection-manager/util.js.map +0 -1
- package/dist/personal-meeting-room/index.d.ts +0 -47
- package/dist/personal-meeting-room/request.d.ts +0 -14
- package/dist/personal-meeting-room/util.d.ts +0 -2
- package/dist/reachability/clusterReachability.d.ts +0 -109
- package/dist/reachability/index.d.ts +0 -139
- package/dist/reachability/request.d.ts +0 -35
- package/dist/reachability/util.d.ts +0 -8
- package/dist/reactions/constants.d.ts +0 -3
- package/dist/reactions/reactions.d.ts +0 -4
- package/dist/reactions/reactions.type.d.ts +0 -32
- package/dist/reconnection-manager/index.d.ts +0 -112
- package/dist/recording-controller/enums.d.ts +0 -7
- package/dist/recording-controller/index.d.ts +0 -193
- package/dist/recording-controller/util.d.ts +0 -13
- package/dist/roap/collection.d.ts +0 -10
- package/dist/roap/collection.js +0 -63
- package/dist/roap/collection.js.map +0 -1
- package/dist/roap/handler.d.ts +0 -47
- package/dist/roap/handler.js +0 -279
- package/dist/roap/handler.js.map +0 -1
- package/dist/roap/index.d.ts +0 -116
- package/dist/roap/request.d.ts +0 -35
- package/dist/roap/state.d.ts +0 -9
- package/dist/roap/state.js +0 -127
- package/dist/roap/state.js.map +0 -1
- package/dist/roap/turnDiscovery.d.ts +0 -81
- package/dist/roap/util.d.ts +0 -2
- package/dist/roap/util.js +0 -76
- package/dist/roap/util.js.map +0 -1
- package/dist/rtcMetrics/constants.d.ts +0 -4
- package/dist/rtcMetrics/constants.js.map +0 -1
- package/dist/rtcMetrics/index.d.ts +0 -61
- package/dist/rtcMetrics/index.js +0 -197
- package/dist/rtcMetrics/index.js.map +0 -1
- package/dist/statsAnalyzer/global.d.ts +0 -118
- package/dist/statsAnalyzer/global.js +0 -127
- package/dist/statsAnalyzer/global.js.map +0 -1
- package/dist/statsAnalyzer/index.d.ts +0 -193
- package/dist/statsAnalyzer/index.js +0 -1019
- package/dist/statsAnalyzer/index.js.map +0 -1
- package/dist/statsAnalyzer/mqaUtil.d.ts +0 -22
- package/dist/statsAnalyzer/mqaUtil.js +0 -181
- package/dist/statsAnalyzer/mqaUtil.js.map +0 -1
- package/dist/transcription/index.d.ts +0 -64
- package/dist/types/common/errors/reconnection-in-progress.d.ts +0 -9
- package/dist/types/mediaQualityMetrics/config.d.ts +0 -241
- package/dist/types/networkQualityMonitor/index.d.ts +0 -70
- package/dist/types/rtcMetrics/constants.d.ts +0 -4
- package/dist/types/rtcMetrics/index.d.ts +0 -71
- package/dist/types/statsAnalyzer/global.d.ts +0 -36
- package/dist/types/statsAnalyzer/index.d.ts +0 -217
- package/dist/types/statsAnalyzer/mqaUtil.d.ts +0 -48
- package/dist/webinar/collection.d.ts +0 -16
- package/dist/webinar/index.d.ts +0 -5
package/dist/meeting/index.d.ts
DELETED
@@ -1,1622 +0,0 @@
|
|
1
|
-
/// <reference types="node" />
|
2
|
-
import { StatelessWebexPlugin } from '@webex/webex-core';
|
3
|
-
import { StatsAnalyzer } from '../statsAnalyzer';
|
4
|
-
import NetworkQualityMonitor from '../networkQualityMonitor';
|
5
|
-
import Roap from '../roap/index';
|
6
|
-
import MediaProperties from '../media/properties';
|
7
|
-
import ReconnectionManager from '../reconnection-manager';
|
8
|
-
import MeetingRequest from './request';
|
9
|
-
import Members from '../members/index';
|
10
|
-
import Transcription from '../transcription';
|
11
|
-
import { ReactionType, SkinToneType } from '../reactions/reactions.type';
|
12
|
-
import InMeetingActions from './in-meeting-actions';
|
13
|
-
import RecordingController from '../recording-controller';
|
14
|
-
import ControlsOptionsManager from '../controls-options-manager';
|
15
|
-
export declare const MEDIA_UPDATE_TYPE: {
|
16
|
-
ALL: string;
|
17
|
-
AUDIO: string;
|
18
|
-
VIDEO: string;
|
19
|
-
SHARE: string;
|
20
|
-
};
|
21
|
-
/**
|
22
|
-
* MediaDirection
|
23
|
-
* @typedef {Object} MediaDirection
|
24
|
-
* @property {boolean} sendAudio
|
25
|
-
* @property {boolean} receiveAudio
|
26
|
-
* @property {boolean} sendVideo
|
27
|
-
* @property {boolean} receiveVideo
|
28
|
-
* @property {boolean} sendShare
|
29
|
-
* @property {boolean} receiveShare
|
30
|
-
* @property {boolean} isSharing
|
31
|
-
*/
|
32
|
-
/**
|
33
|
-
* AudioVideo
|
34
|
-
* @typedef {Object} AudioVideo
|
35
|
-
* @property {Object} audio
|
36
|
-
* @property {String} audio.deviceId
|
37
|
-
* @property {Object} video
|
38
|
-
* @property {String} video.deviceId
|
39
|
-
* @property {String} video.localVideoQuality // [240p, 360p, 480p, 720p, 1080p]
|
40
|
-
*/
|
41
|
-
/**
|
42
|
-
* SharePreferences
|
43
|
-
* @typedef {Object} SharePreferences
|
44
|
-
* @property {Object} [shareConstraints]
|
45
|
-
* @property {Boolean} [highFrameRate]
|
46
|
-
*/
|
47
|
-
/**
|
48
|
-
* JoinOptions
|
49
|
-
* @typedef {Object} JoinOptions
|
50
|
-
* @property {String} [resourceId]
|
51
|
-
* @property {String} [pin]
|
52
|
-
* @property {Boolean} [moderator]
|
53
|
-
* @property {String|Object} [meetingQuality]
|
54
|
-
* @property {String} [meetingQuality.local]
|
55
|
-
* @property {String} [meetingQuality.remote]
|
56
|
-
* @property {Boolean} [rejoin]
|
57
|
-
*/
|
58
|
-
/**
|
59
|
-
* SendOptions
|
60
|
-
* @typedef {Object} SendOptions
|
61
|
-
* @property {Boolean} sendAudio
|
62
|
-
* @property {Boolean} sendVideo
|
63
|
-
* @property {Boolean} sendShare
|
64
|
-
*/
|
65
|
-
/**
|
66
|
-
* Recording
|
67
|
-
* @typedef {Object} Recording
|
68
|
-
* @property {Object} state
|
69
|
-
* @property {String} modifiedBy
|
70
|
-
*/
|
71
|
-
/**
|
72
|
-
* Meeting State Change Event
|
73
|
-
* Emitted when ever there is a meeting state change
|
74
|
-
* @event meeting:stateChange
|
75
|
-
* @instance
|
76
|
-
* @type {Object}
|
77
|
-
* @property {String} currentState current state of the meeting
|
78
|
-
* @property {String} previousState previous state of the meeting
|
79
|
-
* @memberof Meeting
|
80
|
-
*/
|
81
|
-
/**
|
82
|
-
* Media Ready Event
|
83
|
-
* Emitted when a stream is ready to be rendered
|
84
|
-
* @event media:ready
|
85
|
-
* @instance
|
86
|
-
* @type {Object}
|
87
|
-
* @property {MediaStream} stream the media stream
|
88
|
-
* @property {String} type what type of stream, remote, local
|
89
|
-
* @memberof Meeting
|
90
|
-
*/
|
91
|
-
/**
|
92
|
-
* Media Stopped Event
|
93
|
-
* Emitted when a stream has stopped sending
|
94
|
-
* @event media:stopped
|
95
|
-
* @instance
|
96
|
-
* @type {Object}
|
97
|
-
* @property {String} type what type of stream, remote, local
|
98
|
-
* @memberof Meeting
|
99
|
-
*/
|
100
|
-
/**
|
101
|
-
* Meeting Ringing Event
|
102
|
-
* Emitted when this client should play a ringing sound, because this member is getting an incoming meeting
|
103
|
-
* or sending out an incoming meeting
|
104
|
-
* @event meeting:ringing
|
105
|
-
* @instance
|
106
|
-
* @type {Object}
|
107
|
-
* @property {String} type // INCOMING or JOIN
|
108
|
-
* @property {String} id
|
109
|
-
* @memberof Meeting
|
110
|
-
*/
|
111
|
-
/**
|
112
|
-
* Meeting Ringing Stop Event
|
113
|
-
* Emitted when this client should stop playing a ringing sound
|
114
|
-
* @event meeting:ringingStop
|
115
|
-
* @instance
|
116
|
-
* @type {Object}
|
117
|
-
* @property {Object} type
|
118
|
-
* @property {Boolean} type.remoteAnswered
|
119
|
-
* @property {Boolean} type.remoteDeclined
|
120
|
-
* @property {String} id
|
121
|
-
* @memberof Meeting
|
122
|
-
*/
|
123
|
-
/**
|
124
|
-
* Meeting Started Sharing Local Event
|
125
|
-
* Emitted when this member starts sharing
|
126
|
-
* @event meeting:startedSharingLocal
|
127
|
-
* @instance
|
128
|
-
* @type {Object}
|
129
|
-
* @memberof Meeting
|
130
|
-
*/
|
131
|
-
/**
|
132
|
-
* Meeting Stopped Sharing Local Event
|
133
|
-
* Emitted when this member stops sharing
|
134
|
-
* @event meeting:stoppedSharingLocal
|
135
|
-
* @instance
|
136
|
-
* @type {Object}
|
137
|
-
* @memberof Meeting
|
138
|
-
*/
|
139
|
-
/**
|
140
|
-
* Meeting Started Sharing Remote Event
|
141
|
-
* Emitted when remote sharing starts
|
142
|
-
* @event meeting:startedSharingRemote
|
143
|
-
* @instance
|
144
|
-
* @type {Object}
|
145
|
-
* @property {Boolean} memberId id of the meeting member that started screen share
|
146
|
-
* @memberof Meeting
|
147
|
-
*/
|
148
|
-
/**
|
149
|
-
* Meeting Stopped Sharing Remote Event
|
150
|
-
* Emitted when remote screen sharing ends
|
151
|
-
* @event meeting:stoppedSharingRemote
|
152
|
-
* @instance
|
153
|
-
* @type {Object}
|
154
|
-
* @memberof Meeting
|
155
|
-
*/
|
156
|
-
/**
|
157
|
-
* Meeting Locked Event
|
158
|
-
* Emitted when a meeting is locked
|
159
|
-
* @event meeting:locked
|
160
|
-
* @instance
|
161
|
-
* @type {Object}
|
162
|
-
* @property {Object} info
|
163
|
-
* @memberof Meeting
|
164
|
-
*/
|
165
|
-
/**
|
166
|
-
* Meeting Unlocked Event
|
167
|
-
* Emitted when a meeting is unlocked
|
168
|
-
* @event meeting:unlocked
|
169
|
-
* @instance
|
170
|
-
* @type {Object}
|
171
|
-
* @property {Object} info
|
172
|
-
* @memberof Meeting
|
173
|
-
*/
|
174
|
-
/**
|
175
|
-
* Meeting Actions Update Event
|
176
|
-
* Emitted when a user can take actions on a meeting such as lock, unlock, assign host
|
177
|
-
* @event meeting:actionsUpdate
|
178
|
-
* @instance
|
179
|
-
* @type {Object}
|
180
|
-
* @property {Boolean} canLock
|
181
|
-
* @property {Boolean} canUnlock
|
182
|
-
* @property {Boolean} canAssignHost
|
183
|
-
* @memberof Meeting
|
184
|
-
*/
|
185
|
-
/**
|
186
|
-
* Meeting Unmuted By Others Event
|
187
|
-
* Emitted when a member is unmuted by another member
|
188
|
-
* @event meeting:self:unmutedByOthers
|
189
|
-
* @instance
|
190
|
-
* @type {Object}
|
191
|
-
* @property {Object} payload
|
192
|
-
* @memberof Meeting
|
193
|
-
*/
|
194
|
-
/**
|
195
|
-
* Meeting Muted By Others Event
|
196
|
-
* Emitted when a member is muted by another member
|
197
|
-
* @event meeting:self:mutedByOthers
|
198
|
-
* @instance
|
199
|
-
* @type {Object}
|
200
|
-
* @property {Object} payload
|
201
|
-
* @property {Boolean} payload.unmuteAllowed - whether the user is allowed to unmute self
|
202
|
-
* @memberof Meeting
|
203
|
-
*/
|
204
|
-
/**
|
205
|
-
* Meeting Muted By Others Event
|
206
|
-
* Emitted when the host(moderator)/co-host requests a user to unmute
|
207
|
-
* @event meeting:self:requestedToUnmute
|
208
|
-
* @instance
|
209
|
-
* @type {Object}
|
210
|
-
* @property {Object} payload
|
211
|
-
* @memberof Meeting
|
212
|
-
*/
|
213
|
-
/**
|
214
|
-
* Meeting Self Guest Admitted Event
|
215
|
-
* Emitted when a joined user get admitted to the meeting by another member or host
|
216
|
-
* @event meeting:self:guestAdmitted
|
217
|
-
* @instance
|
218
|
-
* @type {Object}
|
219
|
-
* @property {Object} payload
|
220
|
-
* @memberof Meeting
|
221
|
-
*/
|
222
|
-
/**
|
223
|
-
* Meeting Self Lobby Waiting Event
|
224
|
-
* Emitted when joined user enters the lobby and is waiting for the webex meeting to begin
|
225
|
-
* @event meeting:self:lobbyWaiting
|
226
|
-
* @instance
|
227
|
-
* @type {Object}
|
228
|
-
* @property {Object} reason Reason why user left the meeting
|
229
|
-
* @memberof Meeting
|
230
|
-
*/
|
231
|
-
/**
|
232
|
-
* Meeting Self Left State
|
233
|
-
* Emitted when user is inactive for more then 40 seconds, User can rejoin the meeting again
|
234
|
-
* @event meeting:self:left
|
235
|
-
* @instance
|
236
|
-
* @type {Object}
|
237
|
-
* @property {Object} payload
|
238
|
-
* @memberof Meeting
|
239
|
-
*/
|
240
|
-
/**
|
241
|
-
* Reconnection Starting Event
|
242
|
-
* Emitted when reconnection of media to the active meeting was successful
|
243
|
-
* @event meeting:reconnectionStarting
|
244
|
-
* @instance
|
245
|
-
* @memberof Meeting
|
246
|
-
*/
|
247
|
-
/**
|
248
|
-
* Reconnection Success Event
|
249
|
-
* Emitted when reconnection of media to the active meeting was successful
|
250
|
-
* @event meeting:reconnectionSuccess
|
251
|
-
* @instance
|
252
|
-
* @type {Object}
|
253
|
-
* @property {Object} reconnect
|
254
|
-
* @memberof Meeting
|
255
|
-
*/
|
256
|
-
/**
|
257
|
-
* Reconnection Failure Event
|
258
|
-
* Emitted when reconnection of media to the active meeting was successful
|
259
|
-
* @event meeting:reconnectionFailure
|
260
|
-
* @instance
|
261
|
-
* @type {Object}
|
262
|
-
* @property {Error} error
|
263
|
-
* @memberof Meeting
|
264
|
-
*/
|
265
|
-
/**
|
266
|
-
* Meeting network quality event
|
267
|
-
* Emitted on each interval of retrieving stats Analyzer data
|
268
|
-
* @event network:quality
|
269
|
-
* @type {Object}
|
270
|
-
* @property {string} mediaType {video|audio}
|
271
|
-
* @property {number} networkQualityScore - {1|0} 1 indicates acceptable uplink 0 indicates unacceptable uplink based on threshold
|
272
|
-
* @memberof Meeting
|
273
|
-
*/
|
274
|
-
/**
|
275
|
-
* @description Meeting is the crux of the plugin
|
276
|
-
* @export
|
277
|
-
* @class Meeting
|
278
|
-
*/
|
279
|
-
export default class Meeting extends StatelessWebexPlugin {
|
280
|
-
attrs: any;
|
281
|
-
audio: any;
|
282
|
-
conversationUrl: string;
|
283
|
-
correlationId: string;
|
284
|
-
destination: string;
|
285
|
-
destinationType: string;
|
286
|
-
deviceUrl: string;
|
287
|
-
effects: any;
|
288
|
-
hostId: string;
|
289
|
-
id: string;
|
290
|
-
locusUrl: string;
|
291
|
-
mediaConnections: any[];
|
292
|
-
meetingFiniteStateMachine: any;
|
293
|
-
meetingInfo: object;
|
294
|
-
meetingRequest: MeetingRequest;
|
295
|
-
members: Members;
|
296
|
-
options: object;
|
297
|
-
orgId: string;
|
298
|
-
owner: string;
|
299
|
-
partner: any;
|
300
|
-
policy: string;
|
301
|
-
reconnectionManager: ReconnectionManager;
|
302
|
-
resource: string;
|
303
|
-
roap: Roap;
|
304
|
-
roapSeq: number;
|
305
|
-
sipUri: string;
|
306
|
-
type: string;
|
307
|
-
userId: string;
|
308
|
-
video: any;
|
309
|
-
callEvents: any[];
|
310
|
-
deferJoin: Promise<any>;
|
311
|
-
dialInDeviceStatus: string;
|
312
|
-
dialInUrl: string;
|
313
|
-
dialOutDeviceStatus: string;
|
314
|
-
dialOutUrl: string;
|
315
|
-
fetchMeetingInfoTimeoutId: NodeJS.Timeout;
|
316
|
-
floorGrantPending: boolean;
|
317
|
-
hasJoinedOnce: boolean;
|
318
|
-
hasWebsocketConnected: boolean;
|
319
|
-
inMeetingActions: InMeetingActions;
|
320
|
-
isLocalShareLive: boolean;
|
321
|
-
isSharing: boolean;
|
322
|
-
keepAliveTimerId: NodeJS.Timeout;
|
323
|
-
lastVideoLayoutInfo: any;
|
324
|
-
locusInfo: any;
|
325
|
-
mediaProperties: MediaProperties;
|
326
|
-
meetingInfoFailureReason: string;
|
327
|
-
networkQualityMonitor: NetworkQualityMonitor;
|
328
|
-
networkStatus: string;
|
329
|
-
passwordStatus: string;
|
330
|
-
queuedMediaUpdates: any[];
|
331
|
-
recording: any;
|
332
|
-
recordingController: RecordingController;
|
333
|
-
controlsOptionsManager: ControlsOptionsManager;
|
334
|
-
requiredCaptcha: any;
|
335
|
-
shareStatus: string;
|
336
|
-
statsAnalyzer: StatsAnalyzer;
|
337
|
-
transcription: Transcription;
|
338
|
-
receiveTranscription: boolean;
|
339
|
-
updateMediaConnections: (mediaConnections: any[]) => void;
|
340
|
-
endCallInitiateJoinReq: any;
|
341
|
-
endJoinReqResp: any;
|
342
|
-
endLocalSDPGenRemoteSDPRecvDelay: any;
|
343
|
-
joinedWith: any;
|
344
|
-
locusId: any;
|
345
|
-
startCallInitiateJoinReq: any;
|
346
|
-
startJoinReqResp: any;
|
347
|
-
startLocalSDPGenRemoteSDPRecvDelay: any;
|
348
|
-
wirelessShare: any;
|
349
|
-
guest: any;
|
350
|
-
meetingJoinUrl: any;
|
351
|
-
meetingNumber: any;
|
352
|
-
meetingState: any;
|
353
|
-
permissionToken: any;
|
354
|
-
resourceId: any;
|
355
|
-
resourceUrl: string;
|
356
|
-
selfId: string;
|
357
|
-
state: any;
|
358
|
-
namespace: string;
|
359
|
-
/**
|
360
|
-
* @param {Object} attrs
|
361
|
-
* @param {Object} options
|
362
|
-
* @constructor
|
363
|
-
* @memberof Meeting
|
364
|
-
*/
|
365
|
-
constructor(attrs: any, options: object);
|
366
|
-
/**
|
367
|
-
* Fetches meeting information.
|
368
|
-
* @param {Object} options
|
369
|
-
* @param {String} [options.password] optional
|
370
|
-
* @param {String} [options.captchaCode] optional
|
371
|
-
* @public
|
372
|
-
* @memberof Meeting
|
373
|
-
* @returns {Promise}
|
374
|
-
*/
|
375
|
-
fetchMeetingInfo({ password, captchaCode, }: {
|
376
|
-
password?: string;
|
377
|
-
captchaCode?: string;
|
378
|
-
}): Promise<void>;
|
379
|
-
/**
|
380
|
-
* Checks if the supplied password/host key is correct. It returns a promise with information whether the
|
381
|
-
* password and captcha code were correct or not.
|
382
|
-
* @param {String} password - this can be either a password or a host key, can be undefined if only captcha was required
|
383
|
-
* @param {String} captchaCode - can be undefined if captcha was not required by the server
|
384
|
-
* @public
|
385
|
-
* @memberof Meeting
|
386
|
-
* @returns {Promise<{isPasswordValid: boolean, requiredCaptcha: boolean, failureReason: MEETING_INFO_FAILURE_REASON}>}
|
387
|
-
*/
|
388
|
-
verifyPassword(password: string, captchaCode: string): Promise<{
|
389
|
-
isPasswordValid: boolean;
|
390
|
-
requiredCaptcha: any;
|
391
|
-
failureReason: string;
|
392
|
-
} | {
|
393
|
-
isPasswordValid: boolean;
|
394
|
-
requiredCaptcha: any;
|
395
|
-
failureReason: string;
|
396
|
-
}>;
|
397
|
-
/**
|
398
|
-
* Refreshes the captcha. As a result the meeting will have new captcha id, image and audio.
|
399
|
-
* If the refresh operation fails, meeting remains with the old captcha properties.
|
400
|
-
* @public
|
401
|
-
* @memberof Meeting
|
402
|
-
* @returns {Promise}
|
403
|
-
*/
|
404
|
-
refreshCaptcha(): any;
|
405
|
-
/**
|
406
|
-
* Proxy function for all the listener set ups
|
407
|
-
* @returns {undefined}
|
408
|
-
* @private
|
409
|
-
* @memberof Meeting
|
410
|
-
*/
|
411
|
-
private setUpLocusInfoListeners;
|
412
|
-
/**
|
413
|
-
* Set up the locus info listener for meetings disconnected due to inactivity
|
414
|
-
* @returns {undefined}
|
415
|
-
* @private
|
416
|
-
* @memberof Meeting
|
417
|
-
*/
|
418
|
-
private setUpLocusInfoMediaInactiveListener;
|
419
|
-
/**
|
420
|
-
* Set up the locus info listener for assign host permissions on a meeting
|
421
|
-
* @returns {undefined}
|
422
|
-
* @private
|
423
|
-
* @memberof Meeting
|
424
|
-
*/
|
425
|
-
private setUpLocusInfoAssignHostListener;
|
426
|
-
/**
|
427
|
-
* Set up the internal locus info full state object listener
|
428
|
-
* @returns {undefined}
|
429
|
-
* @private
|
430
|
-
* @memberof Meeting
|
431
|
-
*/
|
432
|
-
private setUpLocusFullStateListener;
|
433
|
-
/**
|
434
|
-
* get the metrics payload pre
|
435
|
-
* @param {Object} options
|
436
|
-
* @param {String} options.event
|
437
|
-
* @param {String} options.trackingId
|
438
|
-
* @param {Object} options.locus
|
439
|
-
* @param {Array} options.mediaConnections
|
440
|
-
* @param {Object} options.errors
|
441
|
-
* @returns {Object}
|
442
|
-
* @memberof Meeting
|
443
|
-
*/
|
444
|
-
getAnalyzerMetricsPrePayload(options: {
|
445
|
-
event: string;
|
446
|
-
trackingId: string;
|
447
|
-
locus: object;
|
448
|
-
mediaConnections: Array<any>;
|
449
|
-
errors: object;
|
450
|
-
} | any): {};
|
451
|
-
/**
|
452
|
-
* Send the metrics to call-analyzer dashboard
|
453
|
-
* @param {Object} options
|
454
|
-
* @param {String} options.event
|
455
|
-
* @param {String} options.trackingId
|
456
|
-
* @param {Object} options.locus
|
457
|
-
* @param {Object} options.errors
|
458
|
-
* @returns {Promise}
|
459
|
-
* @private
|
460
|
-
* @memberof Meeting
|
461
|
-
*/
|
462
|
-
private sendCallAnalyzerMetrics;
|
463
|
-
/**
|
464
|
-
* Send the metrics to Media Quality Analyzer dashboard
|
465
|
-
* @param {Object} options
|
466
|
-
* @param {String} options.event
|
467
|
-
* @param {String} options.trackingId
|
468
|
-
* @param {Object} options.locus
|
469
|
-
* @returns {Promise}
|
470
|
-
* @private
|
471
|
-
* @memberof Meeting
|
472
|
-
*/
|
473
|
-
private sendMediaQualityAnalyzerMetrics;
|
474
|
-
/**
|
475
|
-
* sets the network status on meeting object
|
476
|
-
* @param {String} networkStatus
|
477
|
-
* @private
|
478
|
-
* @returns {undefined}
|
479
|
-
* @memberof Meeting
|
480
|
-
*/
|
481
|
-
private setNetworkStatus;
|
482
|
-
/**
|
483
|
-
* Set up the locus info self listener
|
484
|
-
* update self value for members and updates the member
|
485
|
-
* notifies consumer with members:self:update {activeSelfId endedSelfId}
|
486
|
-
* @returns {undefined}
|
487
|
-
* @private
|
488
|
-
* @memberof Meeting
|
489
|
-
*/
|
490
|
-
private setUpLocusSelfListener;
|
491
|
-
/**
|
492
|
-
* Notify any changes on the pstn devices
|
493
|
-
* @param {Object} payload
|
494
|
-
* @returns {undefined}
|
495
|
-
* @private
|
496
|
-
* @memberof Meeting
|
497
|
-
*/
|
498
|
-
private pstnUpdate;
|
499
|
-
/**
|
500
|
-
* Set up the locus info host listener
|
501
|
-
* update host value for members and updates the member
|
502
|
-
* notifies consumer with members:host:update: {activeHostId, endedHostId}
|
503
|
-
* @returns {undefined}
|
504
|
-
* @private
|
505
|
-
* @memberof Meeting
|
506
|
-
*/
|
507
|
-
private setUpLocusHostListener;
|
508
|
-
/**
|
509
|
-
* Set up the locus info participants update listener
|
510
|
-
* update members collection value for members
|
511
|
-
* notifies consumer with members:update
|
512
|
-
* @returns {undefined}
|
513
|
-
* @private
|
514
|
-
* @memberof Meeting
|
515
|
-
*/
|
516
|
-
private setUpLocusParticipantsListener;
|
517
|
-
/**
|
518
|
-
* Set up the locus info recording update listener
|
519
|
-
* update recording value for the meeting
|
520
|
-
* notifies consumer with:
|
521
|
-
* meeting:recording:started
|
522
|
-
* meeting:recording:stopped
|
523
|
-
* meeting:recording:paused
|
524
|
-
* meeting:recording:resumed
|
525
|
-
*
|
526
|
-
* Set up the locus info meeeting container listener
|
527
|
-
* update meetingContainerUrl value for the meeting
|
528
|
-
* notifies consumer with:
|
529
|
-
* meeting:meetingContainer:update
|
530
|
-
*
|
531
|
-
* @returns {undefined}
|
532
|
-
* @private
|
533
|
-
* @memberof Meeting
|
534
|
-
*/
|
535
|
-
private setupLocusControlsListener;
|
536
|
-
/**
|
537
|
-
* Set up the locus info media shares listener
|
538
|
-
* update content and whiteboard sharing id value for members, and updates the member
|
539
|
-
* notifies consumer with members:content:update {activeContentSharingId, endedContentSharingId}
|
540
|
-
* @returns {undefined}
|
541
|
-
* @private
|
542
|
-
* @memberof Meeting
|
543
|
-
*/
|
544
|
-
private setUpLocusMediaSharesListener;
|
545
|
-
/**
|
546
|
-
* Set up the locus info url listener
|
547
|
-
* update locus_url value for members
|
548
|
-
* @returns {undefined}
|
549
|
-
* @private
|
550
|
-
* @memberof Meeting
|
551
|
-
*/
|
552
|
-
private setUpLocusUrlListener;
|
553
|
-
/**
|
554
|
-
* Set up the locus info service link listener
|
555
|
-
* update the locusInfo for recording controller
|
556
|
-
* does not currently re-emit the event as it's internal only
|
557
|
-
* payload is unused
|
558
|
-
* @returns {undefined}
|
559
|
-
* @private
|
560
|
-
* @memberof Meeting
|
561
|
-
*/
|
562
|
-
private setUpLocusServicesListener;
|
563
|
-
/**
|
564
|
-
* Set up the locus info meeting info listener
|
565
|
-
* @returns {undefined}
|
566
|
-
* @private
|
567
|
-
* @memberof meeting
|
568
|
-
*/
|
569
|
-
private setUpLocusInfoMeetingInfoListener;
|
570
|
-
/**
|
571
|
-
* Set up the locus info embedded apps listener
|
572
|
-
* @returns {undefined}
|
573
|
-
* @private
|
574
|
-
* @memberof meeting
|
575
|
-
*/
|
576
|
-
private setUpLocusEmbeddedAppsListener;
|
577
|
-
/**
|
578
|
-
* Internal function to listen to the self object changes
|
579
|
-
* @returns {undefined}
|
580
|
-
* @private
|
581
|
-
* @memberof Meeting
|
582
|
-
*/
|
583
|
-
private setUpLocusInfoSelfListener;
|
584
|
-
/**
|
585
|
-
* Add LocusInfo nested object listeners (from child to parent)
|
586
|
-
* @returns {undefined}
|
587
|
-
* @private
|
588
|
-
* @memberof Meeting
|
589
|
-
*/
|
590
|
-
private setUpLocusInfoMeetingListener;
|
591
|
-
/**
|
592
|
-
* Set meeting values rather than events
|
593
|
-
* @param {Object} object
|
594
|
-
* @returns {undefined}
|
595
|
-
* @private
|
596
|
-
* @memberof Meeting
|
597
|
-
* // TODO: is this function necessary?
|
598
|
-
*/
|
599
|
-
private updateMeetingObject;
|
600
|
-
/**
|
601
|
-
* Invite a guest to the call that isn't normally part of this call
|
602
|
-
* @param {Object} invitee
|
603
|
-
* @param {String} invitee.emailAddress
|
604
|
-
* @param {String} invitee.email
|
605
|
-
* @param {String} invitee.phoneNumber
|
606
|
-
* @param {Boolean} [alertIfActive]
|
607
|
-
* @returns {Promise} see #members.addMember
|
608
|
-
* @public
|
609
|
-
* @memberof Meeting
|
610
|
-
*/
|
611
|
-
invite(invitee: {
|
612
|
-
emailAddress: string;
|
613
|
-
email: string;
|
614
|
-
phoneNumber: string;
|
615
|
-
}, alertIfActive?: boolean): any;
|
616
|
-
/**
|
617
|
-
* Cancel an outgoing phone call invitation made during a meeting
|
618
|
-
* @param {Object} invitee
|
619
|
-
* @param {String} invitee.phoneNumber
|
620
|
-
* @returns {Promise} see #members.cancelPhoneInvite
|
621
|
-
* @public
|
622
|
-
* @memberof Meeting
|
623
|
-
*/
|
624
|
-
cancelPhoneInvite(invitee: {
|
625
|
-
phoneNumber: string;
|
626
|
-
}): any;
|
627
|
-
/**
|
628
|
-
* Admit the guest(s) to the call once they are waiting
|
629
|
-
* @param {Array} memberIds
|
630
|
-
* @returns {Promise} see #members.admitMembers
|
631
|
-
* @public
|
632
|
-
* @memberof Meeting
|
633
|
-
*/
|
634
|
-
admit(memberIds: Array<any>): any;
|
635
|
-
/**
|
636
|
-
* Remove the member from the meeting, boot them
|
637
|
-
* @param {String} memberId
|
638
|
-
* @returns {Promise} see #members.removeMember
|
639
|
-
* @public
|
640
|
-
* @memberof Meeting
|
641
|
-
*/
|
642
|
-
remove(memberId: string): any;
|
643
|
-
/**
|
644
|
-
* Mute another member from the meeting
|
645
|
-
* @param {String} memberId
|
646
|
-
* @param {Boolean} mute
|
647
|
-
* @returns {Promise} see #members.muteMember
|
648
|
-
* @public
|
649
|
-
* @memberof Meeting
|
650
|
-
*/
|
651
|
-
mute(memberId: string, mute?: boolean): any;
|
652
|
-
/**
|
653
|
-
* Transfer the moderator role to another eligible member
|
654
|
-
* @param {String} memberId
|
655
|
-
* @param {Boolean} moderator
|
656
|
-
* @returns {Promise} see #members.transferHostToMember
|
657
|
-
* @public
|
658
|
-
* @memberof Meeting
|
659
|
-
*/
|
660
|
-
transfer(memberId: string, moderator?: boolean): any;
|
661
|
-
/**
|
662
|
-
* Reference to the Members object
|
663
|
-
* @returns {Members}
|
664
|
-
* @public
|
665
|
-
* @memberof Meeting
|
666
|
-
*/
|
667
|
-
getMembers(): Members;
|
668
|
-
/**
|
669
|
-
* Truthy when a meeting has an audio connection established
|
670
|
-
* @returns {Boolean} true if meeting audio is connected otherwise false
|
671
|
-
* @public
|
672
|
-
* @memberof Meeting
|
673
|
-
*/
|
674
|
-
isAudioConnected(): boolean;
|
675
|
-
/**
|
676
|
-
* Convenience function to tell whether a meeting is muted
|
677
|
-
* @returns {Boolean} if meeting audio muted or not
|
678
|
-
* @public
|
679
|
-
* @memberof Meeting
|
680
|
-
*/
|
681
|
-
isAudioMuted(): any;
|
682
|
-
/**
|
683
|
-
* Convenience function to tell if the end user last changed the audio state
|
684
|
-
* @returns {Boolean} if audio was manipulated by the end user
|
685
|
-
* @public
|
686
|
-
* @memberof Meeting
|
687
|
-
*/
|
688
|
-
isAudioSelf(): any;
|
689
|
-
/**
|
690
|
-
* Truthy when a meeting has a video connection established
|
691
|
-
* @returns {Boolean} true if meeting video connected otherwise false
|
692
|
-
* @public
|
693
|
-
* @memberof Meeting
|
694
|
-
*/
|
695
|
-
isVideoConnected(): boolean;
|
696
|
-
/**
|
697
|
-
* Convenience function to tell whether video is muted
|
698
|
-
* @returns {Boolean} if meeting video is muted or not
|
699
|
-
* @public
|
700
|
-
* @memberof Meeting
|
701
|
-
*/
|
702
|
-
isVideoMuted(): any;
|
703
|
-
/**
|
704
|
-
* Convenience function to tell whether the end user changed the video state
|
705
|
-
* @returns {Boolean} if meeting video is muted or not
|
706
|
-
* @public
|
707
|
-
* @memberof Meeting
|
708
|
-
*/
|
709
|
-
isVideoSelf(): any;
|
710
|
-
/**
|
711
|
-
* Sets the meeting info on the class instance
|
712
|
-
* @param {Object} meetingInfo
|
713
|
-
* @param {Object} meetingInfo.body
|
714
|
-
* @param {String} meetingInfo.body.conversationUrl
|
715
|
-
* @param {String} meetingInfo.body.locusUrl
|
716
|
-
* @param {String} meetingInfo.body.sipUri
|
717
|
-
* @param {Object} meetingInfo.body.owner
|
718
|
-
* @param {Object | String} destination locus object with meeting data or destination string (sip url, meeting link, etc)
|
719
|
-
* @returns {undefined}
|
720
|
-
* @private
|
721
|
-
* @memberof Meeting
|
722
|
-
*/
|
723
|
-
parseMeetingInfo(meetingInfo: {
|
724
|
-
body: {
|
725
|
-
conversationUrl: string;
|
726
|
-
locusUrl: string;
|
727
|
-
sipUri: string;
|
728
|
-
owner: object;
|
729
|
-
};
|
730
|
-
} | any, destination?: object | string | null): void;
|
731
|
-
/**
|
732
|
-
* Sets the first locus info on the class instance
|
733
|
-
* @param {Object} locus
|
734
|
-
* @param {String} locus.url
|
735
|
-
* @param {Array} locus.participants
|
736
|
-
* @param {Object} locus.self
|
737
|
-
* @returns {undefined}
|
738
|
-
* @private
|
739
|
-
* @memberof Meeting
|
740
|
-
*/
|
741
|
-
private parseLocus;
|
742
|
-
/**
|
743
|
-
* Sets the sip uri on the class instance
|
744
|
-
* uses meeting info as precedence
|
745
|
-
* @param {String} sipUri
|
746
|
-
* @returns {undefined}
|
747
|
-
* @private
|
748
|
-
* @memberof Meeting
|
749
|
-
*/
|
750
|
-
setSipUri(sipUri: string): void;
|
751
|
-
/**
|
752
|
-
* Set the roap seq on the class instance
|
753
|
-
* @param {Number} seq
|
754
|
-
* @returns {undefined}
|
755
|
-
* @private
|
756
|
-
* @memberof Meeting
|
757
|
-
*/
|
758
|
-
setRoapSeq(seq: number): void;
|
759
|
-
/**
|
760
|
-
* Set the locus info the class instance
|
761
|
-
* @param {Object} locus
|
762
|
-
* @param {Array} locus.mediaConnections
|
763
|
-
* @param {String} locus.locusUrl
|
764
|
-
* @param {String} locus.locusId
|
765
|
-
* @param {String} locus.mediaId
|
766
|
-
* @param {Object} locus.host
|
767
|
-
* @todo change name to genertic parser
|
768
|
-
* @returns {undefined}
|
769
|
-
* @private
|
770
|
-
* @memberof Meeting
|
771
|
-
*/
|
772
|
-
private setLocus;
|
773
|
-
/**
|
774
|
-
* Sets the remote stream on the class instance and emits and
|
775
|
-
* event to developers
|
776
|
-
* @param {Object} pc The remote stream peer connection
|
777
|
-
* @returns {undefined}
|
778
|
-
* @public
|
779
|
-
* @memberof Meeting
|
780
|
-
*/
|
781
|
-
setRemoteStream(pc: any): void;
|
782
|
-
/**
|
783
|
-
* Upload logs for the current meeting
|
784
|
-
* @param {object} options file name and function name
|
785
|
-
* @returns {undefined}
|
786
|
-
* @public
|
787
|
-
* @memberof Meeting
|
788
|
-
*/
|
789
|
-
uploadLogs(options?: object): void;
|
790
|
-
/**
|
791
|
-
* Removes remote audio and video stream on the class instance and triggers an event
|
792
|
-
* to developers
|
793
|
-
* @returns {undefined}
|
794
|
-
* @public
|
795
|
-
* @memberof Meeting
|
796
|
-
* @deprecated after v1.89.3
|
797
|
-
*/
|
798
|
-
unsetRemoteStream(): void;
|
799
|
-
/**
|
800
|
-
* Removes remote audio, video and share tracks from class instance's mediaProperties
|
801
|
-
* @returns {undefined}
|
802
|
-
*/
|
803
|
-
unsetRemoteTracks(): void;
|
804
|
-
/**
|
805
|
-
* Removes the remote stream on the class instance and triggers an event
|
806
|
-
* to developers
|
807
|
-
* @returns {undefined}
|
808
|
-
* @public
|
809
|
-
* @memberof Meeting
|
810
|
-
* @deprecated after v1.89.3
|
811
|
-
*/
|
812
|
-
closeRemoteStream(): void;
|
813
|
-
/**
|
814
|
-
* Removes the remote tracks on the class instance and triggers an event
|
815
|
-
* to developers
|
816
|
-
* @returns {undefined}
|
817
|
-
* @memberof Meeting
|
818
|
-
*/
|
819
|
-
closeRemoteTracks(): Promise<[any, any, any]>;
|
820
|
-
/**
|
821
|
-
* Emits the 'media:ready' event with a local stream that consists of 1 local audio and 1 local video track
|
822
|
-
* @returns {undefined}
|
823
|
-
* @private
|
824
|
-
* @memberof Meeting
|
825
|
-
*/
|
826
|
-
private sendLocalMediaReadyEvent;
|
827
|
-
/**
|
828
|
-
* Sets the local audio track on the class and emits an event to the developer
|
829
|
-
* @param {MediaStreamTrack} audioTrack
|
830
|
-
* @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
|
831
|
-
* @returns {undefined}
|
832
|
-
* @private
|
833
|
-
* @memberof Meeting
|
834
|
-
*/
|
835
|
-
private setLocalAudioTrack;
|
836
|
-
/**
|
837
|
-
* Sets the local video track on the class and emits an event to the developer
|
838
|
-
* @param {MediaStreamTrack} videoTrack
|
839
|
-
* @param {Boolean} emitEvent if true, a media ready event is emitted to the developer
|
840
|
-
* @returns {undefined}
|
841
|
-
* @private
|
842
|
-
* @memberof Meeting
|
843
|
-
*/
|
844
|
-
private setLocalVideoTrack;
|
845
|
-
/**
|
846
|
-
* Sets the local media stream on the class and emits an event to the developer
|
847
|
-
* @param {Stream} localStream the local media stream
|
848
|
-
* @returns {undefined}
|
849
|
-
* @public
|
850
|
-
* @memberof Meeting
|
851
|
-
*/
|
852
|
-
setLocalTracks(localStream: any): void;
|
853
|
-
/**
|
854
|
-
* Sets the local media stream on the class and emits an event to the developer
|
855
|
-
* @param {MediaStream} localShare the local media stream
|
856
|
-
* @returns {undefined}
|
857
|
-
* @public
|
858
|
-
* @memberof Meeting
|
859
|
-
*/
|
860
|
-
setLocalShareTrack(localShare: MediaStream): void;
|
861
|
-
/**
|
862
|
-
* Closes the local stream from the class and emits an event to the developer
|
863
|
-
* @returns {undefined}
|
864
|
-
* @event media:stopped
|
865
|
-
* @public
|
866
|
-
* @memberof Meeting
|
867
|
-
*/
|
868
|
-
closeLocalStream(): any;
|
869
|
-
/**
|
870
|
-
* Closes the local stream from the class and emits an event to the developer
|
871
|
-
* @returns {undefined}
|
872
|
-
* @event media:stopped
|
873
|
-
* @public
|
874
|
-
* @memberof Meeting
|
875
|
-
*/
|
876
|
-
closeLocalShare(): any;
|
877
|
-
/**
|
878
|
-
* Removes the local stream from the class and emits an event to the developer
|
879
|
-
* @returns {undefined}
|
880
|
-
* @public
|
881
|
-
* @memberof Meeting
|
882
|
-
*/
|
883
|
-
unsetLocalVideoTrack(): void;
|
884
|
-
/**
|
885
|
-
* Removes the local share from the class and emits an event to the developer
|
886
|
-
* @returns {undefined}
|
887
|
-
* @public
|
888
|
-
* @memberof Meeting
|
889
|
-
*/
|
890
|
-
unsetLocalShareTrack(): void;
|
891
|
-
/**
|
892
|
-
* sets up listner for mercury event
|
893
|
-
* @returns {undefined}
|
894
|
-
* @public
|
895
|
-
* @memberof Meeting
|
896
|
-
*/
|
897
|
-
setMercuryListener(): void;
|
898
|
-
/**
|
899
|
-
* Close the peer connections and remove them from the class. Triggers an event
|
900
|
-
* when each is closed.
|
901
|
-
* @returns {Promise} returns a resolved promise with an array of closed peer connections
|
902
|
-
* @public
|
903
|
-
* @memberof Meeting
|
904
|
-
*/
|
905
|
-
closePeerConnections(): any;
|
906
|
-
/**
|
907
|
-
* Unsets the peer connections on the class
|
908
|
-
* warning DO NOT CALL WITHOUT CLOSING PEER CONNECTIONS FIRST
|
909
|
-
* @param {PeerConnection} peerConnection
|
910
|
-
* @returns {undefined}
|
911
|
-
* @public
|
912
|
-
* @memberof Meeting
|
913
|
-
*/
|
914
|
-
unsetPeerConnections(): void;
|
915
|
-
/**
|
916
|
-
* Convenience method to set the correlation id for the Meeting
|
917
|
-
* @param {String} id correlation id to set on the class
|
918
|
-
* @returns {undefined}
|
919
|
-
* @private
|
920
|
-
* @memberof Meeting
|
921
|
-
*/
|
922
|
-
private setCorrelationId;
|
923
|
-
/**
|
924
|
-
* Mute the audio for a meeting
|
925
|
-
* @returns {Promise} resolves the data from muting audio {mute, self} or rejects if there is no audio set
|
926
|
-
* @public
|
927
|
-
* @memberof Meeting
|
928
|
-
*/
|
929
|
-
muteAudio(): any;
|
930
|
-
/**
|
931
|
-
* Unmute meeting audio
|
932
|
-
* @returns {Promise} resolves data from muting audio {mute, self} or rejects if there is no audio set
|
933
|
-
* @public
|
934
|
-
* @memberof Meeting
|
935
|
-
*/
|
936
|
-
unmuteAudio(): any;
|
937
|
-
/**
|
938
|
-
* Mute the video for a meeting
|
939
|
-
* @returns {Promise} resolves data from muting video {mute, self} or rejects if there is no video set
|
940
|
-
* @public
|
941
|
-
* @memberof Meeting
|
942
|
-
*/
|
943
|
-
muteVideo(): any;
|
944
|
-
/**
|
945
|
-
* Unmute meeting video
|
946
|
-
* @returns {Promise} resolves data from muting video {mute, self} or rejects if there is no video set
|
947
|
-
* @public
|
948
|
-
* @memberof Meeting
|
949
|
-
*/
|
950
|
-
unmuteVideo(): any;
|
951
|
-
/**
|
952
|
-
* Shorthand function to join AND set up media
|
953
|
-
* @param {Object} options - options to join with media
|
954
|
-
* @param {JoinOptions} [options.joinOptions] - see #join()
|
955
|
-
* @param {MediaDirection} options.mediaSettings - see #addMedia()
|
956
|
-
* @param {AudioVideo} [options.audioVideoOptions] - see #getMediaStreams()
|
957
|
-
* @returns {Promise} -- {join: see join(), media: see addMedia(), local: see getMediaStreams()}
|
958
|
-
* @public
|
959
|
-
* @memberof Meeting
|
960
|
-
* @example
|
961
|
-
* joinWithMedia({
|
962
|
-
* joinOptions: {resourceId: 'resourceId' },
|
963
|
-
* mediaSettings: {
|
964
|
-
* sendAudio: true,
|
965
|
-
* sendVideo: true,
|
966
|
-
* sendShare: false,
|
967
|
-
* receiveVideo:true,
|
968
|
-
* receiveAudio: true,
|
969
|
-
* receiveShare: true
|
970
|
-
* }
|
971
|
-
* audioVideoOptions: {
|
972
|
-
* audio: 'audioDeviceId',
|
973
|
-
* video: 'videoDeviceId'
|
974
|
-
* }})
|
975
|
-
*/
|
976
|
-
joinWithMedia(options?: {
|
977
|
-
joinOptions?: any;
|
978
|
-
mediaSettings: any;
|
979
|
-
audioVideoOptions?: any;
|
980
|
-
}): any;
|
981
|
-
/**
|
982
|
-
* Initiates the reconnection of the media in the meeting
|
983
|
-
*
|
984
|
-
* @param {object} options
|
985
|
-
* @returns {Promise} resolves with {reconnect} or errors with {error}
|
986
|
-
* @public
|
987
|
-
* @memberof Meeting
|
988
|
-
*/
|
989
|
-
reconnect(options?: object): any;
|
990
|
-
/**
|
991
|
-
* Check if the meeting supports the Webex Assistant feature
|
992
|
-
* @returns {boolean}
|
993
|
-
* @throws TranscriptionNotSupportedError
|
994
|
-
*/
|
995
|
-
isTranscriptionSupported(): boolean;
|
996
|
-
/**
|
997
|
-
* Monitor the Low-Latency Mercury (LLM) web socket connection on `onError` and `onClose` states
|
998
|
-
* @private
|
999
|
-
* @returns {void}
|
1000
|
-
*/
|
1001
|
-
private monitorTranscriptionSocketConnection;
|
1002
|
-
/**
|
1003
|
-
* Request for a WebSocket Url, open and monitor the WebSocket connection
|
1004
|
-
* @private
|
1005
|
-
* @returns {Promise<void>} a promise to open the WebSocket connection
|
1006
|
-
*/
|
1007
|
-
private startTranscription;
|
1008
|
-
/**
|
1009
|
-
* stop recieving Transcription by closing
|
1010
|
-
* the web socket connection properly
|
1011
|
-
* @returns {void}
|
1012
|
-
*/
|
1013
|
-
stopReceivingTranscription(): void;
|
1014
|
-
/**
|
1015
|
-
* triggers an event to notify that the user
|
1016
|
-
* will not receive any more transcription
|
1017
|
-
* @private
|
1018
|
-
* @returns{void}
|
1019
|
-
*/
|
1020
|
-
private triggerStopReceivingTranscriptionEvent;
|
1021
|
-
/**
|
1022
|
-
* Specify joining via audio (option: pstn), video, screenshare
|
1023
|
-
* @param {JoinOptions} options A configurable options object for joining a meeting
|
1024
|
-
* @returns {Promise} the join response
|
1025
|
-
* @public
|
1026
|
-
* @memberof Meeting
|
1027
|
-
* Scenario A: Joining own claimed personal meeting room
|
1028
|
-
* Scenario B: Joining other's claimed personal meeting room, do pass pin (if desired to join as host, or nullify), do pass moderator
|
1029
|
-
* Scenario C: Joining an unclaimed personal meeting room, -do not- pass pin or moderator on first try, -do- pass pin and moderator
|
1030
|
-
* if joining as host on second loop, pass pin and pass moderator if joining as guest on second loop
|
1031
|
-
* Scenario D: Joining any other way (sip, pstn, conversationUrl, link just need to specify resourceId)
|
1032
|
-
*/
|
1033
|
-
join(options?: any): any;
|
1034
|
-
/**
|
1035
|
-
* Use phone for meeting audio
|
1036
|
-
* @param {String} phoneNumber If provided, it will dial-out using this number. If not provided, dial-in will be used
|
1037
|
-
* @returns {Promise} Resolves once the dial-in or dial-out request has completed, or rejects if it failed
|
1038
|
-
* @public
|
1039
|
-
* @memberof Meeting
|
1040
|
-
*/
|
1041
|
-
usePhoneAudio(phoneNumber: string): any;
|
1042
|
-
/**
|
1043
|
-
* Determines if the given pstnStatus is in a state which implies the phone is provisioned
|
1044
|
-
* @param {String} pstnStatus
|
1045
|
-
* @returns {Boolean}
|
1046
|
-
* @private
|
1047
|
-
* @memberof Meeting
|
1048
|
-
*/
|
1049
|
-
private isPhoneProvisioned;
|
1050
|
-
/**
|
1051
|
-
* Enable dial-in for audio
|
1052
|
-
* @returns {Promise} Resolves once the dial-in request has completed, or rejects if it failed
|
1053
|
-
* @private
|
1054
|
-
* @memberof Meeting
|
1055
|
-
*/
|
1056
|
-
private dialInPstn;
|
1057
|
-
/**
|
1058
|
-
* Enable dial-out for audio
|
1059
|
-
* @param {String} phoneNumber Phone number to dial out to
|
1060
|
-
* @returns {Promise} Resolves once the dial-out request has completed (it doesn't wait for the user to answer the phone), or rejects if it failed
|
1061
|
-
* @private
|
1062
|
-
* @memberof Meeting
|
1063
|
-
*/
|
1064
|
-
private dialOutPstn;
|
1065
|
-
/**
|
1066
|
-
* Disconnect meeting audio via phone.
|
1067
|
-
* @returns {Promise} Resolves once the phone audio disconnection has completed
|
1068
|
-
* @public
|
1069
|
-
* @memberof Meeting
|
1070
|
-
* @returns {Promise}
|
1071
|
-
*/
|
1072
|
-
disconnectPhoneAudio(): Promise<[any, any]>;
|
1073
|
-
/**
|
1074
|
-
* Moves the call to the specified resourceId
|
1075
|
-
* @param {String} resourceId
|
1076
|
-
* @returns {Promise} once the move has been completed
|
1077
|
-
* @public
|
1078
|
-
* @memberof Meeting
|
1079
|
-
*/
|
1080
|
-
moveTo(resourceId: string): any;
|
1081
|
-
/**
|
1082
|
-
* Moves the call from the specified resourceId, back to computer
|
1083
|
-
* @param {String} resourceId
|
1084
|
-
* @returns {Promise} once the move has been completed
|
1085
|
-
* @public
|
1086
|
-
* @memberof Meeting
|
1087
|
-
*/
|
1088
|
-
moveFrom(resourceId: string): any;
|
1089
|
-
/**
|
1090
|
-
* Get local media streams based on options passed
|
1091
|
-
* @param {MediaDirection} mediaDirection A configurable options object for joining a meeting
|
1092
|
-
* @param {AudioVideo} [audioVideo] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
|
1093
|
-
* @param {SharePreferences} [sharePreferences] audio/video object to set audioinput and videoinput devices, see #Media.getUserMedia
|
1094
|
-
* @returns {Promise} see #Media.getUserMedia
|
1095
|
-
* @public
|
1096
|
-
* @todo should be static, or moved so can be called outside of a meeting
|
1097
|
-
* @memberof Meeting
|
1098
|
-
*/
|
1099
|
-
getMediaStreams: (mediaDirection: any, audioVideo?: any, sharePreferences?: any) => any;
|
1100
|
-
/**
|
1101
|
-
* Checks if the machine has at least one audio or video device
|
1102
|
-
* @param {Object} options
|
1103
|
-
* @param {Boolean} options.sendAudio
|
1104
|
-
* @param {Boolean} options.sendVideo
|
1105
|
-
* @returns {Object}
|
1106
|
-
* @memberof Meetings
|
1107
|
-
*/
|
1108
|
-
getSupportedDevices: ({ sendAudio, sendVideo, }: {
|
1109
|
-
sendAudio: boolean;
|
1110
|
-
sendVideo: boolean;
|
1111
|
-
}) => any;
|
1112
|
-
/**
|
1113
|
-
* Get the devices from the Media module
|
1114
|
-
* @returns {Promise} resolves to an array of DeviceInfo
|
1115
|
-
* @memberof Meetings
|
1116
|
-
*/
|
1117
|
-
getDevices: () => any;
|
1118
|
-
/**
|
1119
|
-
* Registers for all required StatsAnalyzer events
|
1120
|
-
* @private
|
1121
|
-
* @returns {void}
|
1122
|
-
* @memberof Meetings
|
1123
|
-
*/
|
1124
|
-
setupStatsAnalyzerEventHandlers: () => void;
|
1125
|
-
/**
|
1126
|
-
* Specify joining via audio (option: pstn), video, screenshare
|
1127
|
-
* @param {Object} options A configurable options object for joining a meeting
|
1128
|
-
* @param {Object} options.resourceId pass the deviceId
|
1129
|
-
* @param {MediaDirection} options.mediaSettings pass media options
|
1130
|
-
* @param {MediaStream} options.localStream
|
1131
|
-
* @param {MediaStream} options.localShare
|
1132
|
-
* @returns {Promise}
|
1133
|
-
* @public
|
1134
|
-
* @memberof Meeting
|
1135
|
-
*/
|
1136
|
-
addMedia(options?: any): any;
|
1137
|
-
/**
|
1138
|
-
* Informs if the peer connection is in a state that can be updated with updateMedia (audio/video/share)
|
1139
|
-
* @returns {Boolean}
|
1140
|
-
*/
|
1141
|
-
canUpdateMedia(): boolean;
|
1142
|
-
/**
|
1143
|
-
* Enqueues a media update operation.
|
1144
|
-
* @param {String} mediaUpdateType one of MEDIA_UPDATE_TYPE values
|
1145
|
-
* @param {Object} options
|
1146
|
-
* @returns {Promise}
|
1147
|
-
* @private
|
1148
|
-
* @memberof Meeting
|
1149
|
-
*/
|
1150
|
-
private enqueueMediaUpdate;
|
1151
|
-
/**
|
1152
|
-
* emits event when the negotation is completed
|
1153
|
-
* @returns {void}
|
1154
|
-
* @private
|
1155
|
-
* @memberof Meeting
|
1156
|
-
*/
|
1157
|
-
mediaNegotiatedEvent: () => void;
|
1158
|
-
/**
|
1159
|
-
* Checks if there are any queued media updates and runs the first one from
|
1160
|
-
* the queue if we are in a state that allows doing that.
|
1161
|
-
* @returns {undefined}
|
1162
|
-
* @public
|
1163
|
-
* @memberof Meeting
|
1164
|
-
*/
|
1165
|
-
processNextQueuedMediaUpdate: () => void;
|
1166
|
-
/**
|
1167
|
-
* A confluence of updateAudio, updateVideo, and updateShare
|
1168
|
-
* this function re-establishes all of the media streams with new options
|
1169
|
-
* @param {Object} options
|
1170
|
-
* @param {MediaStream} options.localStream
|
1171
|
-
* @param {MediaStream} options.localShare
|
1172
|
-
* @param {MediaDirection} options.mediaSettings
|
1173
|
-
* @returns {Promise}
|
1174
|
-
* @todo fix setRemoteStream for updateMedia
|
1175
|
-
* @public
|
1176
|
-
* @memberof Meeting
|
1177
|
-
*/
|
1178
|
-
updateMedia(options?: {
|
1179
|
-
localStream?: MediaStream;
|
1180
|
-
localShare?: MediaStream;
|
1181
|
-
mediaSettings?: any;
|
1182
|
-
}): any;
|
1183
|
-
/**
|
1184
|
-
* Update the main audio track with new parameters
|
1185
|
-
* @param {Object} options
|
1186
|
-
* @param {boolean} options.sendAudio
|
1187
|
-
* @param {boolean} options.receiveAudio
|
1188
|
-
* @param {MediaStream} options.stream Stream that contains the audio track to update
|
1189
|
-
* @returns {Promise}
|
1190
|
-
* @public
|
1191
|
-
* @memberof Meeting
|
1192
|
-
*/
|
1193
|
-
updateAudio(options: {
|
1194
|
-
sendAudio: boolean;
|
1195
|
-
receiveAudio: boolean;
|
1196
|
-
stream: MediaStream;
|
1197
|
-
}): Promise<any>;
|
1198
|
-
/**
|
1199
|
-
* Update the main video track with new parameters
|
1200
|
-
* @param {Object} options
|
1201
|
-
* @param {boolean} options.sendVideo
|
1202
|
-
* @param {boolean} options.receiveVideo
|
1203
|
-
* @param {MediaStream} options.stream Stream that contains the video track to update
|
1204
|
-
* @returns {Promise}
|
1205
|
-
* @public
|
1206
|
-
* @memberof Meeting
|
1207
|
-
*/
|
1208
|
-
updateVideo(options: {
|
1209
|
-
sendVideo: boolean;
|
1210
|
-
receiveVideo: boolean;
|
1211
|
-
stream: MediaStream;
|
1212
|
-
}): any;
|
1213
|
-
/**
|
1214
|
-
* Internal function when stopping a share stream, cleanup
|
1215
|
-
* @param {boolean} sendShare
|
1216
|
-
* @param {boolean} previousShareStatus
|
1217
|
-
* @returns {Promise}
|
1218
|
-
* @private
|
1219
|
-
* @memberof Meeting
|
1220
|
-
*/
|
1221
|
-
private checkForStopShare;
|
1222
|
-
/**
|
1223
|
-
* Update the share streams, can be used to start sharing
|
1224
|
-
* @param {Object} options
|
1225
|
-
* @param {boolean} options.sendShare
|
1226
|
-
* @param {boolean} options.receiveShare
|
1227
|
-
* @returns {Promise}
|
1228
|
-
* @public
|
1229
|
-
* @memberof Meeting
|
1230
|
-
*/
|
1231
|
-
updateShare(options: {
|
1232
|
-
sendShare?: boolean;
|
1233
|
-
receiveShare?: boolean;
|
1234
|
-
stream?: any;
|
1235
|
-
skipSignalingCheck?: boolean;
|
1236
|
-
}): any;
|
1237
|
-
/**
|
1238
|
-
* Do all the attach media pre set up before executing the actual attach
|
1239
|
-
* @param {MediaStream} localStream
|
1240
|
-
* @param {MediaStream} localShare
|
1241
|
-
* @param {MediaDirection} mediaSettings
|
1242
|
-
* @returns {undefined}
|
1243
|
-
* @private
|
1244
|
-
* @memberof Meeting
|
1245
|
-
*/
|
1246
|
-
private preMedia;
|
1247
|
-
/**
|
1248
|
-
* Acknowledge the meeting, outgoing or incoming
|
1249
|
-
* @param {String} type
|
1250
|
-
* @returns {Promise} resolve {message, ringing, response}
|
1251
|
-
* @public
|
1252
|
-
* @memberof Meeting
|
1253
|
-
*/
|
1254
|
-
acknowledge(type: string): any;
|
1255
|
-
/**
|
1256
|
-
* Decline this meeting
|
1257
|
-
* @param {String} reason
|
1258
|
-
* @returns {undefined}
|
1259
|
-
* @public
|
1260
|
-
* @memberof Meeting
|
1261
|
-
*/
|
1262
|
-
decline(reason: string): any;
|
1263
|
-
/**
|
1264
|
-
* Leave the current meeting
|
1265
|
-
* @param {Object} options leave options
|
1266
|
-
* @param {String} options.resourceId the device with which to leave from, empty if just the computer
|
1267
|
-
* @returns {Promise}
|
1268
|
-
* @public
|
1269
|
-
* @memberof Meeting
|
1270
|
-
*/
|
1271
|
-
leave(options?: {
|
1272
|
-
resourceId?: string;
|
1273
|
-
reason?: any;
|
1274
|
-
}): any;
|
1275
|
-
/**
|
1276
|
-
* Start sharing whiteboard given channelUrl
|
1277
|
-
* @param {string} channelUrl whiteboard url
|
1278
|
-
* @param {String} resourceToken token created by authorize media injector
|
1279
|
-
* @returns {Promise}
|
1280
|
-
* @public
|
1281
|
-
* @memberof Meeting
|
1282
|
-
*/
|
1283
|
-
startWhiteboardShare(channelUrl: string, resourceToken: string): any;
|
1284
|
-
/**
|
1285
|
-
* Stop sharing whiteboard given channelUrl
|
1286
|
-
* @param {string} channelUrl whiteboard url
|
1287
|
-
* @returns {Promise}
|
1288
|
-
* @public
|
1289
|
-
* @memberof Meeting
|
1290
|
-
*/
|
1291
|
-
stopWhiteboardShare(channelUrl: string): any;
|
1292
|
-
/**
|
1293
|
-
* Sends a request to Locus to obtain the screen share floor
|
1294
|
-
* @returns {Promise} see #meetingRequest.changeMeetingFloor
|
1295
|
-
* @private
|
1296
|
-
* @memberof Meeting
|
1297
|
-
*/
|
1298
|
-
private requestScreenShareFloor;
|
1299
|
-
/**
|
1300
|
-
* Stops the screen share
|
1301
|
-
* @returns {Promise} see #updateShare
|
1302
|
-
* @public
|
1303
|
-
* @memberof Meeting
|
1304
|
-
*/
|
1305
|
-
stopShare(options?: {}): any;
|
1306
|
-
/**
|
1307
|
-
* Sends a request to Locus to release the screen share floor.
|
1308
|
-
* @returns {Promise} see #meetingRequest.changeMeetingFloor
|
1309
|
-
* @private
|
1310
|
-
* @memberof Meeting
|
1311
|
-
*/
|
1312
|
-
private releaseScreenShareFloor;
|
1313
|
-
/**
|
1314
|
-
* Intiate a recording of this meeting
|
1315
|
-
* @returns {Promise}
|
1316
|
-
* @public
|
1317
|
-
* @memberof Meeting
|
1318
|
-
*/
|
1319
|
-
startRecording(): Promise<any>;
|
1320
|
-
/**
|
1321
|
-
* set the mute on entry flag for participants if you're the host
|
1322
|
-
* @returns {Promise}
|
1323
|
-
* @param {boolean} enabled
|
1324
|
-
* @public
|
1325
|
-
* @memberof Meeting
|
1326
|
-
*/
|
1327
|
-
setMuteOnEntry(enabled: boolean): Promise<any>;
|
1328
|
-
/**
|
1329
|
-
* set the disallow unmute flag for participants if you're the host
|
1330
|
-
* @returns {Promise}
|
1331
|
-
* @param {boolean} enabled
|
1332
|
-
* @public
|
1333
|
-
* @memberof Meeting
|
1334
|
-
*/
|
1335
|
-
setDisallowUnmute(enabled: boolean): Promise<any>;
|
1336
|
-
/**
|
1337
|
-
* End the recording of this meeting
|
1338
|
-
* @returns {Promise}
|
1339
|
-
* @public
|
1340
|
-
* @memberof Meeting
|
1341
|
-
*/
|
1342
|
-
stopRecording(): Promise<any>;
|
1343
|
-
/**
|
1344
|
-
* Pauses the recording of this meeting
|
1345
|
-
* @returns {Promise}
|
1346
|
-
* @public
|
1347
|
-
* @memberof Meeting
|
1348
|
-
*/
|
1349
|
-
pauseRecording(): Promise<any>;
|
1350
|
-
/**
|
1351
|
-
* Resumes the recording of this meeting
|
1352
|
-
* @returns {Promise}
|
1353
|
-
* @public
|
1354
|
-
* @memberof Meeting
|
1355
|
-
*/
|
1356
|
-
resumeRecording(): Promise<any>;
|
1357
|
-
/**
|
1358
|
-
* Locks the current meeting if possible
|
1359
|
-
* @returns {Promise}
|
1360
|
-
* @public
|
1361
|
-
* @memberof Meeting
|
1362
|
-
*/
|
1363
|
-
lockMeeting(): any;
|
1364
|
-
/**
|
1365
|
-
* Unlocks the current meeting if possible
|
1366
|
-
* @returns {Promise}
|
1367
|
-
* @public
|
1368
|
-
* @memberof Meeting
|
1369
|
-
*/
|
1370
|
-
unlockMeeting(): any;
|
1371
|
-
/**
|
1372
|
-
* Logs an error message and returns a rejected promise with same message
|
1373
|
-
* @param {String} message
|
1374
|
-
* @returns {Promise}
|
1375
|
-
* @private
|
1376
|
-
* @memberof Meeting
|
1377
|
-
*/
|
1378
|
-
private rejectWithErrorLog;
|
1379
|
-
/**
|
1380
|
-
* Sends DTMF tones to the current meeting
|
1381
|
-
* @param {String} tones a string of one or more DTMF tones to send
|
1382
|
-
* @returns {Promise}
|
1383
|
-
* @public
|
1384
|
-
* @memberof Meeting
|
1385
|
-
*/
|
1386
|
-
sendDTMF(tones: string): any;
|
1387
|
-
/**
|
1388
|
-
* Sends request to change layout type for the current meeting for the specific participant/device only
|
1389
|
-
* @param {String} [layoutType] a layout type that should be available in meeting constants {@link #layout_types}
|
1390
|
-
* @param {Object} renderInfo preferred dimensions for the remote main and content streams (server can ignore it)
|
1391
|
-
* @param {Object} renderInfo.main preferred dimensions for the remote main video stream
|
1392
|
-
* @param {Number} renderInfo.main.width preferred width of main video stream
|
1393
|
-
* @param {Number} renderInfo.main.height preferred height of main video stream
|
1394
|
-
* @param {Object} renderInfo.content preferred dimensions for the remote content share stream
|
1395
|
-
* @param {Number} renderInfo.content.width preferred width of content share stream
|
1396
|
-
* @param {Number} renderInfo.content.height preferred height of content share stream
|
1397
|
-
* @returns {Promise}
|
1398
|
-
* @public
|
1399
|
-
* @memberof Meeting
|
1400
|
-
*/
|
1401
|
-
changeVideoLayout(layoutType?: string, renderInfo?: {
|
1402
|
-
main: {
|
1403
|
-
width: number;
|
1404
|
-
height: number;
|
1405
|
-
};
|
1406
|
-
content: {
|
1407
|
-
width: number;
|
1408
|
-
height: number;
|
1409
|
-
};
|
1410
|
-
}): any;
|
1411
|
-
/**
|
1412
|
-
* Sets the quality of the local video stream
|
1413
|
-
* @param {String} level {LOW|MEDIUM|HIGH}
|
1414
|
-
* @returns {Promise<MediaStream>} localStream
|
1415
|
-
*/
|
1416
|
-
setLocalVideoQuality(level: string): any;
|
1417
|
-
/**
|
1418
|
-
* Sets the quality level of the remote incoming media
|
1419
|
-
* @param {String} level {LOW|MEDIUM|HIGH}
|
1420
|
-
* @returns {Promise}
|
1421
|
-
*/
|
1422
|
-
setRemoteQualityLevel(level: string): any;
|
1423
|
-
/**
|
1424
|
-
* This is deprecated, please use setLocalVideoQuality for setting local and setRemoteQualityLevel for remote
|
1425
|
-
* @param {String} level {LOW|MEDIUM|HIGH}
|
1426
|
-
* @returns {Promise}
|
1427
|
-
* @deprecated After FHD support
|
1428
|
-
*/
|
1429
|
-
setMeetingQuality(level: string): any;
|
1430
|
-
/**
|
1431
|
-
* @param {Object} options parameter
|
1432
|
-
* @param {Boolean} options.sendAudio send audio from the display share
|
1433
|
-
* @param {Boolean} options.sendShare send video from the display share
|
1434
|
-
* @param {Object} options.sharePreferences
|
1435
|
-
* @param {MediaTrackConstraints} options.sharePreferences.shareConstraints constraints to apply to video
|
1436
|
-
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/MediaTrackConstraints}
|
1437
|
-
* @param {Boolean} options.sharePreferences.highFrameRate if shareConstraints isn't provided, set default values based off of this boolean
|
1438
|
-
* @returns {Promise}
|
1439
|
-
*/
|
1440
|
-
shareScreen(options?: {
|
1441
|
-
sendAudio: boolean;
|
1442
|
-
sendShare: boolean;
|
1443
|
-
sharePreferences: {
|
1444
|
-
shareConstraints: MediaTrackConstraints;
|
1445
|
-
};
|
1446
|
-
}): any;
|
1447
|
-
/**
|
1448
|
-
* Functionality for when a share is ended.
|
1449
|
-
* @private
|
1450
|
-
* @memberof Meeting
|
1451
|
-
* @param {MediaStream} localShare
|
1452
|
-
* @returns {undefined}
|
1453
|
-
*/
|
1454
|
-
private handleShareTrackEnded;
|
1455
|
-
/**
|
1456
|
-
* Emits the 'network:quality' event
|
1457
|
-
* 1 indicates an acceptable uplink network.
|
1458
|
-
* 0 indicates an unacceptable uplink network based on a predefined threshold
|
1459
|
-
* @returns {undefined}
|
1460
|
-
* @param {Object} res - payload of emitNetworkQuality
|
1461
|
-
* @property {string} mediaType {video|audio}
|
1462
|
-
* @property {number} networkQualityScore - {1|0}
|
1463
|
-
* @private
|
1464
|
-
* @memberof Meeting
|
1465
|
-
*/
|
1466
|
-
private sendNetworkQualityEvent;
|
1467
|
-
/**
|
1468
|
-
* Handle logging the media
|
1469
|
-
* @param {Object} audioTrack The audio track
|
1470
|
-
* @param {Object} videoTrack The video track
|
1471
|
-
* @private
|
1472
|
-
* @returns {undefined}
|
1473
|
-
*/
|
1474
|
-
private handleMediaLogging;
|
1475
|
-
/**
|
1476
|
-
* @param {string} typeMedia 'audio' or 'video'
|
1477
|
-
* @returns {undefined}
|
1478
|
-
*/
|
1479
|
-
setStartSetupDelay(typeMedia: string): void;
|
1480
|
-
/**
|
1481
|
-
* @param {string} typeMedia 'audio' or 'video'
|
1482
|
-
* @returns {undefined}
|
1483
|
-
*/
|
1484
|
-
setEndSetupDelay(typeMedia: string): void;
|
1485
|
-
/**
|
1486
|
-
* @param {string} typeMedia 'audio' or 'video'
|
1487
|
-
* @returns {string} duration between start and end of setup
|
1488
|
-
*/
|
1489
|
-
getSetupDelayDuration(typeMedia: string): number;
|
1490
|
-
/**
|
1491
|
-
* @param {string} typeMedia 'audio' or 'video'
|
1492
|
-
* @returns {undefined}
|
1493
|
-
*/
|
1494
|
-
setStartSendingMediaDelay(typeMedia: string): void;
|
1495
|
-
/**
|
1496
|
-
* @param {string} typeMedia 'audio' or 'video'
|
1497
|
-
* @returns {undefined}
|
1498
|
-
*/
|
1499
|
-
setEndSendingMediaDelay(typeMedia: string): void;
|
1500
|
-
/**
|
1501
|
-
* @param {string} typeMedia 'audio' or 'video'
|
1502
|
-
* @returns {string} duration between join response and first media tx
|
1503
|
-
*/
|
1504
|
-
getSendingMediaDelayDuration(typeMedia: string): number;
|
1505
|
-
/**
|
1506
|
-
*
|
1507
|
-
* @returns {undefined}
|
1508
|
-
*/
|
1509
|
-
setStartLocalSDPGenRemoteSDPRecvDelay(): void;
|
1510
|
-
/**
|
1511
|
-
*
|
1512
|
-
* @returns {undefined}
|
1513
|
-
*/
|
1514
|
-
setEndLocalSDPGenRemoteSDPRecvDelay(): void;
|
1515
|
-
/**
|
1516
|
-
*
|
1517
|
-
* @returns {string} duration between local SDP generation and remote SDP reception
|
1518
|
-
*/
|
1519
|
-
getLocalSDPGenRemoteSDPRecvDelay(): number;
|
1520
|
-
/**
|
1521
|
-
*
|
1522
|
-
* @returns {undefined}
|
1523
|
-
*/
|
1524
|
-
setStartCallInitiateJoinReq(): void;
|
1525
|
-
/**
|
1526
|
-
*
|
1527
|
-
* @returns {undefined}
|
1528
|
-
*/
|
1529
|
-
setEndCallInitiateJoinReq(): void;
|
1530
|
-
/**
|
1531
|
-
*
|
1532
|
-
* @returns {string} duration between call initiate and sending join request to locus
|
1533
|
-
*/
|
1534
|
-
getCallInitiateJoinReq(): number;
|
1535
|
-
/**
|
1536
|
-
*
|
1537
|
-
* @returns {undefined}
|
1538
|
-
*/
|
1539
|
-
setStartJoinReqResp(): void;
|
1540
|
-
/**
|
1541
|
-
*
|
1542
|
-
* @returns {undefined}
|
1543
|
-
*/
|
1544
|
-
setEndJoinReqResp(): void;
|
1545
|
-
/**
|
1546
|
-
*
|
1547
|
-
* @returns {string} duration between sending locus join request and receiving join response
|
1548
|
-
*/
|
1549
|
-
getJoinReqResp(): number;
|
1550
|
-
/**
|
1551
|
-
*
|
1552
|
-
* @returns {string} duration between call initiate and successful locus join (even if it is in lobby)
|
1553
|
-
*/
|
1554
|
-
getTotalJmt(): number;
|
1555
|
-
/**
|
1556
|
-
* End the current meeting for all
|
1557
|
-
* @returns {Promise}
|
1558
|
-
* @public
|
1559
|
-
* @memberof Meeting
|
1560
|
-
*/
|
1561
|
-
endMeetingForAll(): any;
|
1562
|
-
/**
|
1563
|
-
* clear the meeting data
|
1564
|
-
* @returns {undefined}
|
1565
|
-
* @public
|
1566
|
-
* @memberof Meeting
|
1567
|
-
*/
|
1568
|
-
clearMeetingData: () => void;
|
1569
|
-
/**
|
1570
|
-
* Internal API to return status of BNR
|
1571
|
-
* @returns {Boolean}
|
1572
|
-
* @public
|
1573
|
-
* @memberof Meeting
|
1574
|
-
*/
|
1575
|
-
isBnrEnabled(): any;
|
1576
|
-
/**
|
1577
|
-
* Internal API to obtain BNR enabled MediaStream
|
1578
|
-
* @returns {Promise<MediaStreamTrack>}
|
1579
|
-
* @private
|
1580
|
-
* @param {MedaiStreamTrack} audioTrack from updateAudio
|
1581
|
-
* @memberof Meeting
|
1582
|
-
*/
|
1583
|
-
private internal_enableBNR;
|
1584
|
-
/**
|
1585
|
-
* Enable the audio track with BNR for a meeting
|
1586
|
-
* @returns {Promise} resolves the data from enable bnr or rejects if there is no audio or audio is muted
|
1587
|
-
* @public
|
1588
|
-
* @memberof Meeting
|
1589
|
-
*/
|
1590
|
-
enableBNR(): any;
|
1591
|
-
/**
|
1592
|
-
* Disable the BNR for an audio track
|
1593
|
-
* @returns {Promise} resolves the data from disable bnr or rejects if there is no audio set
|
1594
|
-
* @public
|
1595
|
-
* @memberof Meeting
|
1596
|
-
*/
|
1597
|
-
disableBNR(): any;
|
1598
|
-
/**
|
1599
|
-
* starts keepAlives being sent
|
1600
|
-
* @returns {void}
|
1601
|
-
* @private
|
1602
|
-
* @memberof Meeting
|
1603
|
-
*/
|
1604
|
-
startKeepAlive: () => void;
|
1605
|
-
/**
|
1606
|
-
* stops keepAlives being sent
|
1607
|
-
* @returns {void}
|
1608
|
-
* @private
|
1609
|
-
* @memberof Meeting
|
1610
|
-
*/
|
1611
|
-
stopKeepAlive: () => void;
|
1612
|
-
/**
|
1613
|
-
* Send a reaction inside the meeting.
|
1614
|
-
*
|
1615
|
-
* @param {ReactionType} reactionType - type of reaction to be sent. Example: "thumbs_up"
|
1616
|
-
* @param {SkinToneType} skinToneType - skin tone for the reaction. Example: "medium_dark"
|
1617
|
-
* @returns {Promise}
|
1618
|
-
* @public
|
1619
|
-
* @memberof Meeting
|
1620
|
-
*/
|
1621
|
-
sendReaction(reactionType: ReactionType, skinToneType?: SkinToneType): any;
|
1622
|
-
}
|