mirror of
https://github.com/jambonz/jambonz-feature-server.git
synced 2025-12-20 16:50:39 +00:00
Feat/fallback speech 02 (#429)
* feat fallback speech * feat fallback speech * feat fallback speech * gather verb * fix * wip * wip * wip * wip * wip * transcribe * transcribe * fix * wip * wip * wip * wip * fix * wip * fix
This commit is contained in:
@@ -180,6 +180,13 @@ class CallSession extends Emitter {
|
||||
this.application.speech_synthesis_vendor = vendor;
|
||||
}
|
||||
|
||||
get fallbackSpeechSynthesisVendor() {
|
||||
return this.application.fallback_speech_synthesis_vendor;
|
||||
}
|
||||
set fallbackSpeechSynthesisVendor(vendor) {
|
||||
this.application.fallback_speech_synthesis_vendor = vendor;
|
||||
}
|
||||
|
||||
/**
|
||||
* default label to use for speech synthesis if not provided in the app
|
||||
*/
|
||||
@@ -189,6 +196,13 @@ class CallSession extends Emitter {
|
||||
set speechSynthesisLabel(label) {
|
||||
this.application.speech_synthesis_label = label;
|
||||
}
|
||||
|
||||
get fallbackSpeechSynthesisLabel() {
|
||||
return this.application.fallback_speech_synthesis_label;
|
||||
}
|
||||
set fallbackSpeechSynthesisLabel(label) {
|
||||
this.application.fallback_speech_synthesis_label = label;
|
||||
}
|
||||
/**
|
||||
* default voice to use for speech synthesis if not provided in the app
|
||||
*/
|
||||
@@ -198,6 +212,13 @@ class CallSession extends Emitter {
|
||||
set speechSynthesisVoice(voice) {
|
||||
this.application.speech_synthesis_voice = voice;
|
||||
}
|
||||
|
||||
get fallbackSpeechSynthesisVoice() {
|
||||
return this.application.fallback_speech_synthesis_voice;
|
||||
}
|
||||
set fallbackSpeechSynthesisVoice(voice) {
|
||||
this.application.fallback_speech_synthesis_voice = voice;
|
||||
}
|
||||
/**
|
||||
* default language to use for speech synthesis if not provided in the app
|
||||
*/
|
||||
@@ -208,6 +229,13 @@ class CallSession extends Emitter {
|
||||
this.application.speech_synthesis_language = language;
|
||||
}
|
||||
|
||||
get fallbackSpeechSynthesisLanguage() {
|
||||
return this.application.fallback_speech_synthesis_language;
|
||||
}
|
||||
set fallbackSpeechSynthesisLanguage(language) {
|
||||
this.application.fallback_speech_synthesis_language = language;
|
||||
}
|
||||
|
||||
/**
|
||||
* default vendor to use for speech recognition if not provided in the app
|
||||
*/
|
||||
@@ -217,6 +245,13 @@ class CallSession extends Emitter {
|
||||
set speechRecognizerVendor(vendor) {
|
||||
this.application.speech_recognizer_vendor = vendor;
|
||||
}
|
||||
|
||||
get fallbackSpeechRecognizerVendor() {
|
||||
return this.application.fallback_speech_recognizer_vendor;
|
||||
}
|
||||
set fallbackSpeechRecognizerVendor(vendor) {
|
||||
this.application.fallback_speech_recognizer_vendor = vendor;
|
||||
}
|
||||
/**
|
||||
* default vendor to use for speech recognition if not provided in the app
|
||||
*/
|
||||
@@ -226,6 +261,13 @@ class CallSession extends Emitter {
|
||||
set speechRecognizerLabel(label) {
|
||||
this.application.speech_recognizer_label = label;
|
||||
}
|
||||
|
||||
get fallbackSpeechRecognizerLabel() {
|
||||
return this.application.fallback_speech_recognizer_label;
|
||||
}
|
||||
set fallbackSpeechRecognizerLabel(label) {
|
||||
this.application.fallback_speech_recognizer_label = label;
|
||||
}
|
||||
/**
|
||||
* default language to use for speech recognition if not provided in the app
|
||||
*/
|
||||
@@ -236,6 +278,13 @@ class CallSession extends Emitter {
|
||||
this.application.speech_recognizer_language = language;
|
||||
}
|
||||
|
||||
get fallbackSpeechRecognizerLanguage() {
|
||||
return this.application.fallback_speech_recognizer_language;
|
||||
}
|
||||
set fallbackSpeechRecognizerLanguage(language) {
|
||||
this.application.fallback_speech_recognizer_language = language;
|
||||
}
|
||||
|
||||
/**
|
||||
* indicates whether the call currently in progress
|
||||
*/
|
||||
@@ -679,6 +728,10 @@ class CallSession extends Emitter {
|
||||
this.logger.info(`Speech credential vendor: ${credential.vendor}
|
||||
${credential.label ? `, label: ${credential.label}` : ''} is chosen`);
|
||||
if ('google' === vendor) {
|
||||
if (type === 'tts' && !credential.tts_tested_ok ||
|
||||
type === 'stt' && !credential.stt_tested_ok) {
|
||||
return;
|
||||
}
|
||||
try {
|
||||
const cred = JSON.parse(credential.service_key.replace(/\n/g, '\\n'));
|
||||
return {
|
||||
|
||||
Reference in New Issue
Block a user