Commit 08782b4c87d1d1936dcff3d28952d995c898c7d0
1 parent
7f4b7b63
Exists in
master
and in
1 other branch
adiciona fila ao video rnp
Showing
1 changed file
with
29 additions
and
15 deletions
Show diff stats
endpoints/videornp.js
| ... | ... | @@ -8,6 +8,8 @@ var uuid = require('node-uuid'); |
| 8 | 8 | var mkdirp = require('mkdirp'); |
| 9 | 9 | var async = require('async'); |
| 10 | 10 | var _ = require('lodash'); |
| 11 | +var kue = require('kue'), | |
| 12 | + queue = kue.createQueue(); | |
| 11 | 13 | |
| 12 | 14 | function init(req, res, Request) { |
| 13 | 15 | res.set("Content-Type", "application/json"); |
| ... | ... | @@ -165,21 +167,33 @@ function callCoreSubtitle(id, subtitle, req, res, Request, request_object) { |
| 165 | 167 | var command_line = 'vlibras_user/vlibras-core/./vlibras -S ' + ' uploads/' + id + '/' + |
| 166 | 168 | req.files.legenda.name + ' -l portugues -b opaco --id' + id + ' --mode devel > /tmp/core_log 2>&1'; |
| 167 | 169 | |
| 168 | - /* Executa a linha de comando */ | |
| 169 | - child = exec(command_line, function(err, stdout, stderr) { | |
| 170 | - // [stdout] = vlibras-core output | |
| 171 | - // console.log(stdout); | |
| 172 | - }); | |
| 173 | - | |
| 174 | - /* Listener que dispara quando a requisição ao core finaliza */ | |
| 175 | - child.on('close', function(code, signal){ | |
| 176 | - res.send(200, { 'response' : 'http://' + properties.SERVER_IP + ':' + properties.port + '/' + id + '.flv' }); | |
| 177 | - }); | |
| 178 | - | |
| 179 | - /* Listener que dispara quando a requisição ao core da erro */ | |
| 180 | - child.on('error', function(code, signal){ | |
| 181 | - res.send(500, parameters.errorMessage('Erro na chamada ao core')); | |
| 182 | - }); | |
| 170 | + var child; | |
| 171 | + var job = queue.create('exec_command_line' + id, { | |
| 172 | + title: 'Command Line for: ' + req.body.servico, | |
| 173 | + command_line: command_line | |
| 174 | + }).removeOnComplete( true ).save(); | |
| 175 | + | |
| 176 | + queue.process('exec_command_line' + id, function(job, done){ | |
| 177 | + child = queue_helper.exec_command_line(job.data.command_line, done); | |
| 178 | + }); | |
| 179 | + | |
| 180 | + job.on('complete', function() { | |
| 181 | + /* Executa a linha de comando */ | |
| 182 | + child = exec(command_line, function(err, stdout, stderr) { | |
| 183 | + // [stdout] = vlibras-core output | |
| 184 | + // console.log(stdout); | |
| 185 | + }); | |
| 186 | + | |
| 187 | + /* Listener que dispara quando a requisição ao core finaliza */ | |
| 188 | + child.on('close', function(code, signal){ | |
| 189 | + res.send(200, { 'response' : 'http://' + properties.SERVER_IP + ':' + properties.port + '/' + id + '.flv' }); | |
| 190 | + }); | |
| 191 | + | |
| 192 | + /* Listener que dispara quando a requisição ao core da erro */ | |
| 193 | + child.on('error', function(code, signal){ | |
| 194 | + res.send(500, parameters.errorMessage('Erro na chamada ao core')); | |
| 195 | + }); | |
| 196 | + }); | |
| 183 | 197 | |
| 184 | 198 | } |
| 185 | 199 | ... | ... |