31bded67f38f59fda0b592e9a8b51ea3dc457830
[archive/20170607/tools/tic.git] / app.js
1 var http = require('http');
2 var path = require('path');
3
4 var socketio = require('socket.io');
5 var fs = require('fs');
6 var express = require('express');
7 var bodyParser = require('body-parser');
8
9 var FileSystem = require('./server/fs/filesystem');
10 var Mic = require('./server/fs/mic');
11 var Router = require('./server/routes/router');
12
13 var app = express();
14 var server = http.createServer(app);
15 var io = socketio.listen(server);
16
17 app.set('port', process.env.PORT || 8081);
18 app.use(bodyParser.json());
19 app.use(bodyParser.urlencoded());
20
21 app.use(express.static(path.join(__dirname, '/public/src'))); //module directory
22 app.use('/api', Router);
23
24 server.listen(app.get('port'), process.env.IP || "0.0.0.0", function () {
25     var addr = server.address();
26     console.log('Server listening at', addr.address + ':' + addr.port);
27
28     FileSystem.init();
29 });
30
31 /* server - socket test
32    TODO: server side logic
33    - fs controllers(read/create)
34    - connection with MIC
35  */
36 io.on('connection', function (socket) {
37     console.log('socket connection');
38
39     socket.on('ws/fs/image/list/from', function (data) {
40         var msgData, fileList, targetDirectory;
41
42         msgData = {};
43         fileList = [];
44         targetDirectory = data.path;
45
46         // get the list of file
47         fileList = FileSystem.list(targetDirectory);
48
49         // set the list
50         msgData.list = fileList;
51
52         // send
53         socket.emit('ws/fs/image/list/to', msgData);
54     });
55
56     socket.on('ws/fs/image/add/from', function (data) {
57         console.log(data);
58         var msgData, ans;
59
60         msgData = {};
61
62         function sendMsg(msg) {
63             // send
64             socket.emit('ws/fs/image/add/to', msg);
65         }
66
67         // get the list of file
68         Mic.create(data, socket);
69     });
70
71     socket.on('ws/fs/image/download/from', function (data) {
72         console.log(data);
73
74     });
75
76     socket.on('disconnect', function () {
77         console.log('socket disconnect');
78     });
79
80     socket.on('message', function (msg) {
81         console.log('socket message');
82     });
83
84 });