fix possible undefined reference in precache audio (#662)

* fix possible undefined reference in precache audio

* fix parsing of JAMBONES_EAGERLY_PRE_CACHE_AUDIO
This commit is contained in:
Dave Horton
2024-02-22 07:58:41 -05:00
committed by GitHub
parent 51a379998f
commit d0ebe3f99f
2 changed files with 8 additions and 8 deletions

View File

@@ -130,7 +130,7 @@ const JAMBONZ_RECORD_WS_PASSWORD = process.env.JAMBONZ_RECORD_WS_PASSWORD || pro
const JAMBONZ_DISABLE_DIAL_PAI_HEADER = process.env.JAMBONZ_DISABLE_DIAL_PAI_HEADER || false; const JAMBONZ_DISABLE_DIAL_PAI_HEADER = process.env.JAMBONZ_DISABLE_DIAL_PAI_HEADER || false;
const JAMBONES_DISABLE_DIRECT_P2P_CALL = process.env.JAMBONES_DISABLE_DIRECT_P2P_CALL || false; const JAMBONES_DISABLE_DIRECT_P2P_CALL = process.env.JAMBONES_DISABLE_DIRECT_P2P_CALL || false;
const JAMBONES_EAGERLY_PRE_CACHE_AUDIO = process.env.JAMBONES_EAGERLY_PRE_CACHE_AUDIO; const JAMBONES_EAGERLY_PRE_CACHE_AUDIO = parseInt(process.env.JAMBONES_EAGERLY_PRE_CACHE_AUDIO, 10) || 0;
const JAMBONES_USE_FREESWITCH_TIMER_FD = process.env.JAMBONES_USE_FREESWITCH_TIMER_FD; const JAMBONES_USE_FREESWITCH_TIMER_FD = process.env.JAMBONES_USE_FREESWITCH_TIMER_FD;

View File

@@ -103,7 +103,7 @@ class TaskSay extends Task {
voice = this.options.voice_id || voice; voice = this.options.voice_id || voice;
} }
this.ep.set({ ep.set({
tts_engine: vendor, tts_engine: vendor,
tts_voice: voice, tts_voice: voice,
cache_speech_handles: 1, cache_speech_handles: 1,
@@ -179,7 +179,7 @@ class TaskSay extends Task {
} }
else { else {
this.logger.debug('a streaming tts api will be used'); this.logger.debug('a streaming tts api will be used');
const modifiedPath = filePath.replace('say:{', `say:{session-uuid=${this.ep.uuid},`); const modifiedPath = filePath.replace('say:{', `say:{session-uuid=${ep.uuid},`);
return modifiedPath; return modifiedPath;
} }
return filePath; return filePath;
@@ -261,12 +261,12 @@ class TaskSay extends Task {
} }
this.notifyStatus({event: 'start-playback'}); this.notifyStatus({event: 'start-playback'});
while (!this.killed && (this.loop === 'forever' || this.loop--) && this.ep?.connected) { while (!this.killed && (this.loop === 'forever' || this.loop--) && ep?.connected) {
let segment = 0; let segment = 0;
while (!this.killed && segment < filepath.length) { while (!this.killed && segment < filepath.length) {
if (cs.isInConference) { if (cs.isInConference) {
const {memberId, confName, confUuid} = cs; const {memberId, confName, confUuid} = cs;
await this.playToConfMember(this.ep, memberId, confName, confUuid, filepath[segment]); await this.playToConfMember(ep, memberId, confName, confUuid, filepath[segment]);
} }
else { else {
if (filepath[segment].startsWith('say:{')) { if (filepath[segment].startsWith('say:{')) {
@@ -274,7 +274,7 @@ class TaskSay extends Task {
if (arr) this.logger.debug(`Say:exec sending streaming tts request: ${arr[1].substring(0, 64)}..`); if (arr) this.logger.debug(`Say:exec sending streaming tts request: ${arr[1].substring(0, 64)}..`);
} }
else this.logger.debug(`Say:exec sending ${filepath[segment].substring(0, 64)}`); else this.logger.debug(`Say:exec sending ${filepath[segment].substring(0, 64)}`);
this.ep.once('playback-start', (evt) => { ep.once('playback-start', (evt) => {
this.logger.debug({evt}, 'got playback-start'); this.logger.debug({evt}, 'got playback-start');
if (this.otelSpan) { if (this.otelSpan) {
this.logger.debug({evt}, 'got playback-start'); this.logger.debug({evt}, 'got playback-start');
@@ -284,7 +284,7 @@ class TaskSay extends Task {
if (evt.variable_tts_cache_filename) cs.trackTmpFile(evt.variable_tts_cache_filename); if (evt.variable_tts_cache_filename) cs.trackTmpFile(evt.variable_tts_cache_filename);
} }
}); });
this.ep.once('playback-stop', (evt) => { ep.once('playback-stop', (evt) => {
this.logger.debug({evt}, 'got playback-stop'); this.logger.debug({evt}, 'got playback-stop');
if (evt.variable_tts_error) { if (evt.variable_tts_error) {
writeAlerts({ writeAlerts({
@@ -321,7 +321,7 @@ class TaskSay extends Task {
async kill(cs) { async kill(cs) {
super.kill(cs); super.kill(cs);
if (this.ep.connected) { if (this.ep?.connected) {
this.logger.debug('TaskSay:kill - killing audio'); this.logger.debug('TaskSay:kill - killing audio');
if (cs.isInConference) { if (cs.isInConference) {
const {memberId, confName} = cs; const {memberId, confName} = cs;