Skip to content
Snippets Groups Projects
Commit da76c71a authored by Richard Alam's avatar Richard Alam
Browse files

- allow mobile client to join meeting first

parent 6cd437f7
No related branches found
No related tags found
No related merge requests found
......@@ -179,6 +179,8 @@ package org.bigbluebutton.air.main.commands {
usersService.joinMeeting();
meetingData.users.userChangeSignal.add(userChangeListener);
joinMeetingTimeout = new Timer(5000, 1);
joinMeetingTimeout.addEventListener(TimerEvent.TIMER, onJoinMeetingTimeout);
joinMeetingTimeout.start();
......@@ -200,7 +202,7 @@ package org.bigbluebutton.air.main.commands {
// Query the server for chat, users, and presentation info
chatService.getGroupChats();
presentationService.getPresentationPods();
meetingData.users.userChangeSignal.add(successUsersAdded);
meetingData.users.usersAddedSignal.add(successUsersAdded);
usersService.queryForParticipants();
usersService.getLockSettings();
usersService.getRoomLockState();
......@@ -216,8 +218,8 @@ package org.bigbluebutton.air.main.commands {
joiningMeetingFailure(DisconnectEnum.JOIN_MEETING_TIMEOUT);
}
protected function successUsersAdded(user:User2x, property:int):void {
meetingData.users.userChangeSignal.remove(successUsersAdded);
protected function successUsersAdded():void {
meetingData.users.usersAddedSignal.remove(successUsersAdded);
connectingFinishedSignal.dispatch();
}
......
......@@ -8,6 +8,8 @@ package org.bigbluebutton.air.user.models {
private var _userChangeSignal:Signal = new Signal();
private var _usersAddedSignal:Signal = new Signal();
private var _me:User2x;
public function get me():User2x {
......@@ -22,6 +24,10 @@ package org.bigbluebutton.air.user.models {
return _userChangeSignal;
}
public function get usersAddedSignal():Signal {
return _usersAddedSignal;
}
public function Users2x() {
_users = new ArrayCollection();
_me = new User2x();
......@@ -37,6 +43,7 @@ package org.bigbluebutton.air.user.models {
if (user.me) {
_me = user;
}
_userChangeSignal.dispatch(user, UserChangeEnum.JOIN);
}
}
......@@ -121,5 +128,16 @@ package org.bigbluebutton.air.user.models {
_userChangeSignal.dispatch(user, UserChangeEnum.ROLE);
}
}
public function addAllUsers(users:Array):void {
for (var i:int; i < users.length; i++) {
var newUser:User2x = users[i];
add(newUser);
}
_usersAddedSignal.dispatch();
}
}
}
......@@ -140,12 +140,16 @@ package org.bigbluebutton.air.user.services {
}
private function handleGetUsersMeetingRespMsg(msg:Object):void {
var users:Array = msg.body.users as Array;
for (var i:int; i < users.length; i++) {
var users:Array = msg.body.users as Array;
var newUsers:Array = new Array();
for (var i:int=0; i < users.length; i++) {
var newUser:Object = users[i];
addUser(newUser);
var user:User2x = toUser2x(newUser);
newUsers.push(user);
}
meetingData.users.addAllUsers(newUsers);
}
private function handleUserJoinedMeetingEvtMsg(msg:Object):void {
......@@ -292,5 +296,23 @@ package org.bigbluebutton.air.user.services {
meetingData.users.changeUserRole(userId, role);
chatMessagesSession.updatePartnerRole(userId, role);
}
private function toUser2x(newUser:Object):User2x {
var user:User2x = new User2x();
user.intId = newUser.intId;
user.extId = newUser.extId;
user.name = newUser.name;
user.role = newUser.role;
user.guest = newUser.guest;
user.authed = newUser.authed;
user.waitingForAcceptance = newUser.waitingForAcceptance;
user.emoji = newUser.emoji;
user.locked = newUser.locked;
user.presenter = newUser.presenter;
user.avatar = newUser.avatar;
user.me = user.intId == conferenceParameters.internalUserID;
return user;
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment