@webex/plugin-meetings 3.7.0-next.20 → 3.7.0-next.22

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.
@@ -435,6 +435,9 @@ var MeetingUtil = {
435
435
  canManageBreakout: function canManageBreakout(displayHints) {
436
436
  return displayHints.includes(_constants.DISPLAY_HINTS.BREAKOUT_MANAGEMENT);
437
437
  },
438
+ canStartBreakout: function canStartBreakout(displayHints) {
439
+ return !displayHints.includes(_constants.DISPLAY_HINTS.DISABLE_BREAKOUT_START);
440
+ },
438
441
  canBroadcastMessageToBreakout: function canBroadcastMessageToBreakout(displayHints) {
439
442
  var policies = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
440
443
  return displayHints.includes(_constants.DISPLAY_HINTS.BROADCAST_MESSAGE_TO_BREAKOUT) && !!policies[_constants.SELF_POLICY.SUPPORT_BROADCAST_MESSAGE];
@@ -1 +1 @@
1
- {"version":3,"names":["_lodash","require","_webexErrors","_loggerProxy","_interopRequireDefault","_constants","_browserDetection","_intentToJoin","_joinMeeting2","_parameter","_permission","_passwordError","_captchaError","_triggerProxy","_createForOfIteratorHelper","o","allowArrayLike","it","_Symbol","_Symbol$iterator","_Array$isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","_Array$from","test","arr","len","arr2","Array","ownKeys","r","t","_Object$keys","_Object$getOwnPropertySymbols","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","MeetingUtil","parseLocusJoin","response","parsed","locus","body","mediaConnections","locusUrl","url","locusId","split","pop","selfId","self","id","mediaConnection","mediaId","remoteUpdateAudioVideo","meeting","audioMuted","videoMuted","_promise","reject","ParameterError","locusMediaRequest","send","type","selfUrl","sequence","locusInfo","muteOptions","then","_response$body","hasOwner","info","owner","isOwnerSelf","isPinOrGuest","_err$body","errorCode","INTENT_TO_JOIN","includes","getIpVersion","webex","_webex$internal$devic","internal","device","ipNetworkDetector","supportsIpV4","supportsIpV6","config","meetings","backendIpv6NativeSupport","BrowserDetection","isBrowser","undefined","IP_VERSION","ipv4_and_ipv6","only_ipv4","only_ipv6","unknown","joinMeeting","_joinMeeting","_asyncToGenerator2","_regenerator","mark","_callee","options","_meeting$meetingInfo","reachability","clientMediaPreferences","wrap","_callee$","_context","prev","abrupt","getWebexObject","newMetrics","submitClientEvent","meetingId","ipver","joinCookie","preferTranscoding","isMultistream","getClientMediaPreferences","sent","getReachabilityReportToAttachToRoap","t0","LoggerProxy","logger","error","meetingRequest","inviteeAddress","meetingJoinUrl","sipUri","meetingNumber","deviceUrl","locusClusterUrl","meetingInfo","correlationId","roapMessage","permissionToken","resourceId","moderator","pin","moveToResource","asResourceOccupant","breakoutsSupported","locale","deviceCapabilities","liveAnnotationSupported","res","setLocus","payload","trigger","identifiers","trackingId","headers","trackingid","stop","_x","_x2","cleanUp","meetingEnded","stopPeriodicLogUpload","breakouts","simultaneousInterpretation","stopStatsAnalyzer","statsAnalyzer","stopAnalyzer","resolve","closeRemoteStreams","closePeerConnections","cleanupLocalStreams","unsetRemoteStreams","unsetPeerConnections","reconnectionManager","stopKeepAlive","_meeting$config","enableAutomaticLLM","updateLLMConnection","disconnectPhoneAudio","phoneUrl","meetingState","FULL_STATE","INACTIVE","MeetingNotActiveError","catch","concat","prepareLeaveMeetingOptions","defaultOptions","leaveMeeting","isUserInLeftState","UserNotJoinedError","leaveOptions","moveMeeting","declineMeeting","reason","_locusInfo$parsedLocu","_locusInfo$parsedLocu2","parsedLocus","state","_LEFT_","isUserInIdleState","_locusInfo$parsedLocu3","_locusInfo$parsedLocu4","_IDLE_","isUserInJoinedState","_locusInfo$parsedLocu5","_locusInfo$parsedLocu6","_JOINED_","isMediaEstablished","currentMediaStatus","audio","video","share","joinMeetingOptions","requiredCaptcha","CaptchaError","passwordStatus","PASSWORD_STATUS","REQUIRED","PasswordError","IntentToJoinError","JoinMeetingError","buildLeaveFetchRequestOptions","buildLeaveMeetingRequestOptions","getTrack","stream","audioTrack","videoTrack","audioTracks","videoTracks","getAudioTracks","getVideoTracks","_audioTracks","_audioTracks2","_slicedToArray2","_videoTracks","_videoTracks2","getModeratorFromLocusInfo","getPolicyFromLocusInfo","policy","getUserDisplayHintsFromLocusInfo","_locusInfo$parsedLocu7","_locusInfo$parsedLocu8","userDisplayHints","canInviteNewParticipants","displayHints","DISPLAY_HINTS","ADD_GUEST","canAdmitParticipant","ROSTER_WAITING_TO_JOIN","canUserLock","LOCK_CONTROL_LOCK","LOCK_STATUS_UNLOCKED","canUserUnlock","LOCK_CONTROL_UNLOCK","LOCK_STATUS_LOCKED","canUserRaiseHand","RAISE_HAND","canUserLowerAllHands","LOWER_ALL_HANDS","canUserLowerSomeoneElsesHand","LOWER_SOMEONE_ELSES_HAND","bothLeaveAndEndMeetingAvailable","LEAVE_TRANSFER_HOST_END_MEETING","LEAVE_END_MEETING","canManageBreakout","BREAKOUT_MANAGEMENT","canBroadcastMessageToBreakout","policies","BROADCAST_MESSAGE_TO_BREAKOUT","SELF_POLICY","SUPPORT_BROADCAST_MESSAGE","isSuppressBreakoutSupport","UCF_SUPPRESS_BREAKOUTS_SUPPORT","canAdmitLobbyToBreakout","DISABLE_LOBBY_TO_BREAKOUT","isBreakoutPreassignmentsEnabled","DISABLE_BREAKOUT_PREASSIGNMENTS","canUserAskForHelp","DISABLE_ASK_FOR_HELP","lockMeeting","actions","request","canLock","lock","PermissionError","unlockMeeting","canUnlock","handleAudioLogging","audioStream","LOG_HEADER","settings","getSettings","deviceId","log","_stringify","handleVideoLogging","videoStream","endMeetingForAll","endOptions","canEnableClosedCaption","CAPTION_START","isSaveTranscriptsEnabled","SAVE_TRANSCRIPTS_ENABLED","canStartTranscribing","TRANSCRIPTION_CONTROL_START","canStopTranscribing","TRANSCRIPTION_CONTROL_STOP","isClosedCaptionActive","CAPTION_STATUS_ACTIVE","canStartManualCaption","MANUAL_CAPTION_START","canStopManualCaption","MANUAL_CAPTION_STOP","isManualCaptionActive","MANUAL_CAPTION_STATUS_ACTIVE","isWebexAssistantActive","WEBEX_ASSISTANT_STATUS_ACTIVE","canViewCaptionPanel","ENABLE_CAPTION_PANEL","isRealTimeTranslationEnabled","DISPLAY_REAL_TIME_TRANSLATION","canSelectSpokenLanguages","DISPLAY_NON_ENGLISH_ASR","waitingForOthersToJoin","WAITING_FOR_OTHERS","canSendReactions","originalValue","REACTIONS_ACTIVE","REACTIONS_INACTIVE","canUserRenameSelfAndObserved","CAN_RENAME_SELF_AND_OBSERVED","canUserRenameOthers","CAN_RENAME_OTHERS","canShareWhiteBoard","SHARE_WHITEBOARD","addSequence","requestBody","_meeting$locusInfo","updateLocusWithDelta","_response$body2","handleLocusDelta","generateBuildLocusDeltaRequestOptions","originalMeeting","meetingRef","WeakRef","buildLocusDeltaRequestOptions","originalOptions","deref","cloneDeep","generateLocusDeltaRequest","locusDeltaRequest","selfSupportsFeature","feature","userPolicies","parseInterpretationInfo","_meetingInfo$meetingS","siInfo","updateMeetingSIEnabled","turnOnSimultaneousInterpretation","currentSIInterpreter","hostSIEnabled","meetingSiteSetting","enableHostInterpreterControlSI","updateHostSIEnabled","renameKey","obj","oldKey","newKey","_meeting$simultaneous","_meeting$simultaneous2","lanuagesInfo","siLanguages","_iterator","_step","language","updateInterpretation","Trigger","file","function","EVENT_TRIGGERS","MEETING_INTERPRETATION_UPDATE","getChangeMeetingFloorErrorPayload","errorPayload","errorDescription","shownToUser","LOCAL_SHARE_ERRORS","UNDEFINED","fatal","category","DEVICE_NOT_JOINED","NO_MEDIA_FOR_DEVICE","NO_CONFLUENCE_ID","CONTENT_SHARING_DISABLED","LOCUS_PARTICIPANT_DNE","CONTENT_REQUEST_WHILE_PENDING_WHITEBOARD","_default","exports"],"sources":["util.ts"],"sourcesContent":["import {LocalCameraStream, LocalMicrophoneStream} from '@webex/media-helpers';\n\nimport {cloneDeep} from 'lodash';\nimport {MeetingNotActiveError, UserNotJoinedError} from '../common/errors/webex-errors';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {\n INTENT_TO_JOIN,\n _LEFT_,\n _IDLE_,\n _JOINED_,\n PASSWORD_STATUS,\n DISPLAY_HINTS,\n FULL_STATE,\n SELF_POLICY,\n EVENT_TRIGGERS,\n LOCAL_SHARE_ERRORS,\n IP_VERSION,\n} from '../constants';\nimport BrowserDetection from '../common/browser-detection';\nimport IntentToJoinError from '../common/errors/intent-to-join';\nimport JoinMeetingError from '../common/errors/join-meeting';\nimport ParameterError from '../common/errors/parameter';\nimport PermissionError from '../common/errors/permission';\nimport PasswordError from '../common/errors/password-error';\nimport CaptchaError from '../common/errors/captcha-error';\nimport Trigger from '../common/events/trigger-proxy';\n\nconst MeetingUtil = {\n parseLocusJoin: (response) => {\n const parsed: any = {};\n\n // First todo: add check for existance\n parsed.locus = response.body.locus;\n parsed.mediaConnections = response.body.mediaConnections;\n parsed.locusUrl = parsed.locus.url;\n parsed.locusId = parsed.locus.url.split('/').pop();\n parsed.selfId = parsed.locus.self.id;\n\n // we need mediaId before making roap calls\n parsed.mediaConnections.forEach((mediaConnection) => {\n if (mediaConnection.mediaId) {\n parsed.mediaId = mediaConnection.mediaId;\n }\n });\n\n return parsed;\n },\n\n remoteUpdateAudioVideo: (meeting, audioMuted?: boolean, videoMuted?: boolean) => {\n if (!meeting) {\n return Promise.reject(new ParameterError('You need a meeting object.'));\n }\n\n if (!meeting.locusMediaRequest) {\n return Promise.reject(\n new ParameterError(\n 'You need a meeting with a media connection, call Meeting.addMedia() first.'\n )\n );\n }\n\n return meeting.locusMediaRequest\n .send({\n type: 'LocalMute',\n selfUrl: meeting.selfUrl,\n mediaId: meeting.mediaId,\n sequence: meeting.locusInfo.sequence,\n muteOptions: {\n audioMuted,\n videoMuted,\n },\n })\n .then((response) => response?.body?.locus);\n },\n\n hasOwner: (info) => info && info.owner,\n\n isOwnerSelf: (owner, selfId) => owner === selfId,\n\n isPinOrGuest: (err) => err?.body?.errorCode && INTENT_TO_JOIN.includes(err.body.errorCode),\n\n /**\n * Returns the current state of knowledge about whether we are on an ipv4-only or ipv6-only or mixed (ipv4 and ipv6) network.\n * The return value matches the possible values of \"ipver\" parameter used by the backend APIs.\n *\n * @param {Object} webex webex instance\n * @returns {IP_VERSION|undefined} ipver value to be passed to the backend APIs or undefined if we should not pass any value to the backend\n */\n getIpVersion(webex: any): IP_VERSION | undefined {\n const {supportsIpV4, supportsIpV6} = webex.internal.device.ipNetworkDetector;\n\n if (\n !webex.config.meetings.backendIpv6NativeSupport &&\n BrowserDetection().isBrowser('firefox')\n ) {\n // when backend doesn't support native ipv6,\n // then our NAT64/DNS64 based solution relies on FQDN ICE candidates, but Firefox doesn't support them,\n // see https://bugzilla.mozilla.org/show_bug.cgi?id=1713128\n // so for Firefox we don't want the backend to activate the \"ipv6 feature\"\n return undefined;\n }\n\n if (supportsIpV4 && supportsIpV6) {\n return IP_VERSION.ipv4_and_ipv6;\n }\n\n if (supportsIpV4) {\n return IP_VERSION.only_ipv4;\n }\n\n if (supportsIpV6) {\n return IP_VERSION.only_ipv6;\n }\n\n return IP_VERSION.unknown;\n },\n\n joinMeeting: async (meeting, options) => {\n if (!meeting) {\n return Promise.reject(new ParameterError('You need a meeting object.'));\n }\n const webex = meeting.getWebexObject();\n\n // @ts-ignore\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.locus.join.request',\n options: {meetingId: meeting.id},\n });\n\n let reachability;\n let clientMediaPreferences = {\n // bare minimum fallback value that should allow us to join\n ipver: IP_VERSION.unknown,\n joinCookie: undefined,\n preferTranscoding: !meeting.isMultistream,\n };\n\n try {\n clientMediaPreferences = await webex.meetings.reachability.getClientMediaPreferences(\n meeting.isMultistream,\n MeetingUtil.getIpVersion(webex)\n );\n reachability = await webex.meetings.reachability.getReachabilityReportToAttachToRoap();\n } catch (e) {\n LoggerProxy.logger.error(\n 'Meeting:util#joinMeeting --> Error getting reachability or clientMediaPreferences:',\n e\n );\n }\n\n // eslint-disable-next-line no-warning-comments\n // TODO: check if the meeting is in JOINING state\n // if Joining state termintate the request as user might click multiple times\n return meeting.meetingRequest\n .joinMeeting({\n inviteeAddress: meeting.meetingJoinUrl || meeting.sipUri,\n meetingNumber: meeting.meetingNumber,\n deviceUrl: meeting.deviceUrl,\n locusUrl: meeting.locusUrl,\n locusClusterUrl: meeting.meetingInfo?.locusClusterUrl,\n correlationId: meeting.correlationId,\n reachability,\n roapMessage: options.roapMessage,\n permissionToken: meeting.permissionToken,\n resourceId: options.resourceId || null,\n moderator: options.moderator,\n pin: options.pin,\n moveToResource: options.moveToResource,\n asResourceOccupant: options.asResourceOccupant,\n breakoutsSupported: options.breakoutsSupported,\n locale: options.locale,\n deviceCapabilities: options.deviceCapabilities,\n liveAnnotationSupported: options.liveAnnotationSupported,\n clientMediaPreferences,\n })\n .then((res) => {\n const parsed = MeetingUtil.parseLocusJoin(res);\n meeting.setLocus(parsed);\n\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.locus.join.response',\n payload: {\n trigger: 'loci-update',\n identifiers: {\n trackingId: res.headers.trackingid,\n },\n },\n options: {\n meetingId: meeting.id,\n mediaConnections: parsed.mediaConnections,\n },\n });\n\n return parsed;\n });\n },\n\n cleanUp: (meeting) => {\n meeting.getWebexObject().internal.device.meetingEnded();\n meeting.stopPeriodicLogUpload();\n\n meeting.breakouts.cleanUp();\n meeting.simultaneousInterpretation.cleanUp();\n meeting.locusMediaRequest = undefined;\n\n // make sure we send last metrics before we close the peerconnection\n const stopStatsAnalyzer = meeting.statsAnalyzer\n ? meeting.statsAnalyzer.stopAnalyzer()\n : Promise.resolve();\n\n return stopStatsAnalyzer\n .then(() => meeting.closeRemoteStreams())\n .then(() => meeting.closePeerConnections())\n .then(() => {\n meeting.cleanupLocalStreams();\n meeting.unsetRemoteStreams();\n meeting.unsetPeerConnections();\n meeting.reconnectionManager.cleanUp();\n })\n .then(() => meeting.stopKeepAlive())\n .then(() => {\n if (meeting.config?.enableAutomaticLLM) {\n meeting.updateLLMConnection();\n }\n });\n },\n\n disconnectPhoneAudio: (meeting, phoneUrl) => {\n if (meeting.meetingState === FULL_STATE.INACTIVE) {\n return Promise.reject(new MeetingNotActiveError());\n }\n\n const options = {\n locusUrl: meeting.locusUrl,\n selfId: meeting.selfId,\n correlationId: meeting.correlationId,\n phoneUrl,\n };\n\n return meeting.meetingRequest.disconnectPhoneAudio(options).catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:util#disconnectPhoneAudio --> An error occured while disconnecting phone audio in meeting ${meeting.id}, error: ${err}`\n );\n\n return Promise.reject(err);\n });\n },\n\n /**\n * Returns options for leaving a meeting.\n * @param {any} meeting\n * @param {any} options\n * @returns {any} leave options\n */\n prepareLeaveMeetingOptions: (meeting, options: any = {}) => {\n const defaultOptions = {\n locusUrl: meeting.locusUrl,\n selfId: meeting.selfId,\n correlationId: meeting.correlationId,\n resourceId: meeting.resourceId,\n deviceUrl: meeting.deviceUrl,\n };\n\n return {...defaultOptions, ...options};\n },\n\n // by default will leave on meeting's resourceId\n // if you explicity want it not to leave on resource id, pass\n // {resourceId: null}\n // TODO: chris, you can modify this however you want\n leaveMeeting: (meeting, options: any = {}) => {\n if (meeting.meetingState === FULL_STATE.INACTIVE) {\n // TODO: clean up if the meeting is already inactive\n return Promise.reject(new MeetingNotActiveError());\n }\n\n if (MeetingUtil.isUserInLeftState(meeting.locusInfo)) {\n return Promise.reject(new UserNotJoinedError());\n }\n\n const leaveOptions = MeetingUtil.prepareLeaveMeetingOptions(meeting, options);\n\n return meeting.meetingRequest\n .leaveMeeting(leaveOptions)\n .then(() => {\n if (options.moveMeeting) {\n return Promise.resolve();\n }\n\n return MeetingUtil.cleanUp(meeting);\n })\n .catch((err) => {\n // TODO: If the meeting state comes as LEFT or INACTIVE as response then\n // 1) on leave clean up the meeting or simply do a sync on the meeting\n // 2) If the error says meeting is inactive then destroy the meeting object\n LoggerProxy.logger.error(\n `Meeting:util#leaveMeeting --> An error occured while trying to leave meeting with an id of ${meeting.id}, error: ${err}`\n );\n\n return Promise.reject(err);\n });\n },\n declineMeeting: (meeting, reason) =>\n meeting.meetingRequest.declineMeeting({\n locusUrl: meeting.locusUrl,\n deviceUrl: meeting.deviceUrl,\n reason,\n }),\n\n isUserInLeftState: (locusInfo) => locusInfo.parsedLocus?.self?.state === _LEFT_,\n\n isUserInIdleState: (locusInfo) => locusInfo.parsedLocus?.self?.state === _IDLE_,\n\n isUserInJoinedState: (locusInfo) => locusInfo.parsedLocus?.self?.state === _JOINED_,\n\n isMediaEstablished: (currentMediaStatus) =>\n currentMediaStatus &&\n (currentMediaStatus.audio || currentMediaStatus.video || currentMediaStatus.share),\n\n joinMeetingOptions: (meeting, options: any = {}) => {\n const webex = meeting.getWebexObject();\n\n meeting.resourceId = meeting.resourceId || options.resourceId;\n\n if (meeting.requiredCaptcha) {\n return Promise.reject(new CaptchaError());\n }\n if (meeting.passwordStatus === PASSWORD_STATUS.REQUIRED) {\n return Promise.reject(new PasswordError());\n }\n\n if (options.pin) {\n // @ts-ignore\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.pin.collected',\n options: {\n meetingId: meeting.id,\n },\n });\n }\n\n // normal join meeting, scenario A, D\n return MeetingUtil.joinMeeting(meeting, options).catch((err) => {\n // joining a claimed PMR that is not my own, scenario B\n if (MeetingUtil.isPinOrGuest(err)) {\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.pin.prompt',\n options: {\n meetingId: meeting.id,\n },\n });\n\n // request host pin or non host for unclaimed PMR, start of Scenario C\n // see https://sqbu-github.cisco.com/WebExSquared/locus/wiki/Locus-Lobby-and--IVR-Feature\n return Promise.reject(new IntentToJoinError('Error Joining Meeting', err));\n }\n LoggerProxy.logger.error('Meeting:util#joinMeetingOptions --> Error joining the call, ', err);\n\n return Promise.reject(new JoinMeetingError(options, 'Error Joining Meeting', err));\n });\n },\n\n /**\n * Returns request options for leaving a meeting.\n * @param {any} meeting\n * @param {any} options\n * @returns {any} request options\n */\n buildLeaveFetchRequestOptions: (meeting, options: any = {}) => {\n const leaveOptions = MeetingUtil.prepareLeaveMeetingOptions(meeting, options);\n\n return meeting.meetingRequest.buildLeaveMeetingRequestOptions(leaveOptions);\n },\n\n getTrack: (stream) => {\n let audioTrack = null;\n let videoTrack = null;\n let audioTracks = null;\n let videoTracks = null;\n\n if (!stream) {\n return {audioTrack: null, videoTrack: null};\n }\n if (stream.getAudioTracks) {\n audioTracks = stream.getAudioTracks();\n }\n if (stream.getVideoTracks) {\n videoTracks = stream.getVideoTracks();\n }\n\n if (audioTracks && audioTracks.length > 0) {\n [audioTrack] = audioTracks;\n }\n\n if (videoTracks && videoTracks.length > 0) {\n [videoTrack] = videoTracks;\n }\n\n return {audioTrack, videoTrack};\n },\n\n getModeratorFromLocusInfo: (locusInfo) =>\n locusInfo &&\n locusInfo.parsedLocus &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info.moderator,\n\n getPolicyFromLocusInfo: (locusInfo) =>\n locusInfo &&\n locusInfo.parsedLocus &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info.policy,\n\n getUserDisplayHintsFromLocusInfo: (locusInfo) =>\n locusInfo?.parsedLocus?.info?.userDisplayHints || [],\n\n canInviteNewParticipants: (displayHints) => displayHints.includes(DISPLAY_HINTS.ADD_GUEST),\n\n canAdmitParticipant: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.ROSTER_WAITING_TO_JOIN),\n\n canUserLock: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LOCK_CONTROL_LOCK) &&\n displayHints.includes(DISPLAY_HINTS.LOCK_STATUS_UNLOCKED),\n\n canUserUnlock: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LOCK_CONTROL_UNLOCK) &&\n displayHints.includes(DISPLAY_HINTS.LOCK_STATUS_LOCKED),\n\n canUserRaiseHand: (displayHints) => displayHints.includes(DISPLAY_HINTS.RAISE_HAND),\n\n canUserLowerAllHands: (displayHints) => displayHints.includes(DISPLAY_HINTS.LOWER_ALL_HANDS),\n\n canUserLowerSomeoneElsesHand: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LOWER_SOMEONE_ELSES_HAND),\n\n bothLeaveAndEndMeetingAvailable: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LEAVE_TRANSFER_HOST_END_MEETING) ||\n displayHints.includes(DISPLAY_HINTS.LEAVE_END_MEETING),\n\n canManageBreakout: (displayHints) => displayHints.includes(DISPLAY_HINTS.BREAKOUT_MANAGEMENT),\n canBroadcastMessageToBreakout: (displayHints, policies = {}) =>\n displayHints.includes(DISPLAY_HINTS.BROADCAST_MESSAGE_TO_BREAKOUT) &&\n !!policies[SELF_POLICY.SUPPORT_BROADCAST_MESSAGE],\n\n isSuppressBreakoutSupport: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.UCF_SUPPRESS_BREAKOUTS_SUPPORT),\n\n canAdmitLobbyToBreakout: (displayHints) =>\n !displayHints.includes(DISPLAY_HINTS.DISABLE_LOBBY_TO_BREAKOUT),\n\n isBreakoutPreassignmentsEnabled: (displayHints) =>\n !displayHints.includes(DISPLAY_HINTS.DISABLE_BREAKOUT_PREASSIGNMENTS),\n\n canUserAskForHelp: (displayHints) => !displayHints.includes(DISPLAY_HINTS.DISABLE_ASK_FOR_HELP),\n\n lockMeeting: (actions, request, locusUrl) => {\n if (actions && actions.canLock) {\n return request.lockMeeting({locusUrl, lock: true});\n }\n\n return Promise.reject(new PermissionError('Lock not allowed, due to joined property.'));\n },\n\n unlockMeeting: (actions, request, locusUrl) => {\n if (actions && actions.canUnlock) {\n return request.lockMeeting({locusUrl, lock: false});\n }\n\n return Promise.reject(new PermissionError('Unlock not allowed, due to joined property.'));\n },\n\n handleAudioLogging: (audioStream?: LocalMicrophoneStream) => {\n const LOG_HEADER = 'MeetingUtil#handleAudioLogging -->';\n\n if (audioStream) {\n const settings = audioStream.getSettings();\n const {deviceId} = settings;\n\n LoggerProxy.logger.log(LOG_HEADER, `deviceId = ${deviceId}`);\n LoggerProxy.logger.log(LOG_HEADER, 'settings =', JSON.stringify(settings));\n }\n },\n\n handleVideoLogging: (videoStream?: LocalCameraStream) => {\n const LOG_HEADER = 'MeetingUtil#handleVideoLogging -->';\n\n if (videoStream) {\n const settings = videoStream.getSettings();\n const {deviceId} = settings;\n\n LoggerProxy.logger.log(LOG_HEADER, `deviceId = ${deviceId}`);\n LoggerProxy.logger.log(LOG_HEADER, 'settings =', JSON.stringify(settings));\n }\n },\n\n endMeetingForAll: (meeting) => {\n if (meeting.meetingState === FULL_STATE.INACTIVE) {\n return Promise.reject(new MeetingNotActiveError());\n }\n\n const endOptions = {\n locusUrl: meeting.locusUrl,\n };\n\n return meeting.meetingRequest\n .endMeetingForAll(endOptions)\n .then(() => MeetingUtil.cleanUp(meeting))\n .catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:util#endMeetingForAll An error occured while trying to end meeting for all with an id of ${meeting.id}, error: ${err}`\n );\n\n return Promise.reject(err);\n });\n },\n\n canEnableClosedCaption: (displayHints) => displayHints.includes(DISPLAY_HINTS.CAPTION_START),\n\n isSaveTranscriptsEnabled: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.SAVE_TRANSCRIPTS_ENABLED),\n\n canStartTranscribing: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.TRANSCRIPTION_CONTROL_START),\n\n canStopTranscribing: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.TRANSCRIPTION_CONTROL_STOP),\n\n isClosedCaptionActive: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.CAPTION_STATUS_ACTIVE),\n\n canStartManualCaption: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.MANUAL_CAPTION_START),\n\n canStopManualCaption: (displayHints) => displayHints.includes(DISPLAY_HINTS.MANUAL_CAPTION_STOP),\n\n isManualCaptionActive: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.MANUAL_CAPTION_STATUS_ACTIVE),\n\n isWebexAssistantActive: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.WEBEX_ASSISTANT_STATUS_ACTIVE),\n\n canViewCaptionPanel: (displayHints) => displayHints.includes(DISPLAY_HINTS.ENABLE_CAPTION_PANEL),\n\n isRealTimeTranslationEnabled: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.DISPLAY_REAL_TIME_TRANSLATION),\n\n canSelectSpokenLanguages: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.DISPLAY_NON_ENGLISH_ASR),\n\n waitingForOthersToJoin: (displayHints) => displayHints.includes(DISPLAY_HINTS.WAITING_FOR_OTHERS),\n\n canSendReactions: (originalValue, displayHints) => {\n if (displayHints.includes(DISPLAY_HINTS.REACTIONS_ACTIVE)) {\n return true;\n }\n if (displayHints.includes(DISPLAY_HINTS.REACTIONS_INACTIVE)) {\n return false;\n }\n\n return originalValue;\n },\n canUserRenameSelfAndObserved: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.CAN_RENAME_SELF_AND_OBSERVED),\n\n canUserRenameOthers: (displayHints) => displayHints.includes(DISPLAY_HINTS.CAN_RENAME_OTHERS),\n\n canShareWhiteBoard: (displayHints) => displayHints.includes(DISPLAY_HINTS.SHARE_WHITEBOARD),\n\n /**\n * Adds the current locus sequence information to a request body\n * @param {Object} meeting The meeting object\n * @param {Object} requestBody The body of a request to locus\n * @returns {void}\n */\n addSequence: (meeting, requestBody) => {\n const sequence = meeting?.locusInfo?.sequence;\n\n if (!sequence) {\n return;\n }\n\n requestBody.sequence = sequence;\n },\n\n /**\n * Updates the locus info for the meeting with the delta locus\n * returned from requests that include the sequence information\n * Returns the original response object\n * @param {Object} meeting The meeting object\n * @param {Object} response The response of the http request\n * @returns {Object}\n */\n updateLocusWithDelta: (meeting, response) => {\n if (!meeting) {\n return response;\n }\n\n const locus = response?.body?.locus;\n\n if (locus) {\n meeting.locusInfo.handleLocusDelta(locus, meeting);\n }\n\n return response;\n },\n\n generateBuildLocusDeltaRequestOptions: (originalMeeting) => {\n const meetingRef = new WeakRef(originalMeeting);\n\n const buildLocusDeltaRequestOptions = (originalOptions) => {\n const meeting = meetingRef.deref();\n\n if (!meeting) {\n return originalOptions;\n }\n\n const options = cloneDeep(originalOptions);\n\n if (!options.body) {\n options.body = {};\n }\n\n MeetingUtil.addSequence(meeting, options.body);\n\n return options;\n };\n\n return buildLocusDeltaRequestOptions;\n },\n\n generateLocusDeltaRequest: (originalMeeting) => {\n const meetingRef = new WeakRef(originalMeeting);\n\n const buildLocusDeltaRequestOptions =\n MeetingUtil.generateBuildLocusDeltaRequestOptions(originalMeeting);\n\n const locusDeltaRequest = (originalOptions) => {\n const meeting = meetingRef.deref();\n\n if (!meeting) {\n return Promise.resolve();\n }\n\n const options = buildLocusDeltaRequestOptions(originalOptions);\n\n return meeting\n .request(options)\n .then((response) => MeetingUtil.updateLocusWithDelta(meeting, response));\n };\n\n return locusDeltaRequest;\n },\n\n selfSupportsFeature: (feature: SELF_POLICY, userPolicies: Record<SELF_POLICY, boolean>) => {\n if (!userPolicies) {\n return true;\n }\n\n return userPolicies[feature];\n },\n\n parseInterpretationInfo: (meeting, meetingInfo) => {\n if (!meeting || !meetingInfo) {\n return;\n }\n const siInfo = meetingInfo.simultaneousInterpretation;\n meeting.simultaneousInterpretation.updateMeetingSIEnabled(\n !!meetingInfo.turnOnSimultaneousInterpretation,\n !!siInfo?.currentSIInterpreter\n );\n const hostSIEnabled = !!(\n meetingInfo.turnOnSimultaneousInterpretation &&\n meetingInfo?.meetingSiteSetting?.enableHostInterpreterControlSI\n );\n meeting.simultaneousInterpretation.updateHostSIEnabled(hostSIEnabled);\n\n function renameKey(obj, oldKey, newKey) {\n if (oldKey in obj) {\n obj[newKey] = obj[oldKey];\n delete obj[oldKey];\n }\n }\n if (siInfo) {\n const lanuagesInfo = cloneDeep(siInfo.siLanguages);\n for (const language of lanuagesInfo) {\n renameKey(language, 'languageCode', 'languageName');\n renameKey(language, 'languageGroupId', 'languageCode');\n }\n if (!meeting.simultaneousInterpretation?.siLanguages?.length) {\n meeting.simultaneousInterpretation.updateInterpretation({siLanguages: lanuagesInfo});\n }\n }\n Trigger.trigger(\n meeting,\n {\n file: 'meeting/util',\n function: 'parseInterpretationInfo',\n },\n EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE\n );\n },\n\n /**\n * Returns a CA-recognized error payload for the specified raw error message/reason.\n *\n * New errors can be added to this function for handling in the future\n *\n * @param {String} reason the raw error message\n * @returns {Array<object>} an array of payload objects\n */\n getChangeMeetingFloorErrorPayload: (reason: string) => {\n const errorPayload = {\n errorDescription: reason,\n name: 'locus.response',\n shownToUser: false,\n };\n if (reason.includes(LOCAL_SHARE_ERRORS.UNDEFINED)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 1100,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.DEVICE_NOT_JOINED)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 4050,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.NO_MEDIA_FOR_DEVICE)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'media',\n errorCode: 2048,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.NO_CONFLUENCE_ID)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 4064,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.CONTENT_SHARING_DISABLED)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'expected',\n errorCode: 4065,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.LOCUS_PARTICIPANT_DNE)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 4066,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.CONTENT_REQUEST_WHILE_PENDING_WHITEBOARD)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'expected',\n errorCode: 4067,\n },\n ];\n }\n\n // return unknown error\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 1100,\n },\n ];\n },\n};\n\nexport default MeetingUtil;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_lodash","require","_webexErrors","_loggerProxy","_interopRequireDefault","_constants","_browserDetection","_intentToJoin","_joinMeeting2","_parameter","_permission","_passwordError","_captchaError","_triggerProxy","_createForOfIteratorHelper","o","allowArrayLike","it","_Symbol","_Symbol$iterator","_Array$isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","_Array$from","test","arr","len","arr2","Array","ownKeys","r","t","_Object$keys","_Object$getOwnPropertySymbols","filter","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","MeetingUtil","parseLocusJoin","response","parsed","locus","body","mediaConnections","locusUrl","url","locusId","split","pop","selfId","self","id","mediaConnection","mediaId","remoteUpdateAudioVideo","meeting","audioMuted","videoMuted","_promise","reject","ParameterError","locusMediaRequest","send","type","selfUrl","sequence","locusInfo","muteOptions","then","_response$body","hasOwner","info","owner","isOwnerSelf","isPinOrGuest","_err$body","errorCode","INTENT_TO_JOIN","includes","getIpVersion","webex","_webex$internal$devic","internal","device","ipNetworkDetector","supportsIpV4","supportsIpV6","config","meetings","backendIpv6NativeSupport","BrowserDetection","isBrowser","undefined","IP_VERSION","ipv4_and_ipv6","only_ipv4","only_ipv6","unknown","joinMeeting","_joinMeeting","_asyncToGenerator2","_regenerator","mark","_callee","options","_meeting$meetingInfo","reachability","clientMediaPreferences","wrap","_callee$","_context","prev","abrupt","getWebexObject","newMetrics","submitClientEvent","meetingId","ipver","joinCookie","preferTranscoding","isMultistream","getClientMediaPreferences","sent","getReachabilityReportToAttachToRoap","t0","LoggerProxy","logger","error","meetingRequest","inviteeAddress","meetingJoinUrl","sipUri","meetingNumber","deviceUrl","locusClusterUrl","meetingInfo","correlationId","roapMessage","permissionToken","resourceId","moderator","pin","moveToResource","asResourceOccupant","breakoutsSupported","locale","deviceCapabilities","liveAnnotationSupported","res","setLocus","payload","trigger","identifiers","trackingId","headers","trackingid","stop","_x","_x2","cleanUp","meetingEnded","stopPeriodicLogUpload","breakouts","simultaneousInterpretation","stopStatsAnalyzer","statsAnalyzer","stopAnalyzer","resolve","closeRemoteStreams","closePeerConnections","cleanupLocalStreams","unsetRemoteStreams","unsetPeerConnections","reconnectionManager","stopKeepAlive","_meeting$config","enableAutomaticLLM","updateLLMConnection","disconnectPhoneAudio","phoneUrl","meetingState","FULL_STATE","INACTIVE","MeetingNotActiveError","catch","concat","prepareLeaveMeetingOptions","defaultOptions","leaveMeeting","isUserInLeftState","UserNotJoinedError","leaveOptions","moveMeeting","declineMeeting","reason","_locusInfo$parsedLocu","_locusInfo$parsedLocu2","parsedLocus","state","_LEFT_","isUserInIdleState","_locusInfo$parsedLocu3","_locusInfo$parsedLocu4","_IDLE_","isUserInJoinedState","_locusInfo$parsedLocu5","_locusInfo$parsedLocu6","_JOINED_","isMediaEstablished","currentMediaStatus","audio","video","share","joinMeetingOptions","requiredCaptcha","CaptchaError","passwordStatus","PASSWORD_STATUS","REQUIRED","PasswordError","IntentToJoinError","JoinMeetingError","buildLeaveFetchRequestOptions","buildLeaveMeetingRequestOptions","getTrack","stream","audioTrack","videoTrack","audioTracks","videoTracks","getAudioTracks","getVideoTracks","_audioTracks","_audioTracks2","_slicedToArray2","_videoTracks","_videoTracks2","getModeratorFromLocusInfo","getPolicyFromLocusInfo","policy","getUserDisplayHintsFromLocusInfo","_locusInfo$parsedLocu7","_locusInfo$parsedLocu8","userDisplayHints","canInviteNewParticipants","displayHints","DISPLAY_HINTS","ADD_GUEST","canAdmitParticipant","ROSTER_WAITING_TO_JOIN","canUserLock","LOCK_CONTROL_LOCK","LOCK_STATUS_UNLOCKED","canUserUnlock","LOCK_CONTROL_UNLOCK","LOCK_STATUS_LOCKED","canUserRaiseHand","RAISE_HAND","canUserLowerAllHands","LOWER_ALL_HANDS","canUserLowerSomeoneElsesHand","LOWER_SOMEONE_ELSES_HAND","bothLeaveAndEndMeetingAvailable","LEAVE_TRANSFER_HOST_END_MEETING","LEAVE_END_MEETING","canManageBreakout","BREAKOUT_MANAGEMENT","canStartBreakout","DISABLE_BREAKOUT_START","canBroadcastMessageToBreakout","policies","BROADCAST_MESSAGE_TO_BREAKOUT","SELF_POLICY","SUPPORT_BROADCAST_MESSAGE","isSuppressBreakoutSupport","UCF_SUPPRESS_BREAKOUTS_SUPPORT","canAdmitLobbyToBreakout","DISABLE_LOBBY_TO_BREAKOUT","isBreakoutPreassignmentsEnabled","DISABLE_BREAKOUT_PREASSIGNMENTS","canUserAskForHelp","DISABLE_ASK_FOR_HELP","lockMeeting","actions","request","canLock","lock","PermissionError","unlockMeeting","canUnlock","handleAudioLogging","audioStream","LOG_HEADER","settings","getSettings","deviceId","log","_stringify","handleVideoLogging","videoStream","endMeetingForAll","endOptions","canEnableClosedCaption","CAPTION_START","isSaveTranscriptsEnabled","SAVE_TRANSCRIPTS_ENABLED","canStartTranscribing","TRANSCRIPTION_CONTROL_START","canStopTranscribing","TRANSCRIPTION_CONTROL_STOP","isClosedCaptionActive","CAPTION_STATUS_ACTIVE","canStartManualCaption","MANUAL_CAPTION_START","canStopManualCaption","MANUAL_CAPTION_STOP","isManualCaptionActive","MANUAL_CAPTION_STATUS_ACTIVE","isWebexAssistantActive","WEBEX_ASSISTANT_STATUS_ACTIVE","canViewCaptionPanel","ENABLE_CAPTION_PANEL","isRealTimeTranslationEnabled","DISPLAY_REAL_TIME_TRANSLATION","canSelectSpokenLanguages","DISPLAY_NON_ENGLISH_ASR","waitingForOthersToJoin","WAITING_FOR_OTHERS","canSendReactions","originalValue","REACTIONS_ACTIVE","REACTIONS_INACTIVE","canUserRenameSelfAndObserved","CAN_RENAME_SELF_AND_OBSERVED","canUserRenameOthers","CAN_RENAME_OTHERS","canShareWhiteBoard","SHARE_WHITEBOARD","addSequence","requestBody","_meeting$locusInfo","updateLocusWithDelta","_response$body2","handleLocusDelta","generateBuildLocusDeltaRequestOptions","originalMeeting","meetingRef","WeakRef","buildLocusDeltaRequestOptions","originalOptions","deref","cloneDeep","generateLocusDeltaRequest","locusDeltaRequest","selfSupportsFeature","feature","userPolicies","parseInterpretationInfo","_meetingInfo$meetingS","siInfo","updateMeetingSIEnabled","turnOnSimultaneousInterpretation","currentSIInterpreter","hostSIEnabled","meetingSiteSetting","enableHostInterpreterControlSI","updateHostSIEnabled","renameKey","obj","oldKey","newKey","_meeting$simultaneous","_meeting$simultaneous2","lanuagesInfo","siLanguages","_iterator","_step","language","updateInterpretation","Trigger","file","function","EVENT_TRIGGERS","MEETING_INTERPRETATION_UPDATE","getChangeMeetingFloorErrorPayload","errorPayload","errorDescription","shownToUser","LOCAL_SHARE_ERRORS","UNDEFINED","fatal","category","DEVICE_NOT_JOINED","NO_MEDIA_FOR_DEVICE","NO_CONFLUENCE_ID","CONTENT_SHARING_DISABLED","LOCUS_PARTICIPANT_DNE","CONTENT_REQUEST_WHILE_PENDING_WHITEBOARD","_default","exports"],"sources":["util.ts"],"sourcesContent":["import {LocalCameraStream, LocalMicrophoneStream} from '@webex/media-helpers';\n\nimport {cloneDeep} from 'lodash';\nimport {MeetingNotActiveError, UserNotJoinedError} from '../common/errors/webex-errors';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {\n INTENT_TO_JOIN,\n _LEFT_,\n _IDLE_,\n _JOINED_,\n PASSWORD_STATUS,\n DISPLAY_HINTS,\n FULL_STATE,\n SELF_POLICY,\n EVENT_TRIGGERS,\n LOCAL_SHARE_ERRORS,\n IP_VERSION,\n} from '../constants';\nimport BrowserDetection from '../common/browser-detection';\nimport IntentToJoinError from '../common/errors/intent-to-join';\nimport JoinMeetingError from '../common/errors/join-meeting';\nimport ParameterError from '../common/errors/parameter';\nimport PermissionError from '../common/errors/permission';\nimport PasswordError from '../common/errors/password-error';\nimport CaptchaError from '../common/errors/captcha-error';\nimport Trigger from '../common/events/trigger-proxy';\n\nconst MeetingUtil = {\n parseLocusJoin: (response) => {\n const parsed: any = {};\n\n // First todo: add check for existance\n parsed.locus = response.body.locus;\n parsed.mediaConnections = response.body.mediaConnections;\n parsed.locusUrl = parsed.locus.url;\n parsed.locusId = parsed.locus.url.split('/').pop();\n parsed.selfId = parsed.locus.self.id;\n\n // we need mediaId before making roap calls\n parsed.mediaConnections.forEach((mediaConnection) => {\n if (mediaConnection.mediaId) {\n parsed.mediaId = mediaConnection.mediaId;\n }\n });\n\n return parsed;\n },\n\n remoteUpdateAudioVideo: (meeting, audioMuted?: boolean, videoMuted?: boolean) => {\n if (!meeting) {\n return Promise.reject(new ParameterError('You need a meeting object.'));\n }\n\n if (!meeting.locusMediaRequest) {\n return Promise.reject(\n new ParameterError(\n 'You need a meeting with a media connection, call Meeting.addMedia() first.'\n )\n );\n }\n\n return meeting.locusMediaRequest\n .send({\n type: 'LocalMute',\n selfUrl: meeting.selfUrl,\n mediaId: meeting.mediaId,\n sequence: meeting.locusInfo.sequence,\n muteOptions: {\n audioMuted,\n videoMuted,\n },\n })\n .then((response) => response?.body?.locus);\n },\n\n hasOwner: (info) => info && info.owner,\n\n isOwnerSelf: (owner, selfId) => owner === selfId,\n\n isPinOrGuest: (err) => err?.body?.errorCode && INTENT_TO_JOIN.includes(err.body.errorCode),\n\n /**\n * Returns the current state of knowledge about whether we are on an ipv4-only or ipv6-only or mixed (ipv4 and ipv6) network.\n * The return value matches the possible values of \"ipver\" parameter used by the backend APIs.\n *\n * @param {Object} webex webex instance\n * @returns {IP_VERSION|undefined} ipver value to be passed to the backend APIs or undefined if we should not pass any value to the backend\n */\n getIpVersion(webex: any): IP_VERSION | undefined {\n const {supportsIpV4, supportsIpV6} = webex.internal.device.ipNetworkDetector;\n\n if (\n !webex.config.meetings.backendIpv6NativeSupport &&\n BrowserDetection().isBrowser('firefox')\n ) {\n // when backend doesn't support native ipv6,\n // then our NAT64/DNS64 based solution relies on FQDN ICE candidates, but Firefox doesn't support them,\n // see https://bugzilla.mozilla.org/show_bug.cgi?id=1713128\n // so for Firefox we don't want the backend to activate the \"ipv6 feature\"\n return undefined;\n }\n\n if (supportsIpV4 && supportsIpV6) {\n return IP_VERSION.ipv4_and_ipv6;\n }\n\n if (supportsIpV4) {\n return IP_VERSION.only_ipv4;\n }\n\n if (supportsIpV6) {\n return IP_VERSION.only_ipv6;\n }\n\n return IP_VERSION.unknown;\n },\n\n joinMeeting: async (meeting, options) => {\n if (!meeting) {\n return Promise.reject(new ParameterError('You need a meeting object.'));\n }\n const webex = meeting.getWebexObject();\n\n // @ts-ignore\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.locus.join.request',\n options: {meetingId: meeting.id},\n });\n\n let reachability;\n let clientMediaPreferences = {\n // bare minimum fallback value that should allow us to join\n ipver: IP_VERSION.unknown,\n joinCookie: undefined,\n preferTranscoding: !meeting.isMultistream,\n };\n\n try {\n clientMediaPreferences = await webex.meetings.reachability.getClientMediaPreferences(\n meeting.isMultistream,\n MeetingUtil.getIpVersion(webex)\n );\n reachability = await webex.meetings.reachability.getReachabilityReportToAttachToRoap();\n } catch (e) {\n LoggerProxy.logger.error(\n 'Meeting:util#joinMeeting --> Error getting reachability or clientMediaPreferences:',\n e\n );\n }\n\n // eslint-disable-next-line no-warning-comments\n // TODO: check if the meeting is in JOINING state\n // if Joining state termintate the request as user might click multiple times\n return meeting.meetingRequest\n .joinMeeting({\n inviteeAddress: meeting.meetingJoinUrl || meeting.sipUri,\n meetingNumber: meeting.meetingNumber,\n deviceUrl: meeting.deviceUrl,\n locusUrl: meeting.locusUrl,\n locusClusterUrl: meeting.meetingInfo?.locusClusterUrl,\n correlationId: meeting.correlationId,\n reachability,\n roapMessage: options.roapMessage,\n permissionToken: meeting.permissionToken,\n resourceId: options.resourceId || null,\n moderator: options.moderator,\n pin: options.pin,\n moveToResource: options.moveToResource,\n asResourceOccupant: options.asResourceOccupant,\n breakoutsSupported: options.breakoutsSupported,\n locale: options.locale,\n deviceCapabilities: options.deviceCapabilities,\n liveAnnotationSupported: options.liveAnnotationSupported,\n clientMediaPreferences,\n })\n .then((res) => {\n const parsed = MeetingUtil.parseLocusJoin(res);\n meeting.setLocus(parsed);\n\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.locus.join.response',\n payload: {\n trigger: 'loci-update',\n identifiers: {\n trackingId: res.headers.trackingid,\n },\n },\n options: {\n meetingId: meeting.id,\n mediaConnections: parsed.mediaConnections,\n },\n });\n\n return parsed;\n });\n },\n\n cleanUp: (meeting) => {\n meeting.getWebexObject().internal.device.meetingEnded();\n meeting.stopPeriodicLogUpload();\n\n meeting.breakouts.cleanUp();\n meeting.simultaneousInterpretation.cleanUp();\n meeting.locusMediaRequest = undefined;\n\n // make sure we send last metrics before we close the peerconnection\n const stopStatsAnalyzer = meeting.statsAnalyzer\n ? meeting.statsAnalyzer.stopAnalyzer()\n : Promise.resolve();\n\n return stopStatsAnalyzer\n .then(() => meeting.closeRemoteStreams())\n .then(() => meeting.closePeerConnections())\n .then(() => {\n meeting.cleanupLocalStreams();\n meeting.unsetRemoteStreams();\n meeting.unsetPeerConnections();\n meeting.reconnectionManager.cleanUp();\n })\n .then(() => meeting.stopKeepAlive())\n .then(() => {\n if (meeting.config?.enableAutomaticLLM) {\n meeting.updateLLMConnection();\n }\n });\n },\n\n disconnectPhoneAudio: (meeting, phoneUrl) => {\n if (meeting.meetingState === FULL_STATE.INACTIVE) {\n return Promise.reject(new MeetingNotActiveError());\n }\n\n const options = {\n locusUrl: meeting.locusUrl,\n selfId: meeting.selfId,\n correlationId: meeting.correlationId,\n phoneUrl,\n };\n\n return meeting.meetingRequest.disconnectPhoneAudio(options).catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:util#disconnectPhoneAudio --> An error occured while disconnecting phone audio in meeting ${meeting.id}, error: ${err}`\n );\n\n return Promise.reject(err);\n });\n },\n\n /**\n * Returns options for leaving a meeting.\n * @param {any} meeting\n * @param {any} options\n * @returns {any} leave options\n */\n prepareLeaveMeetingOptions: (meeting, options: any = {}) => {\n const defaultOptions = {\n locusUrl: meeting.locusUrl,\n selfId: meeting.selfId,\n correlationId: meeting.correlationId,\n resourceId: meeting.resourceId,\n deviceUrl: meeting.deviceUrl,\n };\n\n return {...defaultOptions, ...options};\n },\n\n // by default will leave on meeting's resourceId\n // if you explicity want it not to leave on resource id, pass\n // {resourceId: null}\n // TODO: chris, you can modify this however you want\n leaveMeeting: (meeting, options: any = {}) => {\n if (meeting.meetingState === FULL_STATE.INACTIVE) {\n // TODO: clean up if the meeting is already inactive\n return Promise.reject(new MeetingNotActiveError());\n }\n\n if (MeetingUtil.isUserInLeftState(meeting.locusInfo)) {\n return Promise.reject(new UserNotJoinedError());\n }\n\n const leaveOptions = MeetingUtil.prepareLeaveMeetingOptions(meeting, options);\n\n return meeting.meetingRequest\n .leaveMeeting(leaveOptions)\n .then(() => {\n if (options.moveMeeting) {\n return Promise.resolve();\n }\n\n return MeetingUtil.cleanUp(meeting);\n })\n .catch((err) => {\n // TODO: If the meeting state comes as LEFT or INACTIVE as response then\n // 1) on leave clean up the meeting or simply do a sync on the meeting\n // 2) If the error says meeting is inactive then destroy the meeting object\n LoggerProxy.logger.error(\n `Meeting:util#leaveMeeting --> An error occured while trying to leave meeting with an id of ${meeting.id}, error: ${err}`\n );\n\n return Promise.reject(err);\n });\n },\n declineMeeting: (meeting, reason) =>\n meeting.meetingRequest.declineMeeting({\n locusUrl: meeting.locusUrl,\n deviceUrl: meeting.deviceUrl,\n reason,\n }),\n\n isUserInLeftState: (locusInfo) => locusInfo.parsedLocus?.self?.state === _LEFT_,\n\n isUserInIdleState: (locusInfo) => locusInfo.parsedLocus?.self?.state === _IDLE_,\n\n isUserInJoinedState: (locusInfo) => locusInfo.parsedLocus?.self?.state === _JOINED_,\n\n isMediaEstablished: (currentMediaStatus) =>\n currentMediaStatus &&\n (currentMediaStatus.audio || currentMediaStatus.video || currentMediaStatus.share),\n\n joinMeetingOptions: (meeting, options: any = {}) => {\n const webex = meeting.getWebexObject();\n\n meeting.resourceId = meeting.resourceId || options.resourceId;\n\n if (meeting.requiredCaptcha) {\n return Promise.reject(new CaptchaError());\n }\n if (meeting.passwordStatus === PASSWORD_STATUS.REQUIRED) {\n return Promise.reject(new PasswordError());\n }\n\n if (options.pin) {\n // @ts-ignore\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.pin.collected',\n options: {\n meetingId: meeting.id,\n },\n });\n }\n\n // normal join meeting, scenario A, D\n return MeetingUtil.joinMeeting(meeting, options).catch((err) => {\n // joining a claimed PMR that is not my own, scenario B\n if (MeetingUtil.isPinOrGuest(err)) {\n webex.internal.newMetrics.submitClientEvent({\n name: 'client.pin.prompt',\n options: {\n meetingId: meeting.id,\n },\n });\n\n // request host pin or non host for unclaimed PMR, start of Scenario C\n // see https://sqbu-github.cisco.com/WebExSquared/locus/wiki/Locus-Lobby-and--IVR-Feature\n return Promise.reject(new IntentToJoinError('Error Joining Meeting', err));\n }\n LoggerProxy.logger.error('Meeting:util#joinMeetingOptions --> Error joining the call, ', err);\n\n return Promise.reject(new JoinMeetingError(options, 'Error Joining Meeting', err));\n });\n },\n\n /**\n * Returns request options for leaving a meeting.\n * @param {any} meeting\n * @param {any} options\n * @returns {any} request options\n */\n buildLeaveFetchRequestOptions: (meeting, options: any = {}) => {\n const leaveOptions = MeetingUtil.prepareLeaveMeetingOptions(meeting, options);\n\n return meeting.meetingRequest.buildLeaveMeetingRequestOptions(leaveOptions);\n },\n\n getTrack: (stream) => {\n let audioTrack = null;\n let videoTrack = null;\n let audioTracks = null;\n let videoTracks = null;\n\n if (!stream) {\n return {audioTrack: null, videoTrack: null};\n }\n if (stream.getAudioTracks) {\n audioTracks = stream.getAudioTracks();\n }\n if (stream.getVideoTracks) {\n videoTracks = stream.getVideoTracks();\n }\n\n if (audioTracks && audioTracks.length > 0) {\n [audioTrack] = audioTracks;\n }\n\n if (videoTracks && videoTracks.length > 0) {\n [videoTrack] = videoTracks;\n }\n\n return {audioTrack, videoTrack};\n },\n\n getModeratorFromLocusInfo: (locusInfo) =>\n locusInfo &&\n locusInfo.parsedLocus &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info.moderator,\n\n getPolicyFromLocusInfo: (locusInfo) =>\n locusInfo &&\n locusInfo.parsedLocus &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info &&\n locusInfo.parsedLocus.info.policy,\n\n getUserDisplayHintsFromLocusInfo: (locusInfo) =>\n locusInfo?.parsedLocus?.info?.userDisplayHints || [],\n\n canInviteNewParticipants: (displayHints) => displayHints.includes(DISPLAY_HINTS.ADD_GUEST),\n\n canAdmitParticipant: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.ROSTER_WAITING_TO_JOIN),\n\n canUserLock: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LOCK_CONTROL_LOCK) &&\n displayHints.includes(DISPLAY_HINTS.LOCK_STATUS_UNLOCKED),\n\n canUserUnlock: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LOCK_CONTROL_UNLOCK) &&\n displayHints.includes(DISPLAY_HINTS.LOCK_STATUS_LOCKED),\n\n canUserRaiseHand: (displayHints) => displayHints.includes(DISPLAY_HINTS.RAISE_HAND),\n\n canUserLowerAllHands: (displayHints) => displayHints.includes(DISPLAY_HINTS.LOWER_ALL_HANDS),\n\n canUserLowerSomeoneElsesHand: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LOWER_SOMEONE_ELSES_HAND),\n\n bothLeaveAndEndMeetingAvailable: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.LEAVE_TRANSFER_HOST_END_MEETING) ||\n displayHints.includes(DISPLAY_HINTS.LEAVE_END_MEETING),\n\n canManageBreakout: (displayHints) => displayHints.includes(DISPLAY_HINTS.BREAKOUT_MANAGEMENT),\n\n canStartBreakout: (displayHints) => !displayHints.includes(DISPLAY_HINTS.DISABLE_BREAKOUT_START),\n\n canBroadcastMessageToBreakout: (displayHints, policies = {}) =>\n displayHints.includes(DISPLAY_HINTS.BROADCAST_MESSAGE_TO_BREAKOUT) &&\n !!policies[SELF_POLICY.SUPPORT_BROADCAST_MESSAGE],\n\n isSuppressBreakoutSupport: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.UCF_SUPPRESS_BREAKOUTS_SUPPORT),\n\n canAdmitLobbyToBreakout: (displayHints) =>\n !displayHints.includes(DISPLAY_HINTS.DISABLE_LOBBY_TO_BREAKOUT),\n\n isBreakoutPreassignmentsEnabled: (displayHints) =>\n !displayHints.includes(DISPLAY_HINTS.DISABLE_BREAKOUT_PREASSIGNMENTS),\n\n canUserAskForHelp: (displayHints) => !displayHints.includes(DISPLAY_HINTS.DISABLE_ASK_FOR_HELP),\n\n lockMeeting: (actions, request, locusUrl) => {\n if (actions && actions.canLock) {\n return request.lockMeeting({locusUrl, lock: true});\n }\n\n return Promise.reject(new PermissionError('Lock not allowed, due to joined property.'));\n },\n\n unlockMeeting: (actions, request, locusUrl) => {\n if (actions && actions.canUnlock) {\n return request.lockMeeting({locusUrl, lock: false});\n }\n\n return Promise.reject(new PermissionError('Unlock not allowed, due to joined property.'));\n },\n\n handleAudioLogging: (audioStream?: LocalMicrophoneStream) => {\n const LOG_HEADER = 'MeetingUtil#handleAudioLogging -->';\n\n if (audioStream) {\n const settings = audioStream.getSettings();\n const {deviceId} = settings;\n\n LoggerProxy.logger.log(LOG_HEADER, `deviceId = ${deviceId}`);\n LoggerProxy.logger.log(LOG_HEADER, 'settings =', JSON.stringify(settings));\n }\n },\n\n handleVideoLogging: (videoStream?: LocalCameraStream) => {\n const LOG_HEADER = 'MeetingUtil#handleVideoLogging -->';\n\n if (videoStream) {\n const settings = videoStream.getSettings();\n const {deviceId} = settings;\n\n LoggerProxy.logger.log(LOG_HEADER, `deviceId = ${deviceId}`);\n LoggerProxy.logger.log(LOG_HEADER, 'settings =', JSON.stringify(settings));\n }\n },\n\n endMeetingForAll: (meeting) => {\n if (meeting.meetingState === FULL_STATE.INACTIVE) {\n return Promise.reject(new MeetingNotActiveError());\n }\n\n const endOptions = {\n locusUrl: meeting.locusUrl,\n };\n\n return meeting.meetingRequest\n .endMeetingForAll(endOptions)\n .then(() => MeetingUtil.cleanUp(meeting))\n .catch((err) => {\n LoggerProxy.logger.error(\n `Meeting:util#endMeetingForAll An error occured while trying to end meeting for all with an id of ${meeting.id}, error: ${err}`\n );\n\n return Promise.reject(err);\n });\n },\n\n canEnableClosedCaption: (displayHints) => displayHints.includes(DISPLAY_HINTS.CAPTION_START),\n\n isSaveTranscriptsEnabled: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.SAVE_TRANSCRIPTS_ENABLED),\n\n canStartTranscribing: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.TRANSCRIPTION_CONTROL_START),\n\n canStopTranscribing: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.TRANSCRIPTION_CONTROL_STOP),\n\n isClosedCaptionActive: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.CAPTION_STATUS_ACTIVE),\n\n canStartManualCaption: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.MANUAL_CAPTION_START),\n\n canStopManualCaption: (displayHints) => displayHints.includes(DISPLAY_HINTS.MANUAL_CAPTION_STOP),\n\n isManualCaptionActive: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.MANUAL_CAPTION_STATUS_ACTIVE),\n\n isWebexAssistantActive: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.WEBEX_ASSISTANT_STATUS_ACTIVE),\n\n canViewCaptionPanel: (displayHints) => displayHints.includes(DISPLAY_HINTS.ENABLE_CAPTION_PANEL),\n\n isRealTimeTranslationEnabled: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.DISPLAY_REAL_TIME_TRANSLATION),\n\n canSelectSpokenLanguages: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.DISPLAY_NON_ENGLISH_ASR),\n\n waitingForOthersToJoin: (displayHints) => displayHints.includes(DISPLAY_HINTS.WAITING_FOR_OTHERS),\n\n canSendReactions: (originalValue, displayHints) => {\n if (displayHints.includes(DISPLAY_HINTS.REACTIONS_ACTIVE)) {\n return true;\n }\n if (displayHints.includes(DISPLAY_HINTS.REACTIONS_INACTIVE)) {\n return false;\n }\n\n return originalValue;\n },\n canUserRenameSelfAndObserved: (displayHints) =>\n displayHints.includes(DISPLAY_HINTS.CAN_RENAME_SELF_AND_OBSERVED),\n\n canUserRenameOthers: (displayHints) => displayHints.includes(DISPLAY_HINTS.CAN_RENAME_OTHERS),\n\n canShareWhiteBoard: (displayHints) => displayHints.includes(DISPLAY_HINTS.SHARE_WHITEBOARD),\n\n /**\n * Adds the current locus sequence information to a request body\n * @param {Object} meeting The meeting object\n * @param {Object} requestBody The body of a request to locus\n * @returns {void}\n */\n addSequence: (meeting, requestBody) => {\n const sequence = meeting?.locusInfo?.sequence;\n\n if (!sequence) {\n return;\n }\n\n requestBody.sequence = sequence;\n },\n\n /**\n * Updates the locus info for the meeting with the delta locus\n * returned from requests that include the sequence information\n * Returns the original response object\n * @param {Object} meeting The meeting object\n * @param {Object} response The response of the http request\n * @returns {Object}\n */\n updateLocusWithDelta: (meeting, response) => {\n if (!meeting) {\n return response;\n }\n\n const locus = response?.body?.locus;\n\n if (locus) {\n meeting.locusInfo.handleLocusDelta(locus, meeting);\n }\n\n return response;\n },\n\n generateBuildLocusDeltaRequestOptions: (originalMeeting) => {\n const meetingRef = new WeakRef(originalMeeting);\n\n const buildLocusDeltaRequestOptions = (originalOptions) => {\n const meeting = meetingRef.deref();\n\n if (!meeting) {\n return originalOptions;\n }\n\n const options = cloneDeep(originalOptions);\n\n if (!options.body) {\n options.body = {};\n }\n\n MeetingUtil.addSequence(meeting, options.body);\n\n return options;\n };\n\n return buildLocusDeltaRequestOptions;\n },\n\n generateLocusDeltaRequest: (originalMeeting) => {\n const meetingRef = new WeakRef(originalMeeting);\n\n const buildLocusDeltaRequestOptions =\n MeetingUtil.generateBuildLocusDeltaRequestOptions(originalMeeting);\n\n const locusDeltaRequest = (originalOptions) => {\n const meeting = meetingRef.deref();\n\n if (!meeting) {\n return Promise.resolve();\n }\n\n const options = buildLocusDeltaRequestOptions(originalOptions);\n\n return meeting\n .request(options)\n .then((response) => MeetingUtil.updateLocusWithDelta(meeting, response));\n };\n\n return locusDeltaRequest;\n },\n\n selfSupportsFeature: (feature: SELF_POLICY, userPolicies: Record<SELF_POLICY, boolean>) => {\n if (!userPolicies) {\n return true;\n }\n\n return userPolicies[feature];\n },\n\n parseInterpretationInfo: (meeting, meetingInfo) => {\n if (!meeting || !meetingInfo) {\n return;\n }\n const siInfo = meetingInfo.simultaneousInterpretation;\n meeting.simultaneousInterpretation.updateMeetingSIEnabled(\n !!meetingInfo.turnOnSimultaneousInterpretation,\n !!siInfo?.currentSIInterpreter\n );\n const hostSIEnabled = !!(\n meetingInfo.turnOnSimultaneousInterpretation &&\n meetingInfo?.meetingSiteSetting?.enableHostInterpreterControlSI\n );\n meeting.simultaneousInterpretation.updateHostSIEnabled(hostSIEnabled);\n\n function renameKey(obj, oldKey, newKey) {\n if (oldKey in obj) {\n obj[newKey] = obj[oldKey];\n delete obj[oldKey];\n }\n }\n if (siInfo) {\n const lanuagesInfo = cloneDeep(siInfo.siLanguages);\n for (const language of lanuagesInfo) {\n renameKey(language, 'languageCode', 'languageName');\n renameKey(language, 'languageGroupId', 'languageCode');\n }\n if (!meeting.simultaneousInterpretation?.siLanguages?.length) {\n meeting.simultaneousInterpretation.updateInterpretation({siLanguages: lanuagesInfo});\n }\n }\n Trigger.trigger(\n meeting,\n {\n file: 'meeting/util',\n function: 'parseInterpretationInfo',\n },\n EVENT_TRIGGERS.MEETING_INTERPRETATION_UPDATE\n );\n },\n\n /**\n * Returns a CA-recognized error payload for the specified raw error message/reason.\n *\n * New errors can be added to this function for handling in the future\n *\n * @param {String} reason the raw error message\n * @returns {Array<object>} an array of payload objects\n */\n getChangeMeetingFloorErrorPayload: (reason: string) => {\n const errorPayload = {\n errorDescription: reason,\n name: 'locus.response',\n shownToUser: false,\n };\n if (reason.includes(LOCAL_SHARE_ERRORS.UNDEFINED)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 1100,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.DEVICE_NOT_JOINED)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 4050,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.NO_MEDIA_FOR_DEVICE)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'media',\n errorCode: 2048,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.NO_CONFLUENCE_ID)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 4064,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.CONTENT_SHARING_DISABLED)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'expected',\n errorCode: 4065,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.LOCUS_PARTICIPANT_DNE)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 4066,\n },\n ];\n }\n if (reason.includes(LOCAL_SHARE_ERRORS.CONTENT_REQUEST_WHILE_PENDING_WHITEBOARD)) {\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'expected',\n errorCode: 4067,\n },\n ];\n }\n\n // return unknown error\n return [\n {\n ...errorPayload,\n fatal: true,\n category: 'signaling',\n errorCode: 1100,\n },\n ];\n },\n};\n\nexport default MeetingUtil;\n"],"mappings":"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"}
@@ -238,6 +238,7 @@ export declare const EVENT_TRIGGERS: {
238
238
  MEETING_RECONNECTION_FAILURE: string;
239
239
  MEETING_UNLOCKED: string;
240
240
  MEETING_LOCKED: string;
241
+ MEETING_RESOURCE_LINKS_UPDATE: string;
241
242
  MEETING_INFO_AVAILABLE: string;
242
243
  MEETING_INFO_UPDATED: string;
243
244
  MEETING_LOG_UPLOAD_SUCCESS: string;
@@ -794,6 +795,7 @@ export declare const DISPLAY_HINTS: {
794
795
  DISABLE_ASK_FOR_HELP: string;
795
796
  DISABLE_BREAKOUT_PREASSIGNMENTS: string;
796
797
  DISABLE_LOBBY_TO_BREAKOUT: string;
798
+ DISABLE_BREAKOUT_START: string;
797
799
  DISABLE_VIEW_THE_PARTICIPANT_LIST: string;
798
800
  ENABLE_VIEW_THE_PARTICIPANT_LIST: string;
799
801
  DISABLE_VIEW_THE_PARTICIPANT_LIST_PANELIST: string;
@@ -229,11 +229,12 @@ export default class LocusInfo extends EventsScope {
229
229
  /**
230
230
  * handles when the locus.mediaShares is updated
231
231
  * @param {Object} mediaShares the locus.mediaShares property
232
+ * @param {boolean} forceUpdate force to update the mediaShares
232
233
  * @returns {undefined}
233
234
  * @memberof LocusInfo
234
235
  * emits internal event locus_info_update_media_shares
235
236
  */
236
- updateMediaShares(mediaShares: object): void;
237
+ updateMediaShares(mediaShares: object, forceUpdate?: boolean): void;
237
238
  /**
238
239
  * @param {String} participantsUrl
239
240
  * @returns {undefined}
@@ -54,6 +54,7 @@ declare const MeetingUtil: {
54
54
  canUserLowerSomeoneElsesHand: (displayHints: any) => any;
55
55
  bothLeaveAndEndMeetingAvailable: (displayHints: any) => any;
56
56
  canManageBreakout: (displayHints: any) => any;
57
+ canStartBreakout: (displayHints: any) => boolean;
57
58
  canBroadcastMessageToBreakout: (displayHints: any, policies?: {}) => boolean;
58
59
  isSuppressBreakoutSupport: (displayHints: any) => any;
59
60
  canAdmitLobbyToBreakout: (displayHints: any) => boolean;
@@ -38,7 +38,9 @@ var Webinar = _webexCore.WebexPlugin.extend({
38
38
  // self is panelist
39
39
  selfIsAttendee: 'boolean',
40
40
  // self is attendee
41
- practiceSessionEnabled: 'boolean' // practice session enabled
41
+ practiceSessionEnabled: 'boolean',
42
+ // practice session enabled
43
+ meetingId: 'string'
42
44
  },
43
45
  /**
44
46
  * Update the current locus url of the webinar
@@ -75,15 +77,46 @@ var Webinar = _webexCore.WebexPlugin.extend({
75
77
  var oldRoles = (0, _lodash.get)(payload, 'oldRoles', []);
76
78
  var newRoles = (0, _lodash.get)(payload, 'newRoles', []);
77
79
  var isPromoted = oldRoles.includes(_constants.SELF_ROLES.ATTENDEE) && newRoles.includes(_constants.SELF_ROLES.PANELIST);
78
- var isDemoted = oldRoles.includes(_constants.SELF_ROLES.PANELIST) && newRoles.includes(_constants.SELF_ROLES.ATTENDEE);
80
+ var isDemoted = oldRoles.includes(_constants.SELF_ROLES.PANELIST) && newRoles.includes(_constants.SELF_ROLES.ATTENDEE) || !oldRoles.includes(_constants.SELF_ROLES.ATTENDEE) && newRoles.includes(_constants.SELF_ROLES.ATTENDEE); // for attendee just join meeting case
79
81
  this.set('selfIsPanelist', newRoles.includes(_constants.SELF_ROLES.PANELIST));
80
82
  this.set('selfIsAttendee', newRoles.includes(_constants.SELF_ROLES.ATTENDEE));
81
83
  this.updateCanManageWebcast(newRoles.includes(_constants.SELF_ROLES.MODERATOR));
84
+ this.updateStatusByRole({
85
+ isPromoted: isPromoted,
86
+ isDemoted: isDemoted
87
+ });
82
88
  return {
83
89
  isPromoted: isPromoted,
84
90
  isDemoted: isDemoted
85
91
  };
86
92
  },
93
+ /**
94
+ * should join practice session data channel or not
95
+ * @param {Object} {isPromoted: boolean, isDemoted: boolean}} Role transition states
96
+ * @returns {void}
97
+ */
98
+ updateStatusByRole: function updateStatusByRole(_ref) {
99
+ var isPromoted = _ref.isPromoted,
100
+ isDemoted = _ref.isDemoted;
101
+ var meeting = this.webex.meetings.getMeetingByType(_constants._ID_, this.meetingId);
102
+ if (isDemoted && (meeting === null || meeting === void 0 ? void 0 : meeting.shareStatus) === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE || isPromoted) {
103
+ var _meeting$locusInfo, _meeting$locusInfo2;
104
+ // attendees in webinar should subscribe streaming for whiteboard sharing
105
+ // while panelist still need subscribe native mode so trigger force update here
106
+ meeting === null || meeting === void 0 ? void 0 : (_meeting$locusInfo = meeting.locusInfo) === null || _meeting$locusInfo === void 0 ? void 0 : _meeting$locusInfo.updateMediaShares(meeting === null || meeting === void 0 ? void 0 : (_meeting$locusInfo2 = meeting.locusInfo) === null || _meeting$locusInfo2 === void 0 ? void 0 : _meeting$locusInfo2.mediaShares, true);
107
+ }
108
+ if (this.practiceSessionEnabled) {
109
+ // may need change data channel in practice session
110
+ meeting === null || meeting === void 0 ? void 0 : meeting.updateLLMConnection();
111
+ }
112
+ },
113
+ /**
114
+ * should join practice session data channel or not
115
+ * @returns {boolean}
116
+ */
117
+ isJoinPracticeSessionDataChannel: function isJoinPracticeSessionDataChannel() {
118
+ return this.selfIsPanelist && this.practiceSessionEnabled;
119
+ },
87
120
  /**
88
121
  * start or stop practice session for webinar
89
122
  * @param {boolean} enabled
@@ -425,7 +458,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
425
458
  }, _callee7);
426
459
  }))();
427
460
  },
428
- version: "3.7.0-next.20"
461
+ version: "3.7.0-next.22"
429
462
  });
430
463
  var _default = exports.default = Webinar;
431
464
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_webexCore","require","_uuid","_interopRequireDefault","_lodash","_constants","_collection","_loggerProxy","Webinar","WebexPlugin","extend","namespace","MEETINGS","collections","webinar","WebinarCollection","props","locusUrl","webcastInstanceUrl","canManageWebcast","selfIsPanelist","selfIsAttendee","practiceSessionEnabled","locusUrlUpdate","set","updateWebcastUrl","payload","get","updateCanManageWebcast","updateRoleChanged","oldRoles","newRoles","isPromoted","includes","SELF_ROLES","ATTENDEE","PANELIST","isDemoted","MODERATOR","setPracticeSessionState","enabled","request","method","HTTP_VERBS","PATCH","uri","concat","body","practiceSession","catch","error","LoggerProxy","logger","updatePracticeSessionStatus","startWebcast","meeting","layout","_this","_asyncToGenerator2","default","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","Error","t0","t1","PUT","t2","t3","_defineProperty2","webex","credentials","getUserToken","t4","sent","t5","config","trackingIdPrefix","uuid","v4","toString","t6","authorization","trackingId","t7","HEADERS","CONTENT_TYPE","t8","CONTENT_TYPE_VALUE","APPLICATION_JSON","t9","t10","action","meetingInfo","locusId","correlationId","t11","headers","abrupt","call","stop","stopWebcast","_this2","_callee2","_callee2$","_context2","queryWebcastLayout","_this3","_callee3","_callee3$","_context3","GET","updateWebcastLayout","_this4","_callee4","_callee4$","_context4","videoLayout","contentLayout","syncStageLayout","syncStageInMeeting","viewAllWebcastAttendees","_this5","_callee5","_callee5$","_context5","searchWebcastAttendees","_arguments","arguments","_this6","_callee6","queryString","_callee6$","_context6","length","undefined","encodeURIComponent","expelWebcastAttendee","participantId","_this7","_callee7","_callee7$","_context7","DELETE","version","_default","exports"],"sources":["index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.\n */\nimport {WebexPlugin, config} from '@webex/webex-core';\nimport uuid from 'uuid';\nimport {get} from 'lodash';\nimport {HEADERS, HTTP_VERBS, MEETINGS, SELF_ROLES} from '../constants';\n\nimport WebinarCollection from './collection';\nimport LoggerProxy from '../common/logs/logger-proxy';\n\n/**\n * @class Webinar\n */\nconst Webinar = WebexPlugin.extend({\n namespace: MEETINGS,\n collections: {\n webinar: WebinarCollection,\n },\n\n props: {\n locusUrl: 'string', // appears current webinar's locus url\n webcastInstanceUrl: 'string', // current webinar's webcast instance url\n canManageWebcast: 'boolean', // appears the ability to manage webcast\n selfIsPanelist: 'boolean', // self is panelist\n selfIsAttendee: 'boolean', // self is attendee\n practiceSessionEnabled: 'boolean', // practice session enabled\n },\n\n /**\n * Update the current locus url of the webinar\n * @param {string} locusUrl\n * @returns {void}\n */\n locusUrlUpdate(locusUrl) {\n this.set('locusUrl', locusUrl);\n },\n\n /**\n * Update the current webcast instance url of the meeting\n * @param {object} payload\n * @returns {void}\n */\n updateWebcastUrl(payload) {\n this.set('webcastInstanceUrl', get(payload, 'resources.webcastInstance.url'));\n },\n\n /**\n * Update whether self has capability to manage start/stop webcast (only host can manage it)\n * @param {boolean} canManageWebcast\n * @returns {void}\n */\n updateCanManageWebcast(canManageWebcast) {\n this.set('canManageWebcast', canManageWebcast);\n },\n\n /**\n * Updates user roles and manages associated state transitions\n * @param {object} payload\n * @param {string[]} payload.oldRoles - Previous roles of the user\n * @param {string[]} payload.newRoles - New roles of the user\n * @returns {{isPromoted: boolean, isDemoted: boolean}} Role transition states\n */\n updateRoleChanged(payload) {\n const oldRoles = get(payload, 'oldRoles', []);\n const newRoles = get(payload, 'newRoles', []);\n\n const isPromoted =\n oldRoles.includes(SELF_ROLES.ATTENDEE) && newRoles.includes(SELF_ROLES.PANELIST);\n const isDemoted =\n oldRoles.includes(SELF_ROLES.PANELIST) && newRoles.includes(SELF_ROLES.ATTENDEE);\n this.set('selfIsPanelist', newRoles.includes(SELF_ROLES.PANELIST));\n this.set('selfIsAttendee', newRoles.includes(SELF_ROLES.ATTENDEE));\n this.updateCanManageWebcast(newRoles.includes(SELF_ROLES.MODERATOR));\n\n return {isPromoted, isDemoted};\n },\n\n /**\n * start or stop practice session for webinar\n * @param {boolean} enabled\n * @returns {Promise}\n */\n setPracticeSessionState(enabled) {\n return this.request({\n method: HTTP_VERBS.PATCH,\n uri: `${this.locusUrl}/controls`,\n body: {\n practiceSession: {\n enabled,\n },\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#setPracticeSessionState failed', error);\n throw error;\n });\n },\n\n /**\n * update practice session status\n * @param {object} payload\n * @returns {void}\n */\n updatePracticeSessionStatus(payload) {\n this.set('practiceSessionEnabled', payload.enabled);\n },\n\n /**\n * start webcast mode for webinar\n * @param {object} meeting\n * @param {object} layout\n * @returns {Promise}\n */\n async startWebcast(meeting, layout) {\n if (!meeting) {\n LoggerProxy.logger.error(\n `Meeting:webinar#startWebcast failed --> meeting parameter : ${meeting}`\n );\n throw new Error('Meeting parameter does not meet expectations');\n }\n\n return this.request({\n method: HTTP_VERBS.PUT,\n uri: `${this.webcastInstanceUrl}/streaming`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n [HEADERS.CONTENT_TYPE]: HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON,\n },\n body: {\n action: 'start',\n meetingInfo: {\n locusId: meeting.locusId,\n correlationId: meeting.correlationId,\n },\n layout,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#startWebcast failed', error);\n throw error;\n });\n },\n\n /**\n * stop webcast mode for webinar\n * @returns {Promise}\n */\n async stopWebcast() {\n return this.request({\n method: HTTP_VERBS.PUT,\n uri: `${this.webcastInstanceUrl}/streaming`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n [HEADERS.CONTENT_TYPE]: HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON,\n },\n body: {\n action: 'stop',\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#stopWebcast failed', error);\n throw error;\n });\n },\n\n /**\n * query webcast layout for webinar\n * @returns {Promise}\n */\n async queryWebcastLayout() {\n return this.request({\n method: HTTP_VERBS.GET,\n uri: `${this.webcastInstanceUrl}/layout`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#queryWebcastLayout failed', error);\n throw error;\n });\n },\n\n /**\n * update webcast layout for webinar\n * @param {object} layout\n * @returns {Promise}\n */\n async updateWebcastLayout(layout) {\n return this.request({\n method: HTTP_VERBS.PUT,\n uri: `${this.webcastInstanceUrl}/layout`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n [HEADERS.CONTENT_TYPE]: HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON,\n },\n body: {\n videoLayout: layout.videoLayout,\n contentLayout: layout.contentLayout,\n syncStageLayout: layout.syncStageLayout,\n syncStageInMeeting: layout.syncStageInMeeting,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#updateWebcastLayout failed', error);\n throw error;\n });\n },\n\n /**\n * view all webcast attendees\n * @param {string} queryString\n * @returns {Promise}\n */\n async viewAllWebcastAttendees() {\n return this.request({\n method: HTTP_VERBS.GET,\n uri: `${this.webcastInstanceUrl}/attendees`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#viewAllWebcastAttendees failed', error);\n throw error;\n });\n },\n\n /**\n * search webcast attendees by query string\n * @param {string} queryString\n * @returns {Promise}\n */\n async searchWebcastAttendees(queryString = '') {\n return this.request({\n method: HTTP_VERBS.GET,\n uri: `${this.webcastInstanceUrl}/attendees?keyword=${encodeURIComponent(queryString)}`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#searchWebcastAttendees failed', error);\n throw error;\n });\n },\n\n /**\n * expel webcast attendee by participantId\n * @param {string} participantId\n * @returns {Promise}\n */\n async expelWebcastAttendee(participantId) {\n return this.request({\n method: HTTP_VERBS.DELETE,\n uri: `${this.webcastInstanceUrl}/attendees/${participantId}`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#expelWebcastAttendee failed', error);\n throw error;\n });\n },\n});\n\nexport default Webinar;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_webexCore","require","_uuid","_interopRequireDefault","_lodash","_constants","_collection","_loggerProxy","Webinar","WebexPlugin","extend","namespace","MEETINGS","collections","webinar","WebinarCollection","props","locusUrl","webcastInstanceUrl","canManageWebcast","selfIsPanelist","selfIsAttendee","practiceSessionEnabled","meetingId","locusUrlUpdate","set","updateWebcastUrl","payload","get","updateCanManageWebcast","updateRoleChanged","oldRoles","newRoles","isPromoted","includes","SELF_ROLES","ATTENDEE","PANELIST","isDemoted","MODERATOR","updateStatusByRole","_ref","meeting","webex","meetings","getMeetingByType","_ID_","shareStatus","SHARE_STATUS","WHITEBOARD_SHARE_ACTIVE","_meeting$locusInfo","_meeting$locusInfo2","locusInfo","updateMediaShares","mediaShares","updateLLMConnection","isJoinPracticeSessionDataChannel","setPracticeSessionState","enabled","request","method","HTTP_VERBS","PATCH","uri","concat","body","practiceSession","catch","error","LoggerProxy","logger","updatePracticeSessionStatus","startWebcast","layout","_this","_asyncToGenerator2","default","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","Error","t0","t1","PUT","t2","t3","_defineProperty2","credentials","getUserToken","t4","sent","t5","config","trackingIdPrefix","uuid","v4","toString","t6","authorization","trackingId","t7","HEADERS","CONTENT_TYPE","t8","CONTENT_TYPE_VALUE","APPLICATION_JSON","t9","t10","action","meetingInfo","locusId","correlationId","t11","headers","abrupt","call","stop","stopWebcast","_this2","_callee2","_callee2$","_context2","queryWebcastLayout","_this3","_callee3","_callee3$","_context3","GET","updateWebcastLayout","_this4","_callee4","_callee4$","_context4","videoLayout","contentLayout","syncStageLayout","syncStageInMeeting","viewAllWebcastAttendees","_this5","_callee5","_callee5$","_context5","searchWebcastAttendees","_arguments","arguments","_this6","_callee6","queryString","_callee6$","_context6","length","undefined","encodeURIComponent","expelWebcastAttendee","participantId","_this7","_callee7","_callee7$","_context7","DELETE","version","_default","exports"],"sources":["index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2023 Cisco Systems, Inc. See LICENSE file.\n */\nimport {WebexPlugin, config} from '@webex/webex-core';\nimport uuid from 'uuid';\nimport {get} from 'lodash';\nimport {_ID_, HEADERS, HTTP_VERBS, MEETINGS, SELF_ROLES, SHARE_STATUS} from '../constants';\n\nimport WebinarCollection from './collection';\nimport LoggerProxy from '../common/logs/logger-proxy';\n\n/**\n * @class Webinar\n */\nconst Webinar = WebexPlugin.extend({\n namespace: MEETINGS,\n collections: {\n webinar: WebinarCollection,\n },\n\n props: {\n locusUrl: 'string', // appears current webinar's locus url\n webcastInstanceUrl: 'string', // current webinar's webcast instance url\n canManageWebcast: 'boolean', // appears the ability to manage webcast\n selfIsPanelist: 'boolean', // self is panelist\n selfIsAttendee: 'boolean', // self is attendee\n practiceSessionEnabled: 'boolean', // practice session enabled\n meetingId: 'string',\n },\n\n /**\n * Update the current locus url of the webinar\n * @param {string} locusUrl\n * @returns {void}\n */\n locusUrlUpdate(locusUrl) {\n this.set('locusUrl', locusUrl);\n },\n\n /**\n * Update the current webcast instance url of the meeting\n * @param {object} payload\n * @returns {void}\n */\n updateWebcastUrl(payload) {\n this.set('webcastInstanceUrl', get(payload, 'resources.webcastInstance.url'));\n },\n\n /**\n * Update whether self has capability to manage start/stop webcast (only host can manage it)\n * @param {boolean} canManageWebcast\n * @returns {void}\n */\n updateCanManageWebcast(canManageWebcast) {\n this.set('canManageWebcast', canManageWebcast);\n },\n\n /**\n * Updates user roles and manages associated state transitions\n * @param {object} payload\n * @param {string[]} payload.oldRoles - Previous roles of the user\n * @param {string[]} payload.newRoles - New roles of the user\n * @returns {{isPromoted: boolean, isDemoted: boolean}} Role transition states\n */\n updateRoleChanged(payload) {\n const oldRoles = get(payload, 'oldRoles', []);\n const newRoles = get(payload, 'newRoles', []);\n\n const isPromoted =\n oldRoles.includes(SELF_ROLES.ATTENDEE) && newRoles.includes(SELF_ROLES.PANELIST);\n const isDemoted =\n (oldRoles.includes(SELF_ROLES.PANELIST) && newRoles.includes(SELF_ROLES.ATTENDEE)) ||\n (!oldRoles.includes(SELF_ROLES.ATTENDEE) && newRoles.includes(SELF_ROLES.ATTENDEE)); // for attendee just join meeting case\n this.set('selfIsPanelist', newRoles.includes(SELF_ROLES.PANELIST));\n this.set('selfIsAttendee', newRoles.includes(SELF_ROLES.ATTENDEE));\n this.updateCanManageWebcast(newRoles.includes(SELF_ROLES.MODERATOR));\n this.updateStatusByRole({isPromoted, isDemoted});\n\n return {isPromoted, isDemoted};\n },\n\n /**\n * should join practice session data channel or not\n * @param {Object} {isPromoted: boolean, isDemoted: boolean}} Role transition states\n * @returns {void}\n */\n updateStatusByRole({isPromoted, isDemoted}) {\n const meeting = this.webex.meetings.getMeetingByType(_ID_, this.meetingId);\n\n if (\n (isDemoted && meeting?.shareStatus === SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE) ||\n isPromoted\n ) {\n // attendees in webinar should subscribe streaming for whiteboard sharing\n // while panelist still need subscribe native mode so trigger force update here\n meeting?.locusInfo?.updateMediaShares(meeting?.locusInfo?.mediaShares, true);\n }\n\n if (this.practiceSessionEnabled) {\n // may need change data channel in practice session\n meeting?.updateLLMConnection();\n }\n },\n\n /**\n * should join practice session data channel or not\n * @returns {boolean}\n */\n isJoinPracticeSessionDataChannel() {\n return this.selfIsPanelist && this.practiceSessionEnabled;\n },\n\n /**\n * start or stop practice session for webinar\n * @param {boolean} enabled\n * @returns {Promise}\n */\n setPracticeSessionState(enabled) {\n return this.request({\n method: HTTP_VERBS.PATCH,\n uri: `${this.locusUrl}/controls`,\n body: {\n practiceSession: {\n enabled,\n },\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#setPracticeSessionState failed', error);\n throw error;\n });\n },\n\n /**\n * update practice session status\n * @param {object} payload\n * @returns {void}\n */\n updatePracticeSessionStatus(payload) {\n this.set('practiceSessionEnabled', payload.enabled);\n },\n\n /**\n * start webcast mode for webinar\n * @param {object} meeting\n * @param {object} layout\n * @returns {Promise}\n */\n async startWebcast(meeting, layout) {\n if (!meeting) {\n LoggerProxy.logger.error(\n `Meeting:webinar#startWebcast failed --> meeting parameter : ${meeting}`\n );\n throw new Error('Meeting parameter does not meet expectations');\n }\n\n return this.request({\n method: HTTP_VERBS.PUT,\n uri: `${this.webcastInstanceUrl}/streaming`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n [HEADERS.CONTENT_TYPE]: HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON,\n },\n body: {\n action: 'start',\n meetingInfo: {\n locusId: meeting.locusId,\n correlationId: meeting.correlationId,\n },\n layout,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#startWebcast failed', error);\n throw error;\n });\n },\n\n /**\n * stop webcast mode for webinar\n * @returns {Promise}\n */\n async stopWebcast() {\n return this.request({\n method: HTTP_VERBS.PUT,\n uri: `${this.webcastInstanceUrl}/streaming`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n [HEADERS.CONTENT_TYPE]: HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON,\n },\n body: {\n action: 'stop',\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#stopWebcast failed', error);\n throw error;\n });\n },\n\n /**\n * query webcast layout for webinar\n * @returns {Promise}\n */\n async queryWebcastLayout() {\n return this.request({\n method: HTTP_VERBS.GET,\n uri: `${this.webcastInstanceUrl}/layout`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#queryWebcastLayout failed', error);\n throw error;\n });\n },\n\n /**\n * update webcast layout for webinar\n * @param {object} layout\n * @returns {Promise}\n */\n async updateWebcastLayout(layout) {\n return this.request({\n method: HTTP_VERBS.PUT,\n uri: `${this.webcastInstanceUrl}/layout`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n [HEADERS.CONTENT_TYPE]: HEADERS.CONTENT_TYPE_VALUE.APPLICATION_JSON,\n },\n body: {\n videoLayout: layout.videoLayout,\n contentLayout: layout.contentLayout,\n syncStageLayout: layout.syncStageLayout,\n syncStageInMeeting: layout.syncStageInMeeting,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#updateWebcastLayout failed', error);\n throw error;\n });\n },\n\n /**\n * view all webcast attendees\n * @param {string} queryString\n * @returns {Promise}\n */\n async viewAllWebcastAttendees() {\n return this.request({\n method: HTTP_VERBS.GET,\n uri: `${this.webcastInstanceUrl}/attendees`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#viewAllWebcastAttendees failed', error);\n throw error;\n });\n },\n\n /**\n * search webcast attendees by query string\n * @param {string} queryString\n * @returns {Promise}\n */\n async searchWebcastAttendees(queryString = '') {\n return this.request({\n method: HTTP_VERBS.GET,\n uri: `${this.webcastInstanceUrl}/attendees?keyword=${encodeURIComponent(queryString)}`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#searchWebcastAttendees failed', error);\n throw error;\n });\n },\n\n /**\n * expel webcast attendee by participantId\n * @param {string} participantId\n * @returns {Promise}\n */\n async expelWebcastAttendee(participantId) {\n return this.request({\n method: HTTP_VERBS.DELETE,\n uri: `${this.webcastInstanceUrl}/attendees/${participantId}`,\n headers: {\n authorization: await this.webex.credentials.getUserToken(),\n trackingId: `${config.trackingIdPrefix}_${uuid.v4().toString()}`,\n },\n }).catch((error) => {\n LoggerProxy.logger.error('Meeting:webinar#expelWebcastAttendee failed', error);\n throw error;\n });\n },\n});\n\nexport default Webinar;\n"],"mappings":";;;;;;;;;;;AAGA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AAEA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,YAAA,GAAAJ,sBAAA,CAAAF,OAAA;AATA;AACA;AACA;;AASA;AACA;AACA;AACA,IAAMO,OAAO,GAAGC,sBAAW,CAACC,MAAM,CAAC;EACjCC,SAAS,EAAEC,mBAAQ;EACnBC,WAAW,EAAE;IACXC,OAAO,EAAEC;EACX,CAAC;EAEDC,KAAK,EAAE;IACLC,QAAQ,EAAE,QAAQ;IAAE;IACpBC,kBAAkB,EAAE,QAAQ;IAAE;IAC9BC,gBAAgB,EAAE,SAAS;IAAE;IAC7BC,cAAc,EAAE,SAAS;IAAE;IAC3BC,cAAc,EAAE,SAAS;IAAE;IAC3BC,sBAAsB,EAAE,SAAS;IAAE;IACnCC,SAAS,EAAE;EACb,CAAC;EAED;AACF;AACA;AACA;AACA;EACEC,cAAc,WAAAA,eAACP,QAAQ,EAAE;IACvB,IAAI,CAACQ,GAAG,CAAC,UAAU,EAAER,QAAQ,CAAC;EAChC,CAAC;EAED;AACF;AACA;AACA;AACA;EACES,gBAAgB,WAAAA,iBAACC,OAAO,EAAE;IACxB,IAAI,CAACF,GAAG,CAAC,oBAAoB,EAAE,IAAAG,WAAG,EAACD,OAAO,EAAE,+BAA+B,CAAC,CAAC;EAC/E,CAAC;EAED;AACF;AACA;AACA;AACA;EACEE,sBAAsB,WAAAA,uBAACV,gBAAgB,EAAE;IACvC,IAAI,CAACM,GAAG,CAAC,kBAAkB,EAAEN,gBAAgB,CAAC;EAChD,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACEW,iBAAiB,WAAAA,kBAACH,OAAO,EAAE;IACzB,IAAMI,QAAQ,GAAG,IAAAH,WAAG,EAACD,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC;IAC7C,IAAMK,QAAQ,GAAG,IAAAJ,WAAG,EAACD,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC;IAE7C,IAAMM,UAAU,GACdF,QAAQ,CAACG,QAAQ,CAACC,qBAAU,CAACC,QAAQ,CAAC,IAAIJ,QAAQ,CAACE,QAAQ,CAACC,qBAAU,CAACE,QAAQ,CAAC;IAClF,IAAMC,SAAS,GACZP,QAAQ,CAACG,QAAQ,CAACC,qBAAU,CAACE,QAAQ,CAAC,IAAIL,QAAQ,CAACE,QAAQ,CAACC,qBAAU,CAACC,QAAQ,CAAC,IAChF,CAACL,QAAQ,CAACG,QAAQ,CAACC,qBAAU,CAACC,QAAQ,CAAC,IAAIJ,QAAQ,CAACE,QAAQ,CAACC,qBAAU,CAACC,QAAQ,CAAE,CAAC,CAAC;IACvF,IAAI,CAACX,GAAG,CAAC,gBAAgB,EAAEO,QAAQ,CAACE,QAAQ,CAACC,qBAAU,CAACE,QAAQ,CAAC,CAAC;IAClE,IAAI,CAACZ,GAAG,CAAC,gBAAgB,EAAEO,QAAQ,CAACE,QAAQ,CAACC,qBAAU,CAACC,QAAQ,CAAC,CAAC;IAClE,IAAI,CAACP,sBAAsB,CAACG,QAAQ,CAACE,QAAQ,CAACC,qBAAU,CAACI,SAAS,CAAC,CAAC;IACpE,IAAI,CAACC,kBAAkB,CAAC;MAACP,UAAU,EAAVA,UAAU;MAAEK,SAAS,EAATA;IAAS,CAAC,CAAC;IAEhD,OAAO;MAACL,UAAU,EAAVA,UAAU;MAAEK,SAAS,EAATA;IAAS,CAAC;EAChC,CAAC;EAED;AACF;AACA;AACA;AACA;EACEE,kBAAkB,WAAAA,mBAAAC,IAAA,EAA0B;IAAA,IAAxBR,UAAU,GAAAQ,IAAA,CAAVR,UAAU;MAAEK,SAAS,GAAAG,IAAA,CAATH,SAAS;IACvC,IAAMI,OAAO,GAAG,IAAI,CAACC,KAAK,CAACC,QAAQ,CAACC,gBAAgB,CAACC,eAAI,EAAE,IAAI,CAACvB,SAAS,CAAC;IAE1E,IACGe,SAAS,IAAI,CAAAI,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEK,WAAW,MAAKC,uBAAY,CAACC,uBAAuB,IAC3EhB,UAAU,EACV;MAAA,IAAAiB,kBAAA,EAAAC,mBAAA;MACA;MACA;MACAT,OAAO,aAAPA,OAAO,wBAAAQ,kBAAA,GAAPR,OAAO,CAAEU,SAAS,cAAAF,kBAAA,uBAAlBA,kBAAA,CAAoBG,iBAAiB,CAACX,OAAO,aAAPA,OAAO,wBAAAS,mBAAA,GAAPT,OAAO,CAAEU,SAAS,cAAAD,mBAAA,uBAAlBA,mBAAA,CAAoBG,WAAW,EAAE,IAAI,CAAC;IAC9E;IAEA,IAAI,IAAI,CAAChC,sBAAsB,EAAE;MAC/B;MACAoB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEa,mBAAmB,CAAC,CAAC;IAChC;EACF,CAAC;EAED;AACF;AACA;AACA;EACEC,gCAAgC,WAAAA,iCAAA,EAAG;IACjC,OAAO,IAAI,CAACpC,cAAc,IAAI,IAAI,CAACE,sBAAsB;EAC3D,CAAC;EAED;AACF;AACA;AACA;AACA;EACEmC,uBAAuB,WAAAA,wBAACC,OAAO,EAAE;IAC/B,OAAO,IAAI,CAACC,OAAO,CAAC;MAClBC,MAAM,EAAEC,qBAAU,CAACC,KAAK;MACxBC,GAAG,KAAAC,MAAA,CAAK,IAAI,CAAC/C,QAAQ,cAAW;MAChCgD,IAAI,EAAE;QACJC,eAAe,EAAE;UACfR,OAAO,EAAPA;QACF;MACF;IACF,CAAC,CAAC,CAACS,KAAK,CAAC,UAACC,KAAK,EAAK;MAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,gDAAgD,EAAEA,KAAK,CAAC;MACjF,MAAMA,KAAK;IACb,CAAC,CAAC;EACJ,CAAC;EAED;AACF;AACA;AACA;AACA;EACEG,2BAA2B,WAAAA,4BAAC5C,OAAO,EAAE;IACnC,IAAI,CAACF,GAAG,CAAC,wBAAwB,EAAEE,OAAO,CAAC+B,OAAO,CAAC;EACrD,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACQc,YAAY,WAAAA,aAAC9B,OAAO,EAAE+B,MAAM,EAAE;IAAA,IAAAC,KAAA;IAAA,WAAAC,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,UAAAC,QAAA;MAAA,OAAAF,YAAA,CAAAD,OAAA,CAAAI,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAA,IAC7B1C,OAAO;cAAAwC,QAAA,CAAAE,IAAA;cAAA;YAAA;YACVf,oBAAW,CAACC,MAAM,CAACF,KAAK,gEAAAJ,MAAA,CACyCtB,OAAO,CACxE,CAAC;YAAC,MACI,IAAI2C,KAAK,CAAC,8CAA8C,CAAC;UAAA;YAAAH,QAAA,CAAAI,EAAA,GAG1DZ,KAAI;YAAAQ,QAAA,CAAAK,EAAA,GACD1B,qBAAU,CAAC2B,GAAG;YAAAN,QAAA,CAAAO,EAAA,MAAAzB,MAAA,CACdU,KAAI,CAACxD,kBAAkB;YAAAgE,QAAA,CAAAQ,EAAA,GAAAC,gBAAA,CAAAf,OAAA;YAAAM,QAAA,CAAAE,IAAA;YAAA,OAERV,KAAI,CAAC/B,KAAK,CAACiD,WAAW,CAACC,YAAY,CAAC,CAAC;UAAA;YAAAX,QAAA,CAAAY,EAAA,GAAAZ,QAAA,CAAAa,IAAA;YAAAb,QAAA,CAAAc,EAAA,MAAAhC,MAAA,CAC3CiC,iBAAM,CAACC,gBAAgB,OAAAlC,MAAA,CAAImC,aAAI,CAACC,EAAE,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;YAAAnB,QAAA,CAAAoB,EAAA;cAD9DC,aAAa,EAAArB,QAAA,CAAAY,EAAA;cACbU,UAAU,EAAAtB,QAAA,CAAAc;YAAA;YAAAd,QAAA,CAAAuB,EAAA,GACTC,kBAAO,CAACC,YAAY;YAAAzB,QAAA,CAAA0B,EAAA,GAAGF,kBAAO,CAACG,kBAAkB,CAACC,gBAAgB;YAAA5B,QAAA,CAAA6B,EAAA,OAAA7B,QAAA,CAAAQ,EAAA,EAAAR,QAAA,CAAAoB,EAAA,EAAApB,QAAA,CAAAuB,EAAA,EAAAvB,QAAA,CAAA0B,EAAA;YAAA1B,QAAA,CAAA8B,GAAA,GAE/D;cACJC,MAAM,EAAE,OAAO;cACfC,WAAW,EAAE;gBACXC,OAAO,EAAEzE,OAAO,CAACyE,OAAO;gBACxBC,aAAa,EAAE1E,OAAO,CAAC0E;cACzB,CAAC;cACD3C,MAAM,EAANA;YACF,CAAC;YAAAS,QAAA,CAAAmC,GAAA;cAdDzD,MAAM,EAAAsB,QAAA,CAAAK,EAAA;cACNxB,GAAG,EAAAmB,QAAA,CAAAO,EAAA;cACH6B,OAAO,EAAApC,QAAA,CAAA6B,EAAA;cAKP9C,IAAI,EAAAiB,QAAA,CAAA8B;YAAA;YAAA,OAAA9B,QAAA,CAAAqC,MAAA,WAAArC,QAAA,CAAAI,EAAA,CARM3B,OAAO,CAAA6D,IAAA,CAAAtC,QAAA,CAAAI,EAAA,EAAAJ,QAAA,CAAAmC,GAAA,EAgBhBlD,KAAK,CAAC,UAACC,KAAK,EAAK;cAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,qCAAqC,EAAEA,KAAK,CAAC;cACtE,MAAMA,KAAK;YACb,CAAC;UAAA;UAAA;YAAA,OAAAc,QAAA,CAAAuC,IAAA;QAAA;MAAA,GAAA1C,OAAA;IAAA;EACH,CAAC;EAED;AACF;AACA;AACA;EACQ2C,WAAW,WAAAA,YAAA,EAAG;IAAA,IAAAC,MAAA;IAAA,WAAAhD,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,UAAA8C,SAAA;MAAA,OAAA/C,YAAA,CAAAD,OAAA,CAAAI,IAAA,UAAA6C,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA3C,IAAA,GAAA2C,SAAA,CAAA1C,IAAA;UAAA;YAAA0C,SAAA,CAAAxC,EAAA,GACXqC,MAAI;YAAAG,SAAA,CAAAvC,EAAA,GACD1B,qBAAU,CAAC2B,GAAG;YAAAsC,SAAA,CAAArC,EAAA,MAAAzB,MAAA,CACd2D,MAAI,CAACzG,kBAAkB;YAAA4G,SAAA,CAAApC,EAAA,GAAAC,gBAAA,CAAAf,OAAA;YAAAkD,SAAA,CAAA1C,IAAA;YAAA,OAERuC,MAAI,CAAChF,KAAK,CAACiD,WAAW,CAACC,YAAY,CAAC,CAAC;UAAA;YAAAiC,SAAA,CAAAhC,EAAA,GAAAgC,SAAA,CAAA/B,IAAA;YAAA+B,SAAA,CAAA9B,EAAA,MAAAhC,MAAA,CAC3CiC,iBAAM,CAACC,gBAAgB,OAAAlC,MAAA,CAAImC,aAAI,CAACC,EAAE,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;YAAAyB,SAAA,CAAAxB,EAAA;cAD9DC,aAAa,EAAAuB,SAAA,CAAAhC,EAAA;cACbU,UAAU,EAAAsB,SAAA,CAAA9B;YAAA;YAAA8B,SAAA,CAAArB,EAAA,GACTC,kBAAO,CAACC,YAAY;YAAAmB,SAAA,CAAAlB,EAAA,GAAGF,kBAAO,CAACG,kBAAkB,CAACC,gBAAgB;YAAAgB,SAAA,CAAAf,EAAA,OAAAe,SAAA,CAAApC,EAAA,EAAAoC,SAAA,CAAAxB,EAAA,EAAAwB,SAAA,CAAArB,EAAA,EAAAqB,SAAA,CAAAlB,EAAA;YAAAkB,SAAA,CAAAd,GAAA,GAE/D;cACJC,MAAM,EAAE;YACV,CAAC;YAAAa,SAAA,CAAAT,GAAA;cATDzD,MAAM,EAAAkE,SAAA,CAAAvC,EAAA;cACNxB,GAAG,EAAA+D,SAAA,CAAArC,EAAA;cACH6B,OAAO,EAAAQ,SAAA,CAAAf,EAAA;cAKP9C,IAAI,EAAA6D,SAAA,CAAAd;YAAA;YAAA,OAAAc,SAAA,CAAAP,MAAA,WAAAO,SAAA,CAAAxC,EAAA,CARM3B,OAAO,CAAA6D,IAAA,CAAAM,SAAA,CAAAxC,EAAA,EAAAwC,SAAA,CAAAT,GAAA,EAWhBlD,KAAK,CAAC,UAACC,KAAK,EAAK;cAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,oCAAoC,EAAEA,KAAK,CAAC;cACrE,MAAMA,KAAK;YACb,CAAC;UAAA;UAAA;YAAA,OAAA0D,SAAA,CAAAL,IAAA;QAAA;MAAA,GAAAG,QAAA;IAAA;EACH,CAAC;EAED;AACF;AACA;AACA;EACQG,kBAAkB,WAAAA,mBAAA,EAAG;IAAA,IAAAC,MAAA;IAAA,WAAArD,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,UAAAmD,SAAA;MAAA,OAAApD,YAAA,CAAAD,OAAA,CAAAI,IAAA,UAAAkD,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAhD,IAAA,GAAAgD,SAAA,CAAA/C,IAAA;UAAA;YAAA+C,SAAA,CAAA7C,EAAA,GAClB0C,MAAI;YAAAG,SAAA,CAAA5C,EAAA,GACD1B,qBAAU,CAACuE,GAAG;YAAAD,SAAA,CAAA1C,EAAA,MAAAzB,MAAA,CACdgE,MAAI,CAAC9G,kBAAkB;YAAAiH,SAAA,CAAA/C,IAAA;YAAA,OAER4C,MAAI,CAACrF,KAAK,CAACiD,WAAW,CAACC,YAAY,CAAC,CAAC;UAAA;YAAAsC,SAAA,CAAAzC,EAAA,GAAAyC,SAAA,CAAApC,IAAA;YAAAoC,SAAA,CAAArC,EAAA,MAAA9B,MAAA,CAC3CiC,iBAAM,CAACC,gBAAgB,OAAAlC,MAAA,CAAImC,aAAI,CAACC,EAAE,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;YAAA8B,SAAA,CAAAnC,EAAA;cAD9DO,aAAa,EAAA4B,SAAA,CAAAzC,EAAA;cACbc,UAAU,EAAA2B,SAAA,CAAArC;YAAA;YAAAqC,SAAA,CAAA7B,EAAA;cAJZ1C,MAAM,EAAAuE,SAAA,CAAA5C,EAAA;cACNxB,GAAG,EAAAoE,SAAA,CAAA1C,EAAA;cACH6B,OAAO,EAAAa,SAAA,CAAAnC;YAAA;YAAA,OAAAmC,SAAA,CAAAZ,MAAA,WAAAY,SAAA,CAAA7C,EAAA,CAHG3B,OAAO,CAAA6D,IAAA,CAAAW,SAAA,CAAA7C,EAAA,EAAA6C,SAAA,CAAA7B,EAAA,EAOhBnC,KAAK,CAAC,UAACC,KAAK,EAAK;cAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,2CAA2C,EAAEA,KAAK,CAAC;cAC5E,MAAMA,KAAK;YACb,CAAC;UAAA;UAAA;YAAA,OAAA+D,SAAA,CAAAV,IAAA;QAAA;MAAA,GAAAQ,QAAA;IAAA;EACH,CAAC;EAED;AACF;AACA;AACA;AACA;EACQI,mBAAmB,WAAAA,oBAAC5D,MAAM,EAAE;IAAA,IAAA6D,MAAA;IAAA,WAAA3D,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,UAAAyD,SAAA;MAAA,OAAA1D,YAAA,CAAAD,OAAA,CAAAI,IAAA,UAAAwD,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAtD,IAAA,GAAAsD,SAAA,CAAArD,IAAA;UAAA;YAAAqD,SAAA,CAAAnD,EAAA,GACzBgD,MAAI;YAAAG,SAAA,CAAAlD,EAAA,GACD1B,qBAAU,CAAC2B,GAAG;YAAAiD,SAAA,CAAAhD,EAAA,MAAAzB,MAAA,CACdsE,MAAI,CAACpH,kBAAkB;YAAAuH,SAAA,CAAA/C,EAAA,GAAAC,gBAAA,CAAAf,OAAA;YAAA6D,SAAA,CAAArD,IAAA;YAAA,OAERkD,MAAI,CAAC3F,KAAK,CAACiD,WAAW,CAACC,YAAY,CAAC,CAAC;UAAA;YAAA4C,SAAA,CAAA3C,EAAA,GAAA2C,SAAA,CAAA1C,IAAA;YAAA0C,SAAA,CAAAzC,EAAA,MAAAhC,MAAA,CAC3CiC,iBAAM,CAACC,gBAAgB,OAAAlC,MAAA,CAAImC,aAAI,CAACC,EAAE,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;YAAAoC,SAAA,CAAAnC,EAAA;cAD9DC,aAAa,EAAAkC,SAAA,CAAA3C,EAAA;cACbU,UAAU,EAAAiC,SAAA,CAAAzC;YAAA;YAAAyC,SAAA,CAAAhC,EAAA,GACTC,kBAAO,CAACC,YAAY;YAAA8B,SAAA,CAAA7B,EAAA,GAAGF,kBAAO,CAACG,kBAAkB,CAACC,gBAAgB;YAAA2B,SAAA,CAAA1B,EAAA,OAAA0B,SAAA,CAAA/C,EAAA,EAAA+C,SAAA,CAAAnC,EAAA,EAAAmC,SAAA,CAAAhC,EAAA,EAAAgC,SAAA,CAAA7B,EAAA;YAAA6B,SAAA,CAAAzB,GAAA,GAE/D;cACJ0B,WAAW,EAAEjE,MAAM,CAACiE,WAAW;cAC/BC,aAAa,EAAElE,MAAM,CAACkE,aAAa;cACnCC,eAAe,EAAEnE,MAAM,CAACmE,eAAe;cACvCC,kBAAkB,EAAEpE,MAAM,CAACoE;YAC7B,CAAC;YAAAJ,SAAA,CAAApB,GAAA;cAZDzD,MAAM,EAAA6E,SAAA,CAAAlD,EAAA;cACNxB,GAAG,EAAA0E,SAAA,CAAAhD,EAAA;cACH6B,OAAO,EAAAmB,SAAA,CAAA1B,EAAA;cAKP9C,IAAI,EAAAwE,SAAA,CAAAzB;YAAA;YAAA,OAAAyB,SAAA,CAAAlB,MAAA,WAAAkB,SAAA,CAAAnD,EAAA,CARM3B,OAAO,CAAA6D,IAAA,CAAAiB,SAAA,CAAAnD,EAAA,EAAAmD,SAAA,CAAApB,GAAA,EAchBlD,KAAK,CAAC,UAACC,KAAK,EAAK;cAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,4CAA4C,EAAEA,KAAK,CAAC;cAC7E,MAAMA,KAAK;YACb,CAAC;UAAA;UAAA;YAAA,OAAAqE,SAAA,CAAAhB,IAAA;QAAA;MAAA,GAAAc,QAAA;IAAA;EACH,CAAC;EAED;AACF;AACA;AACA;AACA;EACQO,uBAAuB,WAAAA,wBAAA,EAAG;IAAA,IAAAC,MAAA;IAAA,WAAApE,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,UAAAkE,SAAA;MAAA,OAAAnE,YAAA,CAAAD,OAAA,CAAAI,IAAA,UAAAiE,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAA/D,IAAA,GAAA+D,SAAA,CAAA9D,IAAA;UAAA;YAAA8D,SAAA,CAAA5D,EAAA,GACvByD,MAAI;YAAAG,SAAA,CAAA3D,EAAA,GACD1B,qBAAU,CAACuE,GAAG;YAAAc,SAAA,CAAAzD,EAAA,MAAAzB,MAAA,CACd+E,MAAI,CAAC7H,kBAAkB;YAAAgI,SAAA,CAAA9D,IAAA;YAAA,OAER2D,MAAI,CAACpG,KAAK,CAACiD,WAAW,CAACC,YAAY,CAAC,CAAC;UAAA;YAAAqD,SAAA,CAAAxD,EAAA,GAAAwD,SAAA,CAAAnD,IAAA;YAAAmD,SAAA,CAAApD,EAAA,MAAA9B,MAAA,CAC3CiC,iBAAM,CAACC,gBAAgB,OAAAlC,MAAA,CAAImC,aAAI,CAACC,EAAE,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;YAAA6C,SAAA,CAAAlD,EAAA;cAD9DO,aAAa,EAAA2C,SAAA,CAAAxD,EAAA;cACbc,UAAU,EAAA0C,SAAA,CAAApD;YAAA;YAAAoD,SAAA,CAAA5C,EAAA;cAJZ1C,MAAM,EAAAsF,SAAA,CAAA3D,EAAA;cACNxB,GAAG,EAAAmF,SAAA,CAAAzD,EAAA;cACH6B,OAAO,EAAA4B,SAAA,CAAAlD;YAAA;YAAA,OAAAkD,SAAA,CAAA3B,MAAA,WAAA2B,SAAA,CAAA5D,EAAA,CAHG3B,OAAO,CAAA6D,IAAA,CAAA0B,SAAA,CAAA5D,EAAA,EAAA4D,SAAA,CAAA5C,EAAA,EAOhBnC,KAAK,CAAC,UAACC,KAAK,EAAK;cAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,gDAAgD,EAAEA,KAAK,CAAC;cACjF,MAAMA,KAAK;YACb,CAAC;UAAA;UAAA;YAAA,OAAA8E,SAAA,CAAAzB,IAAA;QAAA;MAAA,GAAAuB,QAAA;IAAA;EACH,CAAC;EAED;AACF;AACA;AACA;AACA;EACQG,sBAAsB,WAAAA,uBAAA,EAAmB;IAAA,IAAAC,UAAA,GAAAC,SAAA;MAAAC,MAAA;IAAA,WAAA3E,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,UAAAyE,SAAA;MAAA,IAAAC,WAAA;MAAA,OAAA3E,YAAA,CAAAD,OAAA,CAAAI,IAAA,UAAAyE,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAvE,IAAA,GAAAuE,SAAA,CAAAtE,IAAA;UAAA;YAAlBoE,WAAW,GAAAJ,UAAA,CAAAO,MAAA,QAAAP,UAAA,QAAAQ,SAAA,GAAAR,UAAA,MAAG,EAAE;YAAAM,SAAA,CAAApE,EAAA,GACpCgE,MAAI;YAAAI,SAAA,CAAAnE,EAAA,GACD1B,qBAAU,CAACuE,GAAG;YAAAsB,SAAA,CAAAjE,EAAA,MAAAzB,MAAA,CACdsF,MAAI,CAACpI,kBAAkB,yBAAA8C,MAAA,CAAsB6F,kBAAkB,CAACL,WAAW,CAAC;YAAAE,SAAA,CAAAtE,IAAA;YAAA,OAE7DkE,MAAI,CAAC3G,KAAK,CAACiD,WAAW,CAACC,YAAY,CAAC,CAAC;UAAA;YAAA6D,SAAA,CAAAhE,EAAA,GAAAgE,SAAA,CAAA3D,IAAA;YAAA2D,SAAA,CAAA5D,EAAA,MAAA9B,MAAA,CAC3CiC,iBAAM,CAACC,gBAAgB,OAAAlC,MAAA,CAAImC,aAAI,CAACC,EAAE,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;YAAAqD,SAAA,CAAA1D,EAAA;cAD9DO,aAAa,EAAAmD,SAAA,CAAAhE,EAAA;cACbc,UAAU,EAAAkD,SAAA,CAAA5D;YAAA;YAAA4D,SAAA,CAAApD,EAAA;cAJZ1C,MAAM,EAAA8F,SAAA,CAAAnE,EAAA;cACNxB,GAAG,EAAA2F,SAAA,CAAAjE,EAAA;cACH6B,OAAO,EAAAoC,SAAA,CAAA1D;YAAA;YAAA,OAAA0D,SAAA,CAAAnC,MAAA,WAAAmC,SAAA,CAAApE,EAAA,CAHG3B,OAAO,CAAA6D,IAAA,CAAAkC,SAAA,CAAApE,EAAA,EAAAoE,SAAA,CAAApD,EAAA,EAOhBnC,KAAK,CAAC,UAACC,KAAK,EAAK;cAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,+CAA+C,EAAEA,KAAK,CAAC;cAChF,MAAMA,KAAK;YACb,CAAC;UAAA;UAAA;YAAA,OAAAsF,SAAA,CAAAjC,IAAA;QAAA;MAAA,GAAA8B,QAAA;IAAA;EACH,CAAC;EAED;AACF;AACA;AACA;AACA;EACQO,oBAAoB,WAAAA,qBAACC,aAAa,EAAE;IAAA,IAAAC,MAAA;IAAA,WAAArF,kBAAA,CAAAC,OAAA,gBAAAC,YAAA,CAAAD,OAAA,CAAAE,IAAA,UAAAmF,SAAA;MAAA,OAAApF,YAAA,CAAAD,OAAA,CAAAI,IAAA,UAAAkF,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAAhF,IAAA,GAAAgF,SAAA,CAAA/E,IAAA;UAAA;YAAA+E,SAAA,CAAA7E,EAAA,GACjC0E,MAAI;YAAAG,SAAA,CAAA5E,EAAA,GACD1B,qBAAU,CAACuG,MAAM;YAAAD,SAAA,CAAA1E,EAAA,MAAAzB,MAAA,CACjBgG,MAAI,CAAC9I,kBAAkB,iBAAA8C,MAAA,CAAc+F,aAAa;YAAAI,SAAA,CAAA/E,IAAA;YAAA,OAEnC4E,MAAI,CAACrH,KAAK,CAACiD,WAAW,CAACC,YAAY,CAAC,CAAC;UAAA;YAAAsE,SAAA,CAAAzE,EAAA,GAAAyE,SAAA,CAAApE,IAAA;YAAAoE,SAAA,CAAArE,EAAA,MAAA9B,MAAA,CAC3CiC,iBAAM,CAACC,gBAAgB,OAAAlC,MAAA,CAAImC,aAAI,CAACC,EAAE,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;YAAA8D,SAAA,CAAAnE,EAAA;cAD9DO,aAAa,EAAA4D,SAAA,CAAAzE,EAAA;cACbc,UAAU,EAAA2D,SAAA,CAAArE;YAAA;YAAAqE,SAAA,CAAA7D,EAAA;cAJZ1C,MAAM,EAAAuG,SAAA,CAAA5E,EAAA;cACNxB,GAAG,EAAAoG,SAAA,CAAA1E,EAAA;cACH6B,OAAO,EAAA6C,SAAA,CAAAnE;YAAA;YAAA,OAAAmE,SAAA,CAAA5C,MAAA,WAAA4C,SAAA,CAAA7E,EAAA,CAHG3B,OAAO,CAAA6D,IAAA,CAAA2C,SAAA,CAAA7E,EAAA,EAAA6E,SAAA,CAAA7D,EAAA,EAOhBnC,KAAK,CAAC,UAACC,KAAK,EAAK;cAClBC,oBAAW,CAACC,MAAM,CAACF,KAAK,CAAC,6CAA6C,EAAEA,KAAK,CAAC;cAC9E,MAAMA,KAAK;YACb,CAAC;UAAA;UAAA;YAAA,OAAA+F,SAAA,CAAA1C,IAAA;QAAA;MAAA,GAAAwC,QAAA;IAAA;EACH,CAAC;EAAAI,OAAA;AACH,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAA3F,OAAA,GAEYpE,OAAO"}
package/package.json CHANGED
@@ -43,7 +43,7 @@
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-meetings": "3.7.0-next.20",
46
+ "@webex/plugin-meetings": "3.7.0-next.22",
47
47
  "@webex/plugin-rooms": "3.7.0-next.7",
48
48
  "@webex/test-helper-chai": "3.7.0-next.5",
49
49
  "@webex/test-helper-mocha": "3.7.0-next.5",
@@ -70,7 +70,7 @@
70
70
  "@webex/internal-plugin-metrics": "3.7.0-next.5",
71
71
  "@webex/internal-plugin-support": "3.7.0-next.8",
72
72
  "@webex/internal-plugin-user": "3.7.0-next.5",
73
- "@webex/internal-plugin-voicea": "3.7.0-next.20",
73
+ "@webex/internal-plugin-voicea": "3.7.0-next.22",
74
74
  "@webex/media-helpers": "3.7.0-next.6",
75
75
  "@webex/plugin-people": "3.7.0-next.5",
76
76
  "@webex/plugin-rooms": "3.7.0-next.7",
@@ -91,5 +91,5 @@
91
91
  "//": [
92
92
  "TODO: upgrade jwt-decode when moving to node 18"
93
93
  ],
94
- "version": "3.7.0-next.20"
94
+ "version": "3.7.0-next.22"
95
95
  }
package/src/constants.ts CHANGED
@@ -327,6 +327,7 @@ export const EVENT_TRIGGERS = {
327
327
  MEETING_RECONNECTION_FAILURE: 'meeting:reconnectionFailure',
328
328
  MEETING_UNLOCKED: 'meeting:unlocked',
329
329
  MEETING_LOCKED: 'meeting:locked',
330
+ MEETING_RESOURCE_LINKS_UPDATE: 'meeting:resourceLinks:update',
330
331
  MEETING_INFO_AVAILABLE: 'meeting:meetingInfoAvailable',
331
332
  MEETING_INFO_UPDATED: 'meeting:meetingInfoUpdated',
332
333
  MEETING_LOG_UPLOAD_SUCCESS: 'meeting:logUpload:success',
@@ -963,6 +964,7 @@ export const DISPLAY_HINTS = {
963
964
  DISABLE_ASK_FOR_HELP: 'DISABLE_ASK_FOR_HELP',
964
965
  DISABLE_BREAKOUT_PREASSIGNMENTS: 'DISABLE_BREAKOUT_PREASSIGNMENTS',
965
966
  DISABLE_LOBBY_TO_BREAKOUT: 'DISABLE_LOBBY_TO_BREAKOUT',
967
+ DISABLE_BREAKOUT_START: 'DISABLE_BREAKOUT_START',
966
968
 
967
969
  // participants list
968
970
  DISABLE_VIEW_THE_PARTICIPANT_LIST: 'DISABLE_VIEW_THE_PARTICIPANT_LIST',