kurento-group-call
Version:
Simple javascript library used to initiate a group call (many to many video and audio call) using Kurento Media Server
121 lines (104 loc) • 3.67 kB
Plain Text
diff --git a/example/server.js b/example/server.js
index bf21037..2bd9a4e 100755
--- a/example/server.js
+++ b/example/server.js
'use strict';
//mkdir node_modules/kurento-group-call && cp * node_modules/kurento-group-call && cp -r lib/ node_modules/kurento-group-call
-var kurentoGroupCall = require('kurento-group-call');
+var kurentoGroupCall = require('kurento-group-call');
var path = require('path');
var express = require('express');
-var session = require('express-session');
-var cookieParser = require('cookie-parser');
-var MemoryStore = session.MemoryStore;
+var MemoryStore = express.session.MemoryStore;
var minimist = require('minimist');
var url = require('url');
+var socketIo = require('socket.io');
var argv = minimist(process.argv.slice(2), {
var argv = minimist(process.argv.slice(2), {
var app = express();
-var parseCookie = cookieParser();
+var parseCookie = express.cookieParser();
var store = new MemoryStore();
-
-app.use(parseCookie);
-app.use(session({
+app.configure(function () {
+ app.use(parseCookie);
+ app.use(express.session({
store: store,
secret: '123456',
key: 'sid'
- })
- );
-
+ }));
+});
+app.get('/users', function (req, res) {
+ res.send('Hello World!');
+});
function initWebRtc(socket){
- var sessionId = socket.id;
- console.log('initWebRtc: sessionId=', sessionId );
- var sendMessage = function( messageName, data ) {
- socket.emit(messageName, data);
- };
- kurentoGroupCall.start('ws://52.17.163.149:8888/kurento', sessionId,
- sendMessage);
- socket.on('error', function(error){
- kurentoGroupCall.onError(error, sessionId);
- });
- socket.on('close', function(){
- kurentoGroupCall.onClose(sessionId);
- });
- socket.on('incomingCallAnswer', function(data){
- kurentoGroupCall.onIncomingCallAnswer(data, sessionId, sendMessage);
- });
- socket.on('message', function(data){
- kurentoGroupCall.onMessage(data, sessionId, sendMessage);
- });
+ var sessionId = socket.client.user._id;
+ kurentoGroupCall.start(argv.ws_uri, sessionId, socket.emit);
+ socket.on('close', kurentoGroupCall.onClose);
+ socket.on('incomingCallAnswer', kurentoGroupCall.onIncomingCallAnswer);
+ socket.on('message', kurentoGroupCall.onMessage);
socket.on('inviteUsers', function(data){
console.log('inviteUsers: ', data.userIds);
function initWebRtc(socket){
var userId = data.userIds[i];
var socks = authenticatedSockets[userId];
if (socks) {
- console.log('inviteUsers: send incomingCall message', socks[0].id);
- socks[0].emit('incomingCall', { from: currentUserId, callId: data.callId } );
+ console.log('inviteUsers: send incomingCall message', socks[0].id);
+ socks[0].emit('incomingCall', { from: currentUserId, callId: data.callId } );
} else {
console.log('ERROR user not connected: userId=', userId);
}
function initWebRtc(socket){
});
};
-
-var initWebSockets = function(server) {
- console.log('initWebSockets:');
+initWebSockets = function(server) {
+ var io = socketIo(server);
+ io.on('connection', function (socket) {
+ logger('CONNECT');
+ initWebRtc(socket);
+ });
};
/*
var server = app.listen(port, function () {
console.log('Kurento Tutorial started');
console.log('Open ' + url.format(asUrl) +
' with a WebRTC capable browser');
+ initWebSockets(server);
});
-var io = require('socket.io').listen(server);
-io.on('connection', function (socket) {
- console.log('CONNECT');
- initWebRtc(socket);
-});