2 var http = require('http');
3 var path = require('path');
5 var socketio = require('socket.io');
6 var fs = require('fs');
7 var express = require('express');
8 var bodyParser = require('body-parser');
10 var server = http.createServer(app);
11 var io = socketio.listen(server);
14 var Config = require('./config.json');
15 var FileSystem = require('./server/fs/filesystem');
16 var Mic = require('./server/fs/mic');
17 var Router = require('./server/routes/router');
20 app.set('port', process.env.PORT || Config.TIC_WEB.PORT);
21 app.use(bodyParser.json());
22 app.use(bodyParser.urlencoded({extended: true}));
23 app.use(express.static(path.join(__dirname, '/public/src'))); //module directory
24 app.use('/api', Router);
26 server.listen(app.get('port'), process.env.IP || "0.0.0.0", function () {
27 var addr = server.address();
28 console.log('Server listening at', addr.address + ':' + addr.port);
36 * Get package data from tic-core via RESTful API
40 app.post('/analysis', function(req, res) {
41 var postData = JSON.stringify(req.body);
42 var addr = server.address();
46 port: Config.TIC_CORE.PORT || addr.port + 1,
50 'Content-Type': 'application/json',
51 'Content-Length': Buffer.byteLength(postData)
56 var ticCoreReq = http.request(options, function (ticCoreRes) {
57 ticCoreRes.setEncoding('utf8');
58 ticCoreRes.on('data', function (chunk) {
61 ticCoreRes.on('end', function () {
66 ticCoreReq.write(postData);
73 * FileSystem controller (read/create)
76 io.on('connection', function (socket) {
77 console.log('socket connection');
79 socket.on('ws/fs/image/list/from', function (data) {
80 var msgData, fileList, targetDirectory;
84 targetDirectory = data.path;
86 // get the list of file
87 fileList = FileSystem.list(targetDirectory);
90 msgData.list = fileList;
93 socket.emit('ws/fs/image/list/to', msgData);
96 socket.on('ws/fs/image/add/from', function (data) {
102 function sendMsg(msg) {
104 socket.emit('ws/fs/image/add/to', msg);
107 // get the list of file
108 Mic.create(data, socket);
111 socket.on('ws/fs/image/download/from', function (data) {
116 socket.on('disconnect', function () {
117 console.log('socket disconnect');
120 socket.on('message', function (msg) {
121 console.log('socket message');