Synthesize to S3

  1. As we said before, we would like to store our sample call recordings in an Amazon S3 bucket. This is directly supported by Amazon Polly. When you click the Synthesize to S3 button (and you haven’t configured this before) you will see a dialog asking for details about storing the synthesized audio in Amazon S3. The things being asked for are:

    • The name of the bucket in which the audio file should be stored as Amazon S3 objects.
    • An optional prefix that should be used in every object key.
    • An optional SNS topic to send out explicit notifications to interested subscribers when a new audio file is stored. We will not make use of that in this workshop.


  2. Let’s create an Amazon S3 bucket now so that we can tell Amazon Polly to store the audio files there. In order to reach the Amazon S3 console, click Cancel first to exit the Change S3 synthesis task settings dialog. Then either click the AWS logo in the upper left corner of the screen or Services drop down that is directly next to it on the right. Either way, you can type in “s3” in the search field or find the service name directly in the list of AWS services, and click on it. This will bring you to the Amazon S3 console. amazon-polly.synthesize-to-s3.02

  3. Now click the Create bucket button. You can enter a name for your new bucket. Please be aware that there is a global bucket name spaces. That means that if someone else has already created a bucket with the same name that you’d like to use, it will not be possible. A good choice would be to use call-recordings-<your-aws-account-id> or a similar personal salt that you add to the bucket name (e.g. your initials, your birthdate).

    As region, please make sure you select the AWS region that is defined as the contact center region in this workshop. Then click the Next button in the lower right corner of the dialog. amazon-polly.synthesize-to-s3.03

  4. The next screen gives you some options to configure for your new bucket. Scroll down until you see the Default encryption option. amazon-polly.synthesize-to-s3.04

  5. Check the Automatically encrypt objects when they are stored in S3 option and select AWS-KMS as encryption option. As encryption key, select aws/s3 as shown below. Click the Next button in the lower right corner to continue. amazon-polly.synthesize-to-s3.05

  6. Leave everything unchanged on the next screen. Click the Next button to continue. You will land on the Review screen and can have a look once more at your settings. Click Create bucket when you’re ready and your bucket will be created.

  7. Go back to the Amazon Polly console and click again the Synthesize to S3 button. Enter the name of the bucket you just created. As S3 key prefix enter connect/. This is the same prefix that Amazon Connect uses to store call recordings. When we use the same prefix, we don’t have to distinguish between the source of our call recordings in most of the next labs. As said before, we’ll ignore the SNS topic option. Click on Synthesize to start the job. Amazon Polly will use the input text that is currently in the Plain text or SSML text field. In the screen shot below, it’s the default text for the default voice. amazon-polly.synthesize-to-s3.06

  8. The result will be a new synthesis task. You will be presented the meta data of this new task. amazon-polly.synthesize-to-s3.07

  9. When you click on the task ID, you will get to the list of S3 synthesis tasks. Once the task is completed, you see the S3 URL of the audio file that was created. amazon-polly.synthesize-to-s3.08

  10. Go to the Amazon S3 console and click the name of your bucket you created for these virtual call recordings. You will see a virtual folder called “connect”. Although connect/ is actually a prefix that you defined to be added to the key of your object, the Amazon S3 console visualizes segments in object keys that are delimited by / as virtual folders. Click on the virtual folder name and you will find the audio file that was just created. amazon-polly.synthesize-to-s3.09

  11. Create a few sample call recordings by repeating this procedure. As we later also want to run a sentiment analysis on the call recordings, make sure you have at least one recording with a very positive statement and at least one with a very negative statement in your samples collection.