-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.js
More file actions
39 lines (33 loc) · 1.2 KB
/
server.js
File metadata and controls
39 lines (33 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
var config = require('./config/app');
var express = require('express');
const redis = require('socket.io-redis');
var mongoose = require('mongoose');
const fs = require('fs');
mongoose.connect(config.mongoStorage.url, {
useMongoClient: true,
// /* other options */
});
var db = mongoose.connection;
db.on('error', function () {
throw new Error('MongoDB: Unable to connect to database at ' + config.mongoStorage.url);
});
var app = express(), io;
if(process.env.NODE_ENV == 'development' ||
process.env.NODE_ENV == 'test' ){
io = require('socket.io').listen(app.listen(config.port, config.IP));
io.adapter(redis(config.redis.url));
}else{
let caCert = fs.readFileSync("./redis-pushdeploy.cert");
let caKey = fs.readFileSync('redis-pushdeploy.key');
io = require('socket.io').listen(app.listen(config.port));
io.adapter(redis(config.redis.url, {tls: { cert: caCert, key: caKey}}));
}
require('./config/express')(app, config, io);
io.on("connection", (socket) => {
console.log(socket.user.name + " connected");
socket.emit("connected", "Live updates from pushdeploy is available");
socket.join(socket.user.uid);
socket.on("disconnect", () => {
console.log("Client disconnected");
});
});