restructure gather a bit

This commit is contained in:
akirilyuk
2022-02-03 22:01:29 +01:00
parent 017bc39103
commit 22dad4eed6
2 changed files with 14 additions and 10 deletions

View File

@@ -100,16 +100,28 @@ class TaskGather extends Task {
try {
if (this.sayTask) {
this.logger.debug('Gather: kicking off say task');
if (this.input.includes('speech') && this.listenDuringPrompt) {
await this._initSpeech(cs, ep);
this._startTranscribing(ep);
updateSpeechCredentialLastUsed(this.sttCredentials.speech_credential_sid)
.catch(() => {/*already logged error */});
}
this.sayTask.exec(cs, ep);
this.sayTask.on('playDone', async(err) => {
if (err) return this.logger.error({err}, 'Gather:exec Error playing tts');
this.logger.debug('Gather: say task completed');
if (!this.killed) {
startListening(cs, ep);
startListening(cs, ep);
}
});
}
else if (this.playTask) {
if (this.listenDuringPrompt && this.input.includes('speech')) {
await this._initSpeech(cs, ep);
this._startTranscribing(ep);
updateSpeechCredentialLastUsed(this.sttCredentials.speech_credential_sid)
.catch(() => {/*already logged error */});
}
this.playTask.exec(cs, ep); // kicked off, _not_ waiting for it to complete
this.playTask.on('playDone', async(err) => {
if (err) return this.logger.error({err}, 'Gather:exec Error playing url');
@@ -120,13 +132,6 @@ class TaskGather extends Task {
}
else startListening(cs, ep);
if (this.input.includes('speech') && this.listenDuringPrompt) {
await this._initSpeech(cs, ep);
this._startTranscribing(ep);
updateSpeechCredentialLastUsed(this.sttCredentials.speech_credential_sid)
.catch(() => {/*already logged error */});
}
if (this.input.includes('digits') || this.dtmfBargein) {
ep.on('dtmf', this._onDtmf.bind(this, cs, ep));
}