diff --git a/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/red5/UsersClientMessageSender.scala b/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/red5/UsersClientMessageSender.scala index 3cd9d37f7c6cc1793862fe06e8d3ebe8278a68f9..64dd0bfe184668ec990f3bb1b916ced9c86d32df 100755 --- a/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/red5/UsersClientMessageSender.scala +++ b/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/red5/UsersClientMessageSender.scala @@ -80,8 +80,6 @@ class UsersClientMessageSender(service: ConnectionInvokerService) extends OutMes message.put("msg", gson.toJson(args)) println("UsersClientMessageSender - handleRegisteredUser \n" + message.get("msg") + "\n") -// val m = new DirectClientMessage(msg.meetingID, msg.requesterId, "validateAuthTokenReply", message); -// service.sendMessage(m); } private def handleValidateAuthTokenReply(msg: ValidateAuthTokenReply) { @@ -283,27 +281,7 @@ class UsersClientMessageSender(service: ConnectionInvokerService) extends OutMes println("UsersClientMessageSender - handleUserJoined \n" + message.get("msg") + "\n") var m = new BroadcastClientMessage(msg.meetingID, "participantJoined", message); - service.sendMessage(m); - - //Anton: for user_joined_event ---start------------ - var usrJoinedEvent = new java.util.HashMap[String, Object]() - var id = "12345678" - var name = "TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT" - var user = new java.util.HashMap[String, Object]() - user.put("id", id) - user.put("name", name) - var payload = new java.util.HashMap[String, Object]() - payload.put("user", user) - usrJoinedEvent.put("payload", payload) - - var header = new java.util.HashMap[String, Any]() - header.put("name", "user_joined_event") - usrJoinedEvent.put("header", header) - println("UserJoinedEvent**NEW - " + gson.toJson(usrJoinedEvent) + "\n") - - var p = new BroadcastClientMessage(msg.meetingID, "user_joined_event", usrJoinedEvent); - service.sendMessage(p); - //Anton: for user_joined_event ---end------------ + service.sendMessage(m); } diff --git a/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/redis/UsersEventRedisPublisher.scala b/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/redis/UsersEventRedisPublisher.scala index 29f48851e7a61b8a433345c2ed80b660fec29129..129e1c5c03764c299caf06952efd2e837f0de250 100755 --- a/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/redis/UsersEventRedisPublisher.scala +++ b/bigbluebutton-apps/src/main/scala/org/bigbluebutton/core/apps/users/redis/UsersEventRedisPublisher.scala @@ -46,6 +46,96 @@ class UsersEventRedisPublisher(service: MessageSender) extends OutMessageListene println("UsersEventRedisPublisher: end handleUserJoined") service.send(MessagingConstants.BIGBLUEBUTTON_WEBHOOK_EVENTS, gson.toJson(map)); + + //Anton: for user_joined_event ---start------------ + println("UsersEventRedisPublisher: init handleUserJoined ***Anton") + + //HEADER + var header = new java.util.HashMap[String, Any]() + header.put("name", "user_joined_event") //not the same as MessagingConstants.USER_JOINED_EVENT + header.put("timestamp", "Mon, 31 Mar 2014 14:49:07 GMT") + header.put("source", "bbb-web") + var destination = new java.util.HashMap[String, String]() + destination.put("to", "apps_channel") + header.put("destination", destination) + + //PAYLOAD + var payload = new java.util.HashMap[String, Object]() + + var meeting = new java.util.HashMap[String, String]() + meeting.put("id", msg.meetingID) + meeting.put("name", "English 101") + payload.put("meeting", meeting) + + payload.put("session", "someSessionId") + + var user = new java.util.HashMap[String, Any]() + user.put("id", msg.user.userID) + user.put("external_id", msg.user.externUserID) + user.put("name", msg.user.name) + user.put("role", msg.user.role.toString()) + user.put("pin", 12345) + user.put("welcome_message", "Welcome to English 101") + user.put("logout_url", "http://www.example.com") + user.put("avatar_url", "http://www.example.com/avatar.png") + user.put("is_presenter", true) + + + var status = new java.util.HashMap[String, Boolean]() + status.put("hand_raised", false) + status.put("muted", false) + status.put("locked", false) + status.put("talking", false) + user.put("status", status) + + var caller_id = new java.util.HashMap[String, String]() + caller_id.put("name", "Juan Tamad") + caller_id.put("number", "011-63-917-555-1234") + user.put("caller_id", caller_id) + + var media_streams : Array[Object] = new Array[Object](3) + var audio = new java.util.HashMap[String, Any]() + audio.put("media_type", "audio") + audio.put("uri", "http://cdn.bigbluebutton.org/stream/a1234") + var meta = new java.util.HashMap[String, String]() //common among the 3 objects + meta.put("foo", "bar") + audio.put("metadata", meta) + + var video = new java.util.HashMap[String, Any]() + video.put("media_type", "video") + video.put("uri", "http://cdn.bigbluebutton.org/stream/v1234") + video.put("metadata", meta) + + var screen = new java.util.HashMap[String, Any]() + screen.put("media_type", "screen") + screen.put("uri", "http://cdn.bigbluebutton.org/stream/s1234") + screen.put("metadata", meta) + + media_streams(0) = audio + media_streams(1) = video + media_streams(2) = screen + + user.put("media_streams", media_streams) + + var metadata = new java.util.HashMap[String, String]() + metadata.put("student_id", "54321") + metadata.put("program", "engineering") + user.put("metadata", metadata) + + payload.put("user", user) + + var usrJoinedEvent = new java.util.HashMap[String, Object]() + usrJoinedEvent.put("header", header) + usrJoinedEvent.put("payload", payload) + + println("UserJoinedEvent**NEW - " + gson.toJson(usrJoinedEvent) + "\n") + + //Should we keep sending the message to both channels?! //TODO + service.send(MessagingConstants.PARTICIPANTS_CHANNEL, gson.toJson(usrJoinedEvent)); + println("UsersEventRedisPublisher: end handleUserJoined ***Anton") + + service.send(MessagingConstants.BIGBLUEBUTTON_WEBHOOK_EVENTS, gson.toJson(usrJoinedEvent)); + //Anton: for user_joined_event ---end------------ } private def handleUserLeft(msg: UserLeft) {