UNPKG

kurento-group-call

Version:

Simple javascript library used to initiate a group call (many to many video and audio call) using Kurento Media Server

47 lines (37 loc) 1.12 kB
'use strict'; var logger = require('./logger'); /* * Map of users registered in the system. */ function UserRegistry() { this.usersByName = {}; this.usersBySessionId = {}; } UserRegistry.prototype.getUserIds = function () { var ids = []; for (var id in this.usersByName) { ids.push( id ); } return ids; }; UserRegistry.prototype.register = function (userSession) { var userName = userSession.getUserName(); logger.info('register user ' + userName); this.usersByName[userName] = userSession; this.usersBySessionId[userSession.getSessionId()] = userSession; }; UserRegistry.prototype.getByName = function (userName) { return this.usersByName[userName]; }; UserRegistry.prototype.getBySessionId = function (sessionId) { return this.usersBySessionId[sessionId]; }; UserRegistry.prototype.removeBySession = function (sessionId) { var user = this.getBySessionId(sessionId); if (user) { delete this.usersByName[user.getUserName()]; delete this.usersBySessionId[sessionId]; return user; } }; module.exports = UserRegistry;