@webex/plugin-meetings 3.8.1 → 3.9.0-multiple-llm.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -13
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/constants.js +34 -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 +107 -95
- package/dist/locus-info/index.js.map +1 -1
- package/dist/locus-info/parser.js +4 -1
- package/dist/locus-info/parser.js.map +1 -1
- package/dist/media/index.js +2 -2
- package/dist/media/index.js.map +1 -1
- package/dist/media/properties.js +53 -5
- package/dist/media/properties.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 +13 -1
- package/dist/meeting/in-meeting-actions.js.map +1 -1
- package/dist/meeting/index.js +555 -296
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/muteState.js +2 -5
- package/dist/meeting/muteState.js.map +1 -1
- package/dist/meeting/request.js +44 -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 +98 -13
- package/dist/meeting/util.js.map +1 -1
- package/dist/meeting-info/meeting-info-v2.js +29 -21
- package/dist/meeting-info/meeting-info-v2.js.map +1 -1
- package/dist/meetings/index.js +18 -10
- package/dist/meetings/index.js.map +1 -1
- package/dist/member/types.js.map +1 -1
- package/dist/members/collection.js +13 -0
- package/dist/members/collection.js.map +1 -1
- package/dist/members/index.js +53 -29
- 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 +25 -8
- package/dist/members/util.js.map +1 -1
- package/dist/metrics/constants.js +3 -1
- 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 +8 -13
- package/dist/reachability/index.js.map +1 -1
- package/dist/types/constants.d.ts +30 -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 +54 -10
- package/dist/types/media/properties.d.ts +21 -0
- package/dist/types/meeting/brbState.d.ts +0 -1
- package/dist/types/meeting/in-meeting-actions.d.ts +12 -0
- package/dist/types/meeting/index.d.ts +58 -20
- package/dist/types/meeting/request.d.ts +18 -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 +13 -3
- package/dist/types/meeting-info/meeting-info-v2.d.ts +6 -3
- package/dist/types/meetings/index.d.ts +3 -1
- package/dist/types/member/types.d.ts +1 -0
- package/dist/types/members/collection.d.ts +6 -0
- package/dist/types/members/index.d.ts +22 -9
- package/dist/types/members/request.d.ts +1 -1
- package/dist/types/members/util.d.ts +13 -6
- package/dist/types/metrics/constants.d.ts +2 -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 +25 -26
- package/src/constants.ts +34 -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 +174 -96
- package/src/locus-info/parser.ts +5 -1
- package/src/media/index.ts +2 -2
- package/src/media/properties.ts +43 -0
- package/src/meeting/brbState.ts +13 -9
- package/src/meeting/in-meeting-actions.ts +25 -0
- package/src/meeting/index.ts +362 -75
- package/src/meeting/muteState.ts +2 -6
- package/src/meeting/request.ts +39 -0
- package/src/meeting/request.type.ts +64 -0
- package/src/meeting/type.ts +9 -0
- package/src/meeting/util.ts +114 -22
- package/src/meeting-info/meeting-info-v2.ts +24 -5
- package/src/meetings/index.ts +12 -5
- package/src/member/types.ts +1 -0
- package/src/members/collection.ts +11 -0
- package/src/members/index.ts +51 -15
- package/src/members/request.ts +2 -2
- package/src/members/util.ts +34 -6
- package/src/metrics/constants.ts +2 -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 +8 -16
- package/test/unit/spec/common/browser-detection.js +0 -24
- 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 +270 -97
- package/test/unit/spec/locus-info/parser.js +3 -2
- package/test/unit/spec/media/index.ts +107 -0
- package/test/unit/spec/media/properties.ts +137 -0
- package/test/unit/spec/meeting/brbState.ts +23 -4
- package/test/unit/spec/meeting/in-meeting-actions.ts +12 -0
- package/test/unit/spec/meeting/index.js +1194 -97
- package/test/unit/spec/meeting/muteState.js +32 -6
- package/test/unit/spec/meeting/request.js +92 -0
- package/test/unit/spec/meeting/utils.js +167 -17
- package/test/unit/spec/meeting-info/meetinginfov2.js +8 -3
- package/test/unit/spec/meetings/index.js +12 -5
- package/test/unit/spec/members/collection.js +120 -0
- package/test/unit/spec/members/index.js +140 -12
- package/test/unit/spec/members/request.js +57 -2
- package/test/unit/spec/members/utils.js +139 -17
- 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 +160 -9
- package/test/unit/spec/roap/turnDiscovery.ts +3 -3
- 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
@@ -1,4 +1,5 @@
|
|
1
1
|
import { RoleAssignmentOptions, RoleAssignmentRequest, ServerRoleShape } from './types';
|
2
|
+
import { Invitee } from '../meeting/type';
|
2
3
|
declare const MembersUtil: {
|
3
4
|
/**
|
4
5
|
* @param {Object} invitee with emailAddress, email or phoneNumber
|
@@ -26,6 +27,7 @@ declare const MembersUtil: {
|
|
26
27
|
*/
|
27
28
|
getAddMemberBody: (options: any) => {
|
28
29
|
invitees: {
|
30
|
+
isInternalNumber?: any;
|
29
31
|
roles?: any;
|
30
32
|
address: any;
|
31
33
|
}[];
|
@@ -55,13 +57,14 @@ declare const MembersUtil: {
|
|
55
57
|
uri: any;
|
56
58
|
body: {
|
57
59
|
invitees: {
|
60
|
+
isInternalNumber?: any;
|
58
61
|
roles?: any;
|
59
62
|
address: any;
|
60
63
|
}[];
|
61
64
|
alertIfActive: any;
|
62
65
|
};
|
63
66
|
};
|
64
|
-
isInvalidInvitee: (invitee:
|
67
|
+
isInvalidInvitee: (invitee: Invitee) => boolean;
|
65
68
|
getRemoveMemberRequestParams: (options: any) => {
|
66
69
|
method: string;
|
67
70
|
uri: string;
|
@@ -107,13 +110,15 @@ declare const MembersUtil: {
|
|
107
110
|
* @param {String} requestingParticipantId id of the participant who is sending request (optional)
|
108
111
|
* @param {String} alias alias name
|
109
112
|
* @param {String} locusUrl url
|
113
|
+
* @param {String} suffix optional suffix
|
110
114
|
* @returns {Object} consists of {memberID: string, requestingParticipantId: string, alias: string, locusUrl: string}
|
111
115
|
*/
|
112
|
-
generateEditDisplayNameMemberOptions: (memberId: any, requestingParticipantId: any, alias: any, locusUrl: any) => {
|
116
|
+
generateEditDisplayNameMemberOptions: (memberId: any, requestingParticipantId: any, alias: any, locusUrl: any, suffix: any) => {
|
113
117
|
memberId: any;
|
114
118
|
requestingParticipantId: any;
|
115
119
|
alias: any;
|
116
120
|
locusUrl: any;
|
121
|
+
suffix: any;
|
117
122
|
};
|
118
123
|
getMuteMemberRequestParams: (options: any) => {
|
119
124
|
method: string;
|
@@ -175,8 +180,9 @@ declare const MembersUtil: {
|
|
175
180
|
method: string;
|
176
181
|
uri: string;
|
177
182
|
body: {
|
178
|
-
aliasValue:
|
179
|
-
requestingParticipantId:
|
183
|
+
aliasValue: string;
|
184
|
+
requestingParticipantId: string;
|
185
|
+
suffixValue?: string;
|
180
186
|
};
|
181
187
|
};
|
182
188
|
getTransferHostToMemberRequestParams: (options: any) => {
|
@@ -228,16 +234,17 @@ declare const MembersUtil: {
|
|
228
234
|
}[];
|
229
235
|
};
|
230
236
|
};
|
231
|
-
|
237
|
+
cancelInviteByMemberIdOptions: (invitee: any, locusUrl: any) => {
|
232
238
|
invitee: any;
|
233
239
|
locusUrl: any;
|
234
240
|
};
|
235
|
-
|
241
|
+
generateCancelInviteByMemberIdRequestParams: (options: any) => {
|
236
242
|
method: string;
|
237
243
|
uri: any;
|
238
244
|
body: {
|
239
245
|
actionType: string;
|
240
246
|
invitees: {
|
247
|
+
isInternalNumber?: any;
|
241
248
|
address: any;
|
242
249
|
}[];
|
243
250
|
};
|
@@ -69,6 +69,7 @@ declare const BEHAVIORAL_METRICS: {
|
|
69
69
|
MEETING_INFO_POLICY_ERROR: string;
|
70
70
|
LOCUS_DELTA_SYNC_FAILED: string;
|
71
71
|
LOCUS_DELTA_OUT_OF_ORDER: string;
|
72
|
+
LOCUS_SYNC_HANDLING_FAILED: string;
|
72
73
|
PERMISSION_TOKEN_REFRESH: string;
|
73
74
|
PERMISSION_TOKEN_REFRESH_ERROR: string;
|
74
75
|
TURN_DISCOVERY_LATENCY: string;
|
@@ -82,5 +83,6 @@ declare const BEHAVIORAL_METRICS: {
|
|
82
83
|
VERIFY_REGISTRATION_ID_SUCCESS: string;
|
83
84
|
VERIFY_REGISTRATION_ID_ERROR: string;
|
84
85
|
JOIN_FORBIDDEN_ERROR: string;
|
86
|
+
MEDIA_ISSUE_DETECTED: string;
|
85
87
|
};
|
86
88
|
export { BEHAVIORAL_METRICS as default };
|
@@ -7,9 +7,17 @@ export declare const RemoteMediaEvents: {
|
|
7
7
|
Stopped: string;
|
8
8
|
};
|
9
9
|
export type RemoteVideoResolution = 'thumbnail' | 'very small' | 'small' | 'medium' | 'large' | 'best';
|
10
|
+
export declare const MAX_FS_VALUES: {
|
11
|
+
'90p': number;
|
12
|
+
'180p': number;
|
13
|
+
'360p': number;
|
14
|
+
'540p': number;
|
15
|
+
'720p': number;
|
16
|
+
'1080p': number;
|
17
|
+
};
|
10
18
|
/**
|
11
19
|
* Converts pane size into h264 maxFs
|
12
|
-
* @param {
|
20
|
+
* @param {RemoteVideoResolution} paneSize
|
13
21
|
* @returns {number}
|
14
22
|
*/
|
15
23
|
export declare function getMaxFs(paneSize: RemoteVideoResolution): number;
|
@@ -29,6 +37,12 @@ export declare class RemoteMedia extends EventsScope {
|
|
29
37
|
private readonly options;
|
30
38
|
private mediaRequestId?;
|
31
39
|
readonly id: RemoteMediaId;
|
40
|
+
/**
|
41
|
+
* The max frame size of the media request, used for logging and media requests.
|
42
|
+
* Set by setSizeHint() based on video element dimensions.
|
43
|
+
* When > 0, this value takes precedence over options.resolution in sendMediaRequest().
|
44
|
+
*/
|
45
|
+
private maxFrameSize;
|
32
46
|
/**
|
33
47
|
* Constructs RemoteMedia instance
|
34
48
|
*
|
@@ -45,6 +59,11 @@ export declare class RemoteMedia extends EventsScope {
|
|
45
59
|
* @note width/height of 0 will be ignored
|
46
60
|
*/
|
47
61
|
setSizeHint(width: any, height: any): void;
|
62
|
+
/**
|
63
|
+
* Get the current effective maxFs value that would be used in media requests
|
64
|
+
* @returns {number | undefined} The maxFs value, or undefined if no constraints
|
65
|
+
*/
|
66
|
+
getEffectiveMaxFs(): number | undefined;
|
48
67
|
/**
|
49
68
|
* registers event listeners on the receive slot and forwards all the events
|
50
69
|
*/
|
@@ -45,5 +45,16 @@ export declare class RemoteMediaGroup {
|
|
45
45
|
* @returns true if remote media is found
|
46
46
|
*/
|
47
47
|
includes(remoteMedia: RemoteMedia, filter?: 'all' | 'pinned' | 'unpinned'): boolean;
|
48
|
+
/**
|
49
|
+
* Calculate the effective maxFs for the active speaker media request based on unpinned RemoteMedia instances
|
50
|
+
* @returns {number | undefined} The calculated maxFs value, or undefined if no constraints
|
51
|
+
* @private
|
52
|
+
*/
|
53
|
+
private getEffectiveMaxFsForActiveSpeaker;
|
54
|
+
/**
|
55
|
+
* Get the current effective maxFs that would be used for the active speaker media request
|
56
|
+
* @returns {number | undefined} The effective maxFs value
|
57
|
+
*/
|
58
|
+
getEffectiveMaxFs(): number | undefined;
|
48
59
|
}
|
49
60
|
export {};
|
@@ -1,7 +1,17 @@
|
|
1
1
|
import { SendSlot, MediaType, LocalStream, MultistreamRoapMediaConnection, NamedMediaGroup, StreamState } from '@webex/internal-media-core';
|
2
|
+
/**
|
3
|
+
* This class is used to manage the sendSlots for the given media types.
|
4
|
+
*/
|
2
5
|
export default class SendSlotManager {
|
3
6
|
private readonly slots;
|
4
7
|
private readonly LoggerProxy;
|
8
|
+
private readonly sourceStateOverrides;
|
9
|
+
/**
|
10
|
+
* Constructor for SendSlotManager
|
11
|
+
*
|
12
|
+
* @param {any} LoggerProxy is used to log the messages
|
13
|
+
* @constructor
|
14
|
+
*/
|
5
15
|
constructor(LoggerProxy: any);
|
6
16
|
/**
|
7
17
|
* This method is used to create a sendSlot for the given mediaType and returns the created sendSlot
|
@@ -32,6 +42,12 @@ export default class SendSlotManager {
|
|
32
42
|
* @returns {void}
|
33
43
|
*/
|
34
44
|
setSourceStateOverride(mediaType: MediaType, state: StreamState | null): void;
|
45
|
+
/**
|
46
|
+
* Gets the source state override for the given media type.
|
47
|
+
* @param {MediaType} mediaType - The type of media to get the source state override for.
|
48
|
+
* @returns {StreamState | null} - The current source state override or null if not set.
|
49
|
+
*/
|
50
|
+
private getSourceStateOverride;
|
35
51
|
/**
|
36
52
|
* This method publishes the given stream to the sendSlot for the given mediaType
|
37
53
|
* @param {MediaType} mediaType MediaType of the sendSlot to which a stream needs to be published (AUDIO_MAIN/VIDEO_MAIN/AUDIO_SLIDES/VIDEO_SLIDES)
|
@@ -68,12 +68,12 @@ export default class Reachability extends EventsScope {
|
|
68
68
|
}>;
|
69
69
|
/**
|
70
70
|
* Checks if the given subnet is reachable
|
71
|
-
* @param {string}
|
71
|
+
* @param {string} selectedSubnetFirstOctet - selected subnet first octet, e.g. "10" for "10.X.X.X"
|
72
72
|
* @returns {boolean | null} true if reachable, false if not reachable, null if mediaServerIp is not provided
|
73
73
|
* @public
|
74
74
|
* @memberof Reachability
|
75
75
|
*/
|
76
|
-
isSubnetReachable(
|
76
|
+
isSubnetReachable(selectedSubnetFirstOctet: string): boolean | null;
|
77
77
|
/**
|
78
78
|
* Gets a list of media clusters from the backend and performs reachability checks on all the clusters
|
79
79
|
* @param {string} trigger - explains the reason for starting reachability
|
package/dist/webinar/index.js
CHANGED
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@webex/plugin-meetings",
|
3
3
|
"description": "",
|
4
|
-
"license": "Cisco
|
4
|
+
"license": "Cisco's General Terms (https://www.cisco.com/site/us/en/about/legal/contract-experience/index.html)",
|
5
5
|
"contributors": [
|
6
6
|
"Adam Weeks <adweeks@cisco.com> (https://adamweeks.com/)",
|
7
7
|
"Arun Ganeshan <arungane@cisco.com>",
|
@@ -19,7 +19,7 @@
|
|
19
19
|
"directory": "packages/@webex/plugin-meetings"
|
20
20
|
},
|
21
21
|
"engines": {
|
22
|
-
"node": ">=
|
22
|
+
"node": ">=18"
|
23
23
|
},
|
24
24
|
"browserify": {
|
25
25
|
"transform": [
|
@@ -43,13 +43,12 @@
|
|
43
43
|
"@webex/eslint-config-legacy": "0.0.0",
|
44
44
|
"@webex/jest-config-legacy": "0.0.0",
|
45
45
|
"@webex/legacy-tools": "0.0.0",
|
46
|
-
"@webex/plugin-
|
47
|
-
"@webex/
|
48
|
-
"@webex/test-helper-
|
49
|
-
"@webex/test-helper-
|
50
|
-
"@webex/test-helper-
|
51
|
-
"@webex/test-helper-
|
52
|
-
"@webex/test-helper-test-users": "3.8.1",
|
46
|
+
"@webex/plugin-rooms": "3.9.0-multiple-llm.1",
|
47
|
+
"@webex/test-helper-chai": "3.9.0-multiple-llm.0",
|
48
|
+
"@webex/test-helper-mocha": "3.9.0-multiple-llm.0",
|
49
|
+
"@webex/test-helper-mock-webex": "3.9.0-multiple-llm.0",
|
50
|
+
"@webex/test-helper-retry": "3.9.0-multiple-llm.0",
|
51
|
+
"@webex/test-helper-test-users": "3.9.0-multiple-llm.0",
|
53
52
|
"chai": "^4.3.4",
|
54
53
|
"chai-as-promised": "^7.1.1",
|
55
54
|
"eslint": "^8.24.0",
|
@@ -61,23 +60,23 @@
|
|
61
60
|
"typescript": "^4.7.4"
|
62
61
|
},
|
63
62
|
"dependencies": {
|
64
|
-
"@webex/common": "3.
|
65
|
-
"@webex/event-dictionary-ts": "^1.0.
|
66
|
-
"@webex/internal-media-core": "2.
|
67
|
-
"@webex/internal-plugin-conversation": "3.
|
68
|
-
"@webex/internal-plugin-device": "3.
|
69
|
-
"@webex/internal-plugin-llm": "3.
|
70
|
-
"@webex/internal-plugin-mercury": "3.
|
71
|
-
"@webex/internal-plugin-metrics": "3.
|
72
|
-
"@webex/internal-plugin-support": "3.
|
73
|
-
"@webex/internal-plugin-user": "3.
|
74
|
-
"@webex/internal-plugin-voicea": "3.
|
75
|
-
"@webex/media-helpers": "3.
|
76
|
-
"@webex/plugin-people": "3.
|
77
|
-
"@webex/plugin-rooms": "3.
|
63
|
+
"@webex/common": "3.9.0-multiple-llm.0",
|
64
|
+
"@webex/event-dictionary-ts": "^1.0.1930",
|
65
|
+
"@webex/internal-media-core": "2.19.0",
|
66
|
+
"@webex/internal-plugin-conversation": "3.9.0-multiple-llm.1",
|
67
|
+
"@webex/internal-plugin-device": "3.9.0-multiple-llm.0",
|
68
|
+
"@webex/internal-plugin-llm": "3.9.0-multiple-llm.1",
|
69
|
+
"@webex/internal-plugin-mercury": "3.9.0-multiple-llm.1",
|
70
|
+
"@webex/internal-plugin-metrics": "3.9.0-multiple-llm.0",
|
71
|
+
"@webex/internal-plugin-support": "3.9.0-multiple-llm.1",
|
72
|
+
"@webex/internal-plugin-user": "3.9.0-multiple-llm.0",
|
73
|
+
"@webex/internal-plugin-voicea": "3.9.0-multiple-llm.1",
|
74
|
+
"@webex/media-helpers": "3.9.0-multiple-llm.0",
|
75
|
+
"@webex/plugin-people": "3.9.0-multiple-llm.1",
|
76
|
+
"@webex/plugin-rooms": "3.9.0-multiple-llm.1",
|
78
77
|
"@webex/ts-sdp": "^1.8.1",
|
79
|
-
"@webex/web-capabilities": "^1.
|
80
|
-
"@webex/webex-core": "3.
|
78
|
+
"@webex/web-capabilities": "^1.6.0",
|
79
|
+
"@webex/webex-core": "3.9.0-multiple-llm.0",
|
81
80
|
"ampersand-collection": "^2.0.2",
|
82
81
|
"bowser": "^2.11.0",
|
83
82
|
"btoa": "^1.2.1",
|
@@ -93,5 +92,5 @@
|
|
93
92
|
"//": [
|
94
93
|
"TODO: upgrade jwt-decode when moving to node 18"
|
95
94
|
],
|
96
|
-
"version": "3.
|
95
|
+
"version": "3.9.0-multiple-llm.1"
|
97
96
|
}
|
package/src/constants.ts
CHANGED
@@ -217,6 +217,7 @@ export const DIALER_REGEX = {
|
|
217
217
|
PHONE_NUMBER:
|
218
218
|
/^(?:(?:\+?1\s*(?:[.-]\s*)?)?(?:\(\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\s*\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\s*(?:[.-]\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\s*(?:[.-]\s*)?([0-9]{4})(?:\s*(?:#|x\.?|ext\.?|extension)\s*(\d+))?$/,
|
219
219
|
E164_FORMAT: /^\+[1-9]\d{1,14}$/,
|
220
|
+
INTERNAL_NUMBER: /^\d{1,14}$/,
|
220
221
|
};
|
221
222
|
|
222
223
|
// eslint-disable-next-line max-len
|
@@ -262,7 +263,6 @@ export const RECORDING_STATE = {
|
|
262
263
|
PAUSED: 'paused',
|
263
264
|
RESUMED: 'resumed',
|
264
265
|
};
|
265
|
-
|
266
266
|
export const SHARE_STATUS = {
|
267
267
|
NO_SHARE: 'no_share',
|
268
268
|
REMOTE_SHARE_ACTIVE: 'remote_share_active',
|
@@ -347,6 +347,7 @@ export const EVENT_TRIGGERS = {
|
|
347
347
|
MEETING_SELF_LEFT: 'meeting:self:left',
|
348
348
|
NETWORK_QUALITY: 'network:quality',
|
349
349
|
MEDIA_NEGOTIATED: 'media:negotiated',
|
350
|
+
MEDIA_INBOUND_AUDIO_ISSUE_DETECTED: 'media:inboundAudio:issueDetected',
|
350
351
|
// the following events apply only to multistream media connections
|
351
352
|
ACTIVE_SPEAKER_CHANGED: 'media:activeSpeakerChanged',
|
352
353
|
REMOTE_VIDEO_SOURCE_COUNT_CHANGED: 'media:remoteVideoSourceCountChanged',
|
@@ -372,6 +373,7 @@ export const EVENT_TRIGGERS = {
|
|
372
373
|
MEETING_CONTROLS_ANNOTATION_UPDATED: 'meeting:controls:annotation:updated',
|
373
374
|
MEETING_CONTROLS_REMOTE_DESKTOP_CONTROL_UPDATED:
|
374
375
|
'meeting:controls:remote-desktop-control:updated',
|
376
|
+
MEETING_CONTROLS_POLLING_QA_UPDATED: 'meeting:controls:polling-qa:updated',
|
375
377
|
// Locus URL changed
|
376
378
|
MEETING_LOCUS_URL_UPDATE: 'meeting:locus:locusUrl:update',
|
377
379
|
MEETING_STREAM_PUBLISH_STATE_CHANGED: 'meeting:streamPublishStateChanged',
|
@@ -379,6 +381,7 @@ export const EVENT_TRIGGERS = {
|
|
379
381
|
MEETING_TRANSCRIPTION_CONNECTED: 'meeting:transcription:connected',
|
380
382
|
MEETING_STARTED_RECEIVING_TRANSCRIPTION: 'meeting:receiveTranscription:started',
|
381
383
|
MEETING_STOPPED_RECEIVING_TRANSCRIPTION: 'meeting:receiveTranscription:stopped',
|
384
|
+
MEETING_TRANSCRIPTION_SPOKEN_LANGUAGE_UPDATED: 'meeting:transcription:spokenLanguageUpdate',
|
382
385
|
MEETING_MANUAL_CAPTION_UPDATED: 'meeting:manualCaptionControl:updated',
|
383
386
|
MEETING_CAPTION_RECEIVED: 'meeting:caption-received',
|
384
387
|
MEETING_PARTICIPANT_REASON_CHANGED: 'meeting:participant-reason-changed',
|
@@ -699,6 +702,8 @@ export const LOCUSINFO = {
|
|
699
702
|
CONTROLS_MEETING_LAYOUT_UPDATED: 'CONTROLS_MEETING_LAYOUT_UPDATED',
|
700
703
|
CONTROLS_RECORDING_UPDATED: 'CONTROLS_RECORDING_UPDATED',
|
701
704
|
CONTROLS_MEETING_TRANSCRIBE_UPDATED: 'CONTROLS_MEETING_TRANSCRIBE_UPDATED',
|
705
|
+
CONTROLS_MEETING_TRANSCRIPTION_SPOKEN_LANGUAGE_UPDATED:
|
706
|
+
'CONTROLS_MEETING_TRANSCRIPTION_SPOKEN_LANGUAGE_UPDATED',
|
702
707
|
CONTROLS_MEETING_MANUAL_CAPTION_UPDATED: 'CONTROLS_MEETING_MANUAL_CAPTION_UPDATED',
|
703
708
|
CONTROLS_MEETING_BREAKOUT_UPDATED: 'CONTROLS_MEETING_BREAKOUT_UPDATED',
|
704
709
|
CONTROLS_MEETING_CONTAINER_UPDATED: 'CONTROLS_MEETING_CONTAINER_UPDATED',
|
@@ -717,6 +722,7 @@ export const LOCUSINFO = {
|
|
717
722
|
CONTROLS_STAGE_VIEW_UPDATED: 'CONTROLS_STAGE_VIEW_UPDATED',
|
718
723
|
CONTROLS_ANNOTATION_CHANGED: 'CONTROLS_ANNOTATION_CHANGED',
|
719
724
|
CONTROLS_REMOTE_DESKTOP_CONTROL_CHANGED: 'CONTROLS_REMOTE_DESKTOP_CONTROL_CHANGED',
|
725
|
+
CONTROLS_POLLING_QA_CHANGED: 'CONTROLS_POLLING_QA_CHANGED',
|
720
726
|
SELF_UNADMITTED_GUEST: 'SELF_UNADMITTED_GUEST',
|
721
727
|
SELF_ADMITTED_GUEST: 'SELF_ADMITTED_GUEST',
|
722
728
|
SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED: 'SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED',
|
@@ -943,6 +949,9 @@ export const DISPLAY_HINTS = {
|
|
943
949
|
PREMISE_RECORDING_CONTROL_PAUSE: 'PREMISE_RECORDING_CONTROL_PAUSE',
|
944
950
|
PREMISE_RECORDING_CONTROL_STOP: 'PREMISE_RECORDING_CONTROL_STOP',
|
945
951
|
PREMISE_RECORDING_CONTROL_RESUME: 'PREMISE_RECORDING_CONTROL_RESUME',
|
952
|
+
LOCAL_RECORDING_STATUS_STARTED: 'LOCAL_RECORDING_STATUS_STARTED',
|
953
|
+
LOCAL_RECORDING_STATUS_STOPPED: 'LOCAL_RECORDING_STATUS_STOPPED',
|
954
|
+
LOCAL_RECORDING_STATUS_PAUSED: 'LOCAL_RECORDING_STATUS_PAUSED',
|
946
955
|
LOCK_CONTROL_UNLOCK: 'LOCK_CONTROL_UNLOCK',
|
947
956
|
LOCK_CONTROL_LOCK: 'LOCK_CONTROL_LOCK',
|
948
957
|
LOCK_STATUS_LOCKED: 'LOCK_STATUS_LOCKED',
|
@@ -958,6 +967,7 @@ export const DISPLAY_HINTS = {
|
|
958
967
|
MANUAL_CAPTION_STOP: 'MANUAL_CAPTION_STOP',
|
959
968
|
MANUAL_CAPTION_STATUS_ACTIVE: 'MANUAL_CAPTION_STATUS_ACTIVE',
|
960
969
|
DISPLAY_REAL_TIME_TRANSLATION: 'DISPLAY_REAL_TIME_TRANSLATION',
|
970
|
+
SPOKEN_LANGUAGE_AUTO_DETECTION_ENABLED: 'SPOKEN_LANGUAGE_AUTO_DETECTION_ENABLED',
|
961
971
|
ENABLE_CAPTION_PANEL: 'ENABLE_CAPTION_PANEL',
|
962
972
|
DISPLAY_NON_ENGLISH_ASR: 'DISPLAY_NON_ENGLISH_ASR',
|
963
973
|
TRANSCRIPTION_CONTROL_START: 'TRANSCRIPTION_CONTROL_START',
|
@@ -982,7 +992,6 @@ export const DISPLAY_HINTS = {
|
|
982
992
|
CAN_RENAME_SELF_AND_OBSERVED: 'CAN_RENAME_SELF_AND_OBSERVED',
|
983
993
|
CAN_RENAME_OTHERS: 'CAN_RENAME_OTHERS',
|
984
994
|
MOVE_TO_LOBBY: 'MOVE_TO_LOBBY',
|
985
|
-
|
986
995
|
// breakout session
|
987
996
|
BREAKOUT_MANAGEMENT: 'BREAKOUT_MANAGEMENT',
|
988
997
|
BROADCAST_MESSAGE_TO_BREAKOUT: 'BROADCAST_MESSAGE_TO_BREAKOUT',
|
@@ -1046,6 +1055,10 @@ export const DISPLAY_HINTS = {
|
|
1046
1055
|
// Remote Desktop Control
|
1047
1056
|
ENABLE_RDC_MEETING_OPTION: 'ENABLE_RDC_MEETING_OPTION',
|
1048
1057
|
DISABLE_RDC_MEETING_OPTION: 'DISABLE_RDC_MEETING_OPTION',
|
1058
|
+
|
1059
|
+
// Polling QA
|
1060
|
+
ENABLE_ATTENDEE_START_POLLING_QA: 'ENABLE_ATTENDEE_START_POLLING_QA',
|
1061
|
+
DISABLE_ATTENDEE_START_POLLING_QA: 'DISABLE_ATTENDEE_START_POLLING_QA',
|
1049
1062
|
};
|
1050
1063
|
|
1051
1064
|
export const INTERSTITIAL_DISPLAY_HINTS = [DISPLAY_HINTS.VOIP_IS_ENABLED];
|
@@ -1179,6 +1192,7 @@ export const QUALITY_LEVELS = {
|
|
1179
1192
|
HIGH: 'HIGH',
|
1180
1193
|
'360p': '360p',
|
1181
1194
|
'480p': '480p',
|
1195
|
+
'540p': '540p',
|
1182
1196
|
'720p': '720p',
|
1183
1197
|
'1080p': '1080p',
|
1184
1198
|
};
|
@@ -1208,6 +1222,18 @@ export const AVAILABLE_RESOLUTIONS = {
|
|
1208
1222
|
},
|
1209
1223
|
},
|
1210
1224
|
},
|
1225
|
+
'540p': {
|
1226
|
+
video: {
|
1227
|
+
width: {
|
1228
|
+
max: 960,
|
1229
|
+
ideal: 960,
|
1230
|
+
},
|
1231
|
+
height: {
|
1232
|
+
max: 540,
|
1233
|
+
ideal: 540,
|
1234
|
+
},
|
1235
|
+
},
|
1236
|
+
},
|
1211
1237
|
'720p': {
|
1212
1238
|
video: {
|
1213
1239
|
width: {
|
@@ -1348,3 +1374,9 @@ export const INITIAL_REGISTRATION_STATUS = {
|
|
1348
1374
|
mercuryConnect: false,
|
1349
1375
|
checkH264Support: false,
|
1350
1376
|
};
|
1377
|
+
|
1378
|
+
export const STAGE_MANAGER_TYPE = {
|
1379
|
+
LOGO: 0b001,
|
1380
|
+
BACKGROUND: 0b010,
|
1381
|
+
NAME_LABEL: 0b100,
|
1382
|
+
};
|
@@ -48,6 +48,10 @@ export interface RemoteDesktopControlProperties {
|
|
48
48
|
enabled?: boolean;
|
49
49
|
}
|
50
50
|
|
51
|
+
export interface PollingQAProperties {
|
52
|
+
enabled?: boolean;
|
53
|
+
}
|
54
|
+
|
51
55
|
export type Properties =
|
52
56
|
| AudioProperties
|
53
57
|
| RaiseHandProperties
|
@@ -56,7 +60,8 @@ export type Properties =
|
|
56
60
|
| VideoProperties
|
57
61
|
| ViewTheParticipantListProperties
|
58
62
|
| AnnotationProperties
|
59
|
-
| RemoteDesktopControlProperties
|
63
|
+
| RemoteDesktopControlProperties
|
64
|
+
| PollingQAProperties;
|
60
65
|
|
61
66
|
export interface ControlConfig<Props = Properties> {
|
62
67
|
/**
|
@@ -9,6 +9,7 @@ import {
|
|
9
9
|
VideoProperties,
|
10
10
|
type RemoteDesktopControlProperties,
|
11
11
|
type AnnotationProperties,
|
12
|
+
type PollingQAProperties,
|
12
13
|
} from './types';
|
13
14
|
|
14
15
|
/**
|
@@ -304,6 +305,29 @@ class Utils {
|
|
304
305
|
return Utils.hasHints({requiredHints, displayHints});
|
305
306
|
}
|
306
307
|
|
308
|
+
/**
|
309
|
+
* Validate if a pollingQA-scoped control is allowed to be sent to the service.
|
310
|
+
*
|
311
|
+
* @param {ControlConfig<PollingQAProperties>} control - Polling QA config to validate
|
312
|
+
* @param {Array<string>} displayHints - All available hints
|
313
|
+
* @returns {boolean} - True if all of the actions are allowed.
|
314
|
+
*/
|
315
|
+
public static canUpdatePollingQA(
|
316
|
+
control: ControlConfig<PollingQAProperties>,
|
317
|
+
displayHints: Array<string>
|
318
|
+
): boolean {
|
319
|
+
const requiredHints = [];
|
320
|
+
|
321
|
+
if (control.properties.enabled === true) {
|
322
|
+
requiredHints.push(DISPLAY_HINTS.ENABLE_ATTENDEE_START_POLLING_QA);
|
323
|
+
}
|
324
|
+
if (control.properties.enabled === false) {
|
325
|
+
requiredHints.push(DISPLAY_HINTS.DISABLE_ATTENDEE_START_POLLING_QA);
|
326
|
+
}
|
327
|
+
|
328
|
+
return Utils.hasHints({requiredHints, displayHints});
|
329
|
+
}
|
330
|
+
|
307
331
|
/**
|
308
332
|
* Validate that a control can be sent to the service based on the provided
|
309
333
|
* display hints.
|
@@ -363,6 +387,13 @@ class Utils {
|
|
363
387
|
);
|
364
388
|
break;
|
365
389
|
|
390
|
+
case Control.pollingQA:
|
391
|
+
determinant = Utils.canUpdatePollingQA(
|
392
|
+
control as ControlConfig<PollingQAProperties>,
|
393
|
+
displayHints
|
394
|
+
);
|
395
|
+
break;
|
396
|
+
|
366
397
|
default:
|
367
398
|
determinant = false;
|
368
399
|
}
|
@@ -40,6 +40,7 @@ ControlsUtils.parse = (controls: any) => {
|
|
40
40
|
parsedControls.transcribe = {
|
41
41
|
transcribing: controls.transcribe.transcribing,
|
42
42
|
caption: controls.transcribe.caption,
|
43
|
+
spokenLanguage: controls.transcribe.spokenLanguage,
|
43
44
|
};
|
44
45
|
}
|
45
46
|
|
@@ -123,6 +124,12 @@ ControlsUtils.parse = (controls: any) => {
|
|
123
124
|
};
|
124
125
|
}
|
125
126
|
|
127
|
+
if (controls?.pollingQAControl) {
|
128
|
+
parsedControls.pollingQAControl = {
|
129
|
+
enabled: controls.pollingQAControl.enabled,
|
130
|
+
};
|
131
|
+
}
|
132
|
+
|
126
133
|
return parsedControls;
|
127
134
|
};
|
128
135
|
|
@@ -186,6 +193,11 @@ ControlsUtils.getControls = (oldControls: any, newControls: any) => {
|
|
186
193
|
!isEqual(previous?.transcribe?.transcribing, current?.transcribe?.transcribing) && // upon first join, previous?.record?.recording = undefined; thus, never going to be equal and will always return true
|
187
194
|
(previous?.transcribe?.transcribing || current?.transcribe?.transcribing), // therefore, condition added to prevent false firings of #meeting:recording:stopped upon first joining a meeting
|
188
195
|
|
196
|
+
hasTranscribeSpokenLanguageChanged:
|
197
|
+
current?.transcribe &&
|
198
|
+
!isEqual(previous?.transcribe?.spokenLanguage, current?.transcribe?.spokenLanguage) &&
|
199
|
+
!!(previous?.transcribe?.spokenLanguage || current?.transcribe?.spokenLanguage),
|
200
|
+
|
189
201
|
hasManualCaptionChanged:
|
190
202
|
current?.manualCaptionControl &&
|
191
203
|
!isEqual(previous?.manualCaptionControl?.enabled, current?.manualCaptionControl?.enabled) &&
|
@@ -229,6 +241,9 @@ ControlsUtils.getControls = (oldControls: any, newControls: any) => {
|
|
229
241
|
|
230
242
|
hasRemoteDesktopControlChanged:
|
231
243
|
current?.rdcControl?.enabled !== previous?.rdcControl?.enabled,
|
244
|
+
|
245
|
+
hasPollingQAControlChanged:
|
246
|
+
current?.pollingQAControl?.enabled !== previous?.pollingQAControl?.enabled,
|
232
247
|
},
|
233
248
|
};
|
234
249
|
};
|