let realtimedb-help build configuration from env vars (#526)

* let realtimedb-help build configuration from env vars

* update speech-utils version
This commit is contained in:
Hoan Luu Huu
2023-11-14 20:57:50 +07:00
committed by GitHub
parent 708c2c661f
commit 633237da1b
4 changed files with 20 additions and 56 deletions

View File

@@ -28,10 +28,6 @@ const JAMBONES_MYSQL_PORT = parseInt(process.env.JAMBONES_MYSQL_PORT, 10) || 330
const JAMBONES_MYSQL_REFRESH_TTL = parseInt(process.env.JAMBONES_MYSQL_REFRESH_TTL, 10) || 0; const JAMBONES_MYSQL_REFRESH_TTL = parseInt(process.env.JAMBONES_MYSQL_REFRESH_TTL, 10) || 0;
const JAMBONES_MYSQL_CONNECTION_LIMIT = parseInt(process.env.JAMBONES_MYSQL_CONNECTION_LIMIT, 10) || 10; const JAMBONES_MYSQL_CONNECTION_LIMIT = parseInt(process.env.JAMBONES_MYSQL_CONNECTION_LIMIT, 10) || 10;
/* redis */
const JAMBONES_REDIS_HOST = process.env.JAMBONES_REDIS_HOST;
const JAMBONES_REDIS_PORT = parseInt(process.env.JAMBONES_REDIS_PORT, 10) || 6379;
/* gather and hints */ /* gather and hints */
const JAMBONES_GATHER_EARLY_HINTS_MATCH = process.env.JAMBONES_GATHER_EARLY_HINTS_MATCH; const JAMBONES_GATHER_EARLY_HINTS_MATCH = process.env.JAMBONES_GATHER_EARLY_HINTS_MATCH;
const JAMBONZ_GATHER_EARLY_HINTS_MATCH = process.env.JAMBONZ_GATHER_EARLY_HINTS_MATCH; const JAMBONZ_GATHER_EARLY_HINTS_MATCH = process.env.JAMBONZ_GATHER_EARLY_HINTS_MATCH;
@@ -127,26 +123,6 @@ const HTTP_PROXY_PROTOCOL = process.env.JAMBONES_HTTP_PROXY_PROTOCOL || 'http';
const OPTIONS_PING_INTERVAL = parseInt(process.env.OPTIONS_PING_INTERVAL, 10) || 30000; const OPTIONS_PING_INTERVAL = parseInt(process.env.OPTIONS_PING_INTERVAL, 10) || 30000;
const JAMBONES_REDIS_SENTINELS = process.env.JAMBONES_REDIS_SENTINELS ? {
sentinels: process.env.JAMBONES_REDIS_SENTINELS.split(',').map((sentinel) => {
let host, port = 26379;
if (sentinel.includes(':')) {
const arr = sentinel.split(':');
host = arr[0];
port = parseInt(arr[1], 10);
} else {
host = sentinel;
}
return {host, port};
}),
name: process.env.JAMBONES_REDIS_SENTINEL_MASTER_NAME,
...(process.env.JAMBONES_REDIS_SENTINEL_PASSWORD && {
password: process.env.JAMBONES_REDIS_SENTINEL_PASSWORD
}),
...(process.env.JAMBONES_REDIS_SENTINEL_USERNAME && {
username: process.env.JAMBONES_REDIS_SENTINEL_USERNAME
})
} : null;
const JAMBONZ_RECORD_WS_BASE_URL = process.env.JAMBONZ_RECORD_WS_BASE_URL || process.env.JAMBONES_RECORD_WS_BASE_URL; const JAMBONZ_RECORD_WS_BASE_URL = process.env.JAMBONZ_RECORD_WS_BASE_URL || process.env.JAMBONES_RECORD_WS_BASE_URL;
const JAMBONZ_RECORD_WS_USERNAME = process.env.JAMBONZ_RECORD_WS_USERNAME || process.env.JAMBONES_RECORD_WS_USERNAME; const JAMBONZ_RECORD_WS_USERNAME = process.env.JAMBONZ_RECORD_WS_USERNAME || process.env.JAMBONES_RECORD_WS_USERNAME;
const JAMBONZ_RECORD_WS_PASSWORD = process.env.JAMBONZ_RECORD_WS_PASSWORD || process.env.JAMBONES_RECORD_WS_PASSWORD; const JAMBONZ_RECORD_WS_PASSWORD = process.env.JAMBONZ_RECORD_WS_PASSWORD || process.env.JAMBONES_RECORD_WS_PASSWORD;
@@ -170,9 +146,6 @@ module.exports = {
JAMBONZ_GATHER_EARLY_HINTS_MATCH, JAMBONZ_GATHER_EARLY_HINTS_MATCH,
JAMBONES_GATHER_CLEAR_GLOBAL_HINTS_ON_EMPTY_HINTS, JAMBONES_GATHER_CLEAR_GLOBAL_HINTS_ON_EMPTY_HINTS,
JAMBONES_FREESWITCH, JAMBONES_FREESWITCH,
JAMBONES_REDIS_HOST,
JAMBONES_REDIS_PORT,
JAMBONES_REDIS_SENTINELS,
SMPP_URL, SMPP_URL,
JAMBONES_NETWORK_CIDR, JAMBONES_NETWORK_CIDR,
JAMBONES_API_BASE_URL, JAMBONES_API_BASE_URL,

View File

@@ -8,9 +8,6 @@ const {
JAMBONES_MYSQL_CONNECTION_LIMIT, JAMBONES_MYSQL_CONNECTION_LIMIT,
JAMBONES_MYSQL_PORT, JAMBONES_MYSQL_PORT,
JAMBONES_FREESWITCH, JAMBONES_FREESWITCH,
JAMBONES_REDIS_HOST,
JAMBONES_REDIS_PORT,
JAMBONES_REDIS_SENTINELS,
SMPP_URL, SMPP_URL,
JAMBONES_TIME_SERIES_HOST, JAMBONES_TIME_SERIES_HOST,
JAMBONES_ESL_LISTEN_ADDRESS, JAMBONES_ESL_LISTEN_ADDRESS,
@@ -175,19 +172,13 @@ function installSrfLocals(srf, logger) {
retrieveByPatternSortedSet, retrieveByPatternSortedSet,
sortedSetLength, sortedSetLength,
sortedSetPositionByPattern sortedSetPositionByPattern
} = require('@jambonz/realtimedb-helpers')(JAMBONES_REDIS_SENTINELS || { } = require('@jambonz/realtimedb-helpers')({}, logger, tracer);
host: JAMBONES_REDIS_HOST,
port: JAMBONES_REDIS_PORT || 6379
}, logger, tracer);
const registrar = new Registrar(logger, client); const registrar = new Registrar(logger, client);
const { const {
synthAudio, synthAudio,
getNuanceAccessToken, getNuanceAccessToken,
getIbmAccessToken, getIbmAccessToken,
} = require('@jambonz/speech-utils')(JAMBONES_REDIS_SENTINELS || { } = require('@jambonz/speech-utils')({redis_client: client}, logger);
host: JAMBONES_REDIS_HOST,
port: JAMBONES_REDIS_PORT || 6379
}, logger, tracer);
const { const {
writeAlerts, writeAlerts,
AlertType AlertType

32
package-lock.json generated
View File

@@ -14,8 +14,8 @@
"@jambonz/db-helpers": "^0.9.1", "@jambonz/db-helpers": "^0.9.1",
"@jambonz/http-health-check": "^0.0.1", "@jambonz/http-health-check": "^0.0.1",
"@jambonz/mw-registrar": "^0.2.4", "@jambonz/mw-registrar": "^0.2.4",
"@jambonz/realtimedb-helpers": "^0.8.6", "@jambonz/realtimedb-helpers": "^0.8.7",
"@jambonz/speech-utils": "^0.0.25", "@jambonz/speech-utils": "^0.0.26",
"@jambonz/stats-collector": "^0.1.9", "@jambonz/stats-collector": "^0.1.9",
"@jambonz/time-series": "^0.2.8", "@jambonz/time-series": "^0.2.8",
"@jambonz/verb-specifications": "^0.0.45", "@jambonz/verb-specifications": "^0.0.45",
@@ -3136,28 +3136,28 @@
} }
}, },
"node_modules/@jambonz/realtimedb-helpers": { "node_modules/@jambonz/realtimedb-helpers": {
"version": "0.8.6", "version": "0.8.7",
"resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.8.6.tgz", "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.8.7.tgz",
"integrity": "sha512-ODKVVat2VAQheY13DjiAxiBBOmffMoeu3xviTjsTODr3ySZkqQZvSWU7N80pAIZvoiWG1UUEy9yI8D8mE4Jgiw==", "integrity": "sha512-gDq56YUd/SIx8Q9mJ+WEIfLCUcGNQ33A0iWKhhwMFwzqTESlhHjy97oQGr7BZVQGB8c0ZnqKIxuAv4ruI3ew7w==",
"dependencies": { "dependencies": {
"debug": "^4.3.4", "debug": "^4.3.4",
"ioredis": "^5.3.2" "ioredis": "^5.3.2"
} }
}, },
"node_modules/@jambonz/speech-utils": { "node_modules/@jambonz/speech-utils": {
"version": "0.0.25", "version": "0.0.26",
"resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.0.25.tgz", "resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.0.26.tgz",
"integrity": "sha512-ry0FbGjgXxhYOQXSnkXQN5/Num057w3zdYpX8modZubK5TsH0AhHNC+6ph0IQrvk7LcnNJfCDqtNbKQZYQ/OHA==", "integrity": "sha512-g5AdiPZGY1HnWJ8lbKwBbV5NcyPn8A1s6/IqQQ8sNCQzRyd/aveBI9FuOH1bIUNhwUDdMSXkyuxntUOt+/0TIw==",
"dependencies": { "dependencies": {
"@aws-sdk/client-polly": "^3.359.0", "@aws-sdk/client-polly": "^3.359.0",
"@google-cloud/text-to-speech": "^4.2.1", "@google-cloud/text-to-speech": "^4.2.1",
"@grpc/grpc-js": "^1.8.13", "@grpc/grpc-js": "^1.8.13",
"@jambonz/realtimedb-helpers": "^0.8.7",
"bent": "^7.3.12", "bent": "^7.3.12",
"debug": "^4.3.4", "debug": "^4.3.4",
"form-urlencoded": "^6.1.0", "form-urlencoded": "^6.1.0",
"google-protobuf": "^3.21.2", "google-protobuf": "^3.21.2",
"ibm-watson": "^8.0.0", "ibm-watson": "^8.0.0",
"ioredis": "^5.3.2",
"microsoft-cognitiveservices-speech-sdk": "^1.31.0", "microsoft-cognitiveservices-speech-sdk": "^1.31.0",
"openai": "^4.16.2", "openai": "^4.16.2",
"undici": "^5.21.0" "undici": "^5.21.0"
@@ -13400,28 +13400,28 @@
} }
}, },
"@jambonz/realtimedb-helpers": { "@jambonz/realtimedb-helpers": {
"version": "0.8.6", "version": "0.8.7",
"resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.8.6.tgz", "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.8.7.tgz",
"integrity": "sha512-ODKVVat2VAQheY13DjiAxiBBOmffMoeu3xviTjsTODr3ySZkqQZvSWU7N80pAIZvoiWG1UUEy9yI8D8mE4Jgiw==", "integrity": "sha512-gDq56YUd/SIx8Q9mJ+WEIfLCUcGNQ33A0iWKhhwMFwzqTESlhHjy97oQGr7BZVQGB8c0ZnqKIxuAv4ruI3ew7w==",
"requires": { "requires": {
"debug": "^4.3.4", "debug": "^4.3.4",
"ioredis": "^5.3.2" "ioredis": "^5.3.2"
} }
}, },
"@jambonz/speech-utils": { "@jambonz/speech-utils": {
"version": "0.0.25", "version": "0.0.26",
"resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.0.25.tgz", "resolved": "https://registry.npmjs.org/@jambonz/speech-utils/-/speech-utils-0.0.26.tgz",
"integrity": "sha512-ry0FbGjgXxhYOQXSnkXQN5/Num057w3zdYpX8modZubK5TsH0AhHNC+6ph0IQrvk7LcnNJfCDqtNbKQZYQ/OHA==", "integrity": "sha512-g5AdiPZGY1HnWJ8lbKwBbV5NcyPn8A1s6/IqQQ8sNCQzRyd/aveBI9FuOH1bIUNhwUDdMSXkyuxntUOt+/0TIw==",
"requires": { "requires": {
"@aws-sdk/client-polly": "^3.359.0", "@aws-sdk/client-polly": "^3.359.0",
"@google-cloud/text-to-speech": "^4.2.1", "@google-cloud/text-to-speech": "^4.2.1",
"@grpc/grpc-js": "^1.8.13", "@grpc/grpc-js": "^1.8.13",
"@jambonz/realtimedb-helpers": "^0.8.7",
"bent": "^7.3.12", "bent": "^7.3.12",
"debug": "^4.3.4", "debug": "^4.3.4",
"form-urlencoded": "^6.1.0", "form-urlencoded": "^6.1.0",
"google-protobuf": "^3.21.2", "google-protobuf": "^3.21.2",
"ibm-watson": "^8.0.0", "ibm-watson": "^8.0.0",
"ioredis": "^5.3.2",
"microsoft-cognitiveservices-speech-sdk": "^1.31.0", "microsoft-cognitiveservices-speech-sdk": "^1.31.0",
"openai": "^4.16.2", "openai": "^4.16.2",
"undici": "^5.21.0" "undici": "^5.21.0"

View File

@@ -30,8 +30,8 @@
"@jambonz/db-helpers": "^0.9.1", "@jambonz/db-helpers": "^0.9.1",
"@jambonz/http-health-check": "^0.0.1", "@jambonz/http-health-check": "^0.0.1",
"@jambonz/mw-registrar": "^0.2.4", "@jambonz/mw-registrar": "^0.2.4",
"@jambonz/realtimedb-helpers": "^0.8.6", "@jambonz/realtimedb-helpers": "^0.8.7",
"@jambonz/speech-utils": "^0.0.25", "@jambonz/speech-utils": "^0.0.26",
"@jambonz/stats-collector": "^0.1.9", "@jambonz/stats-collector": "^0.1.9",
"@jambonz/time-series": "^0.2.8", "@jambonz/time-series": "^0.2.8",
"@jambonz/verb-specifications": "^0.0.45", "@jambonz/verb-specifications": "^0.0.45",