This repo is public and held a long-lived AWS access key as repository secrets
(set 2023-11-22). It is replaced with short-lived credentials from the GitHub OIDC
provider; no AWS key and no account id remain in the repo.
create-test-db.js wrote {access_key_id, secret_access_key, aws_region} into the test
database as the aws speech credential, which sends speech-utils' getAwsAuthToken down
its access-key branch and calls GetSessionToken -- rejected by AWS for session
credentials. The role_arn branch calls AssumeRole instead, which accepts them, and is
already plumbed through db-utils.js, call-session.js and stt-task.js. The pinned
speech-utils 0.2.30 already supports it, so no dependency change is needed.
Fork pull requests receive neither secrets nor an OIDC token, so the credentials step
is guarded by a condition; the AWS tests then skip for forks exactly as they do today.
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
* fix to be more precise about removing custom event handlers so that when we stop a gather we dont also inadvertently stop a background transcribe as well
* test fixes
* fix: endpointing=false was being ignored for Deepgram
* initial changes for soniox
* changes to gather for soniox
* parse soniox stt results
* handle <end> token for soniox
* soniox: handle empty array of words
* support for soniox hints
* add soniox storage options
* update to verb specs
* add support for transcribe
* compile soniox transcripts
* gather: kill no input timer for soniox when we get interim results
* fix buffering of soniox transcripts
* fix for compiling soniox transcript
* another fix for compiling soniox transcript
* another fix
* handling of <end> token
* fix soniox bug
* gather: fixes for soniox continous asr
* fix undefined variable reference
* fix prev commit
* bugfix: allow verb_status requests
* gather: for soniox no need to restart transcription after final transcription received
* update verb specs
* update verb specs, fixes for continuous asr:
* initial changes to support deepgram stt
* fixes for normalizing vendor-specific transcriptions
* update to latest drachtio-fsmrf with support for deepgram stt
* deepgram parsing error
* hints support for deepgram
* handling deepgram errors
* ignore late arriving transcripts for deepgram
* handling of empty transcripts
* transcribe changes
* allow deepgram stt credentials to be provided at run time
* bind channel in transcription handler
* fixes for transcribe when handling empty transcripts
* more empty transcript fixes
* update tests to latest modules
* add test cases for deepgram speech recognition
* initial changes to gather to support nuance stt
* updateSpeechCredentialLastUsed could be called without a speech_credential_sid if credentials are passed in the flow
* fix bugname
* typo
* added handlers for nuance
* logging
* major refactor of parsing transcriptions
* initial support for nuance in transcribe verb
* updates from testing
* cleanup some tests
* update action
* typo
* gather: start nuance timers after say/play completes
* update drachtio-fsrmf
* refactor some code
* typo
* log nuance error detail
* timeout handling
* typo
* handle nuance 413 response when recognition times out
* typo in specs.json
* add support for nuance resources
* fixes and tests for transcribe
* remove logging from test
* initial support for kryptonEndpoint
* try getting access token even when using krypton
* typo in kryptonEndpoint property
* add support for Nuance tts
* parse nuance voice and model for tts
* use nuance credentials from db
* update to db-helpers@0.7.0 with caching option
* add support for azure audio logging in gather/transcribe
* sync package-lock.json