aws_sdk_transcribe/client/
start_call_analytics_job.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`StartCallAnalyticsJob`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`call_analytics_job_name(impl Into<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::call_analytics_job_name) / [`set_call_analytics_job_name(Option<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_call_analytics_job_name):<br>required: **true**<br><p>A unique name, chosen by you, for your Call Analytics job.</p> <p>This name is case sensitive, cannot contain spaces, and must be unique within an Amazon Web Services account. If you try to create a new job with the same name as an existing job, you get a <code>ConflictException</code> error.</p><br>
7    ///   - [`media(Media)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::media) / [`set_media(Option<Media>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_media):<br>required: **true**<br><p>Describes the Amazon S3 location of the media file you want to use in your Call Analytics request.</p><br>
8    ///   - [`output_location(impl Into<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::output_location) / [`set_output_location(Option<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_output_location):<br>required: **false**<br><p>The Amazon S3 location where you want your Call Analytics transcription output stored. You can use any of the following formats to specify the output location:</p> <ol>  <li>   <p>s3://DOC-EXAMPLE-BUCKET</p></li>  <li>   <p>s3://DOC-EXAMPLE-BUCKET/my-output-folder/</p></li>  <li>   <p>s3://DOC-EXAMPLE-BUCKET/my-output-folder/my-call-analytics-job.json</p></li> </ol> <p>Unless you specify a file name (option 3), the name of your output file has a default value that matches the name you specified for your transcription job using the <code>CallAnalyticsJobName</code> parameter.</p> <p>You can specify a KMS key to encrypt your output using the <code>OutputEncryptionKMSKeyId</code> parameter. If you do not specify a KMS key, Amazon Transcribe uses the default Amazon S3 key for server-side encryption.</p> <p>If you do not specify <code>OutputLocation</code>, your transcript is placed in a service-managed Amazon S3 bucket and you are provided with a URI to access your transcript.</p><br>
9    ///   - [`output_encryption_kms_key_id(impl Into<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::output_encryption_kms_key_id) / [`set_output_encryption_kms_key_id(Option<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_output_encryption_kms_key_id):<br>required: **false**<br><p>The KMS key you want to use to encrypt your Call Analytics output.</p> <p>If using a key located in the <b>current</b> Amazon Web Services account, you can specify your KMS key in one of four ways:</p> <ol>  <li>   <p>Use the KMS key ID itself. For example, <code>1234abcd-12ab-34cd-56ef-1234567890ab</code>.</p></li>  <li>   <p>Use an alias for the KMS key ID. For example, <code>alias/ExampleAlias</code>.</p></li>  <li>   <p>Use the Amazon Resource Name (ARN) for the KMS key ID. For example, <code>arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>.</p></li>  <li>   <p>Use the ARN for the KMS key alias. For example, <code>arn:aws:kms:region:account-ID:alias/ExampleAlias</code>.</p></li> </ol> <p>If using a key located in a <b>different</b> Amazon Web Services account than the current Amazon Web Services account, you can specify your KMS key in one of two ways:</p> <ol>  <li>   <p>Use the ARN for the KMS key ID. For example, <code>arn:aws:kms:region:account-ID:key/1234abcd-12ab-34cd-56ef-1234567890ab</code>.</p></li>  <li>   <p>Use the ARN for the KMS key alias. For example, <code>arn:aws:kms:region:account-ID:alias/ExampleAlias</code>.</p></li> </ol> <p>If you do not specify an encryption key, your output is encrypted with the default Amazon S3 key (SSE-S3).</p> <p>If you specify a KMS key to encrypt your output, you must also specify an output location using the <code>OutputLocation</code> parameter.</p> <p>Note that the role making the request must have permission to use the specified KMS key.</p><br>
10    ///   - [`data_access_role_arn(impl Into<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::data_access_role_arn) / [`set_data_access_role_arn(Option<String>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_data_access_role_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of an IAM role that has permissions to access the Amazon S3 bucket that contains your input files. If the role that you specify doesn’t have the appropriate permissions to access the specified Amazon S3 location, your request fails.</p> <p>IAM role ARNs have the format <code>arn:partition:iam::account:role/role-name-with-path</code>. For example: <code>arn:aws:iam::111122223333:role/Admin</code>.</p> <p>For more information, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns">IAM ARNs</a>.</p><br>
11    ///   - [`settings(CallAnalyticsJobSettings)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::settings) / [`set_settings(Option<CallAnalyticsJobSettings>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_settings):<br>required: **false**<br><p>Specify additional optional settings in your request, including content redaction; allows you to apply custom language models, vocabulary filters, and custom vocabularies to your Call Analytics job.</p><br>
12    ///   - [`tags(Tag)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_tags):<br>required: **false**<br><p>Adds one or more custom tags, each in the form of a key:value pair, to a new call analytics job at the time you start this new job.</p> <p>To learn more about using tags with Amazon Transcribe, refer to <a href="https://docs.aws.amazon.com/transcribe/latest/dg/tagging.html">Tagging resources</a>.</p><br>
13    ///   - [`channel_definitions(ChannelDefinition)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::channel_definitions) / [`set_channel_definitions(Option<Vec::<ChannelDefinition>>)`](crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::set_channel_definitions):<br>required: **false**<br><p>Makes it possible to specify which speaker is on which channel. For example, if your agent is the first participant to speak, you would set <code>ChannelId</code> to <code>0</code> (to indicate the first channel) and <code>ParticipantRole</code> to <code>AGENT</code> (to indicate that it's the agent speaking).</p><br>
14    /// - On success, responds with [`StartCallAnalyticsJobOutput`](crate::operation::start_call_analytics_job::StartCallAnalyticsJobOutput) with field(s):
15    ///   - [`call_analytics_job(Option<CallAnalyticsJob>)`](crate::operation::start_call_analytics_job::StartCallAnalyticsJobOutput::call_analytics_job): <p>Provides detailed information about the current Call Analytics job, including job status and, if applicable, failure reason.</p>
16    /// - On failure, responds with [`SdkError<StartCallAnalyticsJobError>`](crate::operation::start_call_analytics_job::StartCallAnalyticsJobError)
17    pub fn start_call_analytics_job(&self) -> crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder {
18        crate::operation::start_call_analytics_job::builders::StartCallAnalyticsJobFluentBuilder::new(self.handle.clone())
19    }
20}