@webex/plugin-meetings 3.10.0-next.6 → 3.10.0-wxc-disconnect.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/breakouts/breakout.js +1 -1
  2. package/dist/breakouts/index.js +1 -1
  3. package/dist/common/errors/webex-errors.js +1 -21
  4. package/dist/common/errors/webex-errors.js.map +1 -1
  5. package/dist/constants.js +0 -7
  6. package/dist/constants.js.map +1 -1
  7. package/dist/controls-options-manager/index.js +5 -22
  8. package/dist/controls-options-manager/index.js.map +1 -1
  9. package/dist/index.js +0 -7
  10. package/dist/index.js.map +1 -1
  11. package/dist/interpretation/index.js +1 -1
  12. package/dist/interpretation/siLanguage.js +1 -1
  13. package/dist/locus-info/controlsUtils.js +2 -11
  14. package/dist/locus-info/controlsUtils.js.map +1 -1
  15. package/dist/locus-info/index.js +3 -17
  16. package/dist/locus-info/index.js.map +1 -1
  17. package/dist/media/index.js +0 -5
  18. package/dist/media/index.js.map +1 -1
  19. package/dist/meeting/in-meeting-actions.js +0 -6
  20. package/dist/meeting/in-meeting-actions.js.map +1 -1
  21. package/dist/meeting/index.js +33 -103
  22. package/dist/meeting/index.js.map +1 -1
  23. package/dist/meeting/request.js +14 -152
  24. package/dist/meeting/request.js.map +1 -1
  25. package/dist/meeting/util.js +0 -9
  26. package/dist/meeting/util.js.map +1 -1
  27. package/dist/member/index.js +0 -9
  28. package/dist/member/index.js.map +1 -1
  29. package/dist/member/util.js +0 -10
  30. package/dist/member/util.js.map +1 -1
  31. package/dist/types/common/errors/webex-errors.d.ts +0 -12
  32. package/dist/types/constants.d.ts +0 -5
  33. package/dist/types/controls-options-manager/index.d.ts +1 -9
  34. package/dist/types/index.d.ts +1 -2
  35. package/dist/types/locus-info/index.d.ts +1 -2
  36. package/dist/types/meeting/in-meeting-actions.d.ts +0 -6
  37. package/dist/types/meeting/index.d.ts +0 -30
  38. package/dist/types/meeting/request.d.ts +0 -33
  39. package/dist/types/meeting/util.d.ts +0 -3
  40. package/dist/types/member/index.d.ts +0 -1
  41. package/dist/types/member/util.d.ts +0 -5
  42. package/dist/webinar/index.js +1 -1
  43. package/package.json +22 -22
  44. package/src/common/errors/webex-errors.ts +0 -19
  45. package/src/constants.ts +1 -9
  46. package/src/controls-options-manager/index.ts +5 -26
  47. package/src/index.ts +0 -2
  48. package/src/locus-info/controlsUtils.ts +0 -18
  49. package/src/locus-info/index.ts +4 -14
  50. package/src/media/index.ts +0 -6
  51. package/src/meeting/in-meeting-actions.ts +0 -12
  52. package/src/meeting/index.ts +21 -99
  53. package/src/meeting/request.ts +0 -118
  54. package/src/meeting/util.ts +0 -9
  55. package/src/member/index.ts +0 -10
  56. package/src/member/util.ts +0 -14
  57. package/test/unit/spec/controls-options-manager/index.js +0 -47
  58. package/test/unit/spec/fixture/locus.js +0 -1
  59. package/test/unit/spec/locus-info/index.js +0 -39
  60. package/test/unit/spec/media/index.ts +9 -140
  61. package/test/unit/spec/meeting/in-meeting-actions.ts +0 -6
  62. package/test/unit/spec/meeting/index.js +70 -171
  63. package/test/unit/spec/meeting/utils.js +0 -3
  64. package/test/unit/spec/meetings/index.js +2 -0
  65. package/test/unit/spec/member/util.js +0 -24
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","_constants","_parameter","_interopRequireDefault","MemberUtil","canReclaimHost","participant","ParameterError","canReclaimHostRole","getControlsRoles","_participant$controls","_participant$controls2","controls","role","roles","isBrb","_participant$controls3","_participant$controls4","brb","enabled","hasRole","controlRole","_MemberUtil$getContro","some","type","hasCohost","ServerRoles","Cohost","hasModerator","Moderator","hasPresenter","Presenter","extractControlRoles","cohost","moderator","presenter","isUser","_USER_","isModerator","isGuest","guest","isDevice","_RESOURCE_ROOM_","isModeratorAssignmentProhibited","moderatorAssignmentNotAllowed","isPresenterAssignmentProhibited","presenterAssignmentNotAllowed","isSame","id","person","isNotAdmitted","status","devices","intent","_WAIT_","_IN_LOBBY_","_IN_MEETING_","isAudioMuted","isMuted","AUDIO_STATUS","AUDIO","isVideoMuted","VIDEO_STATUS","VIDEO","isHandRaised","_participant$controls5","_participant$controls6","hand","raised","isBreakoutsSupported","doesNotSupportBreakouts","isSupportsSingleUserAutoEndMeeting","doesNotSupportSingleUserAutoEndMeeting","isInterpretationSupported","doesNotSupportSiInterpreter","isLiveAnnotationSupported","annotatorAssignmentNotAllowed","statusAccessor","controlsAccessor","_participant$controls7","_participant$controls8","_participant$status","remoteMute","muted","localStatus","_RECEIVE_ONLY_","_SEND_RECEIVE_","getRecordingMember","record","recording","meta","modifiedBy","isRecording","localRecord","isRemovable","isSelf","isInMeeting","_CALL_","isMutable","extractStatus","length","_NOT_IN_MEETING_","state","_JOINED_","_IDLE_","foundDevice","find","device","_OBSERVE_","_LEFT_","extractId","extractMediaStatus","_participant$status2","_participant$status3","audio","audioStatus","video","videoStatus","extractName","name","extractPairedWithParticipantUrl","_participant$devices","participantUrl","forEach","_device$intents","intents","associatedWith","_default","exports","default"],"sources":["util.ts"],"sourcesContent":["import {\n IExternalRoles,\n ServerRoles,\n ServerRoleShape,\n IMediaStatus,\n Participant,\n ParticipantUrl,\n} from './types';\nimport {\n _USER_,\n _RESOURCE_ROOM_,\n _OBSERVE_,\n _WAIT_,\n _LEFT_,\n _JOINED_,\n _IDLE_,\n _IN_LOBBY_,\n _NOT_IN_MEETING_,\n _IN_MEETING_,\n AUDIO_STATUS,\n VIDEO_STATUS,\n _SEND_RECEIVE_,\n _RECEIVE_ONLY_,\n _CALL_,\n VIDEO,\n AUDIO,\n} from '../constants';\nimport ParameterError from '../common/errors/parameter';\n\nconst MemberUtil = {\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n canReclaimHost: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'canReclaimHostRole could not be processed, participant is undefined.'\n );\n }\n\n return participant.canReclaimHostRole || false;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {[ServerRoleShape]}\n */\n getControlsRoles: (participant: Participant): Array<ServerRoleShape> =>\n participant?.controls?.role?.roles,\n\n /**\n * Checks if the participant has the brb status enabled.\n *\n * @param {Participant} participant - The locus participant object.\n * @returns {boolean} - True if the participant has brb enabled, false otherwise.\n */\n isBrb: (participant: Participant): boolean => participant.controls?.brb?.enabled || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @param {ServerRoles} controlRole the search role\n * @returns {Boolean}\n */\n hasRole: (participant: Participant, controlRole: ServerRoles): boolean =>\n MemberUtil.getControlsRoles(participant)?.some(\n (role) => role.type === controlRole && role.hasRole\n ),\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n hasCohost: (participant: Participant): boolean =>\n MemberUtil.hasRole(participant, ServerRoles.Cohost) || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n hasModerator: (participant: Participant): boolean =>\n MemberUtil.hasRole(participant, ServerRoles.Moderator) || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n hasPresenter: (participant: Participant): boolean =>\n MemberUtil.hasRole(participant, ServerRoles.Presenter) || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {IExternalRoles}\n */\n extractControlRoles: (participant: Participant): IExternalRoles => {\n const roles = {\n cohost: MemberUtil.hasCohost(participant),\n moderator: MemberUtil.hasModerator(participant),\n presenter: MemberUtil.hasPresenter(participant),\n };\n\n return roles;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isUser: (participant: Participant) => participant && participant.type === _USER_,\n\n isModerator: (participant: Participant) => participant && participant.moderator,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isGuest: (participant: Participant) => participant && participant.guest,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isDevice: (participant: Participant) => participant && participant.type === _RESOURCE_ROOM_,\n\n isModeratorAssignmentProhibited: (participant: Participant) =>\n participant && participant.moderatorAssignmentNotAllowed,\n\n isPresenterAssignmentProhibited: (participant: Participant) =>\n participant && participant.presenterAssignmentNotAllowed,\n\n /**\n * checks to see if the participant id is the same as the passed id\n * there are multiple ids that can be used\n * @param {Object} participant - The locus participant object.\n * @param {String} id\n * @returns {Boolean}\n */\n isSame: (participant: Participant, id: string) =>\n participant && (participant.id === id || (participant.person && participant.person.id === id)),\n\n /**\n * @param {Object} participant - The locus participant object.\n * @param {Boolean} isGuest\n * @param {String} status\n * @returns {Boolean}\n */\n isNotAdmitted: (participant: Participant, isGuest: boolean, status: string): boolean =>\n participant &&\n participant.guest &&\n ((participant.devices &&\n participant.devices[0] &&\n participant.devices[0].intent &&\n participant.devices[0].intent.type === _WAIT_ &&\n // @ts-ignore\n isGuest &&\n status === _IN_LOBBY_) ||\n // @ts-ignore\n !status === _IN_MEETING_),\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isAudioMuted: (participant: Participant) => {\n if (!participant) {\n throw new ParameterError('Audio could not be processed, participant is undefined.');\n }\n\n return MemberUtil.isMuted(participant, AUDIO_STATUS, AUDIO);\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isVideoMuted: (participant: Participant): boolean => {\n if (!participant) {\n throw new ParameterError('Video could not be processed, participant is undefined.');\n }\n\n return MemberUtil.isMuted(participant, VIDEO_STATUS, VIDEO);\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isHandRaised: (participant: Participant) => {\n if (!participant) {\n throw new ParameterError('Raise hand could not be processed, participant is undefined.');\n }\n\n return participant.controls?.hand?.raised || false;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isBreakoutsSupported: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'Breakout support could not be processed, participant is undefined.'\n );\n }\n\n return !participant.doesNotSupportBreakouts;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isSupportsSingleUserAutoEndMeeting: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'Single user auto end meeting support could not be processed, participant is undefined.'\n );\n }\n\n return !participant.doesNotSupportSingleUserAutoEndMeeting;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isInterpretationSupported: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'Interpretation support could not be processed, participant is undefined.'\n );\n }\n\n return !participant.doesNotSupportSiInterpreter;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isLiveAnnotationSupported: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'LiveAnnotation support could not be processed, participant is undefined.'\n );\n }\n\n return !participant.annotatorAssignmentNotAllowed;\n },\n\n /**\n * utility method for audio/video muted status\n * @param {any} participant\n * @param {String} statusAccessor\n * @param {String} controlsAccessor\n * @returns {Boolean | undefined}\n */\n isMuted: (participant: Participant, statusAccessor: string, controlsAccessor: string) => {\n // check remote mute\n const remoteMute = participant?.controls?.[controlsAccessor]?.muted;\n if (remoteMute === true) {\n return true;\n }\n\n // check local mute\n const localStatus = participant?.status?.[statusAccessor];\n if (localStatus === _RECEIVE_ONLY_) {\n return true;\n }\n if (localStatus === _SEND_RECEIVE_) {\n return false;\n }\n\n return remoteMute;\n },\n\n /**\n * utility method for getting the recording member for later comparison\n * @param {Object} controls\n * @returns {String|null}\n */\n getRecordingMember: (controls: any) => {\n if (!controls) {\n return null;\n }\n if (controls.record && controls.record.recording && controls.record.meta) {\n return controls.record.meta.modifiedBy;\n }\n\n return null;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isRecording: (participant: Participant) => {\n if (!participant) {\n throw new ParameterError('Recording could not be processed, participant is undefined.');\n }\n if (participant.controls && participant.controls.localRecord) {\n return participant.controls.localRecord.recording;\n }\n\n return false;\n },\n\n isRemovable: (isSelf, isGuest, isInMeeting, type) => {\n if (isGuest || isSelf) {\n return false;\n }\n if (type === _CALL_) {\n return false;\n }\n if (isInMeeting) {\n return true;\n }\n\n return false;\n },\n\n isMutable: (isSelf, isDevice, isInMeeting, isMuted, type) => {\n if (!isInMeeting) {\n return false;\n }\n if (isMuted) {\n return false;\n }\n if (type === _CALL_) {\n return false;\n }\n if (isSelf || isDevice) {\n return true;\n }\n\n return false;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractStatus: (participant: Participant) => {\n if (!(participant && participant.devices && participant.devices.length)) {\n return _NOT_IN_MEETING_;\n }\n if (participant.state === _JOINED_) {\n return _IN_MEETING_;\n }\n if (participant.state === _IDLE_) {\n if (participant.devices && participant.devices.length > 0) {\n const foundDevice = participant.devices.find(\n (device) =>\n device.intent && (device.intent.type === _WAIT_ || device.intent.type === _OBSERVE_)\n );\n\n return foundDevice ? _IN_LOBBY_ : _NOT_IN_MEETING_;\n }\n\n return _NOT_IN_MEETING_;\n }\n if (participant.state === _LEFT_) {\n return _NOT_IN_MEETING_;\n }\n\n return _NOT_IN_MEETING_;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractId: (participant: Participant) => {\n if (participant) {\n return participant.id;\n }\n\n return null;\n },\n\n /**\n * extracts the media status from nested participant object\n * @param {Object} participant - The locus participant object.\n * @returns {Object}\n */\n extractMediaStatus: (participant: Participant): IMediaStatus => {\n if (!participant) {\n throw new ParameterError('Media status could not be extracted, participant is undefined.');\n }\n\n return {\n audio: participant.status?.audioStatus,\n video: participant.status?.videoStatus,\n };\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractName: (participant: Participant) => {\n if (participant && participant.person) {\n return participant.person.name;\n }\n\n return null;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractPairedWithParticipantUrl: (participant: Participant): ParticipantUrl | undefined => {\n let participantUrl;\n\n participant?.devices?.forEach((device) => {\n device?.intents?.forEach((intent) => {\n if (intent?.type === _OBSERVE_ && intent?.associatedWith) {\n participantUrl = intent.associatedWith;\n }\n });\n });\n\n return participantUrl;\n },\n};\nexport default MemberUtil;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_types","require","_constants","_parameter","_interopRequireDefault","MemberUtil","canReclaimHost","participant","ParameterError","canReclaimHostRole","getControlsRoles","_participant$controls","_participant$controls2","controls","role","roles","isBrb","_participant$controls3","_participant$controls4","brb","enabled","hasRole","controlRole","_MemberUtil$getContro","some","type","hasCohost","ServerRoles","Cohost","hasModerator","Moderator","hasPresenter","Presenter","extractControlRoles","cohost","moderator","presenter","isUser","_USER_","isModerator","isGuest","guest","isDevice","_RESOURCE_ROOM_","isModeratorAssignmentProhibited","moderatorAssignmentNotAllowed","isPresenterAssignmentProhibited","presenterAssignmentNotAllowed","isSame","id","person","isNotAdmitted","status","devices","intent","_WAIT_","_IN_LOBBY_","_IN_MEETING_","isAudioMuted","isMuted","AUDIO_STATUS","AUDIO","isVideoMuted","VIDEO_STATUS","VIDEO","isHandRaised","_participant$controls5","_participant$controls6","hand","raised","isBreakoutsSupported","doesNotSupportBreakouts","isInterpretationSupported","doesNotSupportSiInterpreter","isLiveAnnotationSupported","annotatorAssignmentNotAllowed","statusAccessor","controlsAccessor","_participant$controls7","_participant$controls8","_participant$status","remoteMute","muted","localStatus","_RECEIVE_ONLY_","_SEND_RECEIVE_","getRecordingMember","record","recording","meta","modifiedBy","isRecording","localRecord","isRemovable","isSelf","isInMeeting","_CALL_","isMutable","extractStatus","length","_NOT_IN_MEETING_","state","_JOINED_","_IDLE_","foundDevice","find","device","_OBSERVE_","_LEFT_","extractId","extractMediaStatus","_participant$status2","_participant$status3","audio","audioStatus","video","videoStatus","extractName","name","extractPairedWithParticipantUrl","_participant$devices","participantUrl","forEach","_device$intents","intents","associatedWith","_default","exports","default"],"sources":["util.ts"],"sourcesContent":["import {\n IExternalRoles,\n ServerRoles,\n ServerRoleShape,\n IMediaStatus,\n Participant,\n ParticipantUrl,\n} from './types';\nimport {\n _USER_,\n _RESOURCE_ROOM_,\n _OBSERVE_,\n _WAIT_,\n _LEFT_,\n _JOINED_,\n _IDLE_,\n _IN_LOBBY_,\n _NOT_IN_MEETING_,\n _IN_MEETING_,\n AUDIO_STATUS,\n VIDEO_STATUS,\n _SEND_RECEIVE_,\n _RECEIVE_ONLY_,\n _CALL_,\n VIDEO,\n AUDIO,\n} from '../constants';\nimport ParameterError from '../common/errors/parameter';\n\nconst MemberUtil = {\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n canReclaimHost: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'canReclaimHostRole could not be processed, participant is undefined.'\n );\n }\n\n return participant.canReclaimHostRole || false;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {[ServerRoleShape]}\n */\n getControlsRoles: (participant: Participant): Array<ServerRoleShape> =>\n participant?.controls?.role?.roles,\n\n /**\n * Checks if the participant has the brb status enabled.\n *\n * @param {Participant} participant - The locus participant object.\n * @returns {boolean} - True if the participant has brb enabled, false otherwise.\n */\n isBrb: (participant: Participant): boolean => participant.controls?.brb?.enabled || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @param {ServerRoles} controlRole the search role\n * @returns {Boolean}\n */\n hasRole: (participant: Participant, controlRole: ServerRoles): boolean =>\n MemberUtil.getControlsRoles(participant)?.some(\n (role) => role.type === controlRole && role.hasRole\n ),\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n hasCohost: (participant: Participant): boolean =>\n MemberUtil.hasRole(participant, ServerRoles.Cohost) || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n hasModerator: (participant: Participant): boolean =>\n MemberUtil.hasRole(participant, ServerRoles.Moderator) || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n hasPresenter: (participant: Participant): boolean =>\n MemberUtil.hasRole(participant, ServerRoles.Presenter) || false,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {IExternalRoles}\n */\n extractControlRoles: (participant: Participant): IExternalRoles => {\n const roles = {\n cohost: MemberUtil.hasCohost(participant),\n moderator: MemberUtil.hasModerator(participant),\n presenter: MemberUtil.hasPresenter(participant),\n };\n\n return roles;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isUser: (participant: Participant) => participant && participant.type === _USER_,\n\n isModerator: (participant: Participant) => participant && participant.moderator,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isGuest: (participant: Participant) => participant && participant.guest,\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isDevice: (participant: Participant) => participant && participant.type === _RESOURCE_ROOM_,\n\n isModeratorAssignmentProhibited: (participant: Participant) =>\n participant && participant.moderatorAssignmentNotAllowed,\n\n isPresenterAssignmentProhibited: (participant: Participant) =>\n participant && participant.presenterAssignmentNotAllowed,\n\n /**\n * checks to see if the participant id is the same as the passed id\n * there are multiple ids that can be used\n * @param {Object} participant - The locus participant object.\n * @param {String} id\n * @returns {Boolean}\n */\n isSame: (participant: Participant, id: string) =>\n participant && (participant.id === id || (participant.person && participant.person.id === id)),\n\n /**\n * @param {Object} participant - The locus participant object.\n * @param {Boolean} isGuest\n * @param {String} status\n * @returns {Boolean}\n */\n isNotAdmitted: (participant: Participant, isGuest: boolean, status: string): boolean =>\n participant &&\n participant.guest &&\n ((participant.devices &&\n participant.devices[0] &&\n participant.devices[0].intent &&\n participant.devices[0].intent.type === _WAIT_ &&\n // @ts-ignore\n isGuest &&\n status === _IN_LOBBY_) ||\n // @ts-ignore\n !status === _IN_MEETING_),\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isAudioMuted: (participant: Participant) => {\n if (!participant) {\n throw new ParameterError('Audio could not be processed, participant is undefined.');\n }\n\n return MemberUtil.isMuted(participant, AUDIO_STATUS, AUDIO);\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isVideoMuted: (participant: Participant): boolean => {\n if (!participant) {\n throw new ParameterError('Video could not be processed, participant is undefined.');\n }\n\n return MemberUtil.isMuted(participant, VIDEO_STATUS, VIDEO);\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isHandRaised: (participant: Participant) => {\n if (!participant) {\n throw new ParameterError('Raise hand could not be processed, participant is undefined.');\n }\n\n return participant.controls?.hand?.raised || false;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isBreakoutsSupported: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'Breakout support could not be processed, participant is undefined.'\n );\n }\n\n return !participant.doesNotSupportBreakouts;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isInterpretationSupported: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'Interpretation support could not be processed, participant is undefined.'\n );\n }\n\n return !participant.doesNotSupportSiInterpreter;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isLiveAnnotationSupported: (participant) => {\n if (!participant) {\n throw new ParameterError(\n 'LiveAnnotation support could not be processed, participant is undefined.'\n );\n }\n\n return !participant.annotatorAssignmentNotAllowed;\n },\n\n /**\n * utility method for audio/video muted status\n * @param {any} participant\n * @param {String} statusAccessor\n * @param {String} controlsAccessor\n * @returns {Boolean | undefined}\n */\n isMuted: (participant: Participant, statusAccessor: string, controlsAccessor: string) => {\n // check remote mute\n const remoteMute = participant?.controls?.[controlsAccessor]?.muted;\n if (remoteMute === true) {\n return true;\n }\n\n // check local mute\n const localStatus = participant?.status?.[statusAccessor];\n if (localStatus === _RECEIVE_ONLY_) {\n return true;\n }\n if (localStatus === _SEND_RECEIVE_) {\n return false;\n }\n\n return remoteMute;\n },\n\n /**\n * utility method for getting the recording member for later comparison\n * @param {Object} controls\n * @returns {String|null}\n */\n getRecordingMember: (controls: any) => {\n if (!controls) {\n return null;\n }\n if (controls.record && controls.record.recording && controls.record.meta) {\n return controls.record.meta.modifiedBy;\n }\n\n return null;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {Boolean}\n */\n isRecording: (participant: Participant) => {\n if (!participant) {\n throw new ParameterError('Recording could not be processed, participant is undefined.');\n }\n if (participant.controls && participant.controls.localRecord) {\n return participant.controls.localRecord.recording;\n }\n\n return false;\n },\n\n isRemovable: (isSelf, isGuest, isInMeeting, type) => {\n if (isGuest || isSelf) {\n return false;\n }\n if (type === _CALL_) {\n return false;\n }\n if (isInMeeting) {\n return true;\n }\n\n return false;\n },\n\n isMutable: (isSelf, isDevice, isInMeeting, isMuted, type) => {\n if (!isInMeeting) {\n return false;\n }\n if (isMuted) {\n return false;\n }\n if (type === _CALL_) {\n return false;\n }\n if (isSelf || isDevice) {\n return true;\n }\n\n return false;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractStatus: (participant: Participant) => {\n if (!(participant && participant.devices && participant.devices.length)) {\n return _NOT_IN_MEETING_;\n }\n if (participant.state === _JOINED_) {\n return _IN_MEETING_;\n }\n if (participant.state === _IDLE_) {\n if (participant.devices && participant.devices.length > 0) {\n const foundDevice = participant.devices.find(\n (device) =>\n device.intent && (device.intent.type === _WAIT_ || device.intent.type === _OBSERVE_)\n );\n\n return foundDevice ? _IN_LOBBY_ : _NOT_IN_MEETING_;\n }\n\n return _NOT_IN_MEETING_;\n }\n if (participant.state === _LEFT_) {\n return _NOT_IN_MEETING_;\n }\n\n return _NOT_IN_MEETING_;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractId: (participant: Participant) => {\n if (participant) {\n return participant.id;\n }\n\n return null;\n },\n\n /**\n * extracts the media status from nested participant object\n * @param {Object} participant - The locus participant object.\n * @returns {Object}\n */\n extractMediaStatus: (participant: Participant): IMediaStatus => {\n if (!participant) {\n throw new ParameterError('Media status could not be extracted, participant is undefined.');\n }\n\n return {\n audio: participant.status?.audioStatus,\n video: participant.status?.videoStatus,\n };\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractName: (participant: Participant) => {\n if (participant && participant.person) {\n return participant.person.name;\n }\n\n return null;\n },\n\n /**\n * @param {Object} participant - The locus participant object.\n * @returns {String}\n */\n extractPairedWithParticipantUrl: (participant: Participant): ParticipantUrl | undefined => {\n let participantUrl;\n\n participant?.devices?.forEach((device) => {\n device?.intents?.forEach((intent) => {\n if (intent?.type === _OBSERVE_ && intent?.associatedWith) {\n participantUrl = intent.associatedWith;\n }\n });\n });\n\n return participantUrl;\n },\n};\nexport default MemberUtil;\n"],"mappings":"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"}
@@ -97,15 +97,3 @@ declare class AddMediaFailed extends WebexMeetingsError {
97
97
  constructor(cause?: Error);
98
98
  }
99
99
  export { AddMediaFailed };
100
- /**
101
- * @class SdpResponseTimeoutError
102
- * @classdesc Raised whenever we timeout waiting for remote SDP answer
103
- * @extends WebexMeetingsError
104
- * @property {number} code - 30204
105
- * @property {string} message - 'Timed out waiting for REMOTE SDP ANSWER'
106
- */
107
- declare class SdpResponseTimeoutError extends WebexMeetingsError {
108
- static CODE: number;
109
- constructor();
110
- }
111
- export { SdpResponseTimeoutError };
@@ -280,7 +280,6 @@ export declare const EVENT_TRIGGERS: {
280
280
  MEETING_CONTROLS_ANNOTATION_UPDATED: string;
281
281
  MEETING_CONTROLS_REMOTE_DESKTOP_CONTROL_UPDATED: string;
282
282
  MEETING_CONTROLS_POLLING_QA_UPDATED: string;
283
- MEETING_CONTROLS_AUTO_END_MEETING_WARNING_UPDATED: string;
284
283
  MEETING_LOCUS_URL_UPDATE: string;
285
284
  MEETING_STREAM_PUBLISH_STATE_CHANGED: string;
286
285
  MEETING_TRANSCRIPTION_CONNECTED: string;
@@ -594,7 +593,6 @@ export declare const LOCUSINFO: {
594
593
  SELF_ADMITTED_GUEST: string;
595
594
  SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED: string;
596
595
  SELF_REMOTE_MUTE_STATUS_UPDATED: string;
597
- CONTROLS_AUTO_END_MEETING_WARNING_CHANGED: string;
598
596
  LOCAL_UNMUTE_REQUESTED: string;
599
597
  LOCAL_UNMUTE_REQUIRED: string;
600
598
  SELF_MODERATOR_CHANGED: string;
@@ -794,8 +792,6 @@ export declare const DISPLAY_HINTS: {
794
792
  LOWER_SOMEONE_ELSES_HAND: string;
795
793
  LEAVE_TRANSFER_HOST_END_MEETING: string;
796
794
  LEAVE_END_MEETING: string;
797
- STREAMING_STATUS_STARTED: string;
798
- STREAMING_STATUS_STOPPED: string;
799
795
  CAPTION_START: string;
800
796
  CAPTION_STATUS_ACTIVE: string;
801
797
  MANUAL_CAPTION_START: string;
@@ -864,7 +860,6 @@ export declare const DISPLAY_HINTS: {
864
860
  SHOW_POST_MEETING_DATA_CONSENT_PROMPT: string;
865
861
  ENABLE_ANNOTATION_MEETING_OPTION: string;
866
862
  DISABLE_ANNOTATION_MEETING_OPTION: string;
867
- SHOW_AUTO_END_MEETING_WARNING: string;
868
863
  ENABLE_RDC_MEETING_OPTION: string;
869
864
  DISABLE_RDC_MEETING_OPTION: string;
870
865
  ENABLE_ATTENDEE_START_POLLING_QA: string;
@@ -36,13 +36,6 @@ export default class ControlsOptionsManager {
36
36
  * @memberof ControlsOptionsManager
37
37
  */
38
38
  private locusUrl;
39
- /**
40
- * @instance
41
- * @type {string}
42
- * @private
43
- * @memberof ControlsOptionsManager
44
- */
45
- private mainLocusUrl;
46
39
  /**
47
40
  * @param {MeetingRequest} request
48
41
  * @param {Object} options
@@ -72,12 +65,11 @@ export default class ControlsOptionsManager {
72
65
  }): void;
73
66
  /**
74
67
  * @param {string} url
75
- * @param {boolean} isMainLocus
76
68
  * @returns {void}
77
69
  * @public
78
70
  * @memberof ControlsOptionsManager
79
71
  */
80
- setLocusUrl(url: string, isMainLocus?: boolean): void;
72
+ setLocusUrl(url: string): void;
81
73
  /**
82
74
  * @param {Array} hints
83
75
  * @returns {void}
@@ -8,7 +8,6 @@ import { ReclaimHostEmptyWrongKeyError, ReclaimHostIsHostAlreadyError, ReclaimHo
8
8
  import Meeting from './meeting';
9
9
  import MeetingInfoUtil from './meeting-info/utilv2';
10
10
  import JoinMeetingError from './common/errors/join-meeting';
11
- import { SdpResponseTimeoutError } from './common/errors/webex-errors';
12
11
  export { LocalStream, LocalDisplayStream, LocalSystemAudioStream, LocalStreamEventNames, StreamEventNames, RemoteStreamEventNames, type ServerMuteReason, LocalMicrophoneStreamEventNames, LocalCameraStreamEventNames, LocalMicrophoneStream, LocalCameraStream, createMicrophoneStream, createCameraStream, createCameraAndMicrophoneStreams, createDisplayStream, createDisplayStreamWithAudio, createDisplayMedia, FacingMode, DisplaySurface, PresetCameraConstraints, type VideoContentHint, type StreamState, } from '@webex/media-helpers';
13
12
  export default Meetings;
14
13
  export * as CONSTANTS from './constants';
@@ -16,6 +15,6 @@ export * as REACTIONS from './reactions/reactions';
16
15
  export * as sdkAnnotationTypes from './annotation/annotation.types';
17
16
  export * as MeetingInfoV2 from './meeting-info/meeting-info-v2';
18
17
  export { type Reaction } from './reactions/reactions.type';
19
- export { CaptchaError, IntentToJoinError, JoinMeetingError, PasswordError, PermissionError, ReclaimHostIsHostAlreadyError, ReclaimHostNotAllowedError, ReclaimHostNotSupportedError, ReclaimHostEmptyWrongKeyError, Meeting, MeetingInfoUtil, JoinWebinarError, SdpResponseTimeoutError, };
18
+ export { CaptchaError, IntentToJoinError, JoinMeetingError, PasswordError, PermissionError, ReclaimHostIsHostAlreadyError, ReclaimHostNotAllowedError, ReclaimHostNotSupportedError, ReclaimHostEmptyWrongKeyError, Meeting, MeetingInfoUtil, JoinWebinarError, };
20
19
  export { RemoteMedia } from './multistream/remoteMedia';
21
20
  export { default as TriggerProxy } from './common/events/trigger-proxy';
@@ -303,11 +303,10 @@ export default class LocusInfo extends EventsScope {
303
303
  /**
304
304
  * handles when the locus.url is updated
305
305
  * @param {String} url
306
- * @param {Boolean} isMainLocus
307
306
  * @returns {undefined}
308
307
  * emits internal event locus_info_update_url
309
308
  */
310
- updateLocusUrl(url: string, isMainLocus?: boolean): void;
309
+ updateLocusUrl(url: string): void;
311
310
  /**
312
311
  * @param {String} aclUrl
313
312
  * @returns {undefined}
@@ -37,8 +37,6 @@ interface IInMeetingActions {
37
37
  isLocalRecordingStarted?: boolean;
38
38
  isLocalRecordingStopped?: boolean;
39
39
  isLocalRecordingPaused?: boolean;
40
- isLocalStreamingStarted?: boolean;
41
- isLocalStreamingStopped?: boolean;
42
40
  isManualCaptionActive?: boolean;
43
41
  isSaveTranscriptsEnabled?: boolean;
44
42
  isSpokenLanguageAutoDetectionEnabled?: boolean;
@@ -89,7 +87,6 @@ interface IInMeetingActions {
89
87
  canDoVideo?: boolean;
90
88
  canAnnotate?: boolean;
91
89
  canUseVoip?: boolean;
92
- showAutoEndMeetingWarning?: boolean;
93
90
  supportHQV?: boolean;
94
91
  supportHDV?: boolean;
95
92
  canShareWhiteBoard?: boolean;
@@ -150,8 +147,6 @@ export default class InMeetingActions implements IInMeetingActions {
150
147
  isLocalRecordingStarted: any;
151
148
  isLocalRecordingPaused: any;
152
149
  isManualCaptionActive: any;
153
- isLocalStreamingStarted: any;
154
- isLocalStreamingStopped: any;
155
150
  isSaveTranscriptsEnabled: any;
156
151
  isSpokenLanguageAutoDetectionEnabled: any;
157
152
  isWebexAssistantActive: any;
@@ -201,7 +196,6 @@ export default class InMeetingActions implements IInMeetingActions {
201
196
  canDoVideo: any;
202
197
  canAnnotate: any;
203
198
  canUseVoip: any;
204
- showAutoEndMeetingWarning: any;
205
199
  supportHQV: any;
206
200
  enforceVirtualBackground: any;
207
201
  supportHDV: any;
@@ -1908,20 +1908,6 @@ export default class Meeting extends StatelessWebexPlugin {
1908
1908
  * @memberof Meeting
1909
1909
  */
1910
1910
  sendReaction(reactionType: ReactionServerType, skinToneType?: SkinToneType): any;
1911
- /**
1912
- * Extend the current meeting duration.
1913
- *
1914
- * @param {number} extensionMinutes - how many minutes to extend
1915
- * @returns {Promise}
1916
- * @public
1917
- * @memberof Meeting
1918
- */
1919
- extendMeeting({ meetingPolicyUrl, meetingInstanceId, participantId, extensionMinutes, }: {
1920
- meetingPolicyUrl: any;
1921
- meetingInstanceId: any;
1922
- participantId: any;
1923
- extensionMinutes?: number;
1924
- }): any;
1925
1911
  /**
1926
1912
  * Method to enable or disable reactions inside the meeting.
1927
1913
  *
@@ -2045,21 +2031,5 @@ export default class Meeting extends StatelessWebexPlugin {
2045
2031
  * @returns {Promise<any>} The result of the notifyHost request.
2046
2032
  */
2047
2033
  notifyHost(meetingUuid: string, displayName: string[]): any;
2048
- /**
2049
- * Call out a SIP participant to a meeting
2050
- * @param {string} address - The SIP address or phone number
2051
- * @param {string} displayName - The display name for the participant
2052
- * @param {string} [correlationId] - Optional correlation ID
2053
- * @returns {Promise} Promise that resolves when the call-out is initiated
2054
- */
2055
- sipCallOut(address: string, displayName: string): Promise<any>;
2056
- /**
2057
- * Cancel an ongoing SIP call-out
2058
- * @param {string} participantId - The participant ID to cancel
2059
- * @returns {Promise} Promise that resolves when the call-out is cancelled
2060
- * @public
2061
- * @memberof Meetings
2062
- */
2063
- cancelSipCallOut(participantId: string): Promise<any>;
2064
2034
  }
2065
2035
  export {};
@@ -284,22 +284,6 @@ export default class MeetingRequest extends StatelessWebexPlugin {
284
284
  * @returns {Promise}
285
285
  */
286
286
  sendReaction({ reactionChannelUrl, reaction, participantId }: SendReactionOptions): any;
287
- /**
288
- * Extend the current meeting duration.
289
- *
290
- * @param {Object} params - Parameters for extending the meeting.
291
- * @param {string} params.meetingInstanceId - The unique ID of the meeting instance.
292
- * @param {string} params.participantId - The ID of the participant requesting the extension.
293
- * @param {number} params.extensionMinutes - The number of minutes to extend the meeting by.
294
- * @param {string} params.meetingPolicyUrl - The base URL for meeting policy service (dynamic, from locus links)
295
- * @returns {Promise<any>} A promise that resolves with the server response.
296
- */
297
- extendMeeting({ meetingInstanceId, participantId, extensionMinutes, meetingPolicyUrl, }: {
298
- meetingInstanceId: string;
299
- participantId: string;
300
- extensionMinutes: number;
301
- meetingPolicyUrl: string;
302
- }): any;
303
287
  /**
304
288
  * Make a network request to enable or disable reactions.
305
289
  * @param {boolean} options.enable - determines if we need to enable or disable.
@@ -347,21 +331,4 @@ export default class MeetingRequest extends StatelessWebexPlugin {
347
331
  * @returns {Promise}
348
332
  */
349
333
  notifyHost(siteFullUrl: string, locusId: string, meetingUuid: string, displayName: string[]): any;
350
- /**
351
- * Call out to a SIP participant
352
- *
353
- * @param {any} meetingId - The meeting ID.
354
- * @param {any} meetingNumber - The meeting number.
355
- * @param {string} address - The SIP address to call out.
356
- * @param {string} displayName - The display name for the participant.
357
- * @returns {Promise} The API response
358
- */
359
- sipCallOut(meetingId: any, meetingNumber: any, address: any, displayName: any): Promise<any>;
360
- /**
361
- * Cancel an ongoing SIP call-out
362
- *
363
- * @param {string} participantId - The ID of the participant whose SIP call-out should be cancelled.
364
- * @returns {Promise} The API response
365
- */
366
- cancelSipCallOut(participantId: any): Promise<any>;
367
334
  }
@@ -80,8 +80,6 @@ declare const MeetingUtil: {
80
80
  isLocalRecordingStarted: (displayHints: any) => any;
81
81
  isLocalRecordingStopped: (displayHints: any) => any;
82
82
  isLocalRecordingPaused: (displayHints: any) => any;
83
- isLocalStreamingStarted: (displayHints: any) => any;
84
- isLocalStreamingStopped: (displayHints: any) => any;
85
83
  canStopManualCaption: (displayHints: any) => any;
86
84
  isManualCaptionActive: (displayHints: any) => any;
87
85
  isSpokenLanguageAutoDetectionEnabled: (displayHints: any) => any;
@@ -90,7 +88,6 @@ declare const MeetingUtil: {
90
88
  isRealTimeTranslationEnabled: (displayHints: any) => any;
91
89
  canSelectSpokenLanguages: (displayHints: any) => any;
92
90
  waitingForOthersToJoin: (displayHints: any) => any;
93
- showAutoEndMeetingWarning: (displayHints: any) => any;
94
91
  canSendReactions: (originalValue: any, displayHints: any) => any;
95
92
  canUserRenameSelfAndObserved: (displayHints: any) => any;
96
93
  requiresPostMeetingDataConsentPrompt: (displayHints: any) => any;
@@ -35,7 +35,6 @@ export default class Member {
35
35
  status: any;
36
36
  supportsBreakouts: boolean;
37
37
  supportsInterpretation: boolean;
38
- supportsSingleUserAutoEndMeeting: boolean;
39
38
  supportLiveAnnotation: boolean;
40
39
  type: any;
41
40
  namespace: string;
@@ -96,11 +96,6 @@ declare const MemberUtil: {
96
96
  * @returns {Boolean}
97
97
  */
98
98
  isBreakoutsSupported: (participant: any) => boolean;
99
- /**
100
- * @param {Object} participant - The locus participant object.
101
- * @returns {Boolean}
102
- */
103
- isSupportsSingleUserAutoEndMeeting: (participant: any) => boolean;
104
99
  /**
105
100
  * @param {Object} participant - The locus participant object.
106
101
  * @returns {Boolean}
@@ -458,7 +458,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
458
458
  }, _callee7);
459
459
  }))();
460
460
  },
461
- version: "3.10.0-next.6"
461
+ version: "3.10.0-wxc-disconnect.1"
462
462
  });
463
463
  var _default = exports.default = Webinar;
464
464
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -43,12 +43,12 @@
43
43
  "@webex/eslint-config-legacy": "0.0.0",
44
44
  "@webex/jest-config-legacy": "0.0.0",
45
45
  "@webex/legacy-tools": "0.0.0",
46
- "@webex/plugin-rooms": "3.10.0-next.3",
47
- "@webex/test-helper-chai": "3.8.1-next.11",
48
- "@webex/test-helper-mocha": "3.8.1-next.11",
49
- "@webex/test-helper-mock-webex": "3.8.1-next.11",
50
- "@webex/test-helper-retry": "3.8.1-next.11",
51
- "@webex/test-helper-test-users": "3.8.1-next.11",
46
+ "@webex/plugin-rooms": "3.10.0-wxc-disconnect.1",
47
+ "@webex/test-helper-chai": "3.10.0-wxc-disconnect.1",
48
+ "@webex/test-helper-mocha": "3.10.0-wxc-disconnect.1",
49
+ "@webex/test-helper-mock-webex": "3.10.0-wxc-disconnect.1",
50
+ "@webex/test-helper-retry": "3.10.0-wxc-disconnect.1",
51
+ "@webex/test-helper-test-users": "3.10.0-wxc-disconnect.1",
52
52
  "chai": "^4.3.4",
53
53
  "chai-as-promised": "^7.1.1",
54
54
  "eslint": "^8.24.0",
@@ -60,23 +60,23 @@
60
60
  "typescript": "^4.7.4"
61
61
  },
62
62
  "dependencies": {
63
- "@webex/common": "3.8.1-next.11",
63
+ "@webex/common": "3.10.0-wxc-disconnect.1",
64
64
  "@webex/event-dictionary-ts": "^1.0.1930",
65
- "@webex/internal-media-core": "2.20.1",
66
- "@webex/internal-plugin-conversation": "3.10.0-next.3",
67
- "@webex/internal-plugin-device": "3.10.0-next.3",
68
- "@webex/internal-plugin-llm": "3.10.0-next.3",
69
- "@webex/internal-plugin-mercury": "3.10.0-next.3",
70
- "@webex/internal-plugin-metrics": "3.10.0-next.3",
71
- "@webex/internal-plugin-support": "3.10.0-next.3",
72
- "@webex/internal-plugin-user": "3.10.0-next.3",
73
- "@webex/internal-plugin-voicea": "3.10.0-next.3",
74
- "@webex/media-helpers": "3.10.0-next.1",
75
- "@webex/plugin-people": "3.10.0-next.3",
76
- "@webex/plugin-rooms": "3.10.0-next.3",
65
+ "@webex/internal-media-core": "2.19.0",
66
+ "@webex/internal-plugin-conversation": "3.10.0-wxc-disconnect.1",
67
+ "@webex/internal-plugin-device": "3.10.0-wxc-disconnect.1",
68
+ "@webex/internal-plugin-llm": "3.10.0-wxc-disconnect.1",
69
+ "@webex/internal-plugin-mercury": "3.10.0-wxc-disconnect.1",
70
+ "@webex/internal-plugin-metrics": "3.10.0-wxc-disconnect.1",
71
+ "@webex/internal-plugin-support": "3.10.0-wxc-disconnect.1",
72
+ "@webex/internal-plugin-user": "3.10.0-wxc-disconnect.1",
73
+ "@webex/internal-plugin-voicea": "3.10.0-wxc-disconnect.1",
74
+ "@webex/media-helpers": "3.10.0-wxc-disconnect.1",
75
+ "@webex/plugin-people": "3.10.0-wxc-disconnect.1",
76
+ "@webex/plugin-rooms": "3.10.0-wxc-disconnect.1",
77
77
  "@webex/ts-sdp": "^1.8.1",
78
- "@webex/web-capabilities": "^1.7.1",
79
- "@webex/webex-core": "3.10.0-next.3",
78
+ "@webex/web-capabilities": "^1.6.0",
79
+ "@webex/webex-core": "3.10.0-wxc-disconnect.1",
80
80
  "ampersand-collection": "^2.0.2",
81
81
  "bowser": "^2.11.0",
82
82
  "btoa": "^1.2.1",
@@ -92,5 +92,5 @@
92
92
  "//": [
93
93
  "TODO: upgrade jwt-decode when moving to node 18"
94
94
  ],
95
- "version": "3.10.0-next.6"
95
+ "version": "3.10.0-wxc-disconnect.1"
96
96
  }
@@ -169,22 +169,3 @@ class AddMediaFailed extends WebexMeetingsError {
169
169
  }
170
170
  export {AddMediaFailed};
171
171
  WebExMeetingsErrors[AddMediaFailed.CODE] = AddMediaFailed;
172
-
173
- /**
174
- * @class SdpResponseTimeoutError
175
- * @classdesc Raised whenever we timeout waiting for remote SDP answer
176
- * @extends WebexMeetingsError
177
- * @property {number} code - 30204
178
- * @property {string} message - 'Timed out waiting for REMOTE SDP ANSWER'
179
- */
180
- class SdpResponseTimeoutError extends WebexMeetingsError {
181
- static CODE = 30204;
182
-
183
- // eslint-disable-next-line require-jsdoc
184
- constructor() {
185
- super(SdpResponseTimeoutError.CODE, 'Timed out waiting for REMOTE SDP ANSWER');
186
- }
187
- }
188
-
189
- export {SdpResponseTimeoutError};
190
- WebExMeetingsErrors[SdpResponseTimeoutError.CODE] = SdpResponseTimeoutError;
package/src/constants.ts CHANGED
@@ -347,7 +347,7 @@ export const EVENT_TRIGGERS = {
347
347
  MEETING_SELF_LEFT: 'meeting:self:left',
348
348
  NETWORK_QUALITY: 'network:quality',
349
349
  MEDIA_NEGOTIATED: 'media:negotiated',
350
- MEDIA_INBOUND_AUDIO_ISSUE_DETECTED: 'media:inboundAudio:issueDetected', // event.data: InboundAudioIssueEvent
350
+ MEDIA_INBOUND_AUDIO_ISSUE_DETECTED: 'media:inboundAudio:issueDetected',
351
351
  // the following events apply only to multistream media connections
352
352
  ACTIVE_SPEAKER_CHANGED: 'media:activeSpeakerChanged',
353
353
  REMOTE_VIDEO_SOURCE_COUNT_CHANGED: 'media:remoteVideoSourceCountChanged',
@@ -374,8 +374,6 @@ export const EVENT_TRIGGERS = {
374
374
  MEETING_CONTROLS_REMOTE_DESKTOP_CONTROL_UPDATED:
375
375
  'meeting:controls:remote-desktop-control:updated',
376
376
  MEETING_CONTROLS_POLLING_QA_UPDATED: 'meeting:controls:polling-qa:updated',
377
- MEETING_CONTROLS_AUTO_END_MEETING_WARNING_UPDATED:
378
- 'meeting:controls:auto-end-meeting-warning:updated',
379
377
  // Locus URL changed
380
378
  MEETING_LOCUS_URL_UPDATE: 'meeting:locus:locusUrl:update',
381
379
  MEETING_STREAM_PUBLISH_STATE_CHANGED: 'meeting:streamPublishStateChanged',
@@ -729,7 +727,6 @@ export const LOCUSINFO = {
729
727
  SELF_ADMITTED_GUEST: 'SELF_ADMITTED_GUEST',
730
728
  SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED: 'SELF_REMOTE_VIDEO_MUTE_STATUS_UPDATED',
731
729
  SELF_REMOTE_MUTE_STATUS_UPDATED: 'SELF_REMOTE_MUTE_STATUS_UPDATED',
732
- CONTROLS_AUTO_END_MEETING_WARNING_CHANGED: 'CONTROLS_AUTO_END_MEETING_WARNING_CHANGED',
733
730
  LOCAL_UNMUTE_REQUESTED: 'LOCAL_UNMUTE_REQUESTED',
734
731
  LOCAL_UNMUTE_REQUIRED: 'LOCAL_UNMUTE_REQUIRED',
735
732
  SELF_MODERATOR_CHANGED: 'SELF_MODERATOR_CHANGED',
@@ -964,8 +961,6 @@ export const DISPLAY_HINTS = {
964
961
  LOWER_SOMEONE_ELSES_HAND: 'LOWER_SOMEONE_ELSES_HAND',
965
962
  LEAVE_TRANSFER_HOST_END_MEETING: 'LEAVE_TRANSFER_HOST_END_MEETING',
966
963
  LEAVE_END_MEETING: 'LEAVE_END_MEETING',
967
- STREAMING_STATUS_STARTED: 'STREAMING_STATUS_STARTED',
968
- STREAMING_STATUS_STOPPED: 'STREAMING_STATUS_STOPPED',
969
964
  CAPTION_START: 'CAPTION_START',
970
965
  CAPTION_STATUS_ACTIVE: 'CAPTION_STATUS_ACTIVE',
971
966
  MANUAL_CAPTION_START: 'MANUAL_CAPTION_START',
@@ -1057,9 +1052,6 @@ export const DISPLAY_HINTS = {
1057
1052
  ENABLE_ANNOTATION_MEETING_OPTION: 'ENABLE_ANNOTATION_MEETING_OPTION',
1058
1053
  DISABLE_ANNOTATION_MEETING_OPTION: 'DISABLE_ANNOTATION_MEETING_OPTION',
1059
1054
 
1060
- // Auto End Meeting Warning
1061
- SHOW_AUTO_END_MEETING_WARNING: 'SHOW_AUTO_END_MEETING_WARNING',
1062
-
1063
1055
  // Remote Desktop Control
1064
1056
  ENABLE_RDC_MEETING_OPTION: 'ENABLE_RDC_MEETING_OPTION',
1065
1057
  DISABLE_RDC_MEETING_OPTION: 'DISABLE_RDC_MEETING_OPTION',
@@ -48,14 +48,6 @@ export default class ControlsOptionsManager {
48
48
  */
49
49
  private locusUrl: string;
50
50
 
51
- /**
52
- * @instance
53
- * @type {string}
54
- * @private
55
- * @memberof ControlsOptionsManager
56
- */
57
- private mainLocusUrl: string;
58
-
59
51
  /**
60
52
  * @param {MeetingRequest} request
61
53
  * @param {Object} options
@@ -95,16 +87,12 @@ export default class ControlsOptionsManager {
95
87
 
96
88
  /**
97
89
  * @param {string} url
98
- * @param {boolean} isMainLocus
99
90
  * @returns {void}
100
91
  * @public
101
92
  * @memberof ControlsOptionsManager
102
93
  */
103
- public setLocusUrl(url: string, isMainLocus?: boolean) {
94
+ public setLocusUrl(url: string) {
104
95
  this.locusUrl = url;
105
- if (isMainLocus) {
106
- this.mainLocusUrl = url;
107
- }
108
96
  }
109
97
 
110
98
  /**
@@ -172,16 +160,11 @@ export default class ControlsOptionsManager {
172
160
  });
173
161
 
174
162
  return payloads.reduce((previous, payload) => {
175
- const extraBody =
176
- this.mainLocusUrl && this.mainLocusUrl !== this.locusUrl
177
- ? {authorizingLocusUrl: this.locusUrl}
178
- : {};
179
-
180
163
  return previous.then(() =>
181
164
  // @ts-ignore
182
165
  this.request.request({
183
- uri: `${this.mainLocusUrl || this.locusUrl}/${CONTROLS}`,
184
- body: {...payload, ...extraBody},
166
+ uri: `${this.locusUrl}/${CONTROLS}`,
167
+ body: payload,
185
168
  method: HTTP_VERBS.PATCH,
186
169
  })
187
170
  );
@@ -258,15 +241,11 @@ export default class ControlsOptionsManager {
258
241
  if (error) {
259
242
  return Promise.reject(error);
260
243
  }
261
- const extraBody =
262
- this.mainLocusUrl && this.mainLocusUrl !== this.locusUrl
263
- ? {authorizingLocusUrl: this.locusUrl}
264
- : {};
265
244
 
266
245
  // @ts-ignore
267
246
  return this.request.request({
268
- uri: `${this.mainLocusUrl || this.locusUrl}/${CONTROLS}`,
269
- body: {...body, ...extraBody},
247
+ uri: `${this.locusUrl}/${CONTROLS}`,
248
+ body,
270
249
  method: HTTP_VERBS.PATCH,
271
250
  });
272
251
  }
package/src/index.ts CHANGED
@@ -18,7 +18,6 @@ import {
18
18
  import Meeting from './meeting';
19
19
  import MeetingInfoUtil from './meeting-info/utilv2';
20
20
  import JoinMeetingError from './common/errors/join-meeting';
21
- import {SdpResponseTimeoutError} from './common/errors/webex-errors';
22
21
 
23
22
  registerPlugin('meetings', Meetings, {
24
23
  config,
@@ -74,7 +73,6 @@ export {
74
73
  Meeting,
75
74
  MeetingInfoUtil,
76
75
  JoinWebinarError,
77
- SdpResponseTimeoutError,
78
76
  };
79
77
 
80
78
  export {RemoteMedia} from './multistream/remoteMedia';
@@ -130,15 +130,6 @@ ControlsUtils.parse = (controls: any) => {
130
130
  };
131
131
  }
132
132
 
133
- if (controls?.autoEndMeetingWarning) {
134
- parsedControls.autoEndMeetingWarning = {
135
- enabled: controls.autoEndMeetingWarning.enabled,
136
- extensionDurationMinutes: controls.autoEndMeetingWarning.extensionDurationMinutes,
137
- countdownDurationMinutes: controls.autoEndMeetingWarning.countdownDurationMinutes,
138
- countdownStartedAt: controls.autoEndMeetingWarning.countdownStartedAt,
139
- };
140
- }
141
-
142
133
  return parsedControls;
143
134
  };
144
135
 
@@ -253,15 +244,6 @@ ControlsUtils.getControls = (oldControls: any, newControls: any) => {
253
244
 
254
245
  hasPollingQAControlChanged:
255
246
  current?.pollingQAControl?.enabled !== previous?.pollingQAControl?.enabled,
256
-
257
- hasAutoEndMeetingChanged:
258
- current?.autoEndMeetingWarning?.enabled !== previous?.autoEndMeetingWarning?.enabled ||
259
- current?.autoEndMeetingWarning?.extensionDurationMinutes !==
260
- previous?.autoEndMeetingWarning?.extensionDurationMinutes ||
261
- current?.autoEndMeetingWarning?.countdownDurationMinutes !==
262
- previous?.autoEndMeetingWarning?.countdownDurationMinutes ||
263
- current?.autoEndMeetingWarning?.countdownStartedAt !==
264
- previous?.autoEndMeetingWarning?.countdownStartedAt,
265
247
  },
266
248
  };
267
249
  };