-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.js
46 lines (36 loc) · 1.46 KB
/
app.js
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
40
41
42
43
44
45
46
/*eslint-env node*/
//------------------------------------------------------------------------------
// node.js starter application for Bluemix
//------------------------------------------------------------------------------
// This application uses express as its web server
// for more info, see: http://expressjs.com
var express = require('express');
// cfenv provides access to your Cloud Foundry environment
// for more info, see: https://www.npmjs.com/package/cfenv
var cfenv = require('cfenv');
// create a new express server
var app = express();
// serve the files out of ./public as our main files
app.use(express.static(__dirname + '/public'));
//http와 socket.io를 사용
var http = require ('http').Server(app);
var io = require('socket.io')(http);
io.on('connection', function(socket) {
console.log('Client connected');
socket.on('P', function(msg) {
console.log('P: ' + {'nick': socket.nick, 'text': msg});
io.emit('P', {'nick': socket.nick, 'text': msg});
});
socket.on('N', function(newnick) {
io.emit('P', {'nick': socket.nick, 'text': '-> <' + newnick + '>'});
socket.nick = newnick;
});
socket.nick = 'User' + Math.floor(Math.random() * 1000);
});
// get the app environment from Cloud Foundry
var appEnv = cfenv.getAppEnv();
// start server on the specified port and binding host
app.listen(appEnv.port, '0.0.0.0', function() {
// print a message when the server starts listening
console.log("server starting on " + appEnv.url);
});