Stop recording of voice

- stop recording of voice conference when meeting ends.
This commit is contained in:
Richard Alam 2019-10-01 11:34:41 -07:00
parent 62872c50e8
commit 13d610f798
2 changed files with 11 additions and 0 deletions

View File

@ -4,6 +4,7 @@ import org.bigbluebutton.SystemConfiguration
import org.bigbluebutton.common2.msgs._ import org.bigbluebutton.common2.msgs._
import org.bigbluebutton.core.api.{ BreakoutRoomEndedInternalMsg, DestroyMeetingInternalMsg, EndBreakoutRoomInternalMsg } import org.bigbluebutton.core.api.{ BreakoutRoomEndedInternalMsg, DestroyMeetingInternalMsg, EndBreakoutRoomInternalMsg }
import org.bigbluebutton.core.apps.users.UsersApp import org.bigbluebutton.core.apps.users.UsersApp
import org.bigbluebutton.core.apps.voice.VoiceApp
import org.bigbluebutton.core.bus.{ BigBlueButtonEvent, InternalEventBus } import org.bigbluebutton.core.bus.{ BigBlueButtonEvent, InternalEventBus }
import org.bigbluebutton.core.domain.MeetingState2x import org.bigbluebutton.core.domain.MeetingState2x
import org.bigbluebutton.core.models._ import org.bigbluebutton.core.models._
@ -197,6 +198,9 @@ trait HandlerHelpers extends SystemConfiguration {
} }
def ejectAllUsersFromVoiceConf(outGW: OutMsgRouter, liveMeeting: LiveMeeting): Unit = { def ejectAllUsersFromVoiceConf(outGW: OutMsgRouter, liveMeeting: LiveMeeting): Unit = {
// Force stopping of voice recording if voice conf is being recorded.
VoiceApp.stopRecordingVoiceConference(liveMeeting, outGW)
val event = MsgBuilder.buildEjectAllFromVoiceConfMsg(liveMeeting.props.meetingProp.intId, liveMeeting.props.voiceProp.voiceConf) val event = MsgBuilder.buildEjectAllFromVoiceConfMsg(liveMeeting.props.meetingProp.intId, liveMeeting.props.voiceProp.voiceConf)
outGW.send(event) outGW.send(event)
} }
@ -236,6 +240,9 @@ trait HandlerHelpers extends SystemConfiguration {
)) ))
} }
// Force stopping of voice recording if voice conf is being recorded.
VoiceApp.stopRecordingVoiceConference(liveMeeting, outGW)
val event = MsgBuilder.buildEjectAllFromVoiceConfMsg(meetingId, liveMeeting.props.voiceProp.voiceConf) val event = MsgBuilder.buildEjectAllFromVoiceConfMsg(meetingId, liveMeeting.props.voiceProp.voiceConf)
outGW.send(event) outGW.send(event)

View File

@ -1,6 +1,7 @@
package org.bigbluebutton.core2.message.handlers.meeting package org.bigbluebutton.core2.message.handlers.meeting
import org.bigbluebutton.common2.msgs._ import org.bigbluebutton.common2.msgs._
import org.bigbluebutton.core.apps.voice.VoiceApp
import org.bigbluebutton.core.running.{ BaseMeetingActor, LiveMeeting, OutMsgRouter } import org.bigbluebutton.core.running.{ BaseMeetingActor, LiveMeeting, OutMsgRouter }
import org.bigbluebutton.core2.message.senders.MsgBuilder import org.bigbluebutton.core2.message.senders.MsgBuilder
@ -27,6 +28,9 @@ trait DestroyMeetingSysCmdMsgHdlr {
// Eject all users using the client. // Eject all users using the client.
outGW.send(MsgBuilder.buildEndAndKickAllSysMsg(liveMeeting.props.meetingProp.intId, "not-used")) outGW.send(MsgBuilder.buildEndAndKickAllSysMsg(liveMeeting.props.meetingProp.intId, "not-used"))
// Force stopping of voice recording if voice conf is being recorded.
VoiceApp.stopRecordingVoiceConference(liveMeeting, outGW)
// Eject all users from the voice conference // Eject all users from the voice conference
outGW.send(MsgBuilder.buildEjectAllFromVoiceConfMsg( outGW.send(MsgBuilder.buildEjectAllFromVoiceConfMsg(
liveMeeting.props.meetingProp.intId, liveMeeting.props.meetingProp.intId,