These are the parameters that are required for TTS using Amazon Polly
Name | Description |
---|---|
Name | Name of the call feature |
Type | TTS_POLLY |
access_key | The access key for a user on the AWS account that has permissions to use Polly |
secret_key | The secret key for a user on the AWS account that has permissions to use Polly |
region | The region that the user with Polly permissions belongs to (e.g. eu-west-1) |
locale | The locale that this Call Feature will be used for. This is used to determine which TTS resource is used when a voice application attempts to do TTS. For further details on how locale works for call features, please refer to BAM Command Line Utility Call Features Panel. |
voice_id | The name of the voice to use. Please refer to the AWS Polly documentation for a list of available voices. |
engine | The engine type to use with the voice - some engine modes are not available with some voice_id - please refer to the Amazon documentation. Current options are "standard", "generative", "neural" and "long-form", but Amazon may add additional options in the future. Previous versions of AWS Polly did not have this set - older instances will automatically have this set to "standard" |
Description | Description of the call feature |
Weight | A value determining how often to use the Call Feature, when multiple features of the same functionality, locale and priority are present. The higher the weight in relation to weights of these other features, the more often this feature will be used. For more information on how BVR uses Weight and Priority to provide load balancing and redundancy, please refer to Weight and Priority usage in the Blueworx Platform |
Priority | Features with a lower priority value will be used before features with a higher priority value. Only if all relevant Call Features of a lower priority are DOWN will a higher priority number Call Feature be used. It is recommended to use bigger numbers when setting up priorities (i.e. 10, 20, 30 instead of 1, 2, 3) to allow for inserting Call Features inbetween existing priority levels. For more information on how BVR uses Weight and Priority to provide load balancing and redundancy, please refer to Weight and Priority usage in the Blueworx Platform |
Down Retry Interval | The amount of time before trying to use a Call Feature again once it has been determined to be DOWN. BVR will attempt to use it again sooner if no alternative options exist for the task on the application. |
Limitations when using Amazon Polly
At the time of writing, Amazon Polly supports 80 transactions per second per account. It is possible that this will be exceeded. If that happens, AWS will reject BVR's request to synthesise speech, which will appear in the error logs as "Rate Exceeded" and an error code of "ThrottlingException".
As an example:
2019/04/23 12:50:09.089 VC091431EA000008BE AMZ_TTS_PO [pool-2235-thread-3 - 7362] [T003595] WARNING Amazon Polly request failed: com.amazonaws.services.polly.model.AmazonPollyException: Rate exceeded (Service: AmazonPolly; Status Code: 400; Error Code: ThrottlingException; Request ID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
Note that exceeding the limit will result in the TTS session terminating.