Fixed some issues in server connected to login

master
Håvar Aambø Fosstveit 2018-10-31 11:55:36 +01:00
parent b56cbe7ae2
commit f39b315e1c
2 changed files with 32 additions and 11 deletions

View File

@ -133,9 +133,33 @@ class Room extends EventEmitter
this._lastN.push(peerName);
}
this._signalingPeers.set(peerName, signalingPeer);
this._handleSignalingPeer(signalingPeer);
}
authCallback(data)
{
logger.debug('authCallback()');
const {
peerName,
name,
picture
} = data;
const signalingPeer = this._signalingPeers.get(peerName);
if (signalingPeer)
{
signalingPeer.socket.emit('auth',
{
name : name,
picture : picture
});
}
}
_handleMediaRoom()
{
logger.debug('_handleMediaRoom()');

View File

@ -70,26 +70,23 @@ dataporten.setupLogout(app, '/logout');
app.get(
'/auth-callback',
dataporten.passport.authenticate('dataporten', { failureRedirect: '/login' }),
(req, res) =>
{
const state = JSON.parse(base64.decode(req.query.state));
if (rooms.has(state.roomId))
{
const room = rooms.get(state.roomId)._protooRoom;
if (room.hasPeer(state.peerName))
const data =
{
const peer = room.getPeer(state.peerName);
peerName : state.peerName,
name : req.user.data.displayName,
picture : req.user.data.photos[0]
};
peer.send('auth', {
name : req.user.data.displayName,
picture : req.user.data.photos[0]
});
}
const room = rooms.get(state.roomId);
room.authCallback(data);
}
res.send('');