diff --git a/endpoints/texto.js b/endpoints/texto.js old mode 100644 new mode 100755 index 90b9d53..a25dcfc --- a/endpoints/texto.js +++ b/endpoints/texto.js @@ -1,11 +1,11 @@ var parameters = require('../helpers/parameters'); var properties = require('../helpers/properties'); - +var db = require('../db/api'); var exec = require('child_process').exec, child; var uuid = require('node-uuid'); var fs = require('fs'); -function init(req, res) { +function init(req, res, Request) { var id = uuid.v4(); @@ -21,6 +21,22 @@ function init(req, res) { return; } + var request_object = new Request({ + id: id, + type: req.body.servico, + status: 'Submitted', + created_at: new Date(), + updated_at: new Date(), + }); + + db.create(request_object, function(result) { + if (result !== null) { + res.send(200, { 'status': 'Requisição ' + result.id + ' cadastrada com sucesso.'}); + } else { + res.send(500, { 'error': 'Erro na criação da requisição.'}); + } + }); + /* Cria a linha de comando */ var command_line = 'echo ' + req.body.texto + ' >> text_files/' + id + ' && mkdir uploads/' + id + ' && vlibras_user/vlibras-core/./vlibras ' + parameters.getServiceType(req.body.servico) + ' text_files/' + id + ' ' + parameters.getTransparency(req.body.transparencia) + ' ' + id + ' WEB > /tmp/core_log 2>&1'; @@ -34,12 +50,16 @@ function init(req, res) { /* Listener que dispara quando a requisição ao core finaliza */ child.on('close', function(code, signal){ - res.send(200, { 'response' : 'http://' + properties.SERVER_IP + ':' + properties.port + '/' + id + '.webm' }); +// res.send(200, { 'response' : 'http://' + properties.SERVER_IP + ':' + properties.port + '/' + id + '.webm' }); + db.update(request_object, 'Completed', function(result) { + }); }); /* Listener que dispara quando a requisição ao core da erro */ child.on('error', function(code, signal){ res.send(500, parameters.errorMessage('Erro na chamada ao core')); + db.update(request_object, 'Error', function(result) { + }); }); }; -- libgit2 0.21.2