Skip to content

Commit

Permalink
multi-user whiteboard little bit of polish
Browse files Browse the repository at this point in the history
  • Loading branch information
capilkey committed Apr 5, 2017
1 parent f7b9782 commit 1a78091
Show file tree
Hide file tree
Showing 35 changed files with 318 additions and 358 deletions.
Expand Up @@ -107,7 +107,7 @@ void lockLayout(String meetingID, String setById,
void clearWhiteboard(String meetingID, String requesterID, String whiteboardId); void clearWhiteboard(String meetingID, String requesterID, String whiteboardId);
void undoWhiteboard(String meetingID, String requesterID, String whiteboardId); void undoWhiteboard(String meetingID, String requesterID, String whiteboardId);
void modifyWhiteboardAccess(String meetingID, String requesterID, Boolean multiUser); void modifyWhiteboardAccess(String meetingID, String requesterID, Boolean multiUser);
void isWhiteboardEnabled(String meetingID, String requesterID, String replyTo); void getWhiteboardAccess(String meetingID, String requesterID);


// Caption // Caption
void sendCaptionHistory(String meetingID, String requesterID); void sendCaptionHistory(String meetingID, String requesterID);
Expand Down
Expand Up @@ -4,7 +4,7 @@


import org.bigbluebutton.common.messages.ClearWhiteboardRequestMessage; import org.bigbluebutton.common.messages.ClearWhiteboardRequestMessage;
import org.bigbluebutton.common.messages.ModifyWhiteboardAccessRequestMessage; import org.bigbluebutton.common.messages.ModifyWhiteboardAccessRequestMessage;
import org.bigbluebutton.common.messages.IsWhiteboardEnabledRequestMessage; import org.bigbluebutton.common.messages.GetWhiteboardAccessRequestMessage;
import org.bigbluebutton.common.messages.MessagingConstants; import org.bigbluebutton.common.messages.MessagingConstants;
import org.bigbluebutton.common.messages.RequestWhiteboardAnnotationHistoryRequestMessage; import org.bigbluebutton.common.messages.RequestWhiteboardAnnotationHistoryRequestMessage;
import org.bigbluebutton.common.messages.SendWhiteboardAnnotationRequestMessage; import org.bigbluebutton.common.messages.SendWhiteboardAnnotationRequestMessage;
Expand Down Expand Up @@ -43,9 +43,9 @@ public void handleMessage(String pattern, String channel, String message) {
} else if (RequestWhiteboardAnnotationHistoryRequestMessage.REQUEST_WHITEBOARD_ANNOTATION_HISTORY_REQUEST.equals(messageName)) { } else if (RequestWhiteboardAnnotationHistoryRequestMessage.REQUEST_WHITEBOARD_ANNOTATION_HISTORY_REQUEST.equals(messageName)) {
RequestWhiteboardAnnotationHistoryRequestMessage msg = RequestWhiteboardAnnotationHistoryRequestMessage.fromJson(message); RequestWhiteboardAnnotationHistoryRequestMessage msg = RequestWhiteboardAnnotationHistoryRequestMessage.fromJson(message);
bbbInGW.requestWhiteboardAnnotationHistory(msg.meetingId, msg.requesterId, msg.whiteboardId, msg.replyTo); bbbInGW.requestWhiteboardAnnotationHistory(msg.meetingId, msg.requesterId, msg.whiteboardId, msg.replyTo);
} else if (IsWhiteboardEnabledRequestMessage.IS_WHITEBOARD_ENABLED_REQUEST.equals(messageName)) { } else if (GetWhiteboardAccessRequestMessage.GET_WHITEBOARD_ACCESS_REQUEST.equals(messageName)) {
IsWhiteboardEnabledRequestMessage msg = IsWhiteboardEnabledRequestMessage.fromJson(message); GetWhiteboardAccessRequestMessage msg = GetWhiteboardAccessRequestMessage.fromJson(message);
bbbInGW.isWhiteboardEnabled(msg.meetingId, msg.requesterId, msg.replyTo); bbbInGW.getWhiteboardAccess(msg.meetingId, msg.requesterId);
} else if (ModifyWhiteboardAccessRequestMessage.MODIFY_WHITEBOARD_ACCESS_REQUEST.equals(messageName)) { } else if (ModifyWhiteboardAccessRequestMessage.MODIFY_WHITEBOARD_ACCESS_REQUEST.equals(messageName)) {
ModifyWhiteboardAccessRequestMessage msg = ModifyWhiteboardAccessRequestMessage.fromJson(message); ModifyWhiteboardAccessRequestMessage msg = ModifyWhiteboardAccessRequestMessage.fromJson(message);
bbbInGW.modifyWhiteboardAccess(msg.meetingId, msg.requesterId, msg.multiUser); bbbInGW.modifyWhiteboardAccess(msg.meetingId, msg.requesterId, msg.multiUser);
Expand Down
Expand Up @@ -442,8 +442,8 @@ class BigBlueButtonInGW(
eventBus.publish(BigBlueButtonEvent(meetingID, new ModifyWhiteboardAccessRequest(meetingID, requesterID, multiUser))) eventBus.publish(BigBlueButtonEvent(meetingID, new ModifyWhiteboardAccessRequest(meetingID, requesterID, multiUser)))
} }


def isWhiteboardEnabled(meetingID: String, requesterID: String, replyTo: String) { def getWhiteboardAccess(meetingID: String, requesterID: String) {
eventBus.publish(BigBlueButtonEvent(meetingID, new IsWhiteboardEnabledRequest(meetingID, requesterID, replyTo))) eventBus.publish(BigBlueButtonEvent(meetingID, new GetWhiteboardAccessRequest(meetingID, requesterID)))
} }


/** /**
Expand Down
Expand Up @@ -149,7 +149,7 @@ class MeetingActor(val mProps: MeetingProperties,
case msg: ClearWhiteboardRequest => liveMeeting.handleClearWhiteboardRequest(msg) case msg: ClearWhiteboardRequest => liveMeeting.handleClearWhiteboardRequest(msg)
case msg: UndoWhiteboardRequest => liveMeeting.handleUndoWhiteboardRequest(msg) case msg: UndoWhiteboardRequest => liveMeeting.handleUndoWhiteboardRequest(msg)
case msg: ModifyWhiteboardAccessRequest => liveMeeting.handleModifyWhiteboardAccessRequest(msg) case msg: ModifyWhiteboardAccessRequest => liveMeeting.handleModifyWhiteboardAccessRequest(msg)
case msg: IsWhiteboardEnabledRequest => liveMeeting.handleIsWhiteboardEnabledRequest(msg) case msg: GetWhiteboardAccessRequest => liveMeeting.handleGetWhiteboardAccessRequest(msg)
case msg: SetRecordingStatus => liveMeeting.handleSetRecordingStatus(msg) case msg: SetRecordingStatus => liveMeeting.handleSetRecordingStatus(msg)
case msg: GetRecordingStatus => liveMeeting.handleGetRecordingStatus(msg) case msg: GetRecordingStatus => liveMeeting.handleGetRecordingStatus(msg)
case msg: StartCustomPollRequest => liveMeeting.handleStartCustomPollRequest(msg) case msg: StartCustomPollRequest => liveMeeting.handleStartCustomPollRequest(msg)
Expand Down
Expand Up @@ -121,7 +121,7 @@ class MessageSenderActor(val service: MessageSender)
case msg: ClearWhiteboardEvent => handleClearWhiteboardEvent(msg) case msg: ClearWhiteboardEvent => handleClearWhiteboardEvent(msg)
case msg: UndoWhiteboardEvent => handleUndoWhiteboardEvent(msg) case msg: UndoWhiteboardEvent => handleUndoWhiteboardEvent(msg)
case msg: ModifiedWhiteboardAccessEvent => handleModifiedWhiteboardAccessEvent(msg) case msg: ModifiedWhiteboardAccessEvent => handleModifiedWhiteboardAccessEvent(msg)
case msg: IsWhiteboardEnabledReply => handleIsWhiteboardEnabledReply(msg) case msg: GetWhiteboardAccessReply => handleGetWhiteboardAccessReply(msg)
// breakout room cases // breakout room cases
case msg: BreakoutRoomsListOutMessage => handleBreakoutRoomsListOutMessage(msg) case msg: BreakoutRoomsListOutMessage => handleBreakoutRoomsListOutMessage(msg)
case msg: BreakoutRoomStartedOutMessage => handleBreakoutRoomStartedOutMessage(msg) case msg: BreakoutRoomStartedOutMessage => handleBreakoutRoomStartedOutMessage(msg)
Expand Down Expand Up @@ -716,8 +716,8 @@ class MessageSenderActor(val service: MessageSender)
service.send(MessagingConstants.FROM_WHITEBOARD_CHANNEL, json) service.send(MessagingConstants.FROM_WHITEBOARD_CHANNEL, json)
} }


private def handleIsWhiteboardEnabledReply(msg: IsWhiteboardEnabledReply) { private def handleGetWhiteboardAccessReply(msg: GetWhiteboardAccessReply) {
val json = WhiteboardMessageToJsonConverter.isWhiteboardEnabledReplyToJson(msg) val json = WhiteboardMessageToJsonConverter.getWhiteboardAccessReplyToJson(msg)
service.send(MessagingConstants.FROM_WHITEBOARD_CHANNEL, json) service.send(MessagingConstants.FROM_WHITEBOARD_CHANNEL, json)
} }


Expand Down
Expand Up @@ -179,7 +179,7 @@ case class GetWhiteboardShapesRequest(meetingID: String, requesterID: String, wh
case class ClearWhiteboardRequest(meetingID: String, requesterID: String, whiteboardId: String) extends InMessage case class ClearWhiteboardRequest(meetingID: String, requesterID: String, whiteboardId: String) extends InMessage
case class UndoWhiteboardRequest(meetingID: String, requesterID: String, whiteboardId: String) extends InMessage case class UndoWhiteboardRequest(meetingID: String, requesterID: String, whiteboardId: String) extends InMessage
case class ModifyWhiteboardAccessRequest(meetingID: String, requesterID: String, multiUser: Boolean) extends InMessage case class ModifyWhiteboardAccessRequest(meetingID: String, requesterID: String, multiUser: Boolean) extends InMessage
case class IsWhiteboardEnabledRequest(meetingID: String, requesterID: String, replyTo: String) extends InMessage case class GetWhiteboardAccessRequest(meetingID: String, requesterID: String) extends InMessage
case class GetAllMeetingsRequest(meetingID: String /** Not used. Just to satisfy trait **/ ) extends InMessage case class GetAllMeetingsRequest(meetingID: String /** Not used. Just to satisfy trait **/ ) extends InMessage


// Caption // Caption
Expand Down
Expand Up @@ -158,8 +158,8 @@ object MessageNames {
val SEND_WHITEBOARD_SHAPE = "send_whiteboard_shape_message" val SEND_WHITEBOARD_SHAPE = "send_whiteboard_shape_message"
val UNDO_WHITEBOARD_MESSAGE = "undo_whiteboard_message" val UNDO_WHITEBOARD_MESSAGE = "undo_whiteboard_message"
val MODIFIED_WHITEBOARD_ACCESS = "modified_whiteboard_access_message" val MODIFIED_WHITEBOARD_ACCESS = "modified_whiteboard_access_message"
val GET_WHITEBOARD_ACCESS_REPLY = "get_whiteboard_access_reply"
val WHITEBOARD_CLEARED = "whiteboard_cleared_message" val WHITEBOARD_CLEARED = "whiteboard_cleared_message"
val IS_WHITEBOARD_ENABLED_REPLY = "is_whiteboard_enabled_reply"
val MEETING_DESTROYED_EVENT = "meeting_destroyed_event" val MEETING_DESTROYED_EVENT = "meeting_destroyed_event"
val KEEP_ALIVE_REPLY = "keep_alive_reply" val KEEP_ALIVE_REPLY = "keep_alive_reply"
val USER_LISTEN_ONLY = "user_listening_only" val USER_LISTEN_ONLY = "user_listening_only"
Expand Down
Expand Up @@ -144,7 +144,7 @@ case class SendWhiteboardAnnotationEvent(meetingID: String, recorded: Boolean, r
case class ClearWhiteboardEvent(meetingID: String, recorded: Boolean, requesterID: String, whiteboardId: String, fullClear: Boolean) extends IOutMessage case class ClearWhiteboardEvent(meetingID: String, recorded: Boolean, requesterID: String, whiteboardId: String, fullClear: Boolean) extends IOutMessage
case class UndoWhiteboardEvent(meetingID: String, recorded: Boolean, requesterID: String, whiteboardId: String, shapeId: String) extends IOutMessage case class UndoWhiteboardEvent(meetingID: String, recorded: Boolean, requesterID: String, whiteboardId: String, shapeId: String) extends IOutMessage
case class ModifiedWhiteboardAccessEvent(meetingID: String, recorded: Boolean, requesterID: String, multiUser: Boolean) extends IOutMessage case class ModifiedWhiteboardAccessEvent(meetingID: String, recorded: Boolean, requesterID: String, multiUser: Boolean) extends IOutMessage
case class IsWhiteboardEnabledReply(meetingID: String, recorded: Boolean, requesterID: String, enabled: Boolean, replyTo: String) extends IOutMessage case class GetWhiteboardAccessReply(meetingID: String, recorded: Boolean, requesterID: String, multiUser: Boolean) extends IOutMessage
case class GetAllMeetingsReply(meetings: Array[MeetingInfo]) extends IOutMessage case class GetAllMeetingsReply(meetings: Array[MeetingInfo]) extends IOutMessage


// Caption // Caption
Expand Down
Expand Up @@ -70,8 +70,8 @@ trait WhiteboardApp {
outGW.send(new ModifiedWhiteboardAccessEvent(mProps.meetingID, mProps.recorded, msg.requesterID, msg.multiUser)) outGW.send(new ModifiedWhiteboardAccessEvent(mProps.meetingID, mProps.recorded, msg.requesterID, msg.multiUser))
} }


def handleIsWhiteboardEnabledRequest(msg: IsWhiteboardEnabledRequest) { def handleGetWhiteboardAccessRequest(msg: GetWhiteboardAccessRequest) {
val enabled = wbModel.isWhiteboardEnabled() val multiUser = wbModel.getWhiteboardAccess()
outGW.send(new IsWhiteboardEnabledReply(mProps.meetingID, mProps.recorded, msg.requesterID, enabled, msg.replyTo)) outGW.send(new GetWhiteboardAccessReply(mProps.meetingID, mProps.recorded, msg.requesterID, multiUser))
} }
} }
Expand Up @@ -8,9 +8,7 @@ case class AnnotationVO(id: String, status: String, shapeType: String, shape: sc
class WhiteboardModel { class WhiteboardModel {
private var _whiteboards = new HashMap[String, Whiteboard]() private var _whiteboards = new HashMap[String, Whiteboard]()


private var _multiUser = false; private var _multiUser = false

private var _enabled = true


private def saveWhiteboard(wb: Whiteboard) { private def saveWhiteboard(wb: Whiteboard) {
_whiteboards += wb.id -> wb _whiteboards += wb.id -> wb
Expand Down Expand Up @@ -136,7 +134,7 @@ class WhiteboardModel {
_multiUser = multiUser _multiUser = multiUser
} }


def isWhiteboardEnabled(): Boolean = { def getWhiteboardAccess(): Boolean = {
_enabled _multiUser
} }
} }
Expand Up @@ -85,13 +85,13 @@ object WhiteboardMessageToJsonConverter {
Util.buildJson(header, payload) Util.buildJson(header, payload)
} }


def isWhiteboardEnabledReplyToJson(msg: IsWhiteboardEnabledReply): String = { def getWhiteboardAccessReplyToJson(msg: GetWhiteboardAccessReply): String = {
val payload = new java.util.HashMap[String, Any]() val payload = new java.util.HashMap[String, Any]()
payload.put(Constants.MEETING_ID, msg.meetingID) payload.put(Constants.MEETING_ID, msg.meetingID)
payload.put(Constants.REQUESTER_ID, msg.requesterID) payload.put(Constants.REQUESTER_ID, msg.requesterID)
payload.put(Constants.ENABLE, msg.enabled) payload.put(Constants.MULTI_USER, msg.multiUser)


val header = Util.buildHeader(MessageNames.IS_WHITEBOARD_ENABLED_REPLY, Some(msg.replyTo)) val header = Util.buildHeader(MessageNames.GET_WHITEBOARD_ACCESS_REPLY, Some(msg.requesterID))
Util.buildJson(header, payload) Util.buildJson(header, payload)
} }
} }
Expand Up @@ -5,33 +5,32 @@
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import com.google.gson.JsonParser; import com.google.gson.JsonParser;


public class IsWhiteboardEnabledReplyMessage implements ISubscribedMessage { public class GetWhiteboardAccessReplyMessage implements ISubscribedMessage {


public static final String IS_WHITEBOARD_ENABLED_REPLY = "whiteboard_enabled_message"; public static final String GET_WHITEBOARD_ACCESS_REPLY = "get_whiteboard_access_reply";
public static final String VERSION = "0.0.1"; public static final String VERSION = "0.0.1";


public final String meetingId; public final String meetingId;
public final String requesterId; public final String requesterId;
public final boolean enabled; public final boolean multiUser;



public GetWhiteboardAccessReplyMessage(String meetingId, String requesterId, boolean multiUser) {
public IsWhiteboardEnabledReplyMessage(String meetingId, String requesterId, boolean enabled) {
this.meetingId = meetingId; this.meetingId = meetingId;
this.requesterId = requesterId; this.requesterId = requesterId;
this.enabled = enabled; this.multiUser = multiUser;
} }


public String toJson() { public String toJson() {
HashMap<String, Object> payload = new HashMap<String, Object>(); HashMap<String, Object> payload = new HashMap<String, Object>();
payload.put(Constants.MEETING_ID, meetingId); payload.put(Constants.MEETING_ID, meetingId);
payload.put(Constants.REQUESTER_ID, requesterId); payload.put(Constants.REQUESTER_ID, requesterId);
payload.put(Constants.ENABLED, enabled); payload.put(Constants.MULTI_USER, multiUser);


java.util.HashMap<String, Object> header = MessageBuilder.buildHeader(IS_WHITEBOARD_ENABLED_REPLY, VERSION, null); java.util.HashMap<String, Object> header = MessageBuilder.buildHeader(GET_WHITEBOARD_ACCESS_REPLY, VERSION, null);
return MessageBuilder.buildJson(header, payload); return MessageBuilder.buildJson(header, payload);
} }


public static IsWhiteboardEnabledReplyMessage fromJson(String message) { public static GetWhiteboardAccessReplyMessage fromJson(String message) {
JsonParser parser = new JsonParser(); JsonParser parser = new JsonParser();
JsonObject obj = (JsonObject) parser.parse(message); JsonObject obj = (JsonObject) parser.parse(message);
if (obj.has("header") && obj.has("payload")) { if (obj.has("header") && obj.has("payload")) {
Expand All @@ -40,16 +39,16 @@ public static IsWhiteboardEnabledReplyMessage fromJson(String message) {


if (header.has("name")) { if (header.has("name")) {
String messageName = header.get("name").getAsString(); String messageName = header.get("name").getAsString();
if (IS_WHITEBOARD_ENABLED_REPLY.equals(messageName)) { if (GET_WHITEBOARD_ACCESS_REPLY.equals(messageName)) {


if (payload.has(Constants.MEETING_ID) if (payload.has(Constants.MEETING_ID)
&& payload.has(Constants.REQUESTER_ID) && payload.has(Constants.REQUESTER_ID)
&& payload.has(Constants.ENABLED)) { && payload.has(Constants.MULTI_USER)) {
String meetingId = payload.get(Constants.MEETING_ID).getAsString(); String meetingId = payload.get(Constants.MEETING_ID).getAsString();
String requesterId = payload.get(Constants.REQUESTER_ID).getAsString(); String requesterId = payload.get(Constants.REQUESTER_ID).getAsString();
boolean enabled = payload.get(Constants.ENABLED).getAsBoolean(); boolean multiUser = payload.get(Constants.MULTI_USER).getAsBoolean();


return new IsWhiteboardEnabledReplyMessage(meetingId, requesterId, enabled); return new GetWhiteboardAccessReplyMessage(meetingId, requesterId, multiUser);
} }
} }
} }
Expand Down
Expand Up @@ -5,33 +5,28 @@
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import com.google.gson.JsonParser; import com.google.gson.JsonParser;


public class IsWhiteboardEnabledRequestMessage implements ISubscribedMessage { public class GetWhiteboardAccessRequestMessage implements ISubscribedMessage {
public static final String IS_WHITEBOARD_ENABLED_REQUEST = "is_whiteboard_enabled"; public static final String GET_WHITEBOARD_ACCESS_REQUEST = "get_whiteboard_access";
public static final String VERSION = "0.0.1"; public static final String VERSION = "0.0.1";


public final String meetingId; public final String meetingId;
public final String requesterId; public final String requesterId;
public final String replyTo;



public GetWhiteboardAccessRequestMessage(String meetingId, String requesterId) {
public IsWhiteboardEnabledRequestMessage(String meetingId,
String requesterId, String replyTo) {
this.meetingId = meetingId; this.meetingId = meetingId;
this.requesterId = requesterId; this.requesterId = requesterId;
this.replyTo = replyTo;
} }


public String toJson() { public String toJson() {
HashMap<String, Object> payload = new HashMap<String, Object>(); HashMap<String, Object> payload = new HashMap<String, Object>();
payload.put(Constants.MEETING_ID, meetingId); payload.put(Constants.MEETING_ID, meetingId);
payload.put(Constants.REQUESTER_ID, requesterId); payload.put(Constants.REQUESTER_ID, requesterId);
payload.put(Constants.REPLY_TO, replyTo);


java.util.HashMap<String, Object> header = MessageBuilder.buildHeader(IS_WHITEBOARD_ENABLED_REQUEST, VERSION, null); java.util.HashMap<String, Object> header = MessageBuilder.buildHeader(GET_WHITEBOARD_ACCESS_REQUEST, VERSION, null);
return MessageBuilder.buildJson(header, payload); return MessageBuilder.buildJson(header, payload);
} }


public static IsWhiteboardEnabledRequestMessage fromJson(String message) { public static GetWhiteboardAccessRequestMessage fromJson(String message) {
JsonParser parser = new JsonParser(); JsonParser parser = new JsonParser();
JsonObject obj = (JsonObject) parser.parse(message); JsonObject obj = (JsonObject) parser.parse(message);
if (obj.has("header") && obj.has("payload")) { if (obj.has("header") && obj.has("payload")) {
Expand All @@ -40,16 +35,13 @@ public static IsWhiteboardEnabledRequestMessage fromJson(String message) {


if (header.has("name")) { if (header.has("name")) {
String messageName = header.get("name").getAsString(); String messageName = header.get("name").getAsString();
if (IS_WHITEBOARD_ENABLED_REQUEST.equals(messageName)) { if (GET_WHITEBOARD_ACCESS_REQUEST.equals(messageName)) {

if (payload.has(Constants.MEETING_ID)
if (payload.has(Constants.MEETING_ID)
&& payload.has(Constants.REPLY_TO)
&& payload.has(Constants.REQUESTER_ID)) { && payload.has(Constants.REQUESTER_ID)) {
String meetingId = payload.get(Constants.MEETING_ID).getAsString(); String meetingId = payload.get(Constants.MEETING_ID).getAsString();
String requesterId = payload.get(Constants.REQUESTER_ID).getAsString(); String requesterId = payload.get(Constants.REQUESTER_ID).getAsString();
String replyTo = payload.get(Constants.REPLY_TO).getAsString();


return new IsWhiteboardEnabledRequestMessage(meetingId, requesterId, replyTo); return new GetWhiteboardAccessRequestMessage(meetingId, requesterId);
} }
} }
} }
Expand Down
Expand Up @@ -5,7 +5,7 @@


import org.bigbluebutton.common.messages.ClearWhiteboardReplyMessage; import org.bigbluebutton.common.messages.ClearWhiteboardReplyMessage;
import org.bigbluebutton.common.messages.GetWhiteboardShapesReplyMessage; import org.bigbluebutton.common.messages.GetWhiteboardShapesReplyMessage;
import org.bigbluebutton.common.messages.IsWhiteboardEnabledReplyMessage; import org.bigbluebutton.common.messages.GetWhiteboardAccessReplyMessage;
import org.bigbluebutton.common.messages.SendWhiteboardAnnotationReplyMessage; import org.bigbluebutton.common.messages.SendWhiteboardAnnotationReplyMessage;
import org.bigbluebutton.common.messages.UndoWhiteboardReplyMessage; import org.bigbluebutton.common.messages.UndoWhiteboardReplyMessage;
import org.bigbluebutton.common.messages.ModifiedWhiteboardAccessMessage; import org.bigbluebutton.common.messages.ModifiedWhiteboardAccessMessage;
Expand Down Expand Up @@ -47,12 +47,6 @@ public void handleWhiteboardMessage(String message) {
processClearWhiteboardReply(wcm); processClearWhiteboardReply(wcm);
} }
break; break;
case IsWhiteboardEnabledReplyMessage.IS_WHITEBOARD_ENABLED_REPLY:
IsWhiteboardEnabledReplyMessage iwe = IsWhiteboardEnabledReplyMessage.fromJson(message);
if (iwe != null) {
processIsWhiteboardEnabledReply(iwe);
}
break;
case GetWhiteboardShapesReplyMessage.GET_WHITEBOARD_SHAPES_REPLY: case GetWhiteboardShapesReplyMessage.GET_WHITEBOARD_SHAPES_REPLY:
GetWhiteboardShapesReplyMessage gwsrm = GetWhiteboardShapesReplyMessage.fromJson(message); GetWhiteboardShapesReplyMessage gwsrm = GetWhiteboardShapesReplyMessage.fromJson(message);
if (gwsrm != null) { if (gwsrm != null) {
Expand All @@ -71,6 +65,12 @@ public void handleWhiteboardMessage(String message) {
processModifiedWhiteboardAccessMessage(mwam); processModifiedWhiteboardAccessMessage(mwam);
} }
break; break;
case GetWhiteboardAccessReplyMessage.GET_WHITEBOARD_ACCESS_REPLY:
GetWhiteboardAccessReplyMessage gwa = GetWhiteboardAccessReplyMessage.fromJson(message);
if (gwa != null) {
processGetWhiteboardAccessReply(gwa);
}
break;
} }
} }
} }
Expand Down Expand Up @@ -116,22 +116,6 @@ private void processGetWhiteboardShapesReplyMessage(GetWhiteboardShapesReplyMess
service.sendMessage(m); service.sendMessage(m);
} }


private void processIsWhiteboardEnabledReply(IsWhiteboardEnabledReplyMessage msg) {
Map<String, Object> args = new HashMap<String, Object>();
args.put("enabled", msg.enabled);

Map<String, Object> message = new HashMap<String, Object>();
Gson gson = new Gson();
message.put("msg", gson.toJson(args));

DirectClientMessage m = new DirectClientMessage(msg.meetingId, msg.requesterId, "WhiteboardIsWhiteboardEnabledReply", message);
service.sendMessage(m);

// broadcast message
BroadcastClientMessage b = new BroadcastClientMessage(msg.meetingId, "WhiteboardIsWhiteboardEnabledReply", message);
service.sendMessage(b);
}

private void processClearWhiteboardReply(ClearWhiteboardReplyMessage msg) { private void processClearWhiteboardReply(ClearWhiteboardReplyMessage msg) {
Map<String, Object> args = new HashMap<String, Object>(); Map<String, Object> args = new HashMap<String, Object>();
args.put("whiteboardId", msg.whiteboardId); args.put("whiteboardId", msg.whiteboardId);
Expand Down Expand Up @@ -171,4 +155,16 @@ private void processModifiedWhiteboardAccessMessage(ModifiedWhiteboardAccessMess
BroadcastClientMessage b = new BroadcastClientMessage(msg.meetingId, "WhiteboardAccessModifiedCommand", message); BroadcastClientMessage b = new BroadcastClientMessage(msg.meetingId, "WhiteboardAccessModifiedCommand", message);
service.sendMessage(b); service.sendMessage(b);
} }

private void processGetWhiteboardAccessReply(GetWhiteboardAccessReplyMessage msg) {
Map<String, Object> args = new HashMap<String, Object>();
args.put("multiUser", msg.multiUser);

Map<String, Object> message = new HashMap<String, Object>();
Gson gson = new Gson();
message.put("msg", gson.toJson(args));

DirectClientMessage m = new DirectClientMessage(msg.meetingId, msg.requesterId, "WhiteboardGetWhiteboardAccessReply", message);
service.sendMessage(m);
}
} }
Expand Up @@ -263,8 +263,8 @@ public void modifyWhiteboardAccess(String meetingID, String requesterID, Boolean
sender.send(MessagingConstants.TO_WHITEBOARD_CHANNEL, msg.toJson()); sender.send(MessagingConstants.TO_WHITEBOARD_CHANNEL, msg.toJson());
} }


public void isWhiteboardEnabled(String meetingID, String requesterID, String replyTo) { public void getWhiteboardAccess(String meetingID, String requesterID) {
IsWhiteboardEnabledRequestMessage msg = new IsWhiteboardEnabledRequestMessage(meetingID, requesterID, replyTo); GetWhiteboardAccessRequestMessage msg = new GetWhiteboardAccessRequestMessage(meetingID, requesterID);
sender.send(MessagingConstants.TO_WHITEBOARD_CHANNEL, msg.toJson()); sender.send(MessagingConstants.TO_WHITEBOARD_CHANNEL, msg.toJson());
} }


Expand Down
Expand Up @@ -112,10 +112,8 @@ public void modifyWhiteboardAccess(String meetingID, String requesterID, Boolean
red5BBBInGW.modifyWhiteboardAccess(meetingID, requesterID, multiUser); red5BBBInGW.modifyWhiteboardAccess(meetingID, requesterID, multiUser);
} }


public void setIsWhiteboardEnabled(String meetingID, String requesterID) { public void getWhiteboardAccess(String meetingID, String requesterID) {
// Just hardcode as we don't really need it for flash client. (ralam may 7, 2014) red5BBBInGW.getWhiteboardAccess(meetingID, requesterID);
String replyTo = meetingID + "/" + requesterID;
red5BBBInGW.isWhiteboardEnabled(meetingID, requesterID, replyTo);
} }


} }
Expand Up @@ -129,10 +129,10 @@ public void modifyWhiteboardAccess(Map<String, Object> message) {
application.modifyWhiteboardAccess(meetingID, requesterID, multiUser); application.modifyWhiteboardAccess(meetingID, requesterID, multiUser);
} }


public void isWhiteboardEnabled() { public void getWhiteboardAccess() {
String meetingID = getMeetingId(); String meetingID = getMeetingId();
String requesterID = getBbbSession().getInternalUserID(); String requesterID = getBbbSession().getInternalUserID();
application.setIsWhiteboardEnabled(meetingID, requesterID); application.getWhiteboardAccess(meetingID, requesterID);
} }


private BigBlueButtonSession getBbbSession() { private BigBlueButtonSession getBbbSession() {
Expand Down

0 comments on commit 1a78091

Please sign in to comment.