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

An element in a media insights pipeline configuration.

See * Also:

AWS * API Reference

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

The element type.

*/ inline const MediaInsightsPipelineConfigurationElementType& GetType() const{ return m_type; } /** *

The element type.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The element type.

*/ inline void SetType(const MediaInsightsPipelineConfigurationElementType& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The element type.

*/ inline void SetType(MediaInsightsPipelineConfigurationElementType&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The element type.

*/ inline MediaInsightsPipelineConfigurationElement& WithType(const MediaInsightsPipelineConfigurationElementType& value) { SetType(value); return *this;} /** *

The element type.

*/ inline MediaInsightsPipelineConfigurationElement& WithType(MediaInsightsPipelineConfigurationElementType&& value) { SetType(std::move(value)); return *this;} /** *

The analytics configuration settings for transcribing audio in a media * insights pipeline configuration element.

*/ inline const AmazonTranscribeCallAnalyticsProcessorConfiguration& GetAmazonTranscribeCallAnalyticsProcessorConfiguration() const{ return m_amazonTranscribeCallAnalyticsProcessorConfiguration; } /** *

The analytics configuration settings for transcribing audio in a media * insights pipeline configuration element.

*/ inline bool AmazonTranscribeCallAnalyticsProcessorConfigurationHasBeenSet() const { return m_amazonTranscribeCallAnalyticsProcessorConfigurationHasBeenSet; } /** *

The analytics configuration settings for transcribing audio in a media * insights pipeline configuration element.

*/ inline void SetAmazonTranscribeCallAnalyticsProcessorConfiguration(const AmazonTranscribeCallAnalyticsProcessorConfiguration& value) { m_amazonTranscribeCallAnalyticsProcessorConfigurationHasBeenSet = true; m_amazonTranscribeCallAnalyticsProcessorConfiguration = value; } /** *

The analytics configuration settings for transcribing audio in a media * insights pipeline configuration element.

*/ inline void SetAmazonTranscribeCallAnalyticsProcessorConfiguration(AmazonTranscribeCallAnalyticsProcessorConfiguration&& value) { m_amazonTranscribeCallAnalyticsProcessorConfigurationHasBeenSet = true; m_amazonTranscribeCallAnalyticsProcessorConfiguration = std::move(value); } /** *

The analytics configuration settings for transcribing audio in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithAmazonTranscribeCallAnalyticsProcessorConfiguration(const AmazonTranscribeCallAnalyticsProcessorConfiguration& value) { SetAmazonTranscribeCallAnalyticsProcessorConfiguration(value); return *this;} /** *

The analytics configuration settings for transcribing audio in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithAmazonTranscribeCallAnalyticsProcessorConfiguration(AmazonTranscribeCallAnalyticsProcessorConfiguration&& value) { SetAmazonTranscribeCallAnalyticsProcessorConfiguration(std::move(value)); return *this;} /** *

The transcription processor configuration settings in a media insights * pipeline configuration element.

*/ inline const AmazonTranscribeProcessorConfiguration& GetAmazonTranscribeProcessorConfiguration() const{ return m_amazonTranscribeProcessorConfiguration; } /** *

The transcription processor configuration settings in a media insights * pipeline configuration element.

*/ inline bool AmazonTranscribeProcessorConfigurationHasBeenSet() const { return m_amazonTranscribeProcessorConfigurationHasBeenSet; } /** *

The transcription processor configuration settings in a media insights * pipeline configuration element.

*/ inline void SetAmazonTranscribeProcessorConfiguration(const AmazonTranscribeProcessorConfiguration& value) { m_amazonTranscribeProcessorConfigurationHasBeenSet = true; m_amazonTranscribeProcessorConfiguration = value; } /** *

The transcription processor configuration settings in a media insights * pipeline configuration element.

*/ inline void SetAmazonTranscribeProcessorConfiguration(AmazonTranscribeProcessorConfiguration&& value) { m_amazonTranscribeProcessorConfigurationHasBeenSet = true; m_amazonTranscribeProcessorConfiguration = std::move(value); } /** *

The transcription processor configuration settings in a media insights * pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithAmazonTranscribeProcessorConfiguration(const AmazonTranscribeProcessorConfiguration& value) { SetAmazonTranscribeProcessorConfiguration(value); return *this;} /** *

The transcription processor configuration settings in a media insights * pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithAmazonTranscribeProcessorConfiguration(AmazonTranscribeProcessorConfiguration&& value) { SetAmazonTranscribeProcessorConfiguration(std::move(value)); return *this;} /** *

The configuration settings for the Kinesis Data Stream Sink in a media * insights pipeline configuration element.

*/ inline const KinesisDataStreamSinkConfiguration& GetKinesisDataStreamSinkConfiguration() const{ return m_kinesisDataStreamSinkConfiguration; } /** *

The configuration settings for the Kinesis Data Stream Sink in a media * insights pipeline configuration element.

*/ inline bool KinesisDataStreamSinkConfigurationHasBeenSet() const { return m_kinesisDataStreamSinkConfigurationHasBeenSet; } /** *

The configuration settings for the Kinesis Data Stream Sink in a media * insights pipeline configuration element.

*/ inline void SetKinesisDataStreamSinkConfiguration(const KinesisDataStreamSinkConfiguration& value) { m_kinesisDataStreamSinkConfigurationHasBeenSet = true; m_kinesisDataStreamSinkConfiguration = value; } /** *

The configuration settings for the Kinesis Data Stream Sink in a media * insights pipeline configuration element.

*/ inline void SetKinesisDataStreamSinkConfiguration(KinesisDataStreamSinkConfiguration&& value) { m_kinesisDataStreamSinkConfigurationHasBeenSet = true; m_kinesisDataStreamSinkConfiguration = std::move(value); } /** *

The configuration settings for the Kinesis Data Stream Sink in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithKinesisDataStreamSinkConfiguration(const KinesisDataStreamSinkConfiguration& value) { SetKinesisDataStreamSinkConfiguration(value); return *this;} /** *

The configuration settings for the Kinesis Data Stream Sink in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithKinesisDataStreamSinkConfiguration(KinesisDataStreamSinkConfiguration&& value) { SetKinesisDataStreamSinkConfiguration(std::move(value)); return *this;} /** *

The configuration settings for the Amazon S3 recording bucket in a media * insights pipeline configuration element.

*/ inline const S3RecordingSinkConfiguration& GetS3RecordingSinkConfiguration() const{ return m_s3RecordingSinkConfiguration; } /** *

The configuration settings for the Amazon S3 recording bucket in a media * insights pipeline configuration element.

*/ inline bool S3RecordingSinkConfigurationHasBeenSet() const { return m_s3RecordingSinkConfigurationHasBeenSet; } /** *

The configuration settings for the Amazon S3 recording bucket in a media * insights pipeline configuration element.

*/ inline void SetS3RecordingSinkConfiguration(const S3RecordingSinkConfiguration& value) { m_s3RecordingSinkConfigurationHasBeenSet = true; m_s3RecordingSinkConfiguration = value; } /** *

The configuration settings for the Amazon S3 recording bucket in a media * insights pipeline configuration element.

*/ inline void SetS3RecordingSinkConfiguration(S3RecordingSinkConfiguration&& value) { m_s3RecordingSinkConfigurationHasBeenSet = true; m_s3RecordingSinkConfiguration = std::move(value); } /** *

The configuration settings for the Amazon S3 recording bucket in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithS3RecordingSinkConfiguration(const S3RecordingSinkConfiguration& value) { SetS3RecordingSinkConfiguration(value); return *this;} /** *

The configuration settings for the Amazon S3 recording bucket in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithS3RecordingSinkConfiguration(S3RecordingSinkConfiguration&& value) { SetS3RecordingSinkConfiguration(std::move(value)); return *this;} /** *

The voice analytics configuration settings in a media insights pipeline * configuration element.

*/ inline const VoiceAnalyticsProcessorConfiguration& GetVoiceAnalyticsProcessorConfiguration() const{ return m_voiceAnalyticsProcessorConfiguration; } /** *

The voice analytics configuration settings in a media insights pipeline * configuration element.

*/ inline bool VoiceAnalyticsProcessorConfigurationHasBeenSet() const { return m_voiceAnalyticsProcessorConfigurationHasBeenSet; } /** *

The voice analytics configuration settings in a media insights pipeline * configuration element.

*/ inline void SetVoiceAnalyticsProcessorConfiguration(const VoiceAnalyticsProcessorConfiguration& value) { m_voiceAnalyticsProcessorConfigurationHasBeenSet = true; m_voiceAnalyticsProcessorConfiguration = value; } /** *

The voice analytics configuration settings in a media insights pipeline * configuration element.

*/ inline void SetVoiceAnalyticsProcessorConfiguration(VoiceAnalyticsProcessorConfiguration&& value) { m_voiceAnalyticsProcessorConfigurationHasBeenSet = true; m_voiceAnalyticsProcessorConfiguration = std::move(value); } /** *

The voice analytics configuration settings in a media insights pipeline * configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithVoiceAnalyticsProcessorConfiguration(const VoiceAnalyticsProcessorConfiguration& value) { SetVoiceAnalyticsProcessorConfiguration(value); return *this;} /** *

The voice analytics configuration settings in a media insights pipeline * configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithVoiceAnalyticsProcessorConfiguration(VoiceAnalyticsProcessorConfiguration&& value) { SetVoiceAnalyticsProcessorConfiguration(std::move(value)); return *this;} /** *

The configuration settings for the Amazon Web Services Lambda sink in a media * insights pipeline configuration element.

*/ inline const LambdaFunctionSinkConfiguration& GetLambdaFunctionSinkConfiguration() const{ return m_lambdaFunctionSinkConfiguration; } /** *

The configuration settings for the Amazon Web Services Lambda sink in a media * insights pipeline configuration element.

*/ inline bool LambdaFunctionSinkConfigurationHasBeenSet() const { return m_lambdaFunctionSinkConfigurationHasBeenSet; } /** *

The configuration settings for the Amazon Web Services Lambda sink in a media * insights pipeline configuration element.

*/ inline void SetLambdaFunctionSinkConfiguration(const LambdaFunctionSinkConfiguration& value) { m_lambdaFunctionSinkConfigurationHasBeenSet = true; m_lambdaFunctionSinkConfiguration = value; } /** *

The configuration settings for the Amazon Web Services Lambda sink in a media * insights pipeline configuration element.

*/ inline void SetLambdaFunctionSinkConfiguration(LambdaFunctionSinkConfiguration&& value) { m_lambdaFunctionSinkConfigurationHasBeenSet = true; m_lambdaFunctionSinkConfiguration = std::move(value); } /** *

The configuration settings for the Amazon Web Services Lambda sink in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithLambdaFunctionSinkConfiguration(const LambdaFunctionSinkConfiguration& value) { SetLambdaFunctionSinkConfiguration(value); return *this;} /** *

The configuration settings for the Amazon Web Services Lambda sink in a media * insights pipeline configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithLambdaFunctionSinkConfiguration(LambdaFunctionSinkConfiguration&& value) { SetLambdaFunctionSinkConfiguration(std::move(value)); return *this;} /** *

The configuration settings for an SQS queue sink in a media insights pipeline * configuration element.

*/ inline const SqsQueueSinkConfiguration& GetSqsQueueSinkConfiguration() const{ return m_sqsQueueSinkConfiguration; } /** *

The configuration settings for an SQS queue sink in a media insights pipeline * configuration element.

*/ inline bool SqsQueueSinkConfigurationHasBeenSet() const { return m_sqsQueueSinkConfigurationHasBeenSet; } /** *

The configuration settings for an SQS queue sink in a media insights pipeline * configuration element.

*/ inline void SetSqsQueueSinkConfiguration(const SqsQueueSinkConfiguration& value) { m_sqsQueueSinkConfigurationHasBeenSet = true; m_sqsQueueSinkConfiguration = value; } /** *

The configuration settings for an SQS queue sink in a media insights pipeline * configuration element.

*/ inline void SetSqsQueueSinkConfiguration(SqsQueueSinkConfiguration&& value) { m_sqsQueueSinkConfigurationHasBeenSet = true; m_sqsQueueSinkConfiguration = std::move(value); } /** *

The configuration settings for an SQS queue sink in a media insights pipeline * configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithSqsQueueSinkConfiguration(const SqsQueueSinkConfiguration& value) { SetSqsQueueSinkConfiguration(value); return *this;} /** *

The configuration settings for an SQS queue sink in a media insights pipeline * configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithSqsQueueSinkConfiguration(SqsQueueSinkConfiguration&& value) { SetSqsQueueSinkConfiguration(std::move(value)); return *this;} /** *

The configuration settings for an SNS topic sink in a media insights pipeline * configuration element.

*/ inline const SnsTopicSinkConfiguration& GetSnsTopicSinkConfiguration() const{ return m_snsTopicSinkConfiguration; } /** *

The configuration settings for an SNS topic sink in a media insights pipeline * configuration element.

*/ inline bool SnsTopicSinkConfigurationHasBeenSet() const { return m_snsTopicSinkConfigurationHasBeenSet; } /** *

The configuration settings for an SNS topic sink in a media insights pipeline * configuration element.

*/ inline void SetSnsTopicSinkConfiguration(const SnsTopicSinkConfiguration& value) { m_snsTopicSinkConfigurationHasBeenSet = true; m_snsTopicSinkConfiguration = value; } /** *

The configuration settings for an SNS topic sink in a media insights pipeline * configuration element.

*/ inline void SetSnsTopicSinkConfiguration(SnsTopicSinkConfiguration&& value) { m_snsTopicSinkConfigurationHasBeenSet = true; m_snsTopicSinkConfiguration = std::move(value); } /** *

The configuration settings for an SNS topic sink in a media insights pipeline * configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithSnsTopicSinkConfiguration(const SnsTopicSinkConfiguration& value) { SetSnsTopicSinkConfiguration(value); return *this;} /** *

The configuration settings for an SNS topic sink in a media insights pipeline * configuration element.

*/ inline MediaInsightsPipelineConfigurationElement& WithSnsTopicSinkConfiguration(SnsTopicSinkConfiguration&& value) { SetSnsTopicSinkConfiguration(std::move(value)); return *this;} private: MediaInsightsPipelineConfigurationElementType m_type; bool m_typeHasBeenSet = false; AmazonTranscribeCallAnalyticsProcessorConfiguration m_amazonTranscribeCallAnalyticsProcessorConfiguration; bool m_amazonTranscribeCallAnalyticsProcessorConfigurationHasBeenSet = false; AmazonTranscribeProcessorConfiguration m_amazonTranscribeProcessorConfiguration; bool m_amazonTranscribeProcessorConfigurationHasBeenSet = false; KinesisDataStreamSinkConfiguration m_kinesisDataStreamSinkConfiguration; bool m_kinesisDataStreamSinkConfigurationHasBeenSet = false; S3RecordingSinkConfiguration m_s3RecordingSinkConfiguration; bool m_s3RecordingSinkConfigurationHasBeenSet = false; VoiceAnalyticsProcessorConfiguration m_voiceAnalyticsProcessorConfiguration; bool m_voiceAnalyticsProcessorConfigurationHasBeenSet = false; LambdaFunctionSinkConfiguration m_lambdaFunctionSinkConfiguration; bool m_lambdaFunctionSinkConfigurationHasBeenSet = false; SqsQueueSinkConfiguration m_sqsQueueSinkConfiguration; bool m_sqsQueueSinkConfigurationHasBeenSet = false; SnsTopicSinkConfiguration m_snsTopicSinkConfiguration; bool m_snsTopicSinkConfigurationHasBeenSet = false; }; } // namespace Model } // namespace ChimeSDKMediaPipelines } // namespace Aws