tellform/config/socket.io.js

26 lines
851 B
JavaScript
Raw Normal View History

2016-06-07 00:37:09 +00:00
'use strict';
// Load the module dependencies
var config = require('./config'),
path = require('path'),
http = require('http'),
2016-06-07 20:19:19 +00:00
socketio = require('socket.io');
2016-06-07 00:37:09 +00:00
// Define the Socket.io configuration method
module.exports = function (app, db) {
var server = http.createServer(app);
var io = socketio(config.socketPort, { transports: ['websocket', 'polling'] });
var redis = require('socket.io-redis');
2016-12-01 00:29:44 +00:00
io.adapter(redis( process.env.REDIS_URL || { host: process.env.REDIS_DB_PORT_6379_TCP_ADDR || '127.0.0.1' , port: process.env.REDIS_DB_PORT_6379_TCP_PORT || 6379 }));
2016-06-07 00:37:09 +00:00
// Add an event listener to the 'connection' event
io.on('connection', function (socket) {
config.getGlobbedFiles('./app/sockets/**.js').forEach(function (socketConfiguration) {
require(path.resolve(socketConfiguration))(io, socket);
});
});
return server;
};