From b11113c165b62ad1e35ba1c2bce385b67e0fbfe7 Mon Sep 17 00:00:00 2001 From: Pedro Beschorner Marin <pedrobmarin@gmail.com> Date: Wed, 11 Dec 2019 17:00:32 -0300 Subject: [PATCH] Remove meeting inactivity monitor --- .../MeetingActivityResponseCmdMsgHdlr.scala | 43 ------- .../core/apps/users/UsersApp.scala | 1 - .../core/domain/MeetingState2x.scala | 3 - ...ityTracker.scala => MeetingTrackers.scala} | 38 ------ .../senders/ReceivedJsonMsgHandlerActor.scala | 2 - .../core/running/MeetingActor.scala | 23 +--- .../running/MeetingExpiryTrackerHelper.scala | 40 ------- .../bigbluebutton/core2/AnalyticsActor.scala | 2 - .../bigbluebutton/core/AppsTestFixtures.scala | 4 +- .../MeetingInactivityTrackerTests.scala | 37 ------ .../MeetingExpiryTrackerHelperTests.scala | 38 ------ .../client/meeting/AllowedMessageNames.scala | 1 - .../common2/domain/Meeting2x.scala | 1 - .../common2/msgs/SystemMsgs.scala | 14 --- .../bigbluebutton/common2/msgs/UsersMgs.scala | 7 -- .../bigbluebutton/common2/TestFixtures.scala | 4 +- .../org/bigbluebutton/api/MeetingService.java | 2 +- .../api/ParamsProcessorUtil.java | 20 ---- .../org/bigbluebutton/api/domain/Meeting.java | 18 --- .../bigbluebutton/api2/IBbbWebApiGWApp.java | 1 - .../bigbluebutton/api2/BbbWebApiGWApp.scala | 5 +- .../org/bigbluebutton/main/events/BBBEvent.as | 3 - .../main/model/users/UserService.as | 4 - .../main/views/InactivityWarningWindow.mxml | 109 ------------------ .../main/views/MainApplicationShell.mxml | 6 - .../monitoring/maps/MonitoringEventMap.mxml | 4 - .../modules/users/maps/UsersMainEventMap.mxml | 4 - .../modules/users/services/MessageReceiver.as | 19 --- .../modules/users/services/MessageSender.as | 21 ---- .../meetings/server/modifiers/addMeeting.js | 2 - .../grails-app/conf/bigbluebutton.properties | 9 -- .../grails-app/conf/spring/resources.xml | 2 - .../client/meeting/AllowedMessageNames.scala | 1 - 33 files changed, 5 insertions(+), 483 deletions(-) delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/MeetingActivityResponseCmdMsgHdlr.scala rename akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/{MeetingInactivityTracker.scala => MeetingTrackers.scala} (71%) delete mode 100755 akka-bbb-apps/src/test/scala/org/bigbluebutton/core/domain/MeetingInactivityTrackerTests.scala delete mode 100755 akka-bbb-apps/src/test/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelperTests.scala delete mode 100755 bigbluebutton-client/src/org/bigbluebutton/main/views/InactivityWarningWindow.mxml diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/MeetingActivityResponseCmdMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/MeetingActivityResponseCmdMsgHdlr.scala deleted file mode 100755 index eca0ac65c3..0000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/MeetingActivityResponseCmdMsgHdlr.scala +++ /dev/null @@ -1,43 +0,0 @@ -package org.bigbluebutton.core.apps.users - -import org.bigbluebutton.common2.domain.DefaultProps -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.{ LiveMeeting, OutMsgRouter } - -trait MeetingActivityResponseCmdMsgHdlr { - this: UsersApp => - - val liveMeeting: LiveMeeting - val outGW: OutMsgRouter - - def handleMeetingActivityResponseCmdMsg( - msg: MeetingActivityResponseCmdMsg, - state: MeetingState2x - ): MeetingState2x = { - processMeetingActivityResponse(liveMeeting.props, outGW, msg) - val tracker = state.inactivityTracker.resetWarningSentAndTimestamp() - state.update(tracker) - } - - def processMeetingActivityResponse( - props: DefaultProps, - outGW: OutMsgRouter, - msg: MeetingActivityResponseCmdMsg - ): Unit = { - - def buildMeetingIsActiveEvtMsg(meetingId: String): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, "not-used") - val envelope = BbbCoreEnvelope(MeetingIsActiveEvtMsg.NAME, routing) - val body = MeetingIsActiveEvtMsgBody(meetingId) - val header = BbbClientMsgHeader(MeetingIsActiveEvtMsg.NAME, meetingId, "not-used") - val event = MeetingIsActiveEvtMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - val event = buildMeetingIsActiveEvtMsg(props.meetingProp.intId) - outGW.send(event) - - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala index baec83be66..ecb84395fb 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala @@ -127,7 +127,6 @@ class UsersApp( with ChangeUserRoleCmdMsgHdlr with SyncGetUsersMeetingRespMsgHdlr with LogoutAndEndMeetingCmdMsgHdlr - with MeetingActivityResponseCmdMsgHdlr with SetRecordingStatusCmdMsgHdlr with RecordAndClearPreviousMarkersCmdMsgHdlr with SendRecordingTimerInternalMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingState2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingState2x.scala index 5b405145f7..6a4bb41efb 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingState2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingState2x.scala @@ -12,7 +12,6 @@ case class MeetingState2x( groupChats: GroupChats, presentationPodManager: PresentationPodManager, breakout: Option[BreakoutModel], - inactivityTracker: MeetingInactivityTracker, expiryTracker: MeetingExpiryTracker, recordingTracker: MeetingRecordingTracker ) { @@ -21,13 +20,11 @@ case class MeetingState2x( def update(presPodManager: PresentationPodManager): MeetingState2x = copy(presentationPodManager = presPodManager) def update(breakout: Option[BreakoutModel]): MeetingState2x = copy(breakout = breakout) def update(expiry: MeetingExpiryTracker): MeetingState2x = copy(expiryTracker = expiry) - def update(inactivityTracker: MeetingInactivityTracker): MeetingState2x = copy(inactivityTracker = inactivityTracker) def update(recordingTracker: MeetingRecordingTracker): MeetingState2x = copy(recordingTracker = recordingTracker) } object MeetingEndReason { val ENDED_FROM_API = "ENDED_FROM_API" - val ENDED_DUE_TO_INACTIVITY = "ENDED_DUE_TO_INACTIVITY" val ENDED_WHEN_NOT_JOINED = "ENDED_WHEN_NOT_JOINED" val ENDED_WHEN_LAST_USER_LEFT = "ENDED_WHEN_LAST_USER_LEFT" val ENDED_AFTER_USER_LOGGED_OUT = "ENDED_AFTER_USER_LOGGED_OUT" diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingInactivityTracker.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingTrackers.scala similarity index 71% rename from akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingInactivityTracker.scala rename to akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingTrackers.scala index bdaaa48c72..5b1c906870 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingInactivityTracker.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/domain/MeetingTrackers.scala @@ -1,43 +1,5 @@ package org.bigbluebutton.core.domain -case class MeetingInactivityTracker( - val maxInactivityTimeoutInMs: Long, - val warningBeforeMaxInMs: Long, - lastActivityTimestampInMs: Long, - warningSent: Boolean, - warningSentOnTimestampInMs: Long -) { - def setWarningSentAndTimestamp(nowInMs: Long): MeetingInactivityTracker = { - copy(warningSent = true, warningSentOnTimestampInMs = nowInMs) - } - - def resetWarningSentAndTimestamp(): MeetingInactivityTracker = { - copy(warningSent = false, warningSentOnTimestampInMs = 0L) - } - - def updateLastActivityTimestamp(nowInMs: Long): MeetingInactivityTracker = { - copy(lastActivityTimestampInMs = nowInMs) - } - - def hasRecentActivity(nowInMs: Long): Boolean = { - val left = nowInMs - lastActivityTimestampInMs - val right = maxInactivityTimeoutInMs - warningBeforeMaxInMs - left < right - } - - def isMeetingInactive(nowInMs: Long): Boolean = { - if (maxInactivityTimeoutInMs > 0) { - warningSent && (nowInMs - lastActivityTimestampInMs) > maxInactivityTimeoutInMs - } else { - false - } - } - - def timeLeftInMs(nowInMs: Long): Long = { - lastActivityTimestampInMs + maxInactivityTimeoutInMs - nowInMs - } -} - case class MeetingExpiryTracker( startedOnInMs: Long, userHasJoined: Boolean, diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala index 7dd24a7fa9..0935000688 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala @@ -269,8 +269,6 @@ class ReceivedJsonMsgHandlerActor( // Meeting case EndMeetingSysCmdMsg.NAME => routeGenericMsg[EndMeetingSysCmdMsg](envelope, jsonNode) - case MeetingActivityResponseCmdMsg.NAME => - routeGenericMsg[MeetingActivityResponseCmdMsg](envelope, jsonNode) case LogoutAndEndMeetingCmdMsg.NAME => routeGenericMsg[LogoutAndEndMeetingCmdMsg](envelope, jsonNode) case SetRecordingStatusCmdMsg.NAME => diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala index b6e32aab55..e6624c783e 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala @@ -123,14 +123,6 @@ class MeetingActor( object ExpiryTrackerHelper extends MeetingExpiryTrackerHelper - val inactivityTracker = new MeetingInactivityTracker( - TimeUtil.minutesToMillis(props.durationProps.maxInactivityTimeoutMinutes), - TimeUtil.minutesToMillis(props.durationProps.warnMinutesBeforeMax), - lastActivityTimestampInMs = TimeUtil.timeNowInMs(), - warningSent = false, - warningSentOnTimestampInMs = 0L - ) - val expiryTracker = new MeetingExpiryTracker( startedOnInMs = TimeUtil.timeNowInMs(), userHasJoined = false, @@ -150,7 +142,6 @@ class MeetingActor( new GroupChats(Map.empty), new PresentationPodManager(Map.empty), None, - inactivityTracker, expiryTracker, recordingTracker ) @@ -270,11 +261,6 @@ class MeetingActor( } - private def updateInactivityTracker(state: MeetingState2x): MeetingState2x = { - val tracker = state.inactivityTracker.updateLastActivityTimestamp(TimeUtil.timeNowInMs()) - state.update(tracker) - } - private def updateVoiceUserLastActivity(userId: String) { for { vu <- VoiceUsers.findWithVoiceUserId(liveMeeting.voiceUsers, userId) @@ -317,9 +303,6 @@ class MeetingActor( case m: UserBroadcastCamStartMsg => handleUserBroadcastCamStartMsg(m) case m: UserBroadcastCamStopMsg => handleUserBroadcastCamStopMsg(m) case m: UserJoinedVoiceConfEvtMsg => handleUserJoinedVoiceConfEvtMsg(m) - case m: MeetingActivityResponseCmdMsg => - state = usersApp.handleMeetingActivityResponseCmdMsg(m, state) - state = updateInactivityTracker(state) case m: LogoutAndEndMeetingCmdMsg => usersApp.handleLogoutAndEndMeetingCmdMsg(m, state) case m: SetRecordingStatusCmdMsg => state = usersApp.handleSetRecordingStatusCmdMsg(m, state) @@ -381,7 +364,6 @@ class MeetingActor( case m: UserLeftVoiceConfEvtMsg => handleUserLeftVoiceConfEvtMsg(m) case m: UserMutedInVoiceConfEvtMsg => handleUserMutedInVoiceConfEvtMsg(m) case m: UserTalkingInVoiceConfEvtMsg => - state = updateInactivityTracker(state) updateVoiceUserLastActivity(m.body.voiceUserId) handleUserTalkingInVoiceConfEvtMsg(m) @@ -552,12 +534,9 @@ class MeetingActor( def handleMonitorNumberOfUsers(msg: MonitorNumberOfUsersInternalMsg) { state = removeUsersWithExpiredUserLeftFlag(liveMeeting, state) - val (newState, expireReason) = ExpiryTrackerHelper.processMeetingInactivityAudit(outGW, eventBus, liveMeeting, state) + val (newState, expireReason) = ExpiryTrackerHelper.processMeetingExpiryAudit(outGW, eventBus, liveMeeting, state) state = newState expireReason foreach (reason => log.info("Meeting {} expired with reason {}", props.meetingProp.intId, reason)) - val (newState2, expireReason2) = ExpiryTrackerHelper.processMeetingExpiryAudit(outGW, eventBus, liveMeeting, state) - state = newState2 - expireReason2 foreach (reason => log.info("Meeting {} expired with reason {}", props.meetingProp.intId, reason)) sendRttTraceTest() setRecordingChapterBreak() diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelper.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelper.scala index db97ff69f6..21247da7a9 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelper.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelper.scala @@ -27,44 +27,4 @@ trait MeetingExpiryTrackerHelper extends HandlerHelpers { (state, reason) } - - def processMeetingInactivityAudit( - outGW: OutMsgRouter, - eventBus: InternalEventBus, - liveMeeting: LiveMeeting, - state: MeetingState2x - ): (MeetingState2x, Option[String]) = { - - val nowInMs = TimeUtil.timeNowInMs() - if (!state.inactivityTracker.hasRecentActivity(nowInMs)) { - if (state.inactivityTracker.isMeetingInactive(nowInMs)) { - val expireReason = MeetingEndReason.ENDED_DUE_TO_INACTIVITY - endAllBreakoutRooms(eventBus, liveMeeting, state) - sendEndMeetingDueToExpiry(expireReason, eventBus, outGW, liveMeeting) - (state, Some(expireReason)) - } else { - if (!state.inactivityTracker.warningSent) { - val timeLeftSeconds = TimeUtil.millisToSeconds(state.inactivityTracker.timeLeftInMs(nowInMs)) - val event = buildMeetingInactivityWarningEvtMsg(liveMeeting.props.meetingProp.intId, timeLeftSeconds) - outGW.send(event) - val tracker = state.inactivityTracker.setWarningSentAndTimestamp(nowInMs) - (state.update(tracker), None) - } else { - (state, None) - } - } - } else { - (state, None) - } - } - - def buildMeetingInactivityWarningEvtMsg(meetingId: String, timeLeftInSec: Long): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, "not-used") - val envelope = BbbCoreEnvelope(MeetingInactivityWarningEvtMsg.NAME, routing) - val body = MeetingInactivityWarningEvtMsgBody(timeLeftInSec) - val header = BbbClientMsgHeader(MeetingInactivityWarningEvtMsg.NAME, meetingId, "not-used") - val event = MeetingInactivityWarningEvtMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } } diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala index c7b4b09486..be40e9f6a1 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala @@ -47,7 +47,6 @@ class AnalyticsActor extends Actor with ActorLogging { case m: UserLeftMeetingEvtMsg => logMessage(msg) case m: PresenterUnassignedEvtMsg => logMessage(msg) case m: PresenterAssignedEvtMsg => logMessage(msg) - case m: MeetingIsActiveEvtMsg => logMessage(msg) case m: UserEjectedFromMeetingEvtMsg => logMessage(msg) case m: EjectUserFromVoiceConfSysMsg => logMessage(msg) case m: CreateBreakoutRoomSysCmdMsg => logMessage(msg) @@ -74,7 +73,6 @@ class AnalyticsActor extends Actor with ActorLogging { case m: ScreenshareStopRtmpBroadcastVoiceConfMsg => logMessage(msg) case m: ScreenshareRtmpBroadcastStartedEvtMsg => logMessage(msg) case m: ScreenshareRtmpBroadcastStoppedEvtMsg => logMessage(msg) - case m: MeetingInactivityWarningEvtMsg => logMessage(msg) case m: StartRecordingVoiceConfSysMsg => logMessage(msg) case m: StopRecordingVoiceConfSysMsg => logMessage(msg) //case m: UpdateRecordingTimerEvtMsg => logMessage(msg) diff --git a/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/AppsTestFixtures.scala b/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/AppsTestFixtures.scala index 7f3c3e1a8e..b74e590d41 100755 --- a/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/AppsTestFixtures.scala +++ b/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/AppsTestFixtures.scala @@ -18,8 +18,6 @@ trait AppsTestFixtures { val muteOnStart = true val deskshareConfId = "85115-DESKSHARE" val durationInMinutes = 10 - val maxInactivityTimeoutMinutes = 120 - val warnMinutesBeforeMax = 30 val meetingExpireIfNoUserJoinedInMinutes = 5 val meetingExpireWhenLastUserLeftInMinutes = 10 val userInactivityInspectTimerInMinutes = 60 @@ -50,7 +48,7 @@ trait AppsTestFixtures { val meetingProp = MeetingProp(name = meetingName, extId = externalMeetingId, intId = meetingId, isBreakout = isBreakout.booleanValue()) - val durationProps = DurationProps(duration = durationInMinutes, createdTime = createTime, createdDate = createDate, maxInactivityTimeoutMinutes = maxInactivityTimeoutMinutes, warnMinutesBeforeMax = warnMinutesBeforeMax, + val durationProps = DurationProps(duration = durationInMinutes, createdTime = createTime, createdDate = createDate, meetingExpireIfNoUserJoinedInMinutes = meetingExpireIfNoUserJoinedInMinutes, meetingExpireWhenLastUserLeftInMinutes = meetingExpireWhenLastUserLeftInMinutes, userInactivityInspectTimerInMinutes = userInactivityInspectTimerInMinutes, userInactivityThresholdInMinutes = userInactivityInspectTimerInMinutes, userActivitySignResponseDelayInMinutes = userActivitySignResponseDelayInMinutes) val password = PasswordProp(moderatorPass = moderatorPassword, viewerPass = viewerPassword) diff --git a/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/domain/MeetingInactivityTrackerTests.scala b/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/domain/MeetingInactivityTrackerTests.scala deleted file mode 100755 index 95f8ab07d9..0000000000 --- a/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/domain/MeetingInactivityTrackerTests.scala +++ /dev/null @@ -1,37 +0,0 @@ -package org.bigbluebutton.core.domain - -import org.bigbluebutton.core.UnitSpec -import org.bigbluebutton.core.util.TimeUtil - -class MeetingInactivityTrackerTests extends UnitSpec { - - "A MeetingInactivityTrackerHelper" should "be return meeting is inactive" in { - val nowInMinutes = TimeUtil.minutesToSeconds(15) - - val inactivityTracker = new MeetingInactivityTracker( - maxInactivityTimeoutInMs = 12, - warningBeforeMaxInMs = 2, - lastActivityTimestampInMs = TimeUtil.minutesToSeconds(5), - warningSent = true, - warningSentOnTimestampInMs = 0L - ) - - val active = inactivityTracker.isMeetingInactive(nowInMinutes) - assert(active == true) - } - - "A MeetingInactivityTrackerHelper" should "be return meeting is active" in { - val nowInMinutes = TimeUtil.minutesToSeconds(18) - val inactivityTracker = new MeetingInactivityTracker( - maxInactivityTimeoutInMs = 12, - warningBeforeMaxInMs = 2, - lastActivityTimestampInMs = TimeUtil.minutesToSeconds(5), - warningSent = true, - warningSentOnTimestampInMs = 0L - ) - - val inactive = inactivityTracker.isMeetingInactive(nowInMinutes) - assert(inactive) - } - -} diff --git a/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelperTests.scala b/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelperTests.scala deleted file mode 100755 index 871dcab1f8..0000000000 --- a/akka-bbb-apps/src/test/scala/org/bigbluebutton/core/running/MeetingExpiryTrackerHelperTests.scala +++ /dev/null @@ -1,38 +0,0 @@ -package org.bigbluebutton.core.running - -import org.bigbluebutton.core.UnitSpec -import org.bigbluebutton.core.domain.MeetingInactivityTracker -import org.bigbluebutton.core.util.TimeUtil - -class MeetingExpiryTrackerHelperTests extends UnitSpec { - - "A MeetingInactivityTrackerHelper" should "be return meeting is inactive" in { - val nowInMinutes = TimeUtil.minutesToSeconds(15) - - val inactivityTracker = new MeetingInactivityTracker( - maxInactivityTimeoutInMs = 12, - warningBeforeMaxInMs = 2, - lastActivityTimestampInMs = TimeUtil.minutesToSeconds(5), - warningSent = true, - warningSentOnTimestampInMs = 0L - ) - - val active = inactivityTracker.isMeetingInactive(nowInMinutes) - assert(active == true) - } - - "A MeetingInactivityTrackerHelper" should "be return meeting is active" in { - val nowInMinutes = TimeUtil.minutesToSeconds(18) - val inactivityTracker = new MeetingInactivityTracker( - maxInactivityTimeoutInMs = 12, - warningBeforeMaxInMs = 2, - lastActivityTimestampInMs = TimeUtil.minutesToSeconds(5), - warningSent = true, - warningSentOnTimestampInMs = 0L - ) - - val inactive = inactivityTracker.isMeetingInactive(nowInMinutes) - assert(inactive) - } - -} diff --git a/bbb-apps-common/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala b/bbb-apps-common/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala index 7a81d284ba..1ee740f3df 100644 --- a/bbb-apps-common/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala +++ b/bbb-apps-common/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala @@ -22,7 +22,6 @@ object AllowedMessageNames { UserBroadcastCamStopMsg.NAME, LogoutAndEndMeetingCmdMsg.NAME, GetRecordingStatusReqMsg.NAME, - MeetingActivityResponseCmdMsg.NAME, SetRecordingStatusCmdMsg.NAME, EjectUserFromMeetingCmdMsg.NAME, IsMeetingMutedReqMsg.NAME, diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/domain/Meeting2x.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/domain/Meeting2x.scala index 2edcbabaab..805a2ab0af 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/domain/Meeting2x.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/domain/Meeting2x.scala @@ -3,7 +3,6 @@ package org.bigbluebutton.common2.domain case class ConfigProps(defaultConfigToken: String, config: String) case class DurationProps(duration: Int, createdTime: Long, createdDate: String, - maxInactivityTimeoutMinutes: Int, warnMinutesBeforeMax: Int, meetingExpireIfNoUserJoinedInMinutes: Int, meetingExpireWhenLastUserLeftInMinutes: Int, userInactivityInspectTimerInMinutes: Int, userInactivityThresholdInMinutes: Int, userActivitySignResponseDelayInMinutes: Int) diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/SystemMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/SystemMsgs.scala index 677c475b91..b654d06881 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/SystemMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/SystemMsgs.scala @@ -138,20 +138,6 @@ case class MeetingTimeRemainingUpdateEvtMsg( ) extends BbbCoreMsg case class MeetingTimeRemainingUpdateEvtMsgBody(timeLeftInSec: Long) -object MeetingInactivityWarningEvtMsg { val NAME = "MeetingInactivityWarningEvtMsg" } -case class MeetingInactivityWarningEvtMsg( - header: BbbClientMsgHeader, - body: MeetingInactivityWarningEvtMsgBody -) extends BbbCoreMsg -case class MeetingInactivityWarningEvtMsgBody(timeLeftInSec: Long) - -object MeetingIsActiveEvtMsg { val NAME = "MeetingIsActiveEvtMsg" } -case class MeetingIsActiveEvtMsg( - header: BbbClientMsgHeader, - body: MeetingIsActiveEvtMsgBody -) extends BbbCoreMsg -case class MeetingIsActiveEvtMsgBody(meetingId: String) - object CheckAlivePingSysMsg { val NAME = "CheckAlivePingSysMsg" } case class CheckAlivePingSysMsg( header: BbbCoreBaseHeader, diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala index 4936931676..b4e5d48cab 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala @@ -198,13 +198,6 @@ object AssignPresenterReqMsg { val NAME = "AssignPresenterReqMsg" } case class AssignPresenterReqMsg(header: BbbClientMsgHeader, body: AssignPresenterReqMsgBody) extends StandardMsg case class AssignPresenterReqMsgBody(requesterId: String, newPresenterId: String, newPresenterName: String, assignedBy: String) -/** - * Sent from client as a response to inactivity notifaction from server. - */ -object MeetingActivityResponseCmdMsg { val NAME = "MeetingActivityResponseCmdMsg" } -case class MeetingActivityResponseCmdMsg(header: BbbClientMsgHeader, body: MeetingActivityResponseCmdMsgBody) extends StandardMsg -case class MeetingActivityResponseCmdMsgBody(respondedBy: String) - /** * Sent from client to change the role of the user in the meeting. */ diff --git a/bbb-common-message/src/test/scala/org/bigbluebutton/common2/TestFixtures.scala b/bbb-common-message/src/test/scala/org/bigbluebutton/common2/TestFixtures.scala index c7fc088b81..158a4a324c 100755 --- a/bbb-common-message/src/test/scala/org/bigbluebutton/common2/TestFixtures.scala +++ b/bbb-common-message/src/test/scala/org/bigbluebutton/common2/TestFixtures.scala @@ -12,8 +12,6 @@ trait TestFixtures { val voiceConfId = "85115" val durationInMinutes = 10 - val maxInactivityTimeoutMinutes = 120 - val warnMinutesBeforeMax = 30 val meetingExpireIfNoUserJoinedInMinutes = 5 val meetingExpireWhenLastUserLeftInMinutes = 10 val userInactivityInspectTimerInMinutes = 60 @@ -43,7 +41,7 @@ trait TestFixtures { isBreakout = isBreakout.booleanValue()) val breakoutProps = BreakoutProps(parentId = parentMeetingId, sequence = sequence, freeJoin = false, breakoutRooms = Vector()) - val durationProps = DurationProps(duration = durationInMinutes, createdTime = createTime, createdDate = createDate, maxInactivityTimeoutMinutes = maxInactivityTimeoutMinutes, warnMinutesBeforeMax = warnMinutesBeforeMax, + val durationProps = DurationProps(duration = durationInMinutes, createdTime = createTime, createdDate = createDate, meetingExpireIfNoUserJoinedInMinutes = meetingExpireIfNoUserJoinedInMinutes, meetingExpireWhenLastUserLeftInMinutes = meetingExpireWhenLastUserLeftInMinutes, userInactivityInspectTimerInMinutes = userInactivityInspectTimerInMinutes, userInactivityThresholdInMinutes = userInactivityInspectTimerInMinutes, userActivitySignResponseDelayInMinutes = userActivitySignResponseDelayInMinutes) val password = PasswordProp(moderatorPass = moderatorPassword, viewerPass = viewerPassword) diff --git a/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java b/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java index ac0540fdca..c68b44b085 100755 --- a/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java +++ b/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java @@ -312,7 +312,7 @@ public class MeetingService implements MessageListener { m.getWebcamsOnlyForModerator(), m.getModeratorPassword(), m.getViewerPassword(), m.getCreateTime(), formatPrettyDate(m.getCreateTime()), m.isBreakout(), m.getSequence(), m.isFreeJoin(), m.getMetadata(), m.getGuestPolicy(), m.getWelcomeMessageTemplate(), m.getWelcomeMessage(), m.getModeratorOnlyMessage(), - m.getDialNumber(), m.getMaxUsers(), m.getMaxInactivityTimeoutMinutes(), m.getWarnMinutesBeforeMax(), + m.getDialNumber(), m.getMaxUsers(), m.getMeetingExpireIfNoUserJoinedInMinutes(), m.getmeetingExpireWhenLastUserLeftInMinutes(), m.getUserInactivityInspectTimerInMinutes(), m.getUserInactivityThresholdInMinutes(), m.getUserActivitySignResponseDelayInMinutes(), m.getMuteOnStart(), m.getAllowModsToUnmuteUsers(), keepEvents, diff --git a/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java b/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java index 5598724cf6..0a19d86300 100755 --- a/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java +++ b/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java @@ -112,9 +112,7 @@ public class ParamsProcessorUtil { private Long maxPresentationFileUpload = 30000000L; // 30MB - private Integer maxInactivityTimeoutMinutes = 120; private Integer clientLogoutTimerInMinutes = 0; - private Integer warnMinutesBeforeMax = 5; private Integer meetingExpireIfNoUserJoinedInMinutes = 5; private Integer meetingExpireWhenLastUserLeftInMinutes = 1; private Integer userInactivityInspectTimerInMinutes = 120; @@ -478,8 +476,6 @@ public class ParamsProcessorUtil { meeting.setModeratorOnlyMessage(moderatorOnlyMessage); } - meeting.setMaxInactivityTimeoutMinutes(maxInactivityTimeoutMinutes); - meeting.setWarnMinutesBeforeMax(warnMinutesBeforeMax); meeting.setMeetingExpireIfNoUserJoinedInMinutes(meetingExpireIfNoUserJoinedInMinutes); meeting.setMeetingExpireWhenLastUserLeftInMinutes(meetingExpireWhenLastUserLeftInMinutes); meeting.setUserInactivityInspectTimerInMinutes(userInactivityInspectTimerInMinutes); @@ -938,26 +934,10 @@ public class ParamsProcessorUtil { this.defaultGuestPolicy = guestPolicy; } - public void setMaxInactivityTimeoutMinutes(Integer value) { - maxInactivityTimeoutMinutes = value; - } - public void setClientLogoutTimerInMinutes(Integer value) { clientLogoutTimerInMinutes = value; } - public void setWarnMinutesBeforeMax(Integer value) { - warnMinutesBeforeMax = value; - } - - public Integer getMaxInactivityTimeoutMinutes() { - return maxInactivityTimeoutMinutes; - } - - public Integer getWarnMinutesBeforeMax() { - return warnMinutesBeforeMax; - } - public void setMeetingExpireWhenLastUserLeftInMinutes(Integer value) { meetingExpireWhenLastUserLeftInMinutes = value; } diff --git a/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java b/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java index 624e85cf49..d573dd0c64 100755 --- a/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java +++ b/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java @@ -81,8 +81,6 @@ public class Meeting { private Boolean muteOnStart = false; private Boolean allowModsToUnmuteUsers = false; - private Integer maxInactivityTimeoutMinutes = 120; - private Integer warnMinutesBeforeMax = 5; private Integer meetingExpireIfNoUserJoinedInMinutes = 5; private Integer meetingExpireWhenLastUserLeftInMinutes = 1; private Integer userInactivityInspectTimerInMinutes = 120; @@ -517,22 +515,6 @@ public class Meeting { userCustomData.put(userID, data); } - public void setMaxInactivityTimeoutMinutes(Integer value) { - maxInactivityTimeoutMinutes = value; - } - - public void setWarnMinutesBeforeMax(Integer value) { - warnMinutesBeforeMax = value; - } - - public Integer getMaxInactivityTimeoutMinutes() { - return maxInactivityTimeoutMinutes; - } - - public Integer getWarnMinutesBeforeMax() { - return warnMinutesBeforeMax; - } - public void setMeetingExpireWhenLastUserLeftInMinutes(Integer value) { meetingExpireWhenLastUserLeftInMinutes = value; } diff --git a/bbb-common-web/src/main/java/org/bigbluebutton/api2/IBbbWebApiGWApp.java b/bbb-common-web/src/main/java/org/bigbluebutton/api2/IBbbWebApiGWApp.java index f6e687834f..01c5490dde 100755 --- a/bbb-common-web/src/main/java/org/bigbluebutton/api2/IBbbWebApiGWApp.java +++ b/bbb-common-web/src/main/java/org/bigbluebutton/api2/IBbbWebApiGWApp.java @@ -21,7 +21,6 @@ public interface IBbbWebApiGWApp { String createDate, Boolean isBreakout, Integer sequence, Boolean freejoin, Map<String, String> metadata, String guestPolicy, String welcomeMsgTemplate, String welcomeMsg, String modOnlyMessage, String dialNumber, Integer maxUsers, - Integer maxInactivityTimeoutMinutes, Integer warnMinutesBeforeMax, Integer meetingExpireIfNoUserJoinedInMinutes, Integer meetingExpireWhenLastUserLeftInMinutes, Integer userInactivityInspectTimerInMinutes, diff --git a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala index 112fe63c71..49481194d6 100755 --- a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala +++ b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala @@ -129,8 +129,7 @@ class BbbWebApiGWApp( freeJoin: java.lang.Boolean, metadata: java.util.Map[String, String], guestPolicy: String, welcomeMsgTemplate: String, welcomeMsg: String, modOnlyMessage: String, - dialNumber: String, maxUsers: java.lang.Integer, maxInactivityTimeoutMinutes: java.lang.Integer, - warnMinutesBeforeMax: java.lang.Integer, + dialNumber: String, maxUsers: java.lang.Integer, meetingExpireIfNoUserJoinedInMinutes: java.lang.Integer, meetingExpireWhenLastUserLeftInMinutes: java.lang.Integer, userInactivityInspectTimerInMinutes: java.lang.Integer, @@ -147,8 +146,6 @@ class BbbWebApiGWApp( val durationProps = DurationProps( duration = duration.intValue(), createdTime = createTime.longValue(), createDate, - maxInactivityTimeoutMinutes = maxInactivityTimeoutMinutes.intValue(), - warnMinutesBeforeMax = warnMinutesBeforeMax.intValue(), meetingExpireIfNoUserJoinedInMinutes = meetingExpireIfNoUserJoinedInMinutes.intValue(), meetingExpireWhenLastUserLeftInMinutes = meetingExpireWhenLastUserLeftInMinutes.intValue(), userInactivityInspectTimerInMinutes = userInactivityInspectTimerInMinutes.intValue(), diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as b/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as index b8409bba7b..36bddc5d42 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as +++ b/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as @@ -24,9 +24,6 @@ package org.bigbluebutton.main.events { public static const END_MEETING_EVENT:String = 'END_MEETING_EVENT'; public static const LOGOUT_END_MEETING_EVENT:String = 'LOGOUT_END_MEETING_EVENT'; public static const CONFIRM_LOGOUT_END_MEETING_EVENT:String = 'CONFIRM_LOGOUT_END_MEETING_EVENT'; - public static const INACTIVITY_WARNING_EVENT:String = 'INACTIVITY_WARNING_EVENT'; - public static const ACTIVITY_RESPONSE_EVENT:String = 'ACTIVITY_RESPONSE_EVENT'; - public static const MEETING_IS_ACTIVE_EVENT:String = 'MEETING_IS_ACTIVE_EVENT'; public static const LOGIN_EVENT:String = 'loginEvent'; public static const RECEIVED_PUBLIC_CHAT_MESSAGE_EVENT:String = 'RECEIVED_PUBLIC_CHAT_MESSAGE_EVENT'; public static const SEND_PUBLIC_CHAT_MESSAGE_EVENT:String = 'SEND_PUBLIC_CHAT_MESSAGE_EVENT'; diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as index 4d2f30ff55..15efcb0ed5 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as +++ b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as @@ -190,10 +190,6 @@ package org.bigbluebutton.main.model.users } } - public function activityResponse():void { - sender.activityResponse(); - } - public function userActivitySignResponse():void { sender.userActivitySignResponse(); } diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/InactivityWarningWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/InactivityWarningWindow.mxml deleted file mode 100755 index c90670970a..0000000000 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/InactivityWarningWindow.mxml +++ /dev/null @@ -1,109 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> - -<!-- - -BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ - -Copyright (c) 2015 BigBlueButton Inc. and by respective authors (see below). - -This program is free software; you can redistribute it and/or modify it under the -terms of the GNU Lesser General Public License as published by the Free Software -Foundation; either version 3.0 of the License, or (at your option) any later -version. - -BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY -WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A -PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. - -You should have received a copy of the GNU Lesser General Public License along -with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. - ---> - -<mx:TitleWindow xmlns:mx="library://ns.adobe.com/flex/mx" - xmlns:fx="http://ns.adobe.com/mxml/2009" - xmlns:mate="http://mate.asfusion.com/" - xmlns:common="org.bigbluebutton.common.*" - verticalScrollPolicy="off" - horizontalScrollPolicy="off" - horizontalAlign="center" - minWidth="500" - creationComplete="onCreationComplete()"> - - <fx:Declarations> - <mate:Listener type="{BBBEvent.MEETING_IS_ACTIVE_EVENT}" method="meetingIsActiveFeedback"/> - </fx:Declarations> - - <fx:Script> - <![CDATA[ - import com.asfusion.mate.events.Dispatcher; - - import mx.managers.PopUpManager; - - import org.as3commons.logging.api.ILogger; - import org.as3commons.logging.api.getClassLogger; - import org.bigbluebutton.main.events.BBBEvent; - import org.bigbluebutton.util.i18n.ResourceUtil; - - private static const LOGGER:ILogger = getClassLogger(InactivityWarningWindow); - - public var duration:Number = 0; - private var tickTimer:Timer; - - [Bindable] - private var cancelButtonLabel:String = ResourceUtil.getInstance().getString('bbb.inactivityWarning.cancel'); - - private function onCreationComplete():void { - tickTimer = new Timer(1000, 0); - tickTimer.addEventListener(TimerEvent.TIMER, tick); - - cancelButton.width = cancelButton.measureText(genCancelButtonLabel(duration)).width - + cancelButton.getStyle("paddingRight") - + cancelButton.getStyle("paddingLeft") - + 8; // 8 is magic number - - tickTimer.start(); - cancelButton.visible = true; - } - - private function tick(e:TimerEvent):void { - if (duration > 0) { - cancelButton.label = genCancelButtonLabel(duration); - warningMessage.text = genWarningMessageText(duration); - duration--; - } else { - tickTimer.stop(); - cancelButton.visible = false; - cancelButton.includeInLayout = false; - warningMessage.text = ResourceUtil.getInstance().getString('bbb.shuttingDown.message'); - } - } - - private function genWarningMessageText(timeLeft:Number):String { - return ResourceUtil.getInstance().getString('bbb.inactivityWarning.message', [timeLeft.toString()]); - } - - private function genCancelButtonLabel(timeLeft:Number):String { - return cancelButtonLabel; // + " (" + timeLeft.toString() + ")"; - } - - private function meetingIsActiveFeedback(e:BBBEvent):void { - tickTimer.stop(); - PopUpManager.removePopUp(this); - } - - private function cancelButtonClicked():void { - var dispatcher:Dispatcher = new Dispatcher(); - var bbbEvent:BBBEvent = new BBBEvent(BBBEvent.ACTIVITY_RESPONSE_EVENT); - dispatcher.dispatchEvent(bbbEvent); - } - ]]> - </fx:Script> - <mx:VBox width="100%" height="100%" paddingBottom="5" paddingLeft="5" paddingRight="5" paddingTop="5" horizontalAlign="center" verticalAlign="middle"> - <common:AdvancedLabel text="{ResourceUtil.getInstance().getString('bbb.inactivityWarning.title')}" - styleName="titleWindowStyle" - width="{this.width - 40}" /> - <mx:Text id="warningMessage" selectable="false"/> - <mx:Button id="cancelButton" click="cancelButtonClicked()" visible="false" styleName="mainActionButton"/> - </mx:VBox> -</mx:TitleWindow> \ No newline at end of file diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml index 162c8f2689..080850de2a 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml @@ -61,7 +61,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. <mate:Listener type="{ToolbarButtonEvent.REMOVE}" method="handleRemoveToolbarComponent"/> <mate:Listener type="{ShortcutEvent.OPEN_SHORTCUT_WIN}" method="openShortcutHelpWindow" /> <mate:Listener type="{BBBEvent.OPEN_WEBCAM_PREVIEW}" method="openVideoPreviewWindow" /> - <mate:Listener type="{BBBEvent.INACTIVITY_WARNING_EVENT}" method="handleInactivityWarningEvent" /> <mate:Listener type="{BBBEvent.USER_INACTIVITY_INSPECT_EVENT}" method="handleUserInactivityInspectEvent" /> <mate:Listener type="{LockControlEvent.OPEN_LOCK_SETTINGS}" method="openLockSettingsWindow" /> <mate:Listener type="{BreakoutRoomEvent.OPEN_BREAKOUT_ROOMS_PANEL}" method="openBreakoutRoomsWindow" /> @@ -517,11 +516,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. inactivityWarning.duration = e.payload.responseDelay; } - private function handleInactivityWarningEvent(e:BBBEvent):void { - var inactivityWarning:InactivityWarningWindow = PopUpUtil.createModalPopUp(FlexGlobals.topLevelApplication as DisplayObject, InactivityWarningWindow, true) as InactivityWarningWindow; - inactivityWarning.duration = e.payload.duration; - } - private function handleFlashMicSettingsEvent(event:FlashMicSettingsEvent):void { /** * There is a bug in Flex SDK 4.14 where the screen stays blurry if a diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/monitoring/maps/MonitoringEventMap.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/monitoring/maps/MonitoringEventMap.mxml index 4270c2cf97..469fcd3d9a 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/monitoring/maps/MonitoringEventMap.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/monitoring/maps/MonitoringEventMap.mxml @@ -24,10 +24,6 @@ <InlineInvoker method="{MonitoringModule.handleStreamEventStarted}"/> </EventHandlers> - <EventHandlers type="{BBBEvent.ACTIVITY_RESPONSE_EVENT}" > - <InlineInvoker method="{MonitoringModule.handleAddedListenerEvent}" arguments="{[event]}" /> - </EventHandlers> - <EventHandlers type="{BBBEvent.VIDEO_STARTED}" > <InlineInvoker method="{MonitoringModule.videoHasStarted}" arguments="{[event]}" /> </EventHandlers> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml index 141a45fef3..3e7263689f 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml @@ -120,10 +120,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. <MethodInvoker generator="{UserService}" method="recordAndClearPreviousMarkers" arguments="{event}" /> </EventHandlers> - <EventHandlers type="{BBBEvent.ACTIVITY_RESPONSE_EVENT}"> - <MethodInvoker generator="{UserService}" method="activityResponse" /> - </EventHandlers> - <EventHandlers type="{BBBEvent.USER_ACTIVITY_SIGN_RESPONSE_EVENT}"> <MethodInvoker generator="{UserService}" method="userActivitySignResponse" /> </EventHandlers> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as index ddf6fc5d6b..fa377cf627 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as @@ -137,12 +137,6 @@ package org.bigbluebutton.modules.users.services case "IsMeetingMutedRespMsg": handleIsMeetingMutedResp(message); break; - case "MeetingInactivityWarningEvtMsg": - handleInactivityWarning(message); - break; - case "MeetingIsActiveEvtMsg": - handleMeetingIsActive(message); - break; case "UserEmojiChangedEvtMsg": handleEmojiStatusHand(message); break; @@ -757,19 +751,6 @@ package org.bigbluebutton.modules.users.services } } - private function handleInactivityWarning(msg:Object):void { - var body:Object = msg.body as Object; - - var bbbEvent:BBBEvent = new BBBEvent(BBBEvent.INACTIVITY_WARNING_EVENT); - bbbEvent.payload.duration = body.timeLeftInSec as Number; - globalDispatcher.dispatchEvent(bbbEvent); - } - - private function handleMeetingIsActive(msg:Object):void { - var bbbEvent:BBBEvent = new BBBEvent(BBBEvent.MEETING_IS_ACTIVE_EVENT); - globalDispatcher.dispatchEvent(bbbEvent); - } - private function handleGetRecordingStatusReply(msg: Object):void { var body:Object = msg.body as Object; var recording: Boolean = body.recording as Boolean; diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as index 8a4b632391..ba686e139a 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as @@ -306,27 +306,6 @@ package org.bigbluebutton.modules.users.services }, message); } - public function activityResponse():void { - var message:Object = { - header: {name: "MeetingActivityResponseCmdMsg", meetingId: UsersUtil.getInternalMeetingID(), - userId: UsersUtil.getMyUserID()}, - body: {respondedBy: UsersUtil.getMyUserID()} - }; - - var _nc:ConnectionManager = BBB.initConnectionManager(); - _nc.sendMessage2x( - function(result:String):void { // On successful result - }, - function(status:String):void { // status - On error occurred - var logData:Object = UsersUtil.initLogData(); - logData.tags = ["apps"]; - logData.logCode = "error_sending_meeting_activity_response"; - LOGGER.info(JSON.stringify(logData)); - }, - message - ); //_netConnection.call - } - public function userActivitySignResponse():void { var message:Object = { header: {name: "UserActivitySignCmdMsg", meetingId: UsersUtil.getInternalMeetingID(), diff --git a/bigbluebutton-html5/imports/api/meetings/server/modifiers/addMeeting.js b/bigbluebutton-html5/imports/api/meetings/server/modifiers/addMeeting.js index a406089777..6b68ad9d5a 100755 --- a/bigbluebutton-html5/imports/api/meetings/server/modifiers/addMeeting.js +++ b/bigbluebutton-html5/imports/api/meetings/server/modifiers/addMeeting.js @@ -40,8 +40,6 @@ export default function addMeeting(meeting) { createdTime: Number, duration: Number, createdDate: String, - maxInactivityTimeoutMinutes: Number, - warnMinutesBeforeMax: Number, meetingExpireIfNoUserJoinedInMinutes: Number, meetingExpireWhenLastUserLeftInMinutes: Number, userInactivityInspectTimerInMinutes: Number, diff --git a/bigbluebutton-web/grails-app/conf/bigbluebutton.properties b/bigbluebutton-web/grails-app/conf/bigbluebutton.properties index 8036762c34..42391c789c 100755 --- a/bigbluebutton-web/grails-app/conf/bigbluebutton.properties +++ b/bigbluebutton-web/grails-app/conf/bigbluebutton.properties @@ -147,19 +147,10 @@ defaultMaxUsers=0 # Current default is 0 (meeting doesn't end). defaultMeetingDuration=0 -# Number of minutes elapse of no activity before -# ending the meeting. Default zero (0) to disable -# check. -maxInactivityTimeoutMinutes=0 - # Number of minutes to logout client if user # isn't responsive clientLogoutTimerInMinutes=0 -# Send warning to moderators to warn that -# meeting would be ended due to inactivity -warnMinutesBeforeMax=5 - # End meeting if no user joined within # a period of time after meeting created. meetingExpireIfNoUserJoinedInMinutes=5 diff --git a/bigbluebutton-web/grails-app/conf/spring/resources.xml b/bigbluebutton-web/grails-app/conf/spring/resources.xml index 505612447a..6e74ad8d0a 100755 --- a/bigbluebutton-web/grails-app/conf/spring/resources.xml +++ b/bigbluebutton-web/grails-app/conf/spring/resources.xml @@ -128,8 +128,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. <property name="defaultAvatarURL" value="${defaultAvatarURL}"/> <property name="defaultConfigURL" value="${defaultConfigURL}"/> <property name="defaultGuestPolicy" value="${defaultGuestPolicy}"/> - <property name="maxInactivityTimeoutMinutes" value="${maxInactivityTimeoutMinutes}"/> - <property name="warnMinutesBeforeMax" value="${warnMinutesBeforeMax}"/> <property name="meetingExpireIfNoUserJoinedInMinutes" value="${meetingExpireIfNoUserJoinedInMinutes}"/> <property name="meetingExpireWhenLastUserLeftInMinutes" value="${meetingExpireWhenLastUserLeftInMinutes}"/> <property name="userInactivityInspectTimerInMinutes" value="${userInactivityInspectTimerInMinutes}"/> diff --git a/labs/vertx-akka/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala b/labs/vertx-akka/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala index 92a47f39cf..88658503af 100755 --- a/labs/vertx-akka/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala +++ b/labs/vertx-akka/src/main/scala/org/bigbluebutton/client/meeting/AllowedMessageNames.scala @@ -22,7 +22,6 @@ object AllowedMessageNames { UserBroadcastCamStopMsg.NAME, LogoutAndEndMeetingCmdMsg.NAME, GetRecordingStatusReqMsg.NAME, - MeetingActivityResponseCmdMsg.NAME, SetRecordingStatusCmdMsg.NAME, EjectUserFromMeetingCmdMsg.NAME, IsMeetingMutedReqMsg.NAME, -- GitLab