diff --git a/lib/controller/offline.js b/lib/controller/offline.js index 98bf3ec8bdee18d9a4b7f2e868c9f0fb2733bbd3..83b1516f11327a7287e64085ffc2c35ff80a01be 100644 --- a/lib/controller/offline.js +++ b/lib/controller/offline.js @@ -23,7 +23,7 @@ module.exports = config => { const uuidv1 = require('uuid/v1'); return { - transcript: (wavFile, enhancementlCallback) => { + transcript: (wavFile, model, enhancementlCallback) => { let port = config.port; if (process.env.OFFLINE_PORT !== undefined) { port = process.env.OFFLINE_PORT; @@ -45,7 +45,8 @@ module.exports = config => { filename: myUuidString, contentType: 'audio/x-wav' } - } + }, + model }, encoding: null }; diff --git a/lib/webserver/routes.js b/lib/webserver/routes.js index f64fa1bb8dd317845469b695dc6b62e21325af86..abf0b79a3bc58fca1a910435c6d371e31ac0374f 100644 --- a/lib/webserver/routes.js +++ b/lib/webserver/routes.js @@ -32,11 +32,15 @@ const routesFactory = config => { const stt = require('../controller/speech-to-text')(config.gstreamer); const offline = require('../controller/offline')(config.offline); - routes.post('/api/transcript', (req, res) => { + routes.post('/api/transcript/:model*?', (req, res) => { if (!req.body) { return res.status(badRequestCode).send('No files were uploaded.'); } + if (req.params.model === undefined) { + req.params.model = 'uc1'; + } + enhancer.enhancement(req.body, (err, response, body) => { if (err) { return res.status(interalServerCode).json({module: 'Enhancement', error: 'Error during audio enhancing', info: err.toString()}); @@ -45,7 +49,7 @@ const routesFactory = config => { } if (process.env.IS_OFFLINE === 'true' || (process.env.IS_OFFLINE === undefined && config.isOffline === true)) { - offline.transcript(body, (err, response, body) => { + offline.transcript(body, req.params.model, (err, response, body) => { if (err) { return res.status(interalServerCode).json({module: 'Offline transcription', error: 'Error during audio transcription', info: err.toString()}); } else if (response === undefined || body === undefined || response.statusCode !== successCode) { @@ -58,10 +62,10 @@ const routesFactory = config => { } const jsonStr = json.transcript.transcription; - const transcription = JSON.parse(json.transcript.transcription); let jsonResponse = {}; - try { + const transcription = JSON.parse(json.transcript.transcription); + jsonResponse = { status: 0, hypotheses: transcription.hypotheses,