/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace ChimeSDKMediaPipelines { namespace Model { /** *

Allows you to specify additional settings for your Call Analytics post-call * request, including output locations for your redacted transcript, which IAM role * to use, and which encryption key to use.

DataAccessRoleArn * and OutputLocation are required fields.

* PostCallAnalyticsSettings provides the same insights as a Call * Analytics post-call transcription. For more information, refer to Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

See Also:

AWS * API Reference

*/ class PostCallAnalyticsSettings { public: AWS_CHIMESDKMEDIAPIPELINES_API PostCallAnalyticsSettings(); AWS_CHIMESDKMEDIAPIPELINES_API PostCallAnalyticsSettings(Aws::Utils::Json::JsonView jsonValue); AWS_CHIMESDKMEDIAPIPELINES_API PostCallAnalyticsSettings& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_CHIMESDKMEDIAPIPELINES_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline const Aws::String& GetOutputLocation() const{ return m_outputLocation; } /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline bool OutputLocationHasBeenSet() const { return m_outputLocationHasBeenSet; } /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline void SetOutputLocation(const Aws::String& value) { m_outputLocationHasBeenSet = true; m_outputLocation = value; } /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline void SetOutputLocation(Aws::String&& value) { m_outputLocationHasBeenSet = true; m_outputLocation = std::move(value); } /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline void SetOutputLocation(const char* value) { m_outputLocationHasBeenSet = true; m_outputLocation.assign(value); } /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline PostCallAnalyticsSettings& WithOutputLocation(const Aws::String& value) { SetOutputLocation(value); return *this;} /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline PostCallAnalyticsSettings& WithOutputLocation(Aws::String&& value) { SetOutputLocation(std::move(value)); return *this;} /** *

The URL of the Amazon S3 bucket that contains the post-call data.

*/ inline PostCallAnalyticsSettings& WithOutputLocation(const char* value) { SetOutputLocation(value); return *this;} /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline const Aws::String& GetDataAccessRoleArn() const{ return m_dataAccessRoleArn; } /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline bool DataAccessRoleArnHasBeenSet() const { return m_dataAccessRoleArnHasBeenSet; } /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline void SetDataAccessRoleArn(const Aws::String& value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn = value; } /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline void SetDataAccessRoleArn(Aws::String&& value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn = std::move(value); } /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline void SetDataAccessRoleArn(const char* value) { m_dataAccessRoleArnHasBeenSet = true; m_dataAccessRoleArn.assign(value); } /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline PostCallAnalyticsSettings& WithDataAccessRoleArn(const Aws::String& value) { SetDataAccessRoleArn(value); return *this;} /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline PostCallAnalyticsSettings& WithDataAccessRoleArn(Aws::String&& value) { SetDataAccessRoleArn(std::move(value)); return *this;} /** *

The ARN of the role used by Amazon Web Services Transcribe to upload your * post call analysis. For more information, see Post-call * analytics with real-time transcriptions in the Amazon Transcribe * Developer Guide.

*/ inline PostCallAnalyticsSettings& WithDataAccessRoleArn(const char* value) { SetDataAccessRoleArn(value); return *this;} /** *

The content redaction output settings for a post-call analysis task.

*/ inline const ContentRedactionOutput& GetContentRedactionOutput() const{ return m_contentRedactionOutput; } /** *

The content redaction output settings for a post-call analysis task.

*/ inline bool ContentRedactionOutputHasBeenSet() const { return m_contentRedactionOutputHasBeenSet; } /** *

The content redaction output settings for a post-call analysis task.

*/ inline void SetContentRedactionOutput(const ContentRedactionOutput& value) { m_contentRedactionOutputHasBeenSet = true; m_contentRedactionOutput = value; } /** *

The content redaction output settings for a post-call analysis task.

*/ inline void SetContentRedactionOutput(ContentRedactionOutput&& value) { m_contentRedactionOutputHasBeenSet = true; m_contentRedactionOutput = std::move(value); } /** *

The content redaction output settings for a post-call analysis task.

*/ inline PostCallAnalyticsSettings& WithContentRedactionOutput(const ContentRedactionOutput& value) { SetContentRedactionOutput(value); return *this;} /** *

The content redaction output settings for a post-call analysis task.

*/ inline PostCallAnalyticsSettings& WithContentRedactionOutput(ContentRedactionOutput&& value) { SetContentRedactionOutput(std::move(value)); return *this;} /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline const Aws::String& GetOutputEncryptionKMSKeyId() const{ return m_outputEncryptionKMSKeyId; } /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline bool OutputEncryptionKMSKeyIdHasBeenSet() const { return m_outputEncryptionKMSKeyIdHasBeenSet; } /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline void SetOutputEncryptionKMSKeyId(const Aws::String& value) { m_outputEncryptionKMSKeyIdHasBeenSet = true; m_outputEncryptionKMSKeyId = value; } /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline void SetOutputEncryptionKMSKeyId(Aws::String&& value) { m_outputEncryptionKMSKeyIdHasBeenSet = true; m_outputEncryptionKMSKeyId = std::move(value); } /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline void SetOutputEncryptionKMSKeyId(const char* value) { m_outputEncryptionKMSKeyIdHasBeenSet = true; m_outputEncryptionKMSKeyId.assign(value); } /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline PostCallAnalyticsSettings& WithOutputEncryptionKMSKeyId(const Aws::String& value) { SetOutputEncryptionKMSKeyId(value); return *this;} /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline PostCallAnalyticsSettings& WithOutputEncryptionKMSKeyId(Aws::String&& value) { SetOutputEncryptionKMSKeyId(std::move(value)); return *this;} /** *

The ID of the KMS (Key Management Service) key used to encrypt the * output.

*/ inline PostCallAnalyticsSettings& WithOutputEncryptionKMSKeyId(const char* value) { SetOutputEncryptionKMSKeyId(value); return *this;} private: Aws::String m_outputLocation; bool m_outputLocationHasBeenSet = false; Aws::String m_dataAccessRoleArn; bool m_dataAccessRoleArnHasBeenSet = false; ContentRedactionOutput m_contentRedactionOutput; bool m_contentRedactionOutputHasBeenSet = false; Aws::String m_outputEncryptionKMSKeyId; bool m_outputEncryptionKMSKeyIdHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKMediaPipelines } // namespace Aws