Releases: aws-samples/amazon-transcribe-live-call-analytics
Releases · aws-samples/amazon-transcribe-live-call-analytics
v0.9.2
v0.9.1
v0.9.0
[0.9.0] - 2024-08-08
Fixed
- Stack deployment now fails fast if required Bedrock models are not available or enabled in the account/region
- Mic input role (CALLER vs. AGENT) assignment not working #169
- Missing call transcript download button #155
Added
- Support for Bedrock anthropic-claude-3-haiku and anthropic-claude-3-sonnet models (removed support for older models) #152
- Knowledge bases for Amazon Bedrock replaces Amazon Kendra for Agent Assist #157
- Option for single language auto-detection - using Amazon Transcribe's 'Identify Language' feature with optional list of possible language codes. #153
- Option for multiple language auto-detection - using Amazon Transcribe's 'Identify Multiple Languages' feature with optional list of possible language codes. #153
- Option to integrate Talkdesk Audio stream as a call data source (see Talkdesk) #174
- Ability to override default Transcribe language code using SIPREC Call initialization lambda hook #165
- Ability to specify multiple language-specific CustomVocabulary or CLM and associated logic to select the appropriate one based on dynamic LanguageCode when using SIPREC Call initialization lambda hook #165
- Simplified and more robust default demo agent recording and demo script for demos using Asterisk.
v0.8.13
[0.8.13] - 2024-05-22
Fixed
- #138: Very delayed transcripts when using CallTranscriberLambda
- #140: Very delayed transcripts when using Connect-KVS audio ingestion
[0.8.12] - 2024-05-20
Fixed
-
Expanded redaction support to include all languages (and dialects) on the Amazon Transcribe supported languages page.
-
Call Transcriber Lambda
- Refactor call end handling, to explicitly process ENDED messages from VoiceConnector, rather than imputing call end from stream data ending - adds robustness when stream can end (temporarily) for other reasons (such as call hold, etc.)
- Identified a situation where if a call chained across multiple lambda invocations (lasted longer than 12 minutes), the new timer we introduced that checks if the call ends would leak into the next lambda invocation. This would have no effect for a single long running call other than duplicate checks to DynamoDB—however—if the call ends and a NEW call uses that warm Lambda, the new call would inherit the timers and within 5 seconds mark the call as ended. To fix this, we made modifications by adding proper clean-up of timers when the call ends, and also double checking when the next call begins that the new Lambda did not inherit any calls.
- Added the callId to the log output, so that it is easier to trace calls.
- Added the request id of the next Lambda invocation in the output of the log, so that it makes it easier to trace sequential lambda invocations (chaining).
-
Websocket server and Stream Audio client
- Fix state management in Websocket server - add connection specific state variables to a global dictionary to maintain state for active connections
- Fix reconnection logic in Stream Audio websocket client - i.e. retrofit the fix from LMA.
- Clean up and streamline log formats in Websocket Server and Stream Audio client
- Reduce the amount of logs due to health checks. Health check is done every 10 seconds, logging status for each health check which creates huge amounts of log records in cloudwatch. To fix this - Log first health check message from each new source and then log every 2 minutes (interval controlled by a new environment variable which is not exposed in cloudformation, but can be directly updated in the ECS configuration by developers).
- Fix authentication code in Websocket client utility (utilites/webosocket-client)
v0.8.12
[0.8.12] - 2024-05-20
Fixed
-
Expanded redaction support to include all languages (and dialects) on the Amazon Transcribe supported languages page.
-
Call Transcriber Lambda
- Refactor call end handling, to explicitly process ENDED messages from VoiceConnector, rather than imputing call end from stream data ending - adds robustness when stream can end (temporarily) for other reasons (such as call hold, etc.)
- Identified a situation where if a call chained across multiple lambda invocations (lasted longer than 12 minutes), the new timer we introduced that checks if the call ends would leak into the next lambda invocation. This would have no effect for a single long running call other than duplicate checks to DynamoDB—however—if the call ends and a NEW call uses that warm Lambda, the new call would inherit the timers and within 5 seconds mark the call as ended. To fix this, we made modifications by adding proper clean-up of timers when the call ends, and also double checking when the next call begins that the new Lambda did not inherit any calls.
- Added the callId to the log output, so that it is easier to trace calls.
- Added the request id of the next Lambda invocation in the output of the log, so that it makes it easier to trace sequential lambda invocations (chaining).
-
Websocket server and Stream Audio client
- Fix state management in Websocket server - add connection specific state variables to a global dictionary to maintain state for active connections
- Fix reconnection logic in Stream Audio websocket client - i.e. retrofit the fix from LMA.
- Clean up and streamline log formats in Websocket Server and Stream Audio client
- Reduce the amount of logs due to health checks. Health check is done every 10 seconds, logging status for each health check which creates huge amounts of log records in Cloudwatch. To fix this - Log first health check message from each new source and then log every 2 minutes (interval controlled by a new environment variable which is not exposed in Cloudformation, but can be directly updated in the ECS configuration by developers).
- Fix authentication code in Websocket client utility (utilites/websocket-client)
v0.8.11
[0.8.11] - 2024-02-21
Fixed
- Added custom resource in the lca-websocket-stack that sets the ECS cluster's desired service count to zero, then deletes the service, before deleting the cluster. This will prevent errors in deleting the stack when disabling websockets or deleting LCA.
- Updated NodeJS version to 18
- Removed VPC flow logs from being enabled
- Fixed CloudFormation condition that incorrectly deployed PCA integration functions
- Fixed issue with call event processor not correctly parsing ChimeSDK Voice Connector metadata updates
Added
- New Cloudscape user interface
- Support for Amazon Connect Kinesis Video Streams as an audio ingestion source. See Amazon Connect KVS README for more details.
- Added names to VPCs for ease of locating them
v0.8.10
[0.8.10] - 2023-11-25
Added
- New! Websocket audio ingestion server (optional). Use it to enable audio streaming from a custom desktop client application, from the sample streaming app, or from the new LCA Web UI audio streaming client. See Websocket server.
- New! Sample audio streaming application which streams a stereo audio file from your desktop to LCA via the new websocket server. Use this to replay recordings, e.g. for testing transcription accuracy after CV/CLM changes, for testing agent assist features, etc. Or use the code as a reference implementation for building your own custom streaming app for LCA. See Websocket client app.
- New! Web UI audio streaming client built into the LCA UI. Use this to stream audio into LCA from (a) your computer microphone, and (b) from a local broswer tab that is running a softphone or meeting app, or playing an audio recording. See Web UI streaming client.
Fix
- publish.sh script now runs on MacOS (now works with GNU or BSD sed command).
v0.8.9
[0.8.9] - 2023-11-01
Added
- Allow customer to specify their own Voice Connector as a CloudFormation Template parameter. If the customer provided Voice Connector is provided, LCA will not deploy a new VC. (#102)
Fixed
- Fix LCA/PCA integration when using Chime SDK Call Analytics (PR #108, #102)
- Call recording player now appears when recording file is available 1-2 minutes after the call when using Chime SDK Call Analytics (#108)
- Prevent START_CALL_PROCESSING if call has already ended. This removes possibility that START CALL PROCESSING picks up re-purposed KVS streams for a different callId (PR #114)
- Reduce agent assist latency when using Connect / Contact Lens by processing Utterance rather than Transcript events (PR #113)
- Improved markdown formatting for demo script agent assist responses
- Addressed stack update issues with Chime SDK Voice Connector, demo Asterisk instance, & Bedrock boto3 layer
- Use latest QnAbot on AWS release (5.4.4) for Agent Assist
- Dependabot security updates
v0.8.8
[0.8.8] - 2023-10-10
Added
- Agent Assist bot can now generate a draft email from agent to caller, summarizing call and next steps
Fixed
- Fix #102 - Agent Assist bot widget stopped working - display is blank.
- Pull latest Qnabot Plugins submodule to get Bedrock embeddings function whitespace fix
v0.8.7
[0.8.7] - 2023-10-03
Added
- Generative transcript summarization and LLM powered Agent Assist are now enabled by default using Amazon Bedrock.
- Agent Assist generative answers are now enabled by default, using an Amazon Bedrock LLM model.
- Agent Assist now enables semantic similarity item matching by default, using an Amazon Bedrock Embeddings model.
- Generative transcript summarization now generates multiple call insight types.
- Generative transcript summarization and insights now customizable with configurable prompt templates.
- In-progress call summarization using the Agent Assist bot - quickly bring new agent or supervisor up to speed in transfer and escalation scenarios. Prompt templates are customizable using QnABot's content designer.
Fixed
- Race condition between Asterisk Server and Chime SDK Voice Connector setup
- Flawed timeout logic for long running summaries - PR#100
- Hung calls when using Chime Call Analytics when callId was modified using call initialization lambda - PR#97
- Contact Lens categories not displayed