Skill - Transcription
Skill Type
PRE-POST PROCESS
Overview
When a Digital Person has the Transcription Skill, the conversation session is stored as a text file in the Customer’s secure Amazon S3 container with the user's requests and conversation responses. The transcript is updated throughout the conversation until the session ends.
This skill is:
Built and owned by Soul Machines Ltd.
Only supported in English.
Powered by the Amazon S3.
Limitations
Transcription Skill doesn't work with Wake Word Skill, Repeat Skill, and Translation Skill if added to the same project
The Digital Person cannot differentiate between users if added to a MS teams meeting
The time stamp is in UTC time zone
If the Digital Person in sleep mode, there will not be a response line from the Digital Person.
Transcription Files
The transcription files are located inside the S3 bucket with the files named in the format YYYYMMDDTHHMMSS_{SessionID}.txt
as shown below:
Sample transcription file:
Skill Demo
Transcription Skill Demo (No Audio)
Configurations
Provide the following information in the Transcription Skill configuration screen in Digital DNA Studio. See Adding Skills to your Digital Person for detailed instructions:
Field | Type | Description |
---|---|---|
AWS REGION REQUIRED |
| AWS region code based on where your Transcription Skill resource has been created. See this page for a list of region codes. Note: Make sure to use the region code. For example, you should enter |
AWS ROLE ARN REQUIRED |
| Enter the ARN from step 7 below. Format |
UNIQUE EXTERNAL ID THAT CONNECTS TO YOUR AWS ACCOUNT REQUIRED |
| Is the same as the External ID generated in step 3 below. |
NAME OF YOUR AWS S3 BUCKET REQUIRED |
| The name of the s3 bucket you would like the transcription files to be uploaded to |
Please contact your DevOps/CloudOps team to set up the Amazon 3 bucket and role necessary for the transcription skill configuration.
Creating AWS Role for Transcription Skill
Log into your AWS account where the S3 bucket is provisioned.
You will need to generate an External ID that our services will use as a unique identifier to connect to your S3 bucket, the External ID is any unique string that should be a minimum of 16 characters alpha-numeric string.
Go into the IAM tab in the AWS Console and click Roles > Create Role at the top right corner.
In the role creation screen, click Custom trust policy entity type and copy the below code block into the policy field, make sure to replace <
Your External ID
> with the string generated in step 3 and click Next.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::924390807111:role/SM_Transcription_Role"
]
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "<Your External ID>"
}
}
}
]
}
5. In the Add Permissions screen, click Create Policy and enter the below code:
Note: The S3 bucket(s) that the skill can access are listed in the Resource
section of the policy. If the bucket isn't listed there you will not be able to use it.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:ListBucket"],
"Resource": ["arn:aws:iam::924390807111:role/SM_Transcription_Role"]
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject"
],
"Resource": ["arn:aws:iam::924390807111:role/SM_Transcription_Role"]
}
]
}
6. Ensure to use the below value as the Role Name otherwise the bot will not be reachable using this Role (this is a case-sensitive value) and verify that all the other values (Aside from your unique External ID being different) match the code provided in step 4 and click Create Role.
SM_Transcription_Role
Â
7. Once the role is created, navigate to the SM_Transcription_Role
role under the Roles tab and you will be able to copy the Role ARN.
S3 Bucket Properties
You can find the details of the S3 bucket needed to configure the skill: