diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f094585 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.DS_Store +node_modules +npm-debug.log +wikilibras_server +tmp/ diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..0cd97aa --- /dev/null +++ b/Makefile @@ -0,0 +1,22 @@ +install: + @read -p "Você deseja instalar o módulo Forever? (y/n) " choice; \ + if [ "$$choice" = "y" ]; then \ + sudo npm install -g forever \ + npm install \ + ln -s $$HOME wikilibras_server \ + else \ + npm install \ + ln -s $$HOME wikilibras_server \ + fi + +sym_link: + @ln -s $$HOME ./wikilibras_server + +run: + @forever start server.js + +stop: + @forever stop server.js + +list: + @forever list \ No newline at end of file diff --git a/endpoints/sinal.js b/endpoints/sinal.js new file mode 100644 index 0000000..05728fc --- /dev/null +++ b/endpoints/sinal.js @@ -0,0 +1,5 @@ +function initEndpoint(req, res) { + res.send(200, { 'status': 'Estrutura Montada :)'}); +}; + +module.exports.init = initEndpoint; \ No newline at end of file diff --git a/helpers/properties.js b/helpers/properties.js new file mode 100644 index 0000000..dfba5da --- /dev/null +++ b/helpers/properties.js @@ -0,0 +1,5 @@ +var host = '0.0.0.0'; +var port = 5001; + +module.exports.HOST = host; +module.exports.PORT = port; \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..cd44047 --- /dev/null +++ b/package.json @@ -0,0 +1,17 @@ +{ + "name": "wikilibras-api", + "version": "0.0.1", + "description": "An API for WikiLibras", + "main": "server.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "start": "node server.js" + }, + "author": "LAViD", + "license": "MIT", + "dependencies": { + "express": "~3.5.1", + "mkdirp": "^0.5.0", + "node-uuid": "^1.4.1" + } +} diff --git a/server.js b/server.js new file mode 100644 index 0000000..999dd77 --- /dev/null +++ b/server.js @@ -0,0 +1,36 @@ +/* Helpers */ +var properties = require('./helpers/properties'); + +/* Endpoints */ +var endpoint_sinal = require('./endpoints/sinal'); + +/* Environment */ +var path = require('path'); +var express = require('express'); +var app = express(); + +app.use(express.static(path.join(__dirname, '/videos'))); +app.use(express.bodyParser({ keepExtensions: true })); + +app.get('/', function(req, res) { + res.send(200, { 'status': 'server is running!' }); +}); + +app.post('/api', function(req, res) { + /* Verifica se o paramêtro [servico] existe ou possui algum valor */ + if ((req.body.servico === '') || (req.body.servico === undefined)) { + res.send(500, { 'error': 'Especifique o tipo do serviço' }); + return; + } + + /* Analisa o tipo de serviço requisitado */ + switch(req.body.servico) { + case 'sinal': + endpoint_sinal.init(req, res); + break; + } +}); + +app.listen(properties.PORT, properties.HOST, function() { + console.log('Server running on ' + properties.HOST + ':' + properties.PORT); +}); \ No newline at end of file diff --git a/videos/.gitempty b/videos/.gitempty new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/videos/.gitempty -- libgit2 0.21.2