From 0da4f757465cfd16ed19654b40c58a752c6008eb Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Fri, 7 Aug 2026 18:40:46 -0400 Subject: [PATCH 1/2] refactor(akka-apps): remove dead bbb-html5 -> akka-apps messages MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Part of #20095. The html5 client no longer publishes to redis — those calls moved to bbb-graphql-actions — so any inbound message with no remaining sender is dead code in akka-apps. Removed three, each marked "client -> apps" in bbb-common-message: PadCreateReqMsg PadUpdatePubMsg UpdatePositionInWaitingQueueReqMsg For each: the case classes in bbb-common-message, the handler trait, its mixin, the MeetingActor dispatch, the AnalyticsActor logging case, and the inbound routing in ReceivedJsonMsgHandlerActor. How these were picked. I took every message the Meteor backend ever published (105, recovered from the deleted imports/api/**/server/methods files across history), intersected with the 208 messages ReceivedJsonMsgHandlerActor still accepts, then dropped everything with a surviving sender in bbb-graphql-actions, bbb-web, bbb-common-web, akka-bbb-fsesl, bbb-shared-notes-server or the client. That leaves 5. Two of those five are NOT removed: UserConnectedToGlobalAudioMsg UserDisconnectedFromGlobalAudioMsg bbb-webrtc-sfu still sends both, from lib/audio/client-audio-consumer.js via Messaging.generateUserConnectedToGlobalAudioMessage. It lives in another repo, so a source grep here does not see it — checked against the installed component. bbb-transcription-controller v0.2.10 was checked too (it uses no pad messages). Pad creation is unaffected: akka-apps drives it itself now, through PadslHdlrHelpers.broadcastPadCreateGroupCmdMsg / broadcastPadCreateCmdMsg called from MeetingActor and PadGroupCreatedEvtMsgHdlr. PadCreateReqMsg was only the old client-initiated entry point. bbb-common-message and akka-bbb-apps both compile. The akka-apps test suite does not compile on v4.1.x-develop either way — 54 pre-existing errors in TestDataGen.scala (RegisteredUsers.create and WebcamStream signatures), identical with and without this change. The one added line in MeetingActor is scalariform re-aligning `=>` in the case block the removal shortened. --- .../bigbluebutton/core/apps/GuestsApp.scala | 1 - .../core/apps/pads/PadCreateReqMsgHdlr.scala | 31 ------------------- .../core/apps/pads/PadUpdatePubMsgHdlr.scala | 31 ------------------- .../core/apps/pads/PadsApp2x.scala | 2 -- .../senders/ReceivedJsonMsgHandlerActor.scala | 6 ---- .../core/running/MeetingActor.scala | 5 +-- .../bigbluebutton/core2/AnalyticsActor.scala | 3 -- ...datePositionInWaitingQueueReqMsgHdlr.scala | 26 ---------------- .../common2/msgs/GuestsMsgs.scala | 10 ------ .../bigbluebutton/common2/msgs/PadsMsgs.scala | 10 ------ 10 files changed, 1 insertion(+), 124 deletions(-) delete mode 100644 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadCreateReqMsgHdlr.scala delete mode 100644 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadUpdatePubMsgHdlr.scala delete mode 100644 akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/UpdatePositionInWaitingQueueReqMsgHdlr.scala diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala index 31fd1863fa8f..956413170ea8 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala @@ -5,7 +5,6 @@ import org.bigbluebutton.core2.message.handlers.guests._ trait GuestsApp extends GetGuestsWaitingApprovalReqMsgHdlr with GuestsWaitingApprovedMsgHdlr - with UpdatePositionInWaitingQueueReqMsgHdlr with SetGuestPolicyMsgHdlr with SetGuestLobbyMessageMsgHdlr with SetPrivateGuestLobbyMessageCmdMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadCreateReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadCreateReqMsgHdlr.scala deleted file mode 100644 index c35a59fba0e8..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadCreateReqMsgHdlr.scala +++ /dev/null @@ -1,31 +0,0 @@ -package org.bigbluebutton.core.apps.pads - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.models.Pads -import org.bigbluebutton.core.running.LiveMeeting - -trait PadCreateReqMsgHdlr { - this: PadsApp2x => - - def handle(msg: PadCreateReqMsg, liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - - def broadcastEvent(groupId: String, name: String): Unit = { - val routing = collection.immutable.HashMap("sender" -> "bbb-apps-akka") - val envelope = BbbCoreEnvelope(PadCreateCmdMsg.NAME, routing) - val header = BbbCoreHeaderWithMeetingId(PadCreateCmdMsg.NAME, liveMeeting.props.meetingProp.intId) - val body = PadCreateCmdMsgBody(groupId, name) - val event = PadCreateCmdMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - - bus.outGW.send(msgEvent) - } - - Pads.getGroup(liveMeeting.pads, msg.body.externalId) match { - case Some(group) => { - if (group.userId == msg.header.userId) broadcastEvent(group.groupId, msg.body.name) - } - case _ => - } - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadUpdatePubMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadUpdatePubMsgHdlr.scala deleted file mode 100644 index 0a94b6e5b496..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadUpdatePubMsgHdlr.scala +++ /dev/null @@ -1,31 +0,0 @@ -package org.bigbluebutton.core.apps.pads - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.models.Pads -import org.bigbluebutton.core.running.LiveMeeting - -trait PadUpdatePubMsgHdlr { - this: PadsApp2x => - - def handle(msg: PadUpdatePubMsg, liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - - def broadcastEvent(groupId: String, name: String, text: String): Unit = { - val routing = collection.immutable.HashMap("sender" -> "bbb-apps-akka") - val envelope = BbbCoreEnvelope(PadUpdateCmdMsg.NAME, routing) - val header = BbbCoreHeaderWithMeetingId(PadUpdateCmdMsg.NAME, liveMeeting.props.meetingProp.intId) - val body = PadUpdateCmdMsgBody(groupId, name, text) - val event = PadUpdateCmdMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - - bus.outGW.send(msgEvent) - } - - if (Pads.hasAccess(liveMeeting, msg.body.externalId, msg.header.userId) || msg.body.transcript == true) { - Pads.getGroup(liveMeeting.pads, msg.body.externalId) match { - case Some(group) => broadcastEvent(group.groupId, msg.body.externalId, msg.body.text) - case _ => - } - } - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadsApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadsApp2x.scala index 90e295cbecca..5ca3099208bc 100644 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadsApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/pads/PadsApp2x.scala @@ -41,7 +41,6 @@ object PadsApp2x { class PadsApp2x(implicit val context: ActorContext) extends PadGroupCreatedEvtMsgHdlr - with PadCreateReqMsgHdlr with PadCreatedEvtMsgHdlr with BNSharedNotesCreatedEvtMsgHdlr with BNSharedNotesUpdatedEvtMsgHdlr @@ -50,6 +49,5 @@ class PadsApp2x(implicit val context: ActorContext) with PadSessionDeletedSysMsgHdlr with PadUpdatedSysMsgHdlr with PadContentSysMsgHdlr - with PadUpdatePubMsgHdlr with PadPinnedReqMsgHdlr { } 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 ef6544beadc3..b55e7e16659c 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 @@ -75,8 +75,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[GetGuestsWaitingApprovalReqMsg](envelope, jsonNode) case GuestsWaitingApprovedMsg.NAME => routeGenericMsg[GuestsWaitingApprovedMsg](envelope, jsonNode) - case UpdatePositionInWaitingQueueReqMsg.NAME => - routeGenericMsg[UpdatePositionInWaitingQueueReqMsg](envelope, jsonNode) case SetGuestPolicyCmdMsg.NAME => routeGenericMsg[SetGuestPolicyCmdMsg](envelope, jsonNode) case GetGuestPolicyReqMsg.NAME => @@ -156,8 +154,6 @@ class ReceivedJsonMsgHandlerActor( // Pads case PadGroupCreatedEvtMsg.NAME => routePadMsg[PadGroupCreatedEvtMsg](envelope, jsonNode) - case PadCreateReqMsg.NAME => - routeGenericMsg[PadCreateReqMsg](envelope, jsonNode) case PadCreatedEvtMsg.NAME => routePadMsg[PadCreatedEvtMsg](envelope, jsonNode) case BNSharedNotesCreatedEvtMsg.NAME => @@ -174,8 +170,6 @@ class ReceivedJsonMsgHandlerActor( routePadMsg[PadUpdatedSysMsg](envelope, jsonNode) case PadContentSysMsg.NAME => routePadMsg[PadContentSysMsg](envelope, jsonNode) - case PadUpdatePubMsg.NAME => - routeGenericMsg[PadUpdatePubMsg](envelope, jsonNode) case PadPinnedReqMsg.NAME => routeGenericMsg[PadPinnedReqMsg](envelope, jsonNode) 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 93c4ea6cb14a..bb9b71d1ea40 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 @@ -646,7 +646,6 @@ class MeetingActor( // Pads case m: PadGroupCreatedEvtMsg => padsApp2x.handle(m, liveMeeting, msgBus) - case m: PadCreateReqMsg => padsApp2x.handle(m, liveMeeting, msgBus) case m: PadCreatedEvtMsg => padsApp2x.handle(m, liveMeeting, msgBus) case m: BNSharedNotesCreatedEvtMsg => padsApp2x.handle(m, liveMeeting, msgBus) case m: BNSharedNotesUpdatedEvtMsg => padsApp2x.handle(m, liveMeeting, msgBus) @@ -657,7 +656,6 @@ class MeetingActor( padsApp2x.handle(m, liveMeeting, msgBus) updateUserLastActivity(m.body.userId) case m: PadContentSysMsg => padsApp2x.handle(m, liveMeeting, msgBus) - case m: PadUpdatePubMsg => padsApp2x.handle(m, liveMeeting, msgBus) case m: PadPinnedReqMsg => padsApp2x.handle(m, liveMeeting, msgBus) updateUserLastActivity(m.header.userId) @@ -740,8 +738,7 @@ class MeetingActor( case m: GuestsWaitingApprovedMsg => handleGuestsWaitingApprovedMsg(m) updateUserLastActivity(m.header.userId) - case m: GetGuestPolicyReqMsg => handleGetGuestPolicyReqMsg(m) - case m: UpdatePositionInWaitingQueueReqMsg => handleUpdatePositionInWaitingQueueReqMsg(m) + case m: GetGuestPolicyReqMsg => handleGetGuestPolicyReqMsg(m) case m: SetPrivateGuestLobbyMessageCmdMsg => handleSetPrivateGuestLobbyMessageCmdMsg(m) updateUserLastActivity(m.header.userId) 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 a9b09fc71abc..5ddbbaf02f81 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 @@ -182,7 +182,6 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: GuestsWaitingApprovedEvtMsg => logMessage(msg) case m: GuestWaitingLeftEvtMsg => logMessage(msg) case m: GuestsWaitingForApprovalEvtMsg => logMessage(msg) - case m: UpdatePositionInWaitingQueueReqMsg => logMessage(msg) case m: PosInWaitingQueueUpdatedRespMsg => logMessage(msg) case m: SetGuestPolicyCmdMsg => logMessage(msg) case m: GuestPolicyChangedEvtMsg => logMessage(msg) @@ -215,7 +214,6 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: PadCreateGroupCmdMsg => logMessage(msg) case m: PadGroupCreatedEvtMsg => logMessage(msg) case m: PadGroupCreatedRespMsg => logMessage(msg) - case m: PadCreateReqMsg => logMessage(msg) case m: PadCreateCmdMsg => logMessage(msg) case m: PadCreatedEvtMsg => logMessage(msg) case m: BNSharedNotesCreatedEvtMsg => logMessage(msg) @@ -229,7 +227,6 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: PadSessionDeletedEvtMsg => logMessage(msg) case m: PadUpdatedSysMsg => logMessage(msg) case m: PadUpdatedEvtMsg => logMessage(msg) - case m: PadUpdatePubMsg => logMessage(msg) case m: PadUpdateCmdMsg => logMessage(msg) // Breakouts diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/UpdatePositionInWaitingQueueReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/UpdatePositionInWaitingQueueReqMsgHdlr.scala deleted file mode 100644 index 29596e94fe7c..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/UpdatePositionInWaitingQueueReqMsgHdlr.scala +++ /dev/null @@ -1,26 +0,0 @@ -package org.bigbluebutton.core2.message.handlers.guests - -import org.bigbluebutton.common2.msgs.UpdatePositionInWaitingQueueReqMsg -import org.bigbluebutton.core.models.{ GuestsWaiting } -import org.bigbluebutton.core.running.{ LiveMeeting, OutMsgRouter } -import org.bigbluebutton.core2.message.senders.MsgBuilder -import org.bigbluebutton.core.apps.{ PermissionCheck, RightsManagementTrait } -import org.bigbluebutton.core.running.MeetingActor - -trait UpdatePositionInWaitingQueueReqMsgHdlr extends RightsManagementTrait { - this: MeetingActor => - - val liveMeeting: LiveMeeting - val outGW: OutMsgRouter - - //This class could be used for logging the information passed - - def handleUpdatePositionInWaitingQueueReqMsg(msg: UpdatePositionInWaitingQueueReqMsg): Unit = { - val event = MsgBuilder.buildPosInWaitingQueueUpdatedRespMsg( - liveMeeting.props.meetingProp.intId, - msg.body.guests - ) - outGW.send(event) - } - -} diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala index 4d8bc314e218..86fddcede1d6 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala @@ -83,16 +83,6 @@ case class SetGuestPolicyCmdMsg( ) extends StandardMsg case class SetGuestPolicyCmdMsgBody(policy: String, setBy: String) -/** - * Message sent from the client when a new guest user appeared or one of the guest users - * was accepted or denied. Present waiting users change positions in queue. - */ -object UpdatePositionInWaitingQueueReqMsg { val NAME = "UpdatePositionInWaitingQueueReqMsg" } -case class UpdatePositionInWaitingQueueReqMsg( - header: BbbClientMsgHeader, - body: UpdatePositionInWaitingQueueReqMsgBody -) extends StandardMsg -case class UpdatePositionInWaitingQueueReqMsgBody(guests: Vector[GuestWaitingUP]) case class GuestWaitingUP(intId: String, idx: String) /** diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala index 1fe23260d9ae..041ed3146673 100644 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala @@ -21,11 +21,6 @@ object PadGroupCreatedRespMsg { val NAME = "PadGroupCreatedRespMsg" } case class PadGroupCreatedRespMsg(header: BbbClientMsgHeader, body: PadGroupCreatedRespMsgBody) extends BbbCoreMsg case class PadGroupCreatedRespMsgBody(externalId: String, model: String, name: String) -// client -> apps -object PadCreateReqMsg { val NAME = "PadCreateReqMsg" } -case class PadCreateReqMsg(header: BbbClientMsgHeader, body: PadCreateReqMsgBody) extends StandardMsg -case class PadCreateReqMsgBody(externalId: String, name: String) - // apps -> shared-notes-server object BNSharedNotesCreateCmdMsg { val NAME = "BNSharedNotesCreateCmdMsg" } case class BNSharedNotesCreateCmdMsg(header: BbbCoreHeaderWithMeetingId, body: BNSharedNotesCreateCmdMsgBody) extends BbbCoreMsg @@ -111,11 +106,6 @@ object PadTailEvtMsg { val NAME = "PadTailEvtMsg" } case class PadTailEvtMsg(header: BbbCoreHeaderWithMeetingId, body: PadTailEvtMsgBody) extends BbbCoreMsg case class PadTailEvtMsgBody(externalId: String, tail: String) -// client -> apps -object PadUpdatePubMsg { val NAME = "PadUpdatePubMsg" } -case class PadUpdatePubMsg(header: BbbClientMsgHeader, body: PadUpdatePubMsgBody) extends StandardMsg -case class PadUpdatePubMsgBody(externalId: String, text: String, transcript: Boolean) - // apps -> pads object PadUpdateCmdMsg { val NAME = "PadUpdateCmdMsg" } case class PadUpdateCmdMsg(header: BbbCoreHeaderWithMeetingId, body: PadUpdateCmdMsgBody) extends BbbCoreMsg From 43351d1fbb2ec993c21d3e534cfc400b11a44af3 Mon Sep 17 00:00:00 2001 From: Anton Georgiev Date: Fri, 7 Aug 2026 20:12:00 -0400 Subject: [PATCH 2/2] refactor(akka-apps): remove 26 more dead client -> apps messages Continues the previous commit. These 26 inbound messages are still accepted by ReceivedJsonMsgHandlerActor but nothing anywhere sends them: Initial-state fetches, now served by GraphQL/Hasura instead of a request to akka-apps: GetAllPresentationPodsReqMsg, GetChatHistoryReqMsg, GetCurrentLayoutReqMsg, GetCurrentPollReqMsg, GetGroupChatMsgsReqMsg, GetGroupChatsReqMsg, GetGuestPolicyReqMsg, GetGuestsWaitingApprovalReqMsg, GetPresenterGroupReqMsg, GetScreenshareStatusReqMsg, GetWebcamsOnlyForModeratorReqMsg, GetWhiteboardAnnotationsReqMsg, IsMeetingMutedReqMsg Chat, superseded by group chat in 2018: SendPublicMessagePubMsg, SendPrivateMessagePubMsg Presenter group, feature removed in 2018: AddUserToPresenterGroupCmdMsg, RemoveUserFromPresenterGroupCmdMsg Presentation pods: CreateNewPresentationPodPubMsg, RemovePresentationPodPubMsg, SlideResizedPubMsg, PreuploadedPresentationsSysPubMsg Other: BreakoutRoomsListMsg, LockUsersInMeetingCmdMsg, EjectUserFromMeetingSysMsg, RecordAndClearPreviousMarkersCmdMsg, ClientToServerLatencyTracerMsg For each: the case classes in bbb-common-message, the handler trait, its mixin, the MeetingActor dispatch arm, the AnalyticsActor logging case and the inbound routing. Handlers whose file name did not match the message (PreuploadedPresentationsPubMsgHdlr, EjectUserFromMeetingSysMsgHdlr inside EjectUserFromMeetingCmdMsgHdlr.scala) were removed too. Also removes the 15 outbound messages these leave without an emitter, so the change does not trade one kind of dead code for another: GetAllPresentationPodsRespMsg, GetChatHistoryRespMsg, GetCurrentLayoutRespMsg, GetCurrentPollRespMsg, GetGroupChatMsgsRespMsg, GetGroupChatsRespMsg, GetGuestPolicyRespMsg, GetWebcamsOnlyForModeratorRespMsg, GetWhiteboardAnnotationsRespMsg, IsMeetingMutedRespMsg, NewPresentationEvtMsg, SendPrivateMessageEvtMsg, ServerToClientLatencyTracerMsg, PadUpdateCmdMsg, PosInWaitingQueueUpdatedRespMsg plus the helpers that built them: Polls.handleGetCurrentPollReqMsg, PresentationApp2x.processPreuploadedPresentations, the NewPresentationMsgHdlr trait, MsgBuilder.buildPosInWaitingQueueUpdatedRespMsg, and the GuestWaitingUP VO that only PosInWaitingQueueUpdatedRespMsg used. Note for bbb-pads: it still has a redis handler for PadUpdateCmdMsg (lib/redis/handler.js). Nothing has emitted that message since the client stopped sending PadUpdatePubMsg, so the handler was already unreachable; it can be dropped on the bbb-pads side separately. LayoutApp2x now declares `val liveMeeting: LiveMeeting` itself. It used to inherit that declaration from GetCurrentLayoutReqMsgHdlr, and its sibling handler traits resolve `liveMeeting` through the mixin. Verification. Candidates were taken from the messages ReceivedJsonMsgHandlerActor accepts, minus every message with a sender in this repo, in the components installed on a running 4.x server, in the bbb-graphql-middleware and bbb-webrtc-recorder Go binaries (via strings), or in bbb-transcription-controller v0.2.10, bbb-webhooks v3.6.1 and bbb-webrtc-recorder v0.14.0 at their pinned tags. A second independent pass re-checked every candidate against the Ruby recording scripts, freeswitch, jar/war contents, dynamically-built message names and git history for recently-removed senders. GetMediaGroupsReqMsg also has no sender but is deliberately kept: it is not legacy. It was added 2024-12 as GetAudioGroupsReqMsg and renamed 2025-10 when media groups were extended to cameras and screenshare, and its sibling graphql-actions mutations are live. Removing it should be confirmed with the feature author first. bbb-common-message and akka-bbb-apps compile. The akka-apps test suite does not compile on v4.1.x-develop with or without this change (54 pre-existing errors in TestDataGen.scala). Inbound messages accepted by akka-apps: 205 -> 179. Messages defined in bbb-common-message: 447 -> 406. No message that had an emitter before this PR is left without one. --- .../bigbluebutton/core/apps/GuestsApp.scala | 6 +-- .../core/apps/breakout/BreakoutApp2x.scala | 1 - .../breakout/BreakoutRoomsListMsgHdlr.scala | 39 -------------- .../core/apps/chat/ChatApp2x.scala | 5 +- .../apps/chat/GetChatHistoryReqMsgHdlr.scala | 27 ---------- .../chat/SendPrivateMessagePubMsgHdlr.scala | 26 ---------- .../chat/SendPublicMessagePubMsgHdlr.scala | 27 ---------- .../GetGroupChatMsgsReqMsgHdlr.scala | 40 -------------- .../groupchats/GetGroupChatsReqMsgHdlr.scala | 41 --------------- .../core/apps/groupchats/GroupChatHdlrs.scala | 2 - .../layout/GetCurrentLayoutReqMsgHdlr.scala | 34 ------------ .../core/apps/layout/LayoutApp2x.scala | 9 ++-- .../apps/polls/GetCurrentPollReqMsgHdlr.scala | 35 ------------- .../core/apps/polls/PollApp2x.scala | 3 +- .../presentation/NewPresentationMsgHdlr.scala | 22 -------- .../apps/presentation/PresentationApp2x.scala | 15 +----- .../PreuploadedPresentationsPubMsgHdlr.scala | 39 -------------- .../CreateNewPresentationPodPubMsgHdlr.scala | 43 --------------- .../GetAllPresentationPodsReqMsgHdlr.scala | 44 ---------------- .../PresentationPodHdlrs.scala | 6 +-- .../RemovePresentationPodPubMsgHdlr.scala | 52 ------------------- .../SlideResizedPubMsgHdlr.scala | 19 ------- .../GetScreenshareStatusReqMsgHdlr.scala | 49 ----------------- .../apps/screenshare/ScreenshareApp2x.scala | 3 +- .../EjectUserFromMeetingCmdMsgHdlr.scala | 30 ----------- .../users/LockUsersInMeetingCmdMsgHdlr.scala | 42 --------------- ...ordAndClearPreviousMarkersCmdMsgHdlr.scala | 48 ----------------- .../core/apps/users/UsersApp.scala | 2 - .../core/apps/users/UsersApp2x.scala | 1 - ...GetWebcamsOnlyForModeratorReqMsgHdlr.scala | 33 ------------ .../core/apps/webcam/WebcamApp2x.scala | 1 - .../ClientToServerLatencyTracerMsgHdlr.scala | 26 ---------- .../GetWhiteboardAnnotationsReqMsgHdlr.scala | 36 ------------- .../apps/whiteboard/WhiteboardApp2x.scala | 3 +- .../org/bigbluebutton/core/models/Polls.scala | 22 -------- .../senders/ReceivedJsonMsgHandlerActor.scala | 52 ------------------- .../core/running/MeetingActor.scala | 40 +------------- .../bigbluebutton/core2/AnalyticsActor.scala | 11 ---- .../handlers/IsMeetingMutedReqMsgHdlr.scala | 28 ---------- .../guests/GetGuestPolicyReqMsgHdlr.scala | 26 ---------- .../GetGuestsWaitingApprovalReqMsgHdlr.scala | 26 ---------- .../core2/message/senders/MsgBuilder.scala | 12 ----- .../common2/msgs/BreakoutMsgs.scala | 4 -- .../common2/msgs/ChatMessages.scala | 18 ------- .../common2/msgs/GroupChatMsg.scala | 12 ----- .../common2/msgs/GuestsMsgs.scala | 26 ---------- .../common2/msgs/LayoutMsgs.scala | 8 --- .../bigbluebutton/common2/msgs/PadsMsgs.scala | 3 -- .../common2/msgs/PollsMsgs.scala | 8 --- .../common2/msgs/PresentationMsgs.scala | 7 --- .../common2/msgs/PresentationPodsMsgs.scala | 16 ------ .../common2/msgs/SystemMsgs.scala | 3 -- .../common2/msgs/UsersMsgs.scala | 24 --------- .../common2/msgs/VoiceConfMsgs.scala | 12 ----- .../common2/msgs/WhiteboardMsgs.scala | 12 ----- 55 files changed, 16 insertions(+), 1163 deletions(-) delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutRoomsListMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/GetChatHistoryReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPrivateMessagePubMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPublicMessagePubMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatMsgsReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatsReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/GetCurrentLayoutReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/GetCurrentPollReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/NewPresentationMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PreuploadedPresentationsPubMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/CreateNewPresentationPodPubMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/GetAllPresentationPodsReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/RemovePresentationPodPubMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/SlideResizedPubMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/GetScreenshareStatusReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/LockUsersInMeetingCmdMsgHdlr.scala delete mode 100644 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/RecordAndClearPreviousMarkersCmdMsgHdlr.scala delete mode 100644 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/GetWebcamsOnlyForModeratorReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/ClientToServerLatencyTracerMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/GetWhiteboardAnnotationsReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/IsMeetingMutedReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestPolicyReqMsgHdlr.scala delete mode 100755 akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestsWaitingApprovalReqMsgHdlr.scala diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala index 956413170ea8..4bf1018e3187 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/GuestsApp.scala @@ -3,12 +3,10 @@ package org.bigbluebutton.core.apps import org.bigbluebutton.core.running.MeetingActor import org.bigbluebutton.core2.message.handlers.guests._ -trait GuestsApp extends GetGuestsWaitingApprovalReqMsgHdlr - with GuestsWaitingApprovedMsgHdlr +trait GuestsApp extends GuestsWaitingApprovedMsgHdlr with SetGuestPolicyMsgHdlr with SetGuestLobbyMessageMsgHdlr - with SetPrivateGuestLobbyMessageCmdMsgHdlr - with GetGuestPolicyReqMsgHdlr { + with SetPrivateGuestLobbyMessageCmdMsgHdlr { this: MeetingActor => diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutApp2x.scala index 602da44b46ae..e30af38c7383 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutApp2x.scala @@ -7,7 +7,6 @@ import org.apache.commons.codec.digest.DigestUtils import org.bigbluebutton.SystemConfiguration trait BreakoutApp2x extends BreakoutRoomCreatedMsgHdlr - with BreakoutRoomsListMsgHdlr with BreakoutRoomUsersUpdateMsgHdlr with CreateBreakoutRoomsCmdMsgHdlr with EndAllBreakoutRoomsMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutRoomsListMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutRoomsListMsgHdlr.scala deleted file mode 100755 index 81e9c0f8a516..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/breakout/BreakoutRoomsListMsgHdlr.scala +++ /dev/null @@ -1,39 +0,0 @@ -package org.bigbluebutton.core.apps.breakout - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.{ MeetingActor, OutMsgRouter } - -trait BreakoutRoomsListMsgHdlr { - this: MeetingActor => - - val outGW: OutMsgRouter - - def handleBreakoutRoomsListMsg(msg: BreakoutRoomsListMsg, state: MeetingState2x): MeetingState2x = { - - def broadcastEvent(rooms: Vector[BreakoutRoomInfo], roomsReady: Boolean, sendInviteToModerators: Boolean): Unit = { - log.info("Sending breakout rooms list to {} with containing {} room(s)", props.meetingProp.intId, rooms.length) - - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, props.meetingProp.intId, msg.header.userId) - val envelope = BbbCoreEnvelope(BreakoutRoomsListEvtMsg.NAME, routing) - val header = BbbClientMsgHeader(BreakoutRoomsListEvtMsg.NAME, props.meetingProp.intId, msg.header.userId) - - val body = BreakoutRoomsListEvtMsgBody(msg.body.meetingId, rooms, roomsReady, sendInviteToModerators) - val event = BreakoutRoomsListEvtMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - outGW.send(msgEvent) - } - - for { - breakoutModel <- state.breakout - } yield { - val rooms = breakoutModel.rooms.values.toVector map { r => - new BreakoutRoomInfo(r.name, r.externalId, r.id, r.sequence, r.shortName, r.isDefaultName, r.freeJoin, Map(), r.captureNotes, r.captureSlides) - } - val ready = breakoutModel.hasAllStarted() - broadcastEvent(rooms, ready, breakoutModel.sendInviteToModerators) - } - - state - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/ChatApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/ChatApp2x.scala index dd00c9e0490a..86996aa6293d 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/ChatApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/ChatApp2x.scala @@ -3,10 +3,7 @@ package org.bigbluebutton.core.apps.chat import org.apache.pekko.actor.ActorContext class ChatApp2x(implicit val context: ActorContext) - extends GetChatHistoryReqMsgHdlr - with SendPublicMessagePubMsgHdlr - with SendPrivateMessagePubMsgHdlr - with ClearPublicChatHistoryPubMsgHdlr + extends ClearPublicChatHistoryPubMsgHdlr with UserTypingPubMsgHdlr { } diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/GetChatHistoryReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/GetChatHistoryReqMsgHdlr.scala deleted file mode 100755 index aaec9ff843ac..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/GetChatHistoryReqMsgHdlr.scala +++ /dev/null @@ -1,27 +0,0 @@ -package org.bigbluebutton.core.apps.chat - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.apps.ChatModel -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.running.{ LiveMeeting, LogHelper } - -trait GetChatHistoryReqMsgHdlr extends LogHelper { - - def handle(msg: GetChatHistoryReqMsg, liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - log.debug(" GOT CHAT HISTORY") - - def broadcastEvent(msg: GetChatHistoryReqMsg, history: Array[ChatMessageVO]): Unit = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, liveMeeting.props.meetingProp.intId, msg.header.userId) - val envelope = BbbCoreEnvelope(GetChatHistoryRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetChatHistoryRespMsg.NAME, liveMeeting.props.meetingProp.intId, msg.header.userId) - - val body = GetChatHistoryRespMsgBody(history) - val event = GetChatHistoryRespMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - bus.outGW.send(msgEvent) - } - - val history = ChatModel.getChatHistory(liveMeeting.chatModel) - broadcastEvent(msg, history) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPrivateMessagePubMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPrivateMessagePubMsgHdlr.scala deleted file mode 100755 index eabdffd07f6f..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPrivateMessagePubMsgHdlr.scala +++ /dev/null @@ -1,26 +0,0 @@ -package org.bigbluebutton.core.apps.chat - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.running.{ LiveMeeting, LogHelper } - -trait SendPrivateMessagePubMsgHdlr extends LogHelper { - - def handle(msg: SendPrivateMessagePubMsg, liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - log.debug("SENDING PRIVATE CHAT MESSAGE") - - def broadcastEvent(message: ChatMessageVO, userId: String): Unit = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, liveMeeting.props.meetingProp.intId, userId) - val envelope = BbbCoreEnvelope(SendPrivateMessageEvtMsg.NAME, routing) - val header = BbbClientMsgHeader(SendPrivateMessageEvtMsg.NAME, liveMeeting.props.meetingProp.intId, userId) - - val body = SendPrivateMessageEvtMsgBody(message) - val event = SendPrivateMessageEvtMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - bus.outGW.send(msgEvent) - } - - broadcastEvent(msg.body.message, msg.body.message.fromUserId) - broadcastEvent(msg.body.message, msg.body.message.toUserId) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPublicMessagePubMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPublicMessagePubMsgHdlr.scala deleted file mode 100755 index 0ff9c87c7570..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/chat/SendPublicMessagePubMsgHdlr.scala +++ /dev/null @@ -1,27 +0,0 @@ -package org.bigbluebutton.core.apps.chat - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.apps.ChatModel -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.running.{ LiveMeeting, LogHelper } - -trait SendPublicMessagePubMsgHdlr extends LogHelper { - - def handle(msg: SendPublicMessagePubMsg, liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - log.debug("SENDING CHAT MESSAGE") - - def broadcastEvent(msg: SendPublicMessagePubMsg, message: ChatMessageVO): Unit = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, liveMeeting.props.meetingProp.intId, msg.header.userId) - val envelope = BbbCoreEnvelope(SendPublicMessageEvtMsg.NAME, routing) - val header = BbbClientMsgHeader(SendPublicMessageEvtMsg.NAME, liveMeeting.props.meetingProp.intId, msg.header.userId) - - val body = SendPublicMessageEvtMsgBody(msg.body.message) - val event = SendPublicMessageEvtMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - bus.outGW.send(msgEvent) - } - - ChatModel.addNewChatMessage(liveMeeting.chatModel, msg.body.message) - broadcastEvent(msg, msg.body.message) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatMsgsReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatMsgsReqMsgHdlr.scala deleted file mode 100755 index 52af606052cc..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatMsgsReqMsgHdlr.scala +++ /dev/null @@ -1,40 +0,0 @@ -package org.bigbluebutton.core.apps.groupchats - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.LiveMeeting -import org.bigbluebutton.core.util.MarkdownUtil - -trait GetGroupChatMsgsReqMsgHdlr { - def handle(msg: GetGroupChatMsgsReqMsg, state: MeetingState2x, - liveMeeting: LiveMeeting, bus: MessageBus): MeetingState2x = { - - def buildGetGroupChatMsgsRespMsg(meetingId: String, userId: String, - msgs: Vector[GroupChatMsgToUser], chatId: String): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, meetingId, userId) - val envelope = BbbCoreEnvelope(GetGroupChatMsgsRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetGroupChatMsgsRespMsg.NAME, meetingId, userId) - - val body = GetGroupChatMsgsRespMsgBody(chatId, msgs) - val event = GetGroupChatMsgsRespMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - state.groupChats.find(msg.body.chatId) foreach { gc => - if (gc.access == GroupChatAccess.PUBLIC || gc.isUserMemberOf(msg.header.userId)) { - val msgs = gc.msgs.toVector map (m => GroupChatMsgToUser(m.id, m.createdOn, m.correlationId, - m.sender, m.chatEmphasizedText, m.message, MarkdownUtil.markdownToSafeHtml(m.message), - m.replyToMessageId, m.messageType, m.metadata)) - val respMsg = buildGetGroupChatMsgsRespMsg( - liveMeeting.props.meetingProp.intId, - msg.header.userId, msgs, gc.id - ) - bus.outGW.send(respMsg) - } - } - - state - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatsReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatsReqMsgHdlr.scala deleted file mode 100755 index 98ff166a75bb..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GetGroupChatsReqMsgHdlr.scala +++ /dev/null @@ -1,41 +0,0 @@ -package org.bigbluebutton.core.apps.groupchats - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.LiveMeeting - -trait GetGroupChatsReqMsgHdlr { - this: GroupChatHdlrs => - - def handle(msg: GetGroupChatsReqMsg, state: MeetingState2x, - liveMeeting: LiveMeeting, bus: MessageBus): MeetingState2x = { - - log.debug("RECEIVED GetGroupChatsReqMsg") - - def buildGetGroupChatsRespMsg(meetingId: String, userId: String, - allChats: Vector[GroupChatInfo]): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, meetingId, userId) - val envelope = BbbCoreEnvelope(GetGroupChatsRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetGroupChatsRespMsg.NAME, meetingId, userId) - - val body = GetGroupChatsRespMsgBody(allChats) - val event = GetGroupChatsRespMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - val publicChats = state.groupChats.findAllPublicChats() - val privateChats = state.groupChats.findAllPrivateChatsForUser(msg.header.userId) - val pubChats = publicChats map (pc => GroupChatInfo(pc.id, pc.access, pc.createdBy, pc.users)) - val privChats = privateChats map (pc => GroupChatInfo(pc.id, pc.access, pc.createdBy, pc.users)) - - val allChats = pubChats ++ privChats - - val respMsg = buildGetGroupChatsRespMsg(liveMeeting.props.meetingProp.intId, msg.header.userId, allChats) - - bus.outGW.send(respMsg) - - state - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GroupChatHdlrs.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GroupChatHdlrs.scala index 699ea54833af..b3c9997cb4be 100644 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GroupChatHdlrs.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/groupchats/GroupChatHdlrs.scala @@ -6,8 +6,6 @@ import org.apache.pekko.event.Logging class GroupChatHdlrs(implicit val context: ActorContext) extends CreateGroupChatReqMsgHdlr with CreateDefaultPublicGroupChat - with GetGroupChatMsgsReqMsgHdlr - with GetGroupChatsReqMsgHdlr with SendGroupChatMessageMsgHdlr with EditGroupChatMessageReqMsgHdlr with DeleteGroupChatMessageReqMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/GetCurrentLayoutReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/GetCurrentLayoutReqMsgHdlr.scala deleted file mode 100755 index 438248e23a3d..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/GetCurrentLayoutReqMsgHdlr.scala +++ /dev/null @@ -1,34 +0,0 @@ -package org.bigbluebutton.core.apps.layout - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core2.MeetingStatus2x -import org.bigbluebutton.core.models.Layouts -import org.bigbluebutton.core.running.{ LiveMeeting, OutMsgRouter } - -trait GetCurrentLayoutReqMsgHdlr { - this: LayoutApp2x => - - val liveMeeting: LiveMeeting - val outGW: OutMsgRouter - - def handleGetCurrentLayoutReqMsg(msg: GetCurrentLayoutReqMsg): Unit = { - - def broadcastEvent(msg: GetCurrentLayoutReqMsg): Unit = { - - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, liveMeeting.props.meetingProp.intId, msg.header.userId) - val envelope = BbbCoreEnvelope(GetCurrentLayoutRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetCurrentLayoutRespMsg.NAME, liveMeeting.props.meetingProp.intId, msg.header.userId) - - val body = GetCurrentLayoutRespMsgBody( - Layouts.getCurrentLayout(liveMeeting.layouts), - Layouts.getLayoutSetter(liveMeeting.layouts) - ) - val event = GetCurrentLayoutRespMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - - outGW.send(msgEvent) - } - - broadcastEvent(msg) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/LayoutApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/LayoutApp2x.scala index 9a4d0f752204..951f46204f80 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/LayoutApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/layout/LayoutApp2x.scala @@ -1,13 +1,16 @@ package org.bigbluebutton.core.apps.layout import org.bigbluebutton.core.models.{ Layouts, Roles, Users2x } -import org.bigbluebutton.core.running.MeetingActor +import org.bigbluebutton.core.running.{ LiveMeeting, MeetingActor } trait LayoutApp2x extends BroadcastLayoutMsgHdlr with BroadcastPushLayoutMsgHdlr - with SetScreenshareAsContentReqMsgHdlr - with GetCurrentLayoutReqMsgHdlr { + with SetScreenshareAsContentReqMsgHdlr { this: MeetingActor => + + // Declared here since GetCurrentLayoutReqMsgHdlr was removed; the sibling + // handler traits above resolve `liveMeeting` through this mixin. + val liveMeeting: LiveMeeting } diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/GetCurrentPollReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/GetCurrentPollReqMsgHdlr.scala deleted file mode 100755 index bd7f790be2c3..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/GetCurrentPollReqMsgHdlr.scala +++ /dev/null @@ -1,35 +0,0 @@ -package org.bigbluebutton.core.apps.polls - -import org.bigbluebutton.common2.domain.PollVO -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.models.Polls -import org.bigbluebutton.core.running.LiveMeeting - -trait GetCurrentPollReqMsgHdlr { - this: PollApp2x => - - def handle(msgIn: GetCurrentPollReqMsg, state: MeetingState2x, liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - - def broadcastEvent(msg: GetCurrentPollReqMsg, hasPoll: Boolean, pvo: Option[PollVO]): Unit = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, liveMeeting.props.meetingProp.intId, msg.header.userId) - val envelope = BbbCoreEnvelope(GetCurrentPollRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetCurrentPollRespMsg.NAME, liveMeeting.props.meetingProp.intId, msg.header.userId) - - val body = GetCurrentPollRespMsgBody(msg.header.userId, hasPoll, pvo) - val event = GetCurrentPollRespMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - bus.outGW.send(msgEvent) - } - - val pollVO = Polls.handleGetCurrentPollReqMsg(state, msgIn.header.userId, liveMeeting) - - pollVO match { - case Some(poll) => - broadcastEvent(msgIn, true, pollVO) - case None => - broadcastEvent(msgIn, false, None) - } - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/PollApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/PollApp2x.scala index 2e737c7e7bf4..7f2cbb320912 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/PollApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/polls/PollApp2x.scala @@ -4,8 +4,7 @@ import org.apache.pekko.actor.ActorContext import org.apache.pekko.event.Logging class PollApp2x(implicit val context: ActorContext) - extends GetCurrentPollReqMsgHdlr - with RespondToPollReqMsgHdlr + extends RespondToPollReqMsgHdlr with RespondToTypedPollReqMsgHdlr with ShowPollResultReqMsgHdlr with StartCustomPollReqMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/NewPresentationMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/NewPresentationMsgHdlr.scala deleted file mode 100755 index 63f4cb236678..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/NewPresentationMsgHdlr.scala +++ /dev/null @@ -1,22 +0,0 @@ -package org.bigbluebutton.core.apps.presentation - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.common2.domain.PresentationVO -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.running.{ LiveMeeting } - -trait NewPresentationMsgHdlr { - this: PresentationApp2x => - - def broadcastNewPresentationEvent(userId: String, presentation: PresentationVO, - liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, liveMeeting.props.meetingProp.intId, userId) - val envelope = BbbCoreEnvelope(NewPresentationEvtMsg.NAME, routing) - val header = BbbClientMsgHeader(NewPresentationEvtMsg.NAME, liveMeeting.props.meetingProp.intId, userId) - - val body = NewPresentationEvtMsgBody(presentation) - val event = NewPresentationEvtMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - bus.outGW.send(msgEvent) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PresentationApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PresentationApp2x.scala index 24ed60f01597..4dfc5d2150d3 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PresentationApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PresentationApp2x.scala @@ -5,23 +5,10 @@ import org.apache.pekko.event.Logging import org.bigbluebutton.core.apps.Presentation import org.bigbluebutton.core.running.LiveMeeting -class PresentationApp2x(implicit val context: ActorContext) - extends NewPresentationMsgHdlr - with PreuploadedPresentationsPubMsgHdlr { +class PresentationApp2x(implicit val context: ActorContext) { val log = Logging(context.system, getClass) - def processPreuploadedPresentations(liveMeeting: LiveMeeting, presentations: Vector[Presentation]) { - presentations.foreach(presentation => { - liveMeeting.presModel.addPresentation(presentation) - }) - - liveMeeting.presModel.getCurrentPresentation() match { - case Some(p) => // do nothing - case None => setCurrentPresentation(liveMeeting, presentations.head.id) - } - } - def setCurrentPresentation(liveMeeting: LiveMeeting, presentationId: String): Option[Presentation] = { liveMeeting.presModel.setCurrentPresentation(presentationId) } diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PreuploadedPresentationsPubMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PreuploadedPresentationsPubMsgHdlr.scala deleted file mode 100755 index 18b2159ba686..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentation/PreuploadedPresentationsPubMsgHdlr.scala +++ /dev/null @@ -1,39 +0,0 @@ -package org.bigbluebutton.core.apps.presentation - -import org.bigbluebutton.common2.domain.PageVO -import org.bigbluebutton.common2.msgs.PreuploadedPresentationsSysPubMsg -import org.bigbluebutton.core.apps.Presentation -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.running.{ LiveMeeting } - -trait PreuploadedPresentationsPubMsgHdlr { - this: PresentationApp2x => - - def handle( - msg: PreuploadedPresentationsSysPubMsg, - liveMeeting: LiveMeeting, bus: MessageBus - ): Unit = { - - val presos = new collection.mutable.HashMap[String, Presentation] - - msg.body.presentations.foreach { pres => - val pages = new collection.mutable.HashMap[String, PageVO]() - - pres.pages.foreach { p => - val page = new PageVO(p.id, p.num, p.thumbUri, p.txtUri, p.svgUri, p.current, p.xOffset, p.yOffset, - p.widthRatio, p.heightRatio) - pages += page.id -> page - } - - val pr = new Presentation(pres.id, pres.name, pres.current, - pages.toMap, pres.downloadable, pres.removable) - presos += pres.id -> pr - } - - processPreuploadedPresentations(liveMeeting, presos.values.toVector) - - msg.body.presentations foreach (presentation => { - broadcastNewPresentationEvent(msg.header.userId, presentation, liveMeeting, bus) - }) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/CreateNewPresentationPodPubMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/CreateNewPresentationPodPubMsgHdlr.scala deleted file mode 100755 index 90dc4bb94929..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/CreateNewPresentationPodPubMsgHdlr.scala +++ /dev/null @@ -1,43 +0,0 @@ -package org.bigbluebutton.core.apps.presentationpod - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.apps.{ PermissionCheck, RightsManagementTrait } -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.models.PresentationPod -import org.bigbluebutton.core.running.LiveMeeting -import org.bigbluebutton.core2.message.senders.MsgBuilder - -trait CreateNewPresentationPodPubMsgHdlr extends RightsManagementTrait { - this: PresentationPodHdlrs => - - def handle(msg: CreateNewPresentationPodPubMsg, state: MeetingState2x, - liveMeeting: LiveMeeting, bus: MessageBus): MeetingState2x = { - - if (permissionFailed( - PermissionCheck.MOD_LEVEL, - PermissionCheck.VIEWER_LEVEL, liveMeeting.users2x, msg.header.userId - )) { - val meetingId = liveMeeting.props.meetingProp.intId - val reason = "No permission to create new presentation pod." - PermissionCheck.ejectUserForFailedPermission(meetingId, msg.header.userId, reason, bus.outGW, liveMeeting) - state - } else { - - val resultPod: PresentationPod = PresentationPodsApp.createPresentationPod(msg.header.userId) - - val respMsg = MsgBuilder.buildCreateNewPresentationPodEvtMsg( - liveMeeting.props.meetingProp.intId, - resultPod.currentPresenter, - resultPod.id, - msg.header.userId - ) - bus.outGW.send(respMsg) - - val pods = state.presentationPodManager.addPod(resultPod) - - state.update(pods) - } - - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/GetAllPresentationPodsReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/GetAllPresentationPodsReqMsgHdlr.scala deleted file mode 100755 index ef52693c8a31..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/GetAllPresentationPodsReqMsgHdlr.scala +++ /dev/null @@ -1,44 +0,0 @@ -package org.bigbluebutton.core.apps.presentationpod - -import org.bigbluebutton.common2.domain.PresentationPodVO -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.apps.{ PermissionCheck, RightsManagementTrait } -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.LiveMeeting - -trait GetAllPresentationPodsReqMsgHdlr extends RightsManagementTrait { - this: PresentationPodHdlrs => - - def handle(msg: GetAllPresentationPodsReqMsg, state: MeetingState2x, - liveMeeting: LiveMeeting, bus: MessageBus): MeetingState2x = { - - if (permissionFailed(PermissionCheck.GUEST_LEVEL, PermissionCheck.VIEWER_LEVEL, liveMeeting.users2x, msg.header.userId)) { - val meetingId = liveMeeting.props.meetingProp.intId - val reason = "No permission to get all presentation pods from meeting." - PermissionCheck.ejectUserForFailedPermission(meetingId, msg.header.userId, reason, bus.outGW, liveMeeting) - state - } else { - def buildGetAllPresentationPodsRespMsg(pods: Vector[PresentationPodVO], requesterId: String): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, liveMeeting.props.meetingProp.intId, requesterId) - val envelope = BbbCoreEnvelope(GetAllPresentationPodsRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetAllPresentationPodsRespMsg.NAME, liveMeeting.props.meetingProp.intId, requesterId) - - val body = GetAllPresentationPodsRespMsgBody(pods) - val event = GetAllPresentationPodsRespMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - val pods = PresentationPodsApp.getAllPresentationPodsInMeeting(state) - - val podsVO = pods.map(pod => PresentationPodsApp.translatePresentationPodToVO(pod)) - val event = buildGetAllPresentationPodsRespMsg(podsVO, msg.header.userId) - - bus.outGW.send(event) - - state - } - - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/PresentationPodHdlrs.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/PresentationPodHdlrs.scala index 6858b64491dd..04d5d8d9bb93 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/PresentationPodHdlrs.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/PresentationPodHdlrs.scala @@ -4,9 +4,7 @@ import org.apache.pekko.actor.ActorContext import org.apache.pekko.event.Logging class PresentationPodHdlrs(implicit val context: ActorContext) - extends CreateNewPresentationPodPubMsgHdlr - with CreateDefaultPresentationPod - with GetAllPresentationPodsReqMsgHdlr + extends CreateDefaultPresentationPod with SetCurrentPresentationPubMsgHdlr with PresentationConversionCompletedSysPubMsgHdlr with PdfConversionInvalidErrorSysPubMsgHdlr @@ -23,8 +21,6 @@ class PresentationPodHdlrs(implicit val context: ActorContext) with PresentationUploadTokenReqMsgHdlr with MakePresentationDownloadReqMsgHdlr with ResizeAndMovePagePubMsgHdlr - with SlideResizedPubMsgHdlr - with RemovePresentationPodPubMsgHdlr with PresentationPageConvertedSysMsgHdlr with PresentationPageConversionStartedSysMsgHdlr with PresentationConversionEndedSysMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/RemovePresentationPodPubMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/RemovePresentationPodPubMsgHdlr.scala deleted file mode 100755 index 119d50896cd2..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/RemovePresentationPodPubMsgHdlr.scala +++ /dev/null @@ -1,52 +0,0 @@ -package org.bigbluebutton.core.apps.presentationpod - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.apps.{ PermissionCheck, RightsManagementTrait } -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.LiveMeeting - -trait RemovePresentationPodPubMsgHdlr extends RightsManagementTrait { - this: PresentationPodHdlrs => - - def handle(msg: RemovePresentationPodPubMsg, state: MeetingState2x, - liveMeeting: LiveMeeting, bus: MessageBus): MeetingState2x = { - - if (filterPresentationMessage(liveMeeting.users2x, msg.header.userId) && - permissionFailed(PermissionCheck.MOD_LEVEL, PermissionCheck.PRESENTER_LEVEL, liveMeeting.users2x, msg.header.userId)) { - val meetingId = liveMeeting.props.meetingProp.intId - val reason = "No permission to remove presentation pod from meeting." - PermissionCheck.ejectUserForFailedPermission(meetingId, msg.header.userId, reason, bus.outGW, liveMeeting) - state - } else { - def buildRemovePresentationPodEvtMsg(meetingId: String, podId: String): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, msg.header.userId) - val envelope = BbbCoreEnvelope(RemovePresentationPodEvtMsg.NAME, routing) - val header = BbbClientMsgHeader(RemovePresentationPodEvtMsg.NAME, meetingId, msg.header.userId) - - val body = RemovePresentationPodEvtMsgBody(podId) - val event = RemovePresentationPodEvtMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - val newState = for { - pod <- PresentationPodsApp.getPresentationPod(state, msg.body.podId) - } yield { - val event = buildRemovePresentationPodEvtMsg(liveMeeting.props.meetingProp.intId, pod.id) - - bus.outGW.send(event) - - val pods = state.presentationPodManager.removePod(pod.id) - state.update(pods) - } - - newState match { - case Some(ns) => ns - case None => state - } - - } - - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/SlideResizedPubMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/SlideResizedPubMsgHdlr.scala deleted file mode 100755 index 445e96940097..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/presentationpod/SlideResizedPubMsgHdlr.scala +++ /dev/null @@ -1,19 +0,0 @@ -package org.bigbluebutton.core.apps.presentationpod - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.apps.RightsManagementTrait -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.db.PresPageDAO -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.LiveMeeting - -trait SlideResizedPubMsgHdlr extends RightsManagementTrait { - this: PresentationPodHdlrs => - - def handle(msg: SlideResizedPubMsg, state: MeetingState2x, - liveMeeting: LiveMeeting, bus: MessageBus) = { - PresPageDAO.updateSlidePosition(msg.body.pageId, msg.body.width, msg.body.height, - msg.body.xOffset, msg.body.yOffset, msg.body.widthRatio, msg.body.heightRatio) - state - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/GetScreenshareStatusReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/GetScreenshareStatusReqMsgHdlr.scala deleted file mode 100755 index ae078c73ffca..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/GetScreenshareStatusReqMsgHdlr.scala +++ /dev/null @@ -1,49 +0,0 @@ -package org.bigbluebutton.core.apps.screenshare - -import org.bigbluebutton.core.running.LiveMeeting -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.apps.ScreenshareModel -import org.bigbluebutton.core.bus.MessageBus - -trait GetScreenshareStatusReqMsgHdlr { - this: ScreenshareApp2x => - - def handle(msg: GetScreenshareStatusReqMsg, liveMeeting: LiveMeeting, bus: MessageBus) { - - def broadcastEvent(meetingId: String, userId: String): BbbCommonEnvCoreMsg = { - - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, meetingId, userId) - val envelope = BbbCoreEnvelope(ScreenshareRtmpBroadcastStartedEvtMsg.NAME, routing) - val header = BbbClientMsgHeader( - ScreenshareRtmpBroadcastStartedEvtMsg.NAME, - liveMeeting.props.meetingProp.intId, "not-used" - ) - - val voiceConf = ScreenshareModel.getVoiceConf(liveMeeting.screenshareModel) - val screenshareConf = ScreenshareModel.getScreenshareConf(liveMeeting.screenshareModel) - val ownerUserId = ScreenshareModel.getUserId(liveMeeting.screenshareModel) - val stream = ScreenshareModel.getRTMPBroadcastingUrl(liveMeeting.screenshareModel) - val vidWidth = ScreenshareModel.getScreenshareVideoWidth(liveMeeting.screenshareModel) - val vidHeight = ScreenshareModel.getScreenshareVideoHeight(liveMeeting.screenshareModel) - val timestamp = ScreenshareModel.getTimestamp(liveMeeting.screenshareModel) - val hasAudio = ScreenshareModel.getHasAudio(liveMeeting.screenshareModel) - val contentType = ScreenshareModel.getContentType(liveMeeting.screenshareModel) - - val body = ScreenshareRtmpBroadcastStartedEvtMsgBody(voiceConf, screenshareConf, ownerUserId, - stream, vidWidth, vidHeight, timestamp, hasAudio, contentType) - val event = ScreenshareRtmpBroadcastStartedEvtMsg(header, body) - BbbCommonEnvCoreMsg(envelope, event) - } - - log.info("handleGetScreenshareStatusReqMsg: isBroadcastingRTMP=" + - ScreenshareModel.isBroadcastingRTMP(liveMeeting.screenshareModel) + - " URL:" + ScreenshareModel.getRTMPBroadcastingUrl(liveMeeting.screenshareModel)) - - // only reply if there is an ongoing stream - if (ScreenshareModel.isBroadcastingRTMP(liveMeeting.screenshareModel)) { - - val msgEvent = broadcastEvent(liveMeeting.props.meetingProp.intId, msg.body.requestedBy) - bus.outGW.send(msgEvent) - } - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/ScreenshareApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/ScreenshareApp2x.scala index 04cf5360ca0d..225a05cf21f8 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/ScreenshareApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/screenshare/ScreenshareApp2x.scala @@ -49,8 +49,7 @@ object ScreenshareApp2x { } class ScreenshareApp2x(implicit val context: ActorContext) - extends GetScreenshareStatusReqMsgHdlr - with ScreenshareRtmpBroadcastStartedVoiceConfEvtMsgHdlr + extends ScreenshareRtmpBroadcastStartedVoiceConfEvtMsgHdlr with ScreenshareRtmpBroadcastStoppedVoiceConfEvtMsgHdlr { val log = Logging(context.system, getClass) diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/EjectUserFromMeetingCmdMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/EjectUserFromMeetingCmdMsgHdlr.scala index d0b65c0140da..e9c8f162b37b 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/EjectUserFromMeetingCmdMsgHdlr.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/EjectUserFromMeetingCmdMsgHdlr.scala @@ -96,33 +96,3 @@ trait EjectUserFromMeetingCmdMsgHdlr extends RightsManagementTrait { } } -trait EjectUserFromMeetingSysMsgHdlr { - this: UsersApp => - - val liveMeeting: LiveMeeting - val outGW: OutMsgRouter - - def handleEjectUserFromMeetingSysMsg(msg: EjectUserFromMeetingSysMsg) { - val meetingId = liveMeeting.props.meetingProp.intId - val userId = msg.body.userId - val ejectedBy = msg.body.ejectedBy - - val reason = "user ejected by a component on system" - UsersApp.ejectUserFromMeeting( - outGW, - liveMeeting, - userId, - ejectedBy, - reason, - EjectReasonCode.SYSTEM_EJECT_USER, - ban = false - ) - - // Force reconnection with graphql to refresh permissions - for { - regUser <- RegisteredUsers.findWithUserId(userId, liveMeeting.registeredUsers) - } yield { - GraphqlMiddleware.requestGraphqlReconnection(regUser.sessionToken, EjectReasonCode.SYSTEM_EJECT_USER) - } - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/LockUsersInMeetingCmdMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/LockUsersInMeetingCmdMsgHdlr.scala deleted file mode 100755 index 77c2220ca2ad..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/LockUsersInMeetingCmdMsgHdlr.scala +++ /dev/null @@ -1,42 +0,0 @@ -package org.bigbluebutton.core.apps.users - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.models.Users2x -import org.bigbluebutton.core.running.{ MeetingActor, OutMsgRouter } -import org.bigbluebutton.core.apps.{ PermissionCheck, RightsManagementTrait } - -trait LockUsersInMeetingCmdMsgHdlr extends RightsManagementTrait { - this: MeetingActor => - - val outGW: OutMsgRouter - - def handleLockUsersInMeetingCmdMsg(msg: LockUsersInMeetingCmdMsg) { - - def build(meetingId: String, userId: String, lockedBy: String, locked: Boolean): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, userId) - val envelope = BbbCoreEnvelope(UserLockedInMeetingEvtMsg.NAME, routing) - val body = UserLockedInMeetingEvtMsgBody(userId, locked, lockedBy) - val header = BbbClientMsgHeader(UserLockedInMeetingEvtMsg.NAME, meetingId, userId) - val event = UserLockedInMeetingEvtMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - if (permissionFailed(PermissionCheck.MOD_LEVEL, PermissionCheck.VIEWER_LEVEL, liveMeeting.users2x, msg.header.userId)) { - val meetingId = liveMeeting.props.meetingProp.intId - val reason = "No permission to lock users in meeting." - PermissionCheck.ejectUserForFailedPermission(meetingId, msg.header.userId, reason, outGW, liveMeeting) - } else { - val usersToLock = Users2x.findAll(liveMeeting.users2x).filter(u => !msg.body.except.toSet(u)) - usersToLock foreach { utl => - for { - uvo <- Users2x.setUserLocked(liveMeeting.users2x, utl.intId, msg.body.lock) - } yield { - log.info("Lock user. meetingId=" + props.meetingProp.intId + " userId=" + uvo.intId + " locked=" + uvo.locked + " performedByUserId=" + msg.body.lockedBy) - val event = build(props.meetingProp.intId, uvo.intId, msg.body.lockedBy, uvo.locked) - outGW.send(event) - } - } - } - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/RecordAndClearPreviousMarkersCmdMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/RecordAndClearPreviousMarkersCmdMsgHdlr.scala deleted file mode 100644 index 0589969a5772..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/RecordAndClearPreviousMarkersCmdMsgHdlr.scala +++ /dev/null @@ -1,48 +0,0 @@ -package org.bigbluebutton.core.apps.users - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.db.MeetingRecordingDAO -import org.bigbluebutton.core.domain.MeetingState2x -import org.bigbluebutton.core.running.{ LiveMeeting, OutMsgRouter } -import org.bigbluebutton.core2.MeetingStatus2x -import org.bigbluebutton.core.util.TimeUtil -import org.bigbluebutton.core2.message.senders.MsgBuilder - -trait RecordAndClearPreviousMarkersCmdMsgHdlr { - this: UsersApp => - - val liveMeeting: LiveMeeting - val outGW: OutMsgRouter - - def handleRecordAndClearPreviousMarkersCmdMsg(msg: RecordAndClearPreviousMarkersCmdMsg, state: MeetingState2x): MeetingState2x = { - log.info("Set a new recording marker and clear previous ones. meetingId=" + liveMeeting.props.meetingProp.intId + " recording=" + msg.body.recording) - - def buildRecordingStatusChangedEvtMsg(meetingId: String, userId: String, recording: Boolean): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, userId) - val envelope = BbbCoreEnvelope(RecordingStatusChangedEvtMsg.NAME, routing) - val body = RecordingStatusChangedEvtMsgBody(recording, userId) - val header = BbbClientMsgHeader(RecordingStatusChangedEvtMsg.NAME, meetingId, userId) - val event = RecordingStatusChangedEvtMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - // Do not allow stop recording and clear previous markers - if (liveMeeting.props.recordProp.allowStartStopRecording && - MeetingStatus2x.isRecording(liveMeeting.status) != msg.body.recording) { - - MeetingStatus2x.recordingStarted(liveMeeting.status) - MeetingRecordingDAO.insertRecording(liveMeeting.props.meetingProp.intId, msg.body.setBy) - - val tracker = state.recordingTracker.resetTimer(TimeUtil.timeNowInMs()) - val event = buildRecordingStatusChangedEvtMsg(liveMeeting.props.meetingProp.intId, msg.body.setBy, msg.body.recording) - outGW.send(event) - - outGW.send(MsgBuilder.buildRecordStatusResetSysMsg(liveMeeting.props.meetingProp.intId, msg.body.recording, msg.body.setBy)) - - state.update(tracker) - } else { - state - } - } -} 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 e4da4560907b..8e18a055e05b 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 @@ -225,7 +225,6 @@ class UsersApp( with SetUserSpeechOptionsMsgHdlr with LogoutAndEndMeetingCmdMsgHdlr with SetRecordingStatusCmdMsgHdlr - with RecordAndClearPreviousMarkersCmdMsgHdlr with GetRecordingStatusReqMsgHdlr with AssignPresenterReqMsgHdlr with ChangeUserPinStateReqMsgHdlr @@ -235,7 +234,6 @@ class UsersApp( with ChangeUserRaiseHandReqMsgHdlr with ChangeUserAwayReqMsgHdlr with EjectUserFromMeetingCmdMsgHdlr - with EjectUserFromMeetingSysMsgHdlr with MuteUserCmdMsgHdlr { val log = Logging(context.system, getClass) diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp2x.scala index 9c5442a80a8c..b0d2ea4067cc 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp2x.scala @@ -6,7 +6,6 @@ trait UsersApp2x extends UserLeaveReqMsgHdlr with LockUserInMeetingCmdMsgHdlr with ChangeUserLockSettingsInMeetingCmdMsgHdlr - with LockUsersInMeetingCmdMsgHdlr with ClearAllUsersReactionCmdMsgHdlr with GenerateLiveKitTokenRespMsgHdlr with LiveKitParticipantLeftEvtMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/GetWebcamsOnlyForModeratorReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/GetWebcamsOnlyForModeratorReqMsgHdlr.scala deleted file mode 100644 index 21afe564e9ab..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/GetWebcamsOnlyForModeratorReqMsgHdlr.scala +++ /dev/null @@ -1,33 +0,0 @@ -package org.bigbluebutton.core.apps.webcam - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.running.LiveMeeting -import org.bigbluebutton.core2.MeetingStatus2x - -trait GetWebcamsOnlyForModeratorReqMsgHdlr { - this: WebcamApp2x => - - def handle( - msg: GetWebcamsOnlyForModeratorReqMsg, - liveMeeting: LiveMeeting, - bus: MessageBus - ) { - val meetingId = liveMeeting.props.meetingProp.intId - - def broadcastEvent(meetingId: String, userId: String, webcamsOnlyForModerator: Boolean) { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, meetingId, userId) - val envelope = BbbCoreEnvelope(GetWebcamsOnlyForModeratorRespMsg.NAME, routing) - val body = GetWebcamsOnlyForModeratorRespMsgBody(webcamsOnlyForModerator, userId) - val header = BbbClientMsgHeader(GetWebcamsOnlyForModeratorRespMsg.NAME, meetingId, userId) - val event = GetWebcamsOnlyForModeratorRespMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - - bus.outGW.send(msgEvent) - } - - val webcamsOnlyForModerator = MeetingStatus2x.webcamsOnlyForModeratorEnabled(liveMeeting.status) - - broadcastEvent(meetingId, msg.body.requestedBy, webcamsOnlyForModerator) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/WebcamApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/WebcamApp2x.scala index e8d281edcfbb..c864ac539851 100644 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/WebcamApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/webcam/WebcamApp2x.scala @@ -10,7 +10,6 @@ class WebcamApp2x(implicit val context: ActorContext) with EjectUserCamerasCmdMsgHdlr with GetCamBroadcastPermissionReqMsgHdlr with GetCamSubscribePermissionReqMsgHdlr - with GetWebcamsOnlyForModeratorReqMsgHdlr with UpdateWebcamsOnlyForModeratorCmdMsgHdlr with UserBroadcastCamStartMsgHdlr with UserBroadcastCamStopMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/ClientToServerLatencyTracerMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/ClientToServerLatencyTracerMsgHdlr.scala deleted file mode 100755 index ce664b93b9cf..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/ClientToServerLatencyTracerMsgHdlr.scala +++ /dev/null @@ -1,26 +0,0 @@ -package org.bigbluebutton.core.apps.whiteboard - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.running.{ MeetingActor, OutMsgRouter } - -trait ClientToServerLatencyTracerMsgHdlr { - this: MeetingActor => - - val outGW: OutMsgRouter - - def handleClientToServerLatencyTracerMsg(msg: ClientToServerLatencyTracerMsg): Unit = { - - def broadcastEvent(): Unit = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, props.meetingProp.intId, msg.header.userId) - val envelope = BbbCoreEnvelope(ServerToClientLatencyTracerMsg.NAME, routing) - val header = BbbClientMsgHeader(ServerToClientLatencyTracerMsg.NAME, props.meetingProp.intId, msg.header.userId) - - val body = ServerToClientLatencyTracerMsgBody(msg.body.timestampUTC, msg.body.rtt, msg.body.senderId) - val event = ServerToClientLatencyTracerMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - outGW.send(msgEvent) - } - - broadcastEvent() - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/GetWhiteboardAnnotationsReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/GetWhiteboardAnnotationsReqMsgHdlr.scala deleted file mode 100755 index ddf5567aeca3..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/GetWhiteboardAnnotationsReqMsgHdlr.scala +++ /dev/null @@ -1,36 +0,0 @@ -package org.bigbluebutton.core.apps.whiteboard - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.bus.MessageBus -import org.bigbluebutton.core.models.Users2x -import org.bigbluebutton.core.running.LiveMeeting - -trait GetWhiteboardAnnotationsReqMsgHdlr { - this: WhiteboardApp2x => - - def handle(msg: GetWhiteboardAnnotationsReqMsg, liveMeeting: LiveMeeting, bus: MessageBus): Unit = { - - def broadcastEvent(msg: GetWhiteboardAnnotationsReqMsg, history: Array[AnnotationVO], multiUser: Array[String]): Unit = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, liveMeeting.props.meetingProp.intId, msg.header.userId) - - val envelope = BbbCoreEnvelope(GetWhiteboardAnnotationsRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetWhiteboardAnnotationsRespMsg.NAME, liveMeeting.props.meetingProp.intId, msg.header.userId) - - val body = GetWhiteboardAnnotationsRespMsgBody(msg.body.whiteboardId, history, multiUser) - val event = GetWhiteboardAnnotationsRespMsg(header, body) - val msgEvent = BbbCommonEnvCoreMsg(envelope, event) - bus.outGW.send(msgEvent) - } - - val whiteboardId = msg.body.whiteboardId - - val history = getWhiteboardAnnotations(whiteboardId, liveMeeting) - val multiUser = { - Users2x - .findAll(liveMeeting.users2x) - .filter(_.whiteboardWriteAccess) - .map(u => u.intId) - }.toArray - broadcastEvent(msg, history, multiUser) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/WhiteboardApp2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/WhiteboardApp2x.scala index 8c5ddf1b0628..968c7f4ee635 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/WhiteboardApp2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/whiteboard/WhiteboardApp2x.scala @@ -13,8 +13,7 @@ case class Whiteboard( class WhiteboardApp2x(implicit val context: ActorContext) extends SendCursorPositionPubMsgHdlr with DeleteWhiteboardAnnotationsPubMsgHdlr - with SendWhiteboardAnnotationsPubMsgHdlr - with GetWhiteboardAnnotationsReqMsgHdlr { + with SendWhiteboardAnnotationsPubMsgHdlr { val log = Logging(context.system, getClass) diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/models/Polls.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/models/Polls.scala index 9fc076d3ab2f..6f214259843b 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/models/Polls.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/models/Polls.scala @@ -148,28 +148,6 @@ object Polls { } - def handleGetCurrentPollReqMsg(state: MeetingState2x, requesterId: String, lm: LiveMeeting): Option[PollVO] = { - val poll = for { - pod <- state.presentationPodManager.getDefaultPod() - pres <- pod.getCurrentPresentation() - page <- PresentationInPod.getCurrentPage(pres) - curPoll <- getRunningPollThatStartsWith(page.id, lm.polls) - } yield curPoll - - poll match { - case Some(p) => { - if (p.started && p.stopped && p.showResult) { - Some(p) - } else { - None - } - } - case None => { - None - } - } - } - def handleRespondToPollReqMsg(requesterId: String, pollId: String, questionId: Int, answerIds: Seq[Int], lm: LiveMeeting): Option[(String, SimplePollResultOutVO)] = { 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 b55e7e16659c..e4cec2e7e58f 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 @@ -67,30 +67,18 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[UserJoinMeetingReqMsg](envelope, jsonNode) case DestroyMeetingSysCmdMsg.NAME => route[DestroyMeetingSysCmdMsg](meetingManagerChannel, envelope, jsonNode) - case EjectUserFromMeetingSysMsg.NAME => - routeGenericMsg[EjectUserFromMeetingSysMsg](envelope, jsonNode) // Guests - case GetGuestsWaitingApprovalReqMsg.NAME => - routeGenericMsg[GetGuestsWaitingApprovalReqMsg](envelope, jsonNode) case GuestsWaitingApprovedMsg.NAME => routeGenericMsg[GuestsWaitingApprovedMsg](envelope, jsonNode) case SetGuestPolicyCmdMsg.NAME => routeGenericMsg[SetGuestPolicyCmdMsg](envelope, jsonNode) - case GetGuestPolicyReqMsg.NAME => - routeGenericMsg[GetGuestPolicyReqMsg](envelope, jsonNode) case SetGuestLobbyMessageCmdMsg.NAME => routeGenericMsg[SetGuestLobbyMessageCmdMsg](envelope, jsonNode) case SetPrivateGuestLobbyMessageCmdMsg.NAME => routeGenericMsg[SetPrivateGuestLobbyMessageCmdMsg](envelope, jsonNode) // Users - case AddUserToPresenterGroupCmdMsg.NAME => - routeGenericMsg[AddUserToPresenterGroupCmdMsg](envelope, jsonNode) - case RemoveUserFromPresenterGroupCmdMsg.NAME => - routeGenericMsg[RemoveUserFromPresenterGroupCmdMsg](envelope, jsonNode) - case GetPresenterGroupReqMsg.NAME => - routeGenericMsg[GetPresenterGroupReqMsg](envelope, jsonNode) case UserActivitySignCmdMsg.NAME => routeGenericMsg[UserActivitySignCmdMsg](envelope, jsonNode) case ChangeUserPinStateReqMsg.NAME => @@ -120,8 +108,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[StopPollReqMsg](envelope, jsonNode) case ShowPollResultReqMsg.NAME => routeGenericMsg[ShowPollResultReqMsg](envelope, jsonNode) - case GetCurrentPollReqMsg.NAME => - routeGenericMsg[GetCurrentPollReqMsg](envelope, jsonNode) case RespondToPollReqMsg.NAME => routeGenericMsg[RespondToPollReqMsg](envelope, jsonNode) case RespondToTypedPollReqMsg.NAME => @@ -146,8 +132,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[CamBroadcastStoppedInSfuEvtMsg](envelope, jsonNode) case EjectUserCamerasCmdMsg.NAME => routeGenericMsg[EjectUserCamerasCmdMsg](envelope, jsonNode) - case GetWebcamsOnlyForModeratorReqMsg.NAME => - routeGenericMsg[GetWebcamsOnlyForModeratorReqMsg](envelope, jsonNode) case UpdateWebcamsOnlyForModeratorCmdMsg.NAME => routeGenericMsg[UpdateWebcamsOnlyForModeratorCmdMsg](envelope, jsonNode) @@ -216,8 +200,6 @@ class ReceivedJsonMsgHandlerActor( routeVoiceMsg[UserDisconnectedFromGlobalAudioMsg](envelope, jsonNode) case MuteMeetingCmdMsg.NAME => routeGenericMsg[MuteMeetingCmdMsg](envelope, jsonNode) - case IsMeetingMutedReqMsg.NAME => - routeGenericMsg[IsMeetingMutedReqMsg](envelope, jsonNode) case AudioFloorChangedVoiceConfEvtMsg.NAME => routeVoiceMsg[AudioFloorChangedVoiceConfEvtMsg](envelope, jsonNode) case CheckRunningAndRecordingVoiceConfEvtMsg.NAME => @@ -246,8 +228,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[EjectUserFromVoiceConfRespMsg](envelope, jsonNode) // Breakout rooms - case BreakoutRoomsListMsg.NAME => - routeGenericMsg[BreakoutRoomsListMsg](envelope, jsonNode) case CreateBreakoutRoomsCmdMsg.NAME => routeGenericMsg[CreateBreakoutRoomsCmdMsg](envelope, jsonNode) case RequestBreakoutJoinURLReqMsg.NAME => @@ -268,8 +248,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[BreakoutRoomCallModeratorReqMsg](envelope, jsonNode) // Layout - case GetCurrentLayoutReqMsg.NAME => - routeGenericMsg[GetCurrentLayoutReqMsg](envelope, jsonNode) case BroadcastLayoutMsg.NAME => routeGenericMsg[BroadcastLayoutMsg](envelope, jsonNode) case BroadcastPushLayoutMsg.NAME => @@ -299,10 +277,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[DeleteWhiteboardAnnotationsPubMsg](envelope, jsonNode) case SendWhiteboardAnnotationsPubMsg.NAME => routeGenericMsg[SendWhiteboardAnnotationsPubMsg](envelope, jsonNode) - case GetWhiteboardAnnotationsReqMsg.NAME => - routeGenericMsg[GetWhiteboardAnnotationsReqMsg](envelope, jsonNode) - case ClientToServerLatencyTracerMsg.NAME => - routeGenericMsg[ClientToServerLatencyTracerMsg](envelope, jsonNode) // Presentation case SetCurrentPresentationPubMsg.NAME => @@ -315,18 +289,12 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[SetPresentationFitToWidthCmdMsg](envelope, jsonNode) case ResizeAndMovePagePubMsg.NAME => routeGenericMsg[ResizeAndMovePagePubMsg](envelope, jsonNode) - case SlideResizedPubMsg.NAME => - routeGenericMsg[SlideResizedPubMsg](envelope, jsonNode) case RemovePresentationPubMsg.NAME => routeGenericMsg[RemovePresentationPubMsg](envelope, jsonNode) case SetPresentationDownloadablePubMsg.NAME => routeGenericMsg[SetPresentationDownloadablePubMsg](envelope, jsonNode) case PresentationUploadTokenReqMsg.NAME => routeGenericMsg[PresentationUploadTokenReqMsg](envelope, jsonNode) - case GetAllPresentationPodsReqMsg.NAME => - routeGenericMsg[GetAllPresentationPodsReqMsg](envelope, jsonNode) - case PreuploadedPresentationsSysPubMsg.NAME => - routeGenericMsg[PreuploadedPresentationsSysPubMsg](envelope, jsonNode) case PresentationUploadedFileTooLargeErrorSysPubMsg.NAME => routeGenericMsg[PresentationUploadedFileTooLargeErrorSysPubMsg](envelope, jsonNode) case PresentationHasInvalidMimeTypeErrorSysPubMsg.NAME => @@ -371,10 +339,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[PresAnnStatusMsg](envelope, jsonNode) // Presentation Pods - case CreateNewPresentationPodPubMsg.NAME => - routeGenericMsg[CreateNewPresentationPodPubMsg](envelope, jsonNode) - case RemovePresentationPodPubMsg.NAME => - routeGenericMsg[RemovePresentationPodPubMsg](envelope, jsonNode) // Caption case AddCaptionLocalePubMsg.NAME => @@ -383,12 +347,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[CaptionSubmitTranscriptPubMsg](envelope, jsonNode) // Chat - case GetChatHistoryReqMsg.NAME => - routeGenericMsg[GetChatHistoryReqMsg](envelope, jsonNode) - case SendPublicMessagePubMsg.NAME => - routeGenericMsg[SendPublicMessagePubMsg](envelope, jsonNode) - case SendPrivateMessagePubMsg.NAME => - routeGenericMsg[SendPrivateMessagePubMsg](envelope, jsonNode) case ClearPublicChatHistoryPubMsg.NAME => routeGenericMsg[ClearPublicChatHistoryPubMsg](envelope, jsonNode) case UserTypingPubMsg.NAME => @@ -401,12 +359,8 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[LogoutAndEndMeetingCmdMsg](envelope, jsonNode) case SetRecordingStatusCmdMsg.NAME => routeGenericMsg[SetRecordingStatusCmdMsg](envelope, jsonNode) - case RecordAndClearPreviousMarkersCmdMsg.NAME => - routeGenericMsg[RecordAndClearPreviousMarkersCmdMsg](envelope, jsonNode) case GetRecordingStatusReqMsg.NAME => routeGenericMsg[GetRecordingStatusReqMsg](envelope, jsonNode) - case GetScreenshareStatusReqMsg.NAME => - routeGenericMsg[GetScreenshareStatusReqMsg](envelope, jsonNode) // Lock settings case LockUserInMeetingCmdMsg.NAME => @@ -415,8 +369,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[ChangeUserLockSettingsInMeetingCmdMsg](envelope, jsonNode) case ChangeLockSettingsInMeetingCmdMsg.NAME => routeGenericMsg[ChangeLockSettingsInMeetingCmdMsg](envelope, jsonNode) - case LockUsersInMeetingCmdMsg.NAME => - routeGenericMsg[LockUsersInMeetingCmdMsg](envelope, jsonNode) // Screenshare case ScreenshareRtmpBroadcastStartedVoiceConfEvtMsg.NAME => @@ -435,8 +387,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[TranscriptionProviderErrorMsg](envelope, jsonNode) // GroupChats - case GetGroupChatsReqMsg.NAME => - routeGenericMsg[GetGroupChatsReqMsg](envelope, jsonNode) case SendGroupChatMessageMsg.NAME => routeGenericMsg[SendGroupChatMessageMsg](envelope, jsonNode) case SendGroupChatMessageFromApiSysPubMsg.NAME => @@ -453,8 +403,6 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[SendGroupChatMessageReactionReqMsg](envelope, jsonNode) case DeleteGroupChatMessageReactionReqMsg.NAME => routeGenericMsg[DeleteGroupChatMessageReactionReqMsg](envelope, jsonNode) - case GetGroupChatMsgsReqMsg.NAME => - routeGenericMsg[GetGroupChatMsgsReqMsg](envelope, jsonNode) case CreateGroupChatReqMsg.NAME => routeGenericMsg[CreateGroupChatReqMsg](envelope, jsonNode) case SetGroupChatLastSeenReqMsg.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 bb9b71d1ea40..25e3dbaae01b 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 @@ -6,7 +6,6 @@ import org.bigbluebutton.SystemConfiguration import org.bigbluebutton.core.apps.groupchats.GroupChatHdlrs import org.bigbluebutton.core.apps.presentationpod._ import org.bigbluebutton.core.apps.users._ -import org.bigbluebutton.core.apps.whiteboard.ClientToServerLatencyTracerMsgHdlr import org.bigbluebutton.core.domain._ import org.bigbluebutton.core.util.TimeUtil import org.bigbluebutton.common2.domain.{ DefaultProps, LockSettingsProps } @@ -90,7 +89,6 @@ class MeetingActor( with UserDisconnectedFromGlobalAudioMsgHdlr with MuteAllExceptPresentersCmdMsgHdlr with MuteMeetingCmdMsgHdlr - with IsMeetingMutedReqMsgHdlr with GetGlobalAudioPermissionReqMsgHdlr with GetMicrophonePermissionReqMsgHdlr with GetScreenBroadcastPermissionReqMsgHdlr @@ -100,7 +98,6 @@ class MeetingActor( with EndMeetingSysCmdMsgHdlr with DestroyMeetingSysCmdMsgHdlr with ChangeLockSettingsInMeetingCmdMsgHdlr - with ClientToServerLatencyTracerMsgHdlr with UserActivitySignCmdMsgHdlr { object CheckVoiceRecordingInternalMsg @@ -458,7 +455,6 @@ class MeetingActor( private def handleBbbCommonEnvCoreMsg(msg: BbbCommonEnvCoreMsg): Unit = { msg.core match { - case m: ClientToServerLatencyTracerMsg => handleClientToServerLatencyTracerMsg(m) case m: CheckRunningAndRecordingVoiceConfEvtMsg => handleCheckRunningAndRecordingVoiceConfEvtMsg(m) case _ => handleMessageThatAffectsInactivity(msg) } @@ -484,9 +480,6 @@ class MeetingActor( case m: SetRecordingStatusCmdMsg => state = usersApp.handleSetRecordingStatusCmdMsg(m, state) updateUserLastActivity(m.body.setBy) - case m: RecordAndClearPreviousMarkersCmdMsg => - state = usersApp.handleRecordAndClearPreviousMarkersCmdMsg(m, state) - updateUserLastActivity(m.body.setBy) case m: ChangeUserReactionEmojiReqMsg => usersApp.handleChangeUserReactionEmojiReqMsg(m) updateUserLastActivity(m.header.userId) @@ -524,7 +517,6 @@ class MeetingActor( updateUserLastActivity(m.body.ejectedBy) // Another part of system (e.g. bbb-apps) requested to eject user. - case m: EjectUserFromMeetingSysMsg => usersApp.handleEjectUserFromMeetingSysMsg(m) case m: ChangeUserRoleCmdMsg => usersApp.handleChangeUserRoleCmdMsg(m) updateUserLastActivity(m.body.changedBy) @@ -540,7 +532,6 @@ class MeetingActor( case m: SendWhiteboardAnnotationsPubMsg => wbApp.handle(m, liveMeeting, msgBus) updateUserLastActivity(m.header.userId) - case m: GetWhiteboardAnnotationsReqMsg => wbApp.handle(m, liveMeeting, msgBus) // Poll case m: StartPollReqMsg => @@ -555,7 +546,6 @@ class MeetingActor( case m: ShowPollResultReqMsg => pollApp.handle(m, state, liveMeeting, msgBus) // passing state but not modifying it updateUserLastActivity(m.body.requesterId) - case m: GetCurrentPollReqMsg => pollApp.handle(m, state, liveMeeting, msgBus) // passing state but not modifying it case m: RespondToPollReqMsg => pollApp.handle(m, liveMeeting, msgBus) updateUserLastActivity(m.body.requesterId) @@ -564,7 +554,6 @@ class MeetingActor( updateUserLastActivity(m.body.requesterId) // Breakout - case m: BreakoutRoomsListMsg => state = handleBreakoutRoomsListMsg(m, state) case m: CreateBreakoutRoomsCmdMsg => state = handleCreateBreakoutRoomsCmdMsg(m, state) case m: EndAllBreakoutRoomsMsg => state = handleEndAllBreakoutRoomsMsg(m, state) case m: RequestBreakoutJoinURLReqMsg => state = handleRequestBreakoutJoinURLReqMsg(m, state) @@ -620,7 +609,6 @@ class MeetingActor( handleDeafenUserCmdMsg(m) updateUserLastActivity(m.body.deafenedBy) case m: EjectUserFromVoiceCmdMsg => handleEjectUserFromVoiceCmdMsg(m) - case m: IsMeetingMutedReqMsg => handleIsMeetingMutedReqMsg(m) case m: MuteMeetingCmdMsg => handleMuteMeetingCmdMsg(m) updateUserLastActivity(m.body.mutedBy) @@ -639,7 +627,6 @@ class MeetingActor( handleListenOnlyModeToggledInSfuEvtMsg(m) // Layout - case m: GetCurrentLayoutReqMsg => handleGetCurrentLayoutReqMsg(m) case m: BroadcastLayoutMsg => handleBroadcastLayoutMsg(m) case m: BroadcastPushLayoutMsg => handleBroadcastPushLayoutMsg(m) case m: SetScreenshareAsContentReqMsg => handleSetScreenshareAsContentReqMsg(m) @@ -670,27 +657,18 @@ class MeetingActor( case m: ChangeUserLockSettingsInMeetingCmdMsg => handleChangeUserLockSettingsInMeetingCmdMsg(m) updateUserLastActivity(m.body.setBy) - case m: LockUsersInMeetingCmdMsg => - handleLockUsersInMeetingCmdMsg(m) - updateUserLastActivity(m.body.lockedBy) // Presentation - case m: PreuploadedPresentationsSysPubMsg => presentationApp2x.handle(m, liveMeeting, msgBus) case m: AssignPresenterReqMsg => state = handlePresenterChange(m, state) updateUserLastActivity(m.body.assignedBy) case m: MakePresentationDownloadReqMsg => presentationPodsApp.handle(m, state, liveMeeting, msgBus) updateUserLastActivity(m.header.userId) - case m: NewPresFileAvailableMsg => presentationPodsApp.handle(m, liveMeeting, msgBus) - case m: PresAnnStatusMsg => presentationPodsApp.handle(m, liveMeeting, msgBus) + case m: NewPresFileAvailableMsg => presentationPodsApp.handle(m, liveMeeting, msgBus) + case m: PresAnnStatusMsg => presentationPodsApp.handle(m, liveMeeting, msgBus) // Presentation Pods - case m: CreateNewPresentationPodPubMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) - case m: RemovePresentationPodPubMsg => - state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) - updateUserLastActivity(m.header.userId) - case m: GetAllPresentationPodsReqMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) case m: SetCurrentPresentationPubMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) updateUserLastActivity(m.header.userId) @@ -718,7 +696,6 @@ class MeetingActor( case m: ResizeAndMovePagePubMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) updateUserLastActivity(m.header.userId) - case m: SlideResizedPubMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) case m: PresentationPageConvertedSysMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) case m: PresentationPageConversionStartedSysMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) case m: PresentationConversionEndedSysMsg => state = presentationPodsApp.handle(m, state, liveMeeting, msgBus) @@ -728,7 +705,6 @@ class MeetingActor( case m: CaptionSubmitTranscriptPubMsg => captionApp2x.handle(m, liveMeeting, msgBus) // Guests - case m: GetGuestsWaitingApprovalReqMsg => handleGetGuestsWaitingApprovalReqMsg(m) case m: SetGuestPolicyCmdMsg => handleSetGuestPolicyMsg(m) updateUserLastActivity(m.header.userId) @@ -738,19 +714,11 @@ class MeetingActor( case m: GuestsWaitingApprovedMsg => handleGuestsWaitingApprovedMsg(m) updateUserLastActivity(m.header.userId) - case m: GetGuestPolicyReqMsg => handleGetGuestPolicyReqMsg(m) case m: SetPrivateGuestLobbyMessageCmdMsg => handleSetPrivateGuestLobbyMessageCmdMsg(m) updateUserLastActivity(m.header.userId) // Chat - case m: GetChatHistoryReqMsg => chatApp2x.handle(m, liveMeeting, msgBus) - case m: SendPublicMessagePubMsg => - chatApp2x.handle(m, liveMeeting, msgBus) - updateUserLastActivity(m.body.message.fromUserId) - case m: SendPrivateMessagePubMsg => - chatApp2x.handle(m, liveMeeting, msgBus) - updateUserLastActivity(m.body.message.fromUserId) case m: ClearPublicChatHistoryPubMsg => state = chatApp2x.handle(m, state, liveMeeting, msgBus) updateUserLastActivity(m.header.userId) @@ -761,7 +729,6 @@ class MeetingActor( // Screenshare case m: ScreenshareRtmpBroadcastStartedVoiceConfEvtMsg => screenshareApp2x.handle(m, liveMeeting, msgBus) case m: ScreenshareRtmpBroadcastStoppedVoiceConfEvtMsg => screenshareApp2x.handle(m, liveMeeting, msgBus) - case m: GetScreenshareStatusReqMsg => screenshareApp2x.handle(m, liveMeeting, msgBus) case m: GetScreenBroadcastPermissionReqMsg => handleGetScreenBroadcastPermissionReqMsg(m) case m: GetScreenSubscribePermissionReqMsg => handleGetScreenSubscribePermissionReqMsg(m) @@ -777,8 +744,6 @@ class MeetingActor( updateUserLastActivity(m.header.userId) case m: SetGroupChatLastSeenReqMsg => groupChatApp.handle(m, liveMeeting) case m: SetGroupChatVisibleReqMsg => groupChatApp.handle(m, liveMeeting) - case m: GetGroupChatMsgsReqMsg => state = groupChatApp.handle(m, state, liveMeeting, msgBus) - case m: GetGroupChatsReqMsg => state = groupChatApp.handle(m, state, liveMeeting, msgBus) case m: SendGroupChatMessageMsg => state = groupChatApp.handle(m, state, liveMeeting, msgBus) updateUserLastActivity(m.body.msg.sender.id) @@ -827,7 +792,6 @@ class MeetingActor( case m: CamStreamUnsubscribedInSfuEvtMsg => webcamApp2x.handle(m, liveMeeting, msgBus) case m: CamBroadcastStoppedInSfuEvtMsg => webcamApp2x.handle(m, liveMeeting, msgBus) case m: EjectUserCamerasCmdMsg => webcamApp2x.handle(m, liveMeeting, msgBus) - case m: GetWebcamsOnlyForModeratorReqMsg => webcamApp2x.handle(m, liveMeeting, msgBus) case m: UpdateWebcamsOnlyForModeratorCmdMsg => webcamApp2x.handle(m, liveMeeting, msgBus) updateUserLastActivity(m.body.setBy) 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 5ddbbaf02f81..3ebc0548e662 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 @@ -80,14 +80,12 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: ScreenshareRtmpBroadcastStoppedEvtMsg => logMessage(msg) case m: StartRecordingVoiceConfSysMsg => logMessage(msg) case m: StopRecordingVoiceConfSysMsg => logMessage(msg) - case m: RecordAndClearPreviousMarkersCmdMsg => logMessage(msg) case m: TransferUserToVoiceConfSysMsg => logMessage(msg) case m: UserBroadcastCamStartMsg => logMessage(msg) case m: UserBroadcastCamStopMsg => logMessage(msg) case m: SetCamShowAsContentReqMsg => logMessage(msg) case m: UserBroadcastCamStoppedEvtMsg => logMessage(msg) case m: UserBroadcastCamStartedEvtMsg => logMessage(msg) - case m: EjectUserFromMeetingSysMsg => logMessage(msg) case m: UserActivitySignCmdMsg => logMessage(msg) case m: UserInactivityInspectMsg => logMessage(msg) @@ -142,7 +140,6 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: PresentationConversionEndedSysMsg => logMessage(msg) case m: PresentationConversionRequestReceivedSysMsg => logMessage(msg) //case m: PresentationConversionCompletedEvtMsg => logMessage(msg) - case m: GetAllPresentationPodsReqMsg => logMessage(msg) //case m: PresentationPageGeneratedSysPubMsg => logMessage(msg) //case m: PresentationPageGeneratedEvtMsg => logMessage(msg) //case m: ResizeAndMovePagePubMsg => logMessage(msg) @@ -168,21 +165,16 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: SendGroupChatMessageReactionReqMsg => logChatMessage(msg) case m: DeleteGroupChatMessageReactionReqMsg => logChatMessage(msg) case m: GroupChatMessageBroadcastEvtMsg => logChatMessage(msg) - case m: GetGroupChatMsgsReqMsg => logChatMessage(msg) - case m: GetGroupChatMsgsRespMsg => logChatMessage(msg) case m: CreateGroupChatReqMsg => logChatMessage(msg) case m: SetGroupChatLastSeenReqMsg => logChatMessage(msg) case m: SetGroupChatVisibleReqMsg => logChatMessage(msg) case m: GroupChatCreatedEvtMsg => logChatMessage(msg) - case m: GetGroupChatsReqMsg => logChatMessage(msg) - case m: GetGroupChatsRespMsg => logChatMessage(msg) // Guest Management case m: GuestsWaitingApprovedMsg => logMessage(msg) case m: GuestsWaitingApprovedEvtMsg => logMessage(msg) case m: GuestWaitingLeftEvtMsg => logMessage(msg) case m: GuestsWaitingForApprovalEvtMsg => logMessage(msg) - case m: PosInWaitingQueueUpdatedRespMsg => logMessage(msg) case m: SetGuestPolicyCmdMsg => logMessage(msg) case m: GuestPolicyChangedEvtMsg => logMessage(msg) case m: SetGuestLobbyMessageCmdMsg => logMessage(msg) @@ -191,8 +183,6 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: PrivateGuestLobbyMsgChangedEvtMsg => logMessage(msg) // System - case m: ClientToServerLatencyTracerMsg => traceMessage(msg) - case m: ServerToClientLatencyTracerMsg => traceMessage(msg) // Recording case m: RecordingChapterBreakSysMsg => logMessage(msg) @@ -227,7 +217,6 @@ class AnalyticsActor(val includeChat: Boolean) extends Actor with ActorLogging { case m: PadSessionDeletedEvtMsg => logMessage(msg) case m: PadUpdatedSysMsg => logMessage(msg) case m: PadUpdatedEvtMsg => logMessage(msg) - case m: PadUpdateCmdMsg => logMessage(msg) // Breakouts case m: CreateBreakoutRoomsCmdMsg => logMessage(msg) diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/IsMeetingMutedReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/IsMeetingMutedReqMsgHdlr.scala deleted file mode 100755 index f96836d00ddc..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/IsMeetingMutedReqMsgHdlr.scala +++ /dev/null @@ -1,28 +0,0 @@ -package org.bigbluebutton.core2.message.handlers - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.running.{ MeetingActor, OutMsgRouter } -import org.bigbluebutton.core2.MeetingStatus2x - -trait IsMeetingMutedReqMsgHdlr { - this: MeetingActor => - - val outGW: OutMsgRouter - - def handleIsMeetingMutedReqMsg(msg: IsMeetingMutedReqMsg) { - - def build(meetingId: String, userId: String, muted: Boolean): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, meetingId, userId) - val envelope = BbbCoreEnvelope(IsMeetingMutedRespMsg.NAME, routing) - val header = BbbClientMsgHeader(IsMeetingMutedRespMsg.NAME, meetingId, userId) - - val body = IsMeetingMutedRespMsgBody(muted) - val event = IsMeetingMutedRespMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - - val event = build(liveMeeting.props.meetingProp.intId, msg.header.userId, MeetingStatus2x.isMeetingMuted(liveMeeting.status)) - outGW.send(event) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestPolicyReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestPolicyReqMsgHdlr.scala deleted file mode 100755 index 16796f5fd22d..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestPolicyReqMsgHdlr.scala +++ /dev/null @@ -1,26 +0,0 @@ -package org.bigbluebutton.core2.message.handlers.guests - -import org.bigbluebutton.common2.msgs._ -import org.bigbluebutton.core.running.{ BaseMeetingActor, LiveMeeting, OutMsgRouter } - -trait GetGuestPolicyReqMsgHdlr { - this: BaseMeetingActor => - - val liveMeeting: LiveMeeting - val outGW: OutMsgRouter - - def handleGetGuestPolicyReqMsg(msg: GetGuestPolicyReqMsg): Unit = { - val event = buildGetGuestPolicyRespMsg(liveMeeting.props.meetingProp.intId, msg.body.requestedBy, - liveMeeting.guestsWaiting.getGuestPolicy().policy) - outGW.send(event) - } - - def buildGetGuestPolicyRespMsg(meetingId: String, userId: String, policy: String): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, meetingId, userId) - val envelope = BbbCoreEnvelope(GetGuestPolicyRespMsg.NAME, routing) - val header = BbbClientMsgHeader(GetGuestPolicyRespMsg.NAME, meetingId, userId) - val body = GetGuestPolicyRespMsgBody(policy) - val event = GetGuestPolicyRespMsg(header, body) - BbbCommonEnvCoreMsg(envelope, event) - } -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestsWaitingApprovalReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestsWaitingApprovalReqMsgHdlr.scala deleted file mode 100755 index 2d20787841bc..000000000000 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/handlers/guests/GetGuestsWaitingApprovalReqMsgHdlr.scala +++ /dev/null @@ -1,26 +0,0 @@ -package org.bigbluebutton.core2.message.handlers.guests - -import org.bigbluebutton.common2.msgs.GetGuestsWaitingApprovalReqMsg -import org.bigbluebutton.core.models.GuestsWaiting -import org.bigbluebutton.core.running.{ BaseMeetingActor, HandlerHelpers, LiveMeeting, OutMsgRouter } -import org.bigbluebutton.core2.message.senders.MsgBuilder - -trait GetGuestsWaitingApprovalReqMsgHdlr extends HandlerHelpers { - this: BaseMeetingActor => - - val liveMeeting: LiveMeeting - val outGW: OutMsgRouter - - def handleGetGuestsWaitingApprovalReqMsg(msg: GetGuestsWaitingApprovalReqMsg): Unit = { - val guests = GuestsWaiting.findAll(liveMeeting.guestsWaiting) - val event = MsgBuilder.buildGetGuestsWaitingApprovalRespMsg( - liveMeeting.props.meetingProp.intId, - msg.body.requesterId, - guests - ) - - outGW.send(event) - - } - -} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/senders/MsgBuilder.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/senders/MsgBuilder.scala index 3a8bca0ff7b6..26f16f6bcad3 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/senders/MsgBuilder.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/message/senders/MsgBuilder.scala @@ -22,18 +22,6 @@ object MsgBuilder { BbbCommonEnvCoreMsg(envelope, event) } - def buildPosInWaitingQueueUpdatedRespMsg(meetingId: String, guests: Vector[GuestWaitingUP]): BbbCommonEnvCoreMsg = { - val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, "not-used") - val envelope = BbbCoreEnvelope(PosInWaitingQueueUpdatedRespMsg.NAME, routing) - val header = BbbClientMsgHeader(PosInWaitingQueueUpdatedRespMsg.NAME, meetingId, "not-used") - - val guestsWaiting = guests.map(g => GuestWaitingUP(g.intId, g.idx)) - val body = PosInWaitingQueueUpdatedRespMsgBody(guestsWaiting) - val event = PosInWaitingQueueUpdatedRespMsg(header, body) - - BbbCommonEnvCoreMsg(envelope, event) - } - def buildGuestLobbyMessageChangedEvtMsg(meetingId: String, userId: String, message: String): BbbCommonEnvCoreMsg = { val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, userId) val envelope = BbbCoreEnvelope(GuestLobbyMessageChangedEvtMsg.NAME, routing) diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/BreakoutMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/BreakoutMsgs.scala index b88c57c453b6..e5fc1c5bff5f 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/BreakoutMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/BreakoutMsgs.scala @@ -17,10 +17,6 @@ case class BreakoutRoomsListEvtMsg(header: BbbClientMsgHeader, body: BreakoutRoo case class BreakoutRoomsListEvtMsgBody(meetingId: String, rooms: Vector[BreakoutRoomInfo], roomsReady: Boolean, sendInviteToModerators: Boolean) case class BreakoutRoomInfo(name: String, externalId: String, breakoutId: String, sequence: Int, shortName: String, isDefaultName: Boolean, freeJoin: Boolean, html5JoinUrls: Map[String, String], captureNotes: Boolean, captureSlides: Boolean) -object BreakoutRoomsListMsg { val NAME = "BreakoutRoomsListMsg" } -case class BreakoutRoomsListMsg(header: BbbClientMsgHeader, body: BreakoutRoomsListMsgBody) extends StandardMsg -case class BreakoutRoomsListMsgBody(meetingId: String) - /** * Sent to client that breakout rooms have been created. */ diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/ChatMessages.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/ChatMessages.scala index 541dbcfa2607..9df21a300104 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/ChatMessages.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/ChatMessages.scala @@ -1,35 +1,17 @@ package org.bigbluebutton.common2.msgs /* In Messages */ -object GetChatHistoryReqMsg { val NAME = "GetChatHistoryReqMsg" } -case class GetChatHistoryReqMsg(header: BbbClientMsgHeader, body: GetChatHistoryReqMsgBody) extends StandardMsg -case class GetChatHistoryReqMsgBody() - -object SendPublicMessagePubMsg { val NAME = "SendPublicMessagePubMsg" } -case class SendPublicMessagePubMsg(header: BbbClientMsgHeader, body: SendPublicMessagePubMsgBody) extends StandardMsg -case class SendPublicMessagePubMsgBody(message: ChatMessageVO) - -object SendPrivateMessagePubMsg { val NAME = "SendPrivateMessagePubMsg" } -case class SendPrivateMessagePubMsg(header: BbbClientMsgHeader, body: SendPrivateMessagePubMsgBody) extends StandardMsg -case class SendPrivateMessagePubMsgBody(message: ChatMessageVO) object ClearPublicChatHistoryPubMsg { val NAME = "ClearPublicChatHistoryPubMsg" } case class ClearPublicChatHistoryPubMsg(header: BbbClientMsgHeader, body: ClearPublicChatHistoryPubMsgBody) extends StandardMsg case class ClearPublicChatHistoryPubMsgBody(chatId: String) /* Out Messages */ -object GetChatHistoryRespMsg { val NAME = "GetChatHistoryRespMsg" } -case class GetChatHistoryRespMsg(header: BbbClientMsgHeader, body: GetChatHistoryRespMsgBody) extends StandardMsg -case class GetChatHistoryRespMsgBody(history: Array[ChatMessageVO]) object SendPublicMessageEvtMsg { val NAME = "SendPublicMessageEvtMsg" } case class SendPublicMessageEvtMsg(header: BbbClientMsgHeader, body: SendPublicMessageEvtMsgBody) extends StandardMsg case class SendPublicMessageEvtMsgBody(message: ChatMessageVO) -object SendPrivateMessageEvtMsg { val NAME = "SendPrivateMessageEvtMsg" } -case class SendPrivateMessageEvtMsg(header: BbbClientMsgHeader, body: SendPrivateMessageEvtMsgBody) extends StandardMsg -case class SendPrivateMessageEvtMsgBody(message: ChatMessageVO) - object ClearPublicChatHistoryEvtMsg { val NAME = "ClearPublicChatHistoryEvtMsg" } case class ClearPublicChatHistoryEvtMsg(header: BbbClientMsgHeader, body: ClearPublicChatHistoryEvtMsgBody) extends StandardMsg case class ClearPublicChatHistoryEvtMsgBody(chatId: String) diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GroupChatMsg.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GroupChatMsg.scala index 67da400d0679..2b69ca2cdcf4 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GroupChatMsg.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GroupChatMsg.scala @@ -48,21 +48,9 @@ object OpenGroupChatWindowEvtMsg { val NAME = "OpenGroupChatWindowEvtMsg" } case class OpenGroupChatWindowEvtMsg(header: BbbClientMsgHeader, body: OpenGroupChatWindowEvtMsgBody) extends StandardMsg case class OpenGroupChatWindowEvtMsgBody(chatWindowId: String, openedBy: String) -object GetGroupChatsReqMsg { val NAME = "GetGroupChatsReqMsg" } -case class GetGroupChatsReqMsg(header: BbbClientMsgHeader, body: GetGroupChatsReqMsgBody) extends StandardMsg -case class GetGroupChatsReqMsgBody() -object GetGroupChatsRespMsg { val NAME = "GetGroupChatsRespMsg" } -case class GetGroupChatsRespMsg(header: BbbClientMsgHeader, body: GetGroupChatsRespMsgBody) extends BbbCoreMsg -case class GetGroupChatsRespMsgBody(chats: Vector[GroupChatInfo]) -object GetGroupChatMsgsReqMsg { val NAME = "GetGroupChatMsgsReqMsg" } -case class GetGroupChatMsgsReqMsg(header: BbbClientMsgHeader, body: GetGroupChatMsgsReqMsgBody) extends StandardMsg -case class GetGroupChatMsgsReqMsgBody(chatId: String) -object GetGroupChatMsgsRespMsg { val NAME = "GetGroupChatMsgsRespMsg" } -case class GetGroupChatMsgsRespMsg(header: BbbClientMsgHeader, body: GetGroupChatMsgsRespMsgBody) extends BbbCoreMsg -case class GetGroupChatMsgsRespMsgBody(chatId: String, msgs: Vector[GroupChatMsgToUser]) object CreateGroupChatReqMsg { val NAME = "CreateGroupChatReqMsg" } case class CreateGroupChatReqMsg(header: BbbClientMsgHeader, body: CreateGroupChatReqMsgBody) extends StandardMsg diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala index 86fddcede1d6..3212d92e73ef 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/GuestsMsgs.scala @@ -3,12 +3,6 @@ package org.bigbluebutton.common2.msgs /** * Message sent by client to get list of guests waiting for approval. */ -object GetGuestsWaitingApprovalReqMsg { val NAME = "GetGuestsWaitingApprovalReqMsg" } -case class GetGuestsWaitingApprovalReqMsg( - header: BbbClientMsgHeader, - body: GetGuestsWaitingApprovalReqMsgBody -) extends StandardMsg -case class GetGuestsWaitingApprovalReqMsgBody(requesterId: String) /** * Message sent to client in response to request for list of guests waiting for approval. @@ -83,18 +77,10 @@ case class SetGuestPolicyCmdMsg( ) extends StandardMsg case class SetGuestPolicyCmdMsgBody(policy: String, setBy: String) -case class GuestWaitingUP(intId: String, idx: String) - /** * Message sent to bbb-web when a new guest user appeared or one of the guest users * was accepted, denied or left the guest lobby. A change in the position in waiting queue is notified. */ -object PosInWaitingQueueUpdatedRespMsg { val NAME = "PosInWaitingQueueUpdatedRespMsg" } -case class PosInWaitingQueueUpdatedRespMsg( - header: BbbClientMsgHeader, - body: PosInWaitingQueueUpdatedRespMsgBody -) extends BbbCoreMsg -case class PosInWaitingQueueUpdatedRespMsgBody(guests: Vector[GuestWaitingUP]) /** * Message sent to all clients that guest policy has been changed. @@ -149,19 +135,7 @@ case class PrivateGuestLobbyMsgChangedEvtMsgBody(guestId: String, message: Strin /** * Message from user to get the guest policy. */ -object GetGuestPolicyReqMsg { val NAME = "GetGuestPolicyReqMsg" } -case class GetGuestPolicyReqMsg( - header: BbbClientMsgHeader, - body: GetGuestPolicyReqMsgBody -) extends StandardMsg -case class GetGuestPolicyReqMsgBody(requestedBy: String) /** * Sent to client as response to query for guest policy. */ -object GetGuestPolicyRespMsg { val NAME = "GetGuestPolicyRespMsg" } -case class GetGuestPolicyRespMsg( - header: BbbClientMsgHeader, - body: GetGuestPolicyRespMsgBody -) extends StandardMsg -case class GetGuestPolicyRespMsgBody(policy: String) diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/LayoutMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/LayoutMsgs.scala index e94be20bf53b..8fcadfaa8e14 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/LayoutMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/LayoutMsgs.scala @@ -1,13 +1,5 @@ package org.bigbluebutton.common2.msgs -object GetCurrentLayoutReqMsg { val NAME = "GetCurrentLayoutReqMsg" } -case class GetCurrentLayoutReqMsg(header: BbbClientMsgHeader, body: GetCurrentLayoutReqMsgBody) extends StandardMsg -case class GetCurrentLayoutReqMsgBody() - -object GetCurrentLayoutRespMsg { val NAME = "GetCurrentLayoutRespMsg" } -case class GetCurrentLayoutRespMsg(header: BbbClientMsgHeader, body: GetCurrentLayoutRespMsgBody) extends BbbCoreMsg -case class GetCurrentLayoutRespMsgBody(layout: String, setByUserId: String) - object BroadcastLayoutMsg { val NAME = "BroadcastLayoutMsg" } case class BroadcastLayoutMsg(header: BbbClientMsgHeader, body: BroadcastLayoutMsgBody) extends StandardMsg case class BroadcastLayoutMsgBody(layout: String, pushLayout: Boolean, presentationIsOpen: Boolean, isResizing: Boolean, cameraPosition: String, focusedCamera: String, presentationVideoRate: Double) diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala index 041ed3146673..a3e91a4ab382 100644 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PadsMsgs.scala @@ -107,9 +107,6 @@ case class PadTailEvtMsg(header: BbbCoreHeaderWithMeetingId, body: PadTailEvtMsg case class PadTailEvtMsgBody(externalId: String, tail: String) // apps -> pads -object PadUpdateCmdMsg { val NAME = "PadUpdateCmdMsg" } -case class PadUpdateCmdMsg(header: BbbCoreHeaderWithMeetingId, body: PadUpdateCmdMsgBody) extends BbbCoreMsg -case class PadUpdateCmdMsgBody(groupId: String, name: String, text: String) // pads -> apps object PadCapturePubMsg { val NAME = "PadCapturePubMsg" } diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PollsMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PollsMsgs.scala index bf47d067d11a..5987d6d2f33a 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PollsMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PollsMsgs.scala @@ -2,14 +2,6 @@ package org.bigbluebutton.common2.msgs import org.bigbluebutton.common2.domain.{ PollVO, SimplePollOutVO, SimplePollResultOutVO } -object GetCurrentPollReqMsg { val NAME = "GetCurrentPollReqMsg" } -case class GetCurrentPollReqMsg(header: BbbClientMsgHeader, body: GetCurrentPollReqMsgBody) extends StandardMsg -case class GetCurrentPollReqMsgBody(requesterId: String) - -object GetCurrentPollRespMsg { val NAME = "GetCurrentPollRespMsg" } -case class GetCurrentPollRespMsg(header: BbbClientMsgHeader, body: GetCurrentPollRespMsgBody) extends BbbCoreMsg -case class GetCurrentPollRespMsgBody(userId: String, hasPoll: Boolean, poll: Option[PollVO]) - object PollShowResultEvtMsg { val NAME = "PollShowResultEvtMsg" } case class PollShowResultEvtMsg(header: BbbClientMsgHeader, body: PollShowResultEvtMsgBody) extends BbbCoreMsg case class PollShowResultEvtMsgBody(userId: String, pollId: String, poll: SimplePollResultOutVO, showAnswer: Boolean) diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationMsgs.scala index 6c70d8172382..f3a27c66647f 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationMsgs.scala @@ -6,9 +6,6 @@ import org.bigbluebutton.common2.domain.PresentationVO // ------------ client to akka-apps ------------ // ------------ bbb-common-web to akka-apps ------------ -object PreuploadedPresentationsSysPubMsg { val NAME = "PreuploadedPresentationsSysPubMsg" } -case class PreuploadedPresentationsSysPubMsg(header: BbbClientMsgHeader, body: PreuploadedPresentationsSysPubMsgBody) extends StandardMsg -case class PreuploadedPresentationsSysPubMsgBody(presentations: Vector[PresentationVO]) object SetPresentationUploadCompletionNotifiedPubMsg { val NAME = "SetPresentationUploadCompletionNotifiedPubMsg" } case class SetPresentationUploadCompletionNotifiedPubMsg(header: BbbClientMsgHeader, body: SetPresentationUploadCompletionNotifiedPubMsgBody) extends StandardMsg @@ -38,10 +35,6 @@ object PresenterUnassignedEvtMsg { val NAME = "PresenterUnassignedEvtMsg" } case class PresenterUnassignedEvtMsg(header: BbbClientMsgHeader, body: PresenterUnassignedEvtMsgBody) extends BbbCoreMsg case class PresenterUnassignedEvtMsgBody(intId: String, name: String, assignedBy: String) -object NewPresentationEvtMsg { val NAME = "NewPresentationEvtMsg" } -case class NewPresentationEvtMsg(header: BbbClientMsgHeader, body: NewPresentationEvtMsgBody) extends BbbCoreMsg -case class NewPresentationEvtMsgBody(presentation: PresentationVO) - object NewPresFileAvailableEvtMsg { val NAME = "NewPresFileAvailableEvtMsg" } case class NewPresFileAvailableEvtMsg(header: BbbClientMsgHeader, body: NewPresFileAvailableEvtMsgBody) extends BbbCoreMsg case class NewPresFileAvailableEvtMsgBody(annotatedFileURI: String, originalFileURI: String, convertedFileURI: String, diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationPodsMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationPodsMsgs.scala index af0f0f8638d8..2e0c8f5720c3 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationPodsMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/PresentationPodsMsgs.scala @@ -3,21 +3,12 @@ package org.bigbluebutton.common2.msgs import org.bigbluebutton.common2.domain.{ PageVO, PresentationPageConvertedVO, PresentationPageVO, PresentationPodVO, PresentationVO } // ------------ client to akka-apps ------------ -object CreateNewPresentationPodPubMsg { val NAME = "CreateNewPresentationPodPubMsg" } -case class CreateNewPresentationPodPubMsg(header: BbbClientMsgHeader, body: CreateNewPresentationPodPubMsgBody) extends StandardMsg -case class CreateNewPresentationPodPubMsgBody() -object RemovePresentationPodPubMsg { val NAME = "RemovePresentationPodPubMsg" } -case class RemovePresentationPodPubMsg(header: BbbClientMsgHeader, body: RemovePresentationPodPubMsgBody) extends StandardMsg -case class RemovePresentationPodPubMsgBody(podId: String) object PresentationUploadTokenReqMsg { val NAME = "PresentationUploadTokenReqMsg" } case class PresentationUploadTokenReqMsg(header: BbbClientMsgHeader, body: PresentationUploadTokenReqMsgBody) extends StandardMsg case class PresentationUploadTokenReqMsgBody(podId: String, filename: String, uploadTemporaryId: String) -object GetAllPresentationPodsReqMsg { val NAME = "GetAllPresentationPodsReqMsg" } -case class GetAllPresentationPodsReqMsg(header: BbbClientMsgHeader, body: GetAllPresentationPodsReqMsgBody) extends StandardMsg -case class GetAllPresentationPodsReqMsgBody() object SetCurrentPagePubMsg { val NAME = "SetCurrentPagePubMsg" } case class SetCurrentPagePubMsg(header: BbbClientMsgHeader, body: SetCurrentPagePubMsgBody) extends StandardMsg @@ -41,10 +32,6 @@ case class ResizeAndMovePagePubMsg(header: BbbClientMsgHeader, body: ResizeAndMo case class ResizeAndMovePagePubMsgBody(podId: String, presentationId: String, pageId: String, xOffset: Double, yOffset: Double, widthRatio: Double, heightRatio: Double, slideNumber: Int) -object SlideResizedPubMsg { val NAME = "SlideResizedPubMsg" } -case class SlideResizedPubMsg(header: BbbClientMsgHeader, body: SlideResizedPubMsgBody) extends StandardMsg -case class SlideResizedPubMsgBody(pageId: String, width: Double, height: Double, - xOffset: Double, yOffset: Double, widthRatio: Double, heightRatio: Double) object SetCurrentPresentationPubMsg { val NAME = "SetCurrentPresentationPubMsg" } case class SetCurrentPresentationPubMsg(header: BbbClientMsgHeader, body: SetCurrentPresentationPubMsgBody) extends StandardMsg @@ -391,9 +378,6 @@ object PresentationConversionCompletedEvtMsg { val NAME = "PresentationConversio case class PresentationConversionCompletedEvtMsg(header: BbbClientMsgHeader, body: PresentationConversionCompletedEvtMsgBody) extends BbbCoreMsg case class PresentationConversionCompletedEvtMsgBody(podId: String, messageKey: String, code: String, presentation: PresentationVO) -object GetAllPresentationPodsRespMsg { val NAME = "GetAllPresentationPodsRespMsg" } -case class GetAllPresentationPodsRespMsg(header: BbbClientMsgHeader, body: GetAllPresentationPodsRespMsgBody) extends StandardMsg -case class GetAllPresentationPodsRespMsgBody(pods: Vector[PresentationPodVO]) object SetCurrentPageEvtMsg { val NAME = "SetCurrentPageEvtMsg" } case class SetCurrentPageEvtMsg(header: BbbClientMsgHeader, body: SetCurrentPageEvtMsgBody) extends BbbCoreMsg 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 c88fb363bca5..f33cd538a1a7 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 @@ -102,9 +102,6 @@ case class MeetingDestroyedEvtMsgBody(meetingId: String) /** * System server side message to eject user from meeting. */ -object EjectUserFromMeetingSysMsg { val NAME = "EjectUserFromMeetingSysMsg" } -case class EjectUserFromMeetingSysMsg(header: BbbClientMsgHeader, body: EjectUserFromMeetingSysMsgBody) extends StandardMsg -case class EjectUserFromMeetingSysMsgBody(userId: String, ejectedBy: String) object DisconnectAllClientsSysMsg { val NAME = "DisconnectAllClientsSysMsg" } case class DisconnectAllClientsSysMsg( diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMsgs.scala index cdf4cb8d65f1..b6bbb048c1cc 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMsgs.scala @@ -147,9 +147,6 @@ case class SetRecordingStatusCmdMsgBody(recording: Boolean, setBy: String) /** * Sent by user to start recording mark and ignore previous marks */ -object RecordAndClearPreviousMarkersCmdMsg { val NAME = "RecordAndClearPreviousMarkersCmdMsg" } -case class RecordAndClearPreviousMarkersCmdMsg(header: BbbClientMsgHeader, body: RecordAndClearPreviousMarkersCmdMsgBody) extends StandardMsg -case class RecordAndClearPreviousMarkersCmdMsgBody(recording: Boolean, setBy: String) /** * Sent to all users about start recording mark. @@ -168,16 +165,10 @@ case class UpdateWebcamsOnlyForModeratorCmdMsgBody(webcamsOnlyForModerator: Bool /** * Sent by user to get the value of webcamsOnlyForModerator mark. */ -object GetWebcamsOnlyForModeratorReqMsg { val NAME = "GetWebcamsOnlyForModeratorReqMsg" } -case class GetWebcamsOnlyForModeratorReqMsg(header: BbbClientMsgHeader, body: GetWebcamsOnlyForModeratorReqMsgBody) extends StandardMsg -case class GetWebcamsOnlyForModeratorReqMsgBody(requestedBy: String) /** * Sent to user as response to get webcamsOnlyForModerator mark. */ -object GetWebcamsOnlyForModeratorRespMsg { val NAME = "GetWebcamsOnlyForModeratorRespMsg" } -case class GetWebcamsOnlyForModeratorRespMsg(header: BbbClientMsgHeader, body: GetWebcamsOnlyForModeratorRespMsgBody) extends BbbCoreMsg -case class GetWebcamsOnlyForModeratorRespMsgBody(webcamsOnlyForModerator: Boolean, requestedBy: String) /** * Sent to all users about webcam only for moderator value. @@ -189,9 +180,6 @@ case class WebcamsOnlyForModeratorChangedEvtMsgBody(webcamsOnlyForModerator: Boo /** * Sent by user to get status of screenshare (meant for late joiners). */ -object GetScreenshareStatusReqMsg { val NAME = "GetScreenshareStatusReqMsg" } -case class GetScreenshareStatusReqMsg(header: BbbClientMsgHeader, body: GetScreenshareStatusReqMsgBody) extends StandardMsg -case class GetScreenshareStatusReqMsgBody(requestedBy: String) /** * Sent from client about a user changing RaiseHand. @@ -345,9 +333,6 @@ case class UserLockedInMeetingEvtMsgBody(userId: String, locked: Boolean, locked /** * Sent by client to lock users. */ -object LockUsersInMeetingCmdMsg { val NAME = "LockUsersInMeetingCmdMsg" } -case class LockUsersInMeetingCmdMsg(header: BbbClientMsgHeader, body: LockUsersInMeetingCmdMsgBody) extends StandardMsg -case class LockUsersInMeetingCmdMsgBody(lock: Boolean, lockedBy: String, except: Vector[String]) /** * Sent by client to set user lock setting. @@ -424,9 +409,6 @@ case class UserLeaveReqMsgBody(userId: String, sessionId: String, loggedOut: Boo /** * Sent from client to add user to the presenter group of a meeting. */ -object AddUserToPresenterGroupCmdMsg { val NAME = "AddUserToPresenterGroupCmdMsg" } -case class AddUserToPresenterGroupCmdMsg(header: BbbClientMsgHeader, body: AddUserToPresenterGroupCmdMsgBody) extends StandardMsg -case class AddUserToPresenterGroupCmdMsgBody(userId: String, requesterId: String) /** * Sent to all clients about a user added to the presenter group of a meeting @@ -438,9 +420,6 @@ case class UserAddedToPresenterGroupEvtMsgBody(userId: String, requesterId: Stri /** * Sent from client to remove user from the presenter group of a meeting. */ -object RemoveUserFromPresenterGroupCmdMsg { val NAME = "RemoveUserFromPresenterGroupCmdMsg" } -case class RemoveUserFromPresenterGroupCmdMsg(header: BbbClientMsgHeader, body: RemoveUserFromPresenterGroupCmdMsgBody) extends StandardMsg -case class RemoveUserFromPresenterGroupCmdMsgBody(userId: String, requesterId: String) /** * Sent to all clients about a user removed from the presenter group of a meeting @@ -452,9 +431,6 @@ case class UserRemovedFromPresenterGroupEvtMsgBody(userId: String, requesterId: /** * Sent from client to request the presenter group of a meeting. */ -object GetPresenterGroupReqMsg { val NAME = "GetPresenterGroupReqMsg" } -case class GetPresenterGroupReqMsg(header: BbbClientMsgHeader, body: GetPresenterGroupReqMsgBody) extends StandardMsg -case class GetPresenterGroupReqMsgBody(requesterId: String) /** * Sent to all clients about the members of the presenter group of a meeting diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/VoiceConfMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/VoiceConfMsgs.scala index db35dfe0f6d0..90f16efee7d6 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/VoiceConfMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/VoiceConfMsgs.scala @@ -166,19 +166,7 @@ case class MuteAllExceptPresentersCmdMsgBody(mutedBy: String, mute: Boolean) /** * Sent by client to determine current meeting mute state. */ -object IsMeetingMutedReqMsg { val NAME = "IsMeetingMutedReqMsg" } -case class IsMeetingMutedReqMsg( - header: BbbClientMsgHeader, - body: IsMeetingMutedReqMsgBody -) extends StandardMsg -case class IsMeetingMutedReqMsgBody() -object IsMeetingMutedRespMsg { val NAME = "IsMeetingMutedRespMsg" } -case class IsMeetingMutedRespMsg( - header: BbbClientMsgHeader, - body: IsMeetingMutedRespMsgBody -) extends BbbCoreMsg -case class IsMeetingMutedRespMsgBody(muted: Boolean) /** * Sent by client to mute user in the voice conference. diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/WhiteboardMsgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/WhiteboardMsgs.scala index 107c04640207..753668524aa1 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/WhiteboardMsgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/WhiteboardMsgs.scala @@ -30,13 +30,7 @@ case class ExportJob( ) // ------------ client to akka-apps ------------ -object ClientToServerLatencyTracerMsg { val NAME = "ClientToServerLatencyTracerMsg" } -case class ClientToServerLatencyTracerMsg(header: BbbClientMsgHeader, body: ClientToServerLatencyTracerMsgBody) extends StandardMsg -case class ClientToServerLatencyTracerMsgBody(timestampUTC: Long, rtt: Long, senderId: String) -object GetWhiteboardAnnotationsReqMsg { val NAME = "GetWhiteboardAnnotationsReqMsg" } -case class GetWhiteboardAnnotationsReqMsg(header: BbbClientMsgHeader, body: GetWhiteboardAnnotationsReqMsgBody) extends StandardMsg -case class GetWhiteboardAnnotationsReqMsgBody(whiteboardId: String) object SendCursorPositionPubMsg { val NAME = "SendCursorPositionPubMsg" } case class SendCursorPositionPubMsg(header: BbbClientMsgHeader, body: SendCursorPositionPubMsgBody) extends StandardMsg @@ -52,9 +46,6 @@ case class DeleteWhiteboardAnnotationsPubMsgBody(whiteboardId: String, annotatio // ------------ client to akka-apps ------------ // ------------ akka-apps to client ------------ -object ServerToClientLatencyTracerMsg { val NAME = "ServerToClientLatencyTracerMsg" } -case class ServerToClientLatencyTracerMsg(header: BbbClientMsgHeader, body: ServerToClientLatencyTracerMsgBody) extends BbbCoreMsg -case class ServerToClientLatencyTracerMsgBody(timestampUTC: Long, rtt: Long, senderId: String) object DoLatencyTracerMsg { val NAME = "DoLatencyTracerMsg" } case class DoLatencyTracerMsg(header: BbbClientMsgHeader, body: DoLatencyTracerMsgBody) extends BbbCoreMsg @@ -64,9 +55,6 @@ object ClearWhiteboardEvtMsg { val NAME = "ClearWhiteboardEvtMsg" } case class ClearWhiteboardEvtMsg(header: BbbClientMsgHeader, body: ClearWhiteboardEvtMsgBody) extends BbbCoreMsg case class ClearWhiteboardEvtMsgBody(whiteboardId: String, userId: String, fullClear: Boolean) -object GetWhiteboardAnnotationsRespMsg { val NAME = "GetWhiteboardAnnotationsRespMsg" } -case class GetWhiteboardAnnotationsRespMsg(header: BbbClientMsgHeader, body: GetWhiteboardAnnotationsRespMsgBody) extends BbbCoreMsg -case class GetWhiteboardAnnotationsRespMsgBody(whiteboardId: String, annotations: Array[AnnotationVO], multiUser: Array[String]) object SendCursorPositionEvtMsg { val NAME = "SendCursorPositionEvtMsg" } case class SendCursorPositionEvtMsg(header: BbbClientMsgHeader, body: SendCursorPositionEvtMsgBody) extends BbbCoreMsg