Files
JiboSDK/node_modules/jibo/lib/asr/asr-service.js
2026-03-22 03:21:45 +02:00

1 line
3.1 KiB
JavaScript

"use strict";var e=function(e){return e&&e.__esModule?e["default"]:e},r=function(){function e(e,r){for(var n in r){var t=r[n];t.configurable=!0,t.value&&(t.writable=!0)}Object.defineProperties(e,r)}return function(r,n,t){return n&&e(r.prototype,n),t&&e(r,t),r}}(),n=function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")},t=e(require("./asr-vars")),i=e(require("./audio-action")),o=e(require("./speaker-action")),s=e(require("./audio-source")),a=e(require("./recognizer")),c=e(require("./speaker-recognizer")),u=e(require("./end-of-speech-recognizer")),l=e(require("./cloud-recognizer")),g=e(require("./listener")),h=function(){function e(){n(this,e),this.isInitialized=!1,this.msgs=[]}return r(e,{Recognizer:{get:function(){return a}},EndOfSpeechRecognizer:{get:function(){return u}},CloudRecognizer:{get:function(){return l}},SpeakerRecognizer:{get:function(){return c}},init:{value:function(e,r){var n=this;try{this.socketUrl="ws:"+e.host+":"+e.port+"/port",this.audioUrl="http://"+e.host+":"+e.port+"/audio_source",this.asrInterfaceUrl="http://"+e.host+":"+e.port+"/asr_interface",this.speakerInterfaceUrl="http://"+e.host+":"+e.port+"/spkr_id_interface",this.socket=new WebSocket(this.socketUrl),this.loggingEnabled=!1,this.socket.onerror=function(){console.warn("error connecting to server")},this.socket.onmessage=function(e){var r=JSON.parse(e.data);for(n.msgs.push(r);!n.paused&&n.msgs.length;)n.processNextMessage()},this.alsaSource=new s(this.audioUrl),this.alsaSource.init(function(e){e&&console.warn(e),n.isInitialized=!0,r()})}catch(t){console.warn(t)}}},pause:{value:function(){this.paused=!0}},resume:{value:function(){for(this.paused=!1;this.msgs.length;)this.processNextMessage()}},processNextMessage:{value:function(){this.processMessage(this.msgs.shift())}},processMessage:{value:function(e){this.loggingEnabled&&(console.log("----------------------"),console.log(e));var r=t.idToAction[e.task_id],n=t.idToRecognizer[e.simple_recog_name];return"normal"!==e.status?void("error"===e.status&&r?(console.warn("ASR Service returned error response. Check ASR debug"),r.emit("error",e.message)):"received"===e.status&&this.loggingEnabled&&console.log("received ASR message")):"Speaker ID TD"===e.simple_recog_name?void r.emit("speakerid",e):e.final_simple?n?void n.onResult(e):void console.warn("Could not find recognizer with name "+e.simple_recog_name):e.final_composite?(r||console.warn("Could not find action with name "+e.task_id),r.emit("finished"),void r.clear()):void(e.utterances&&e.utterances.length>0&&n&&n.onIncremental&&n.onIncremental(e))}},createWavSource:{value:function(e){return this.wavSource=new s(this.audioUrl,e),this.wavSource}},createWavAction:{value:function(){var e=new i(this.asrInterfaceUrl);return this.wavSource.link(e),e}},createAudioAction:{value:function(){var e=new i(this.asrInterfaceUrl);return this.alsaSource.link(e),e}},createSpeakerAction:{value:function(){var e=new o(this.speakerInterfaceUrl);return this.alsaSource.link(e),e}},setLogging:{value:function(e){this.loggingEnabled=e}},createListener:{value:function(e,r){return new g(e,r)}}}),e}(),f=new h;module.exports=f;