Ability to choose which protocol to use (Websocket or WebRTC) with Netflux

This commit is contained in:
Yann Flory
2016-03-10 14:03:31 +01:00
parent b7885eb539
commit ae8f6f7f2c
8 changed files with 197 additions and 206 deletions

View File

@@ -62,7 +62,9 @@ app.get('/api/config', function(req, res){
res.setHeader('Content-Type', 'text/javascript');
res.send('define(' + JSON.stringify({
websocketURL:'ws' + ((httpsOpts) ? 's' : '') + '://' + host + ':' +
config.websocketPort + '/cryptpad_websocket'
config.websocketPort + '/cryptpad_websocket',
webrtcURL: (config.webrtcPort) ? 'ws' + ((httpsOpts) ? 's' : '') + '://' + host + ':' +
config.webrtcPort : ''
}) + ');');
});
@@ -72,16 +74,31 @@ httpServer.listen(config.httpPort,config.httpAddress,function(){
console.log('listening on %s',config.httpPort);
});
var wsConfig = { server: httpServer };
if (config.websocketPort !== config.httpPort) {
console.log("setting up a new websocket server");
wsConfig = { port: config.websocketPort};
if(config.websocketPort) {
var wsConfig = { server: httpServer };
if (config.websocketPort !== config.httpPort) {
console.log("setting up a new websocket server");
wsConfig = { port: config.websocketPort};
}
var wsSrv = new WebSocketServer(wsConfig);
Storage.create(config, function (store) {
console.log('DB connected');
// ChainPadSrv.create(wsSrv, store);
NetfluxSrv.run(store, wsSrv);
//WebRTCSrv.run(store, wsSrv);
});
}
if(config.webrtcPort) {
var wrConfig = { server: httpServer };
if (config.webrtcPort !== config.httpPort) {
console.log("setting up a new webrtc server");
wrConfig = { port: config.webrtcPort};
}
var wrSrv = new WebSocketServer(wrConfig);
WebRTCSrv.run(wrSrv);
// Storage.create(config, function (store) {
// console.log('DB connected for WebRTC');
// ChainPadSrv.create(wsSrv, store);
//NetfluxSrv.run(store, wsSrv);
// });
}
var wsSrv = new WebSocketServer(wsConfig);
Storage.create(config, function (store) {
console.log('DB connected');
// ChainPadSrv.create(wsSrv, store);
// NetfluxSrv.run(store, wsSrv);
WebRTCSrv.run(store, wsSrv);
});