mirror of
https://github.com/jambonz/jambonz-feature-server.git
synced 2025-12-20 08:40:38 +00:00
wip: implemented listen, transcribe, play
This commit is contained in:
@@ -2,13 +2,15 @@ const Task = require('./task');
|
||||
const {TaskName} = require('../utils/constants');
|
||||
const errBadInstruction = new Error('invalid instruction payload');
|
||||
|
||||
function makeTask(logger, opts) {
|
||||
logger.debug(opts, 'makeTask');
|
||||
if (typeof opts !== 'object' || Array.isArray(opts)) throw errBadInstruction;
|
||||
const keys = Object.keys(opts);
|
||||
if (keys.length !== 1) throw errBadInstruction;
|
||||
function makeTask(logger, obj) {
|
||||
const keys = Object.keys(obj);
|
||||
if (!keys || keys.length !== 1) {
|
||||
throw errBadInstruction;
|
||||
}
|
||||
const name = keys[0];
|
||||
const data = opts[name];
|
||||
const data = obj[name];
|
||||
logger.debug(data, `makeTask: ${name}`);
|
||||
if (typeof data !== 'object') throw errBadInstruction;
|
||||
Task.validate(name, data);
|
||||
switch (name) {
|
||||
case TaskName.SipDecline:
|
||||
@@ -26,6 +28,12 @@ function makeTask(logger, opts) {
|
||||
case TaskName.Gather:
|
||||
const TaskGather = require('./gather');
|
||||
return new TaskGather(logger, data);
|
||||
case TaskName.Transcribe:
|
||||
const TaskTranscribe = require('./transcribe');
|
||||
return new TaskTranscribe(logger, data);
|
||||
case TaskName.Listen:
|
||||
const TaskListen = require('./listen');
|
||||
return new TaskListen(logger, data);
|
||||
}
|
||||
|
||||
// should never reach
|
||||
|
||||
Reference in New Issue
Block a user