mirror of
https://github.com/jambonz/jambonz-feature-server.git
synced 2025-12-21 00:58:34 +00:00
wip
This commit is contained in:
@@ -89,11 +89,13 @@ class SttTask extends Task {
|
|||||||
}
|
}
|
||||||
else if (vendor == 'aws') {
|
else if (vendor == 'aws') {
|
||||||
/* get AWS access token */
|
/* get AWS access token */
|
||||||
const {accessKeyId, secretAccessKey, region } = credentials;
|
const {accessKeyId, secretAccessKey, securityToken, region } = credentials;
|
||||||
|
if (!securityToken) {
|
||||||
const { servedFromCache, ...newCredentials} = await getAwsAuthToken(accessKeyId, secretAccessKey, region);
|
const { servedFromCache, ...newCredentials} = await getAwsAuthToken(accessKeyId, secretAccessKey, region);
|
||||||
this.logger.debug({newCredentials}, `got aws security token ${servedFromCache ? 'from cache' : ''}`);
|
this.logger.debug({newCredentials}, `got aws security token ${servedFromCache ? 'from cache' : ''}`);
|
||||||
credentials = {...newCredentials, region};
|
credentials = {...newCredentials, region};
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return credentials;
|
return credentials;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -60,7 +60,13 @@ const stickyVars = {
|
|||||||
aws: [
|
aws: [
|
||||||
'AWS_VOCABULARY_NAME',
|
'AWS_VOCABULARY_NAME',
|
||||||
'AWS_VOCABULARY_FILTER_METHOD',
|
'AWS_VOCABULARY_FILTER_METHOD',
|
||||||
'AWS_VOCABULARY_FILTER_NAME'
|
'AWS_VOCABULARY_FILTER_NAME',
|
||||||
|
'AWS_LANGUAGE_MODEL_NAME',
|
||||||
|
'AWS_ACCESS_KEY_ID',
|
||||||
|
'AWS_SECRET_ACCESS_KEY',
|
||||||
|
'AWS_REGION',
|
||||||
|
'AWS_SECURITY_TOKEN',
|
||||||
|
'AWS_PII_ENTITY_TYPES'
|
||||||
],
|
],
|
||||||
nuance: [
|
nuance: [
|
||||||
'NUANCE_ACCESS_TOKEN',
|
'NUANCE_ACCESS_TOKEN',
|
||||||
@@ -491,17 +497,27 @@ module.exports = (logger) => {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
else if (['aws', 'polly'].includes(vendor)) {
|
else if (['aws', 'polly'].includes(vendor)) {
|
||||||
|
const {awsOptions = {}} = rOpts;
|
||||||
|
const vocabularyName = awsOptions.vocabularyName || rOpts.vocabularyName;
|
||||||
|
const vocabularyFilterName = awsOptions.vocabularyFilterName || rOpts.vocabularyFilterName;
|
||||||
|
const filterMethod = awsOptions.vocabularyFilterMethod || rOpts.filterMethod;
|
||||||
opts = {
|
opts = {
|
||||||
...opts,
|
...opts,
|
||||||
...(rOpts.vocabularyName && {AWS_VOCABULARY_NAME: rOpts.vocabularyName}),
|
...(vocabularyName && {AWS_VOCABULARY_NAME: vocabularyName}),
|
||||||
...(rOpts.vocabularyFilterName && {AWS_VOCABULARY_FILTER_NAME: rOpts.vocabularyFilterName}),
|
...(vocabularyFilterName && {AWS_VOCABULARY_FILTER_NAME: vocabularyFilterName}),
|
||||||
...(rOpts.filterMethod && {AWS_VOCABULARY_FILTER_METHOD: rOpts.filterMethod}),
|
...(filterMethod && {AWS_VOCABULARY_FILTER_METHOD: filterMethod}),
|
||||||
...(sttCredentials && {
|
...(sttCredentials && {
|
||||||
AWS_ACCESS_KEY_ID: sttCredentials.accessKeyId,
|
AWS_ACCESS_KEY_ID: sttCredentials.accessKeyId,
|
||||||
AWS_SECRET_ACCESS_KEY: sttCredentials.secretAccessKey,
|
AWS_SECRET_ACCESS_KEY: sttCredentials.secretAccessKey,
|
||||||
AWS_REGION: sttCredentials.region,
|
AWS_REGION: sttCredentials.region,
|
||||||
AWS_SESSION_TOKEN: sttCredentials.sessionToken
|
AWS_SECURITY_TOKEN: sttCredentials.securityToken
|
||||||
}),
|
}),
|
||||||
|
...(awsOptions.accessKey && {AWS_ACCESS_KEY_ID: awsOptions.accessKey}),
|
||||||
|
...(awsOptions.secretKey && {AWS_SECRET_ACCESS_KEY: awsOptions.secretKey}),
|
||||||
|
...(awsOptions.region && {AWS_REGION: awsOptions.region}),
|
||||||
|
...(awsOptions.securityToken && {AWS_SECURITY_TOKEN: awsOptions.securityToken}),
|
||||||
|
...(awsOptions.languageModelName && {AWS_LANGUAGE_MODEL_NAME: awsOptions.languageModelName}),
|
||||||
|
...(awsOptions.piiEntityTypes && {AWS_PII_ENTITY_TYPES: awsOptions.piiEntityTypes}),
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
else if ('microsoft' === vendor) {
|
else if ('microsoft' === vendor) {
|
||||||
@@ -810,6 +826,17 @@ module.exports = (logger) => {
|
|||||||
if (clientId && secret) return {client_id: clientId, secret};
|
if (clientId && secret) return {client_id: clientId, secret};
|
||||||
if (kryptonEndpoint) return {nuance_stt_uri: kryptonEndpoint};
|
if (kryptonEndpoint) return {nuance_stt_uri: kryptonEndpoint};
|
||||||
}
|
}
|
||||||
|
else if (recognizer.vendor === 'aws') {
|
||||||
|
const {accessKey, secretKey, region, securityToken} = recognizer.awsOptions || {};
|
||||||
|
if (accessKey || secretKey || region || securityToken) {
|
||||||
|
return {
|
||||||
|
accessKeyId: accessKey,
|
||||||
|
secretAccessKey: secretKey,
|
||||||
|
region,
|
||||||
|
securityToken
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
else if (recognizer.vendor === 'nvidia') {
|
else if (recognizer.vendor === 'nvidia') {
|
||||||
const {rivaUri} = recognizer.nvidiaOptions || {};
|
const {rivaUri} = recognizer.nvidiaOptions || {};
|
||||||
if (rivaUri) return {riva_uri: rivaUri};
|
if (rivaUri) return {riva_uri: rivaUri};
|
||||||
|
|||||||
828
package-lock.json
generated
828
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
22
package.json
22
package.json
@@ -31,19 +31,19 @@
|
|||||||
"@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.7",
|
"@jambonz/realtimedb-helpers": "^0.8.7",
|
||||||
"@jambonz/speech-utils": "^0.0.29",
|
"@jambonz/speech-utils": "^0.0.30",
|
||||||
"@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.46",
|
"@jambonz/verb-specifications": "^0.0.48",
|
||||||
"@opentelemetry/api": "^1.4.0",
|
"@opentelemetry/api": "^1.7.0",
|
||||||
"@opentelemetry/exporter-jaeger": "^1.9.0",
|
"@opentelemetry/exporter-jaeger": "^1.18.1",
|
||||||
"@opentelemetry/exporter-trace-otlp-http": "^0.35.0",
|
"@opentelemetry/exporter-trace-otlp-http": "^0.45.1",
|
||||||
"@opentelemetry/exporter-zipkin": "^1.9.0",
|
"@opentelemetry/exporter-zipkin": "^1.18.1",
|
||||||
"@opentelemetry/instrumentation": "^0.35.0",
|
"@opentelemetry/instrumentation": "^0.45.1",
|
||||||
"@opentelemetry/resources": "^1.9.0",
|
"@opentelemetry/resources": "^1.18.1",
|
||||||
"@opentelemetry/sdk-trace-base": "^1.9.0",
|
"@opentelemetry/sdk-trace-base": "^1.18.1",
|
||||||
"@opentelemetry/sdk-trace-node": "^1.9.0",
|
"@opentelemetry/sdk-trace-node": "^1.18.1",
|
||||||
"@opentelemetry/semantic-conventions": "^1.9.0",
|
"@opentelemetry/semantic-conventions": "^1.18.1",
|
||||||
"bent": "^7.3.12",
|
"bent": "^7.3.12",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"deepcopy": "^2.1.0",
|
"deepcopy": "^2.1.0",
|
||||||
|
|||||||
Reference in New Issue
Block a user