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

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 * ChannelId to 0 (to indicate the first channel) and * ParticipantRole to AGENT (to indicate that it's the * agent speaking).

See Also:

AWS * API Reference

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

Specify the audio channel you want to define.

*/ inline int GetChannelId() const{ return m_channelId; } /** *

Specify the audio channel you want to define.

*/ inline bool ChannelIdHasBeenSet() const { return m_channelIdHasBeenSet; } /** *

Specify the audio channel you want to define.

*/ inline void SetChannelId(int value) { m_channelIdHasBeenSet = true; m_channelId = value; } /** *

Specify the audio channel you want to define.

*/ inline ChannelDefinition& WithChannelId(int value) { SetChannelId(value); return *this;} /** *

Specify the speaker you want to define. Omitting this parameter is equivalent * to specifying both participants.

*/ inline const ParticipantRole& GetParticipantRole() const{ return m_participantRole; } /** *

Specify the speaker you want to define. Omitting this parameter is equivalent * to specifying both participants.

*/ inline bool ParticipantRoleHasBeenSet() const { return m_participantRoleHasBeenSet; } /** *

Specify the speaker you want to define. Omitting this parameter is equivalent * to specifying both participants.

*/ inline void SetParticipantRole(const ParticipantRole& value) { m_participantRoleHasBeenSet = true; m_participantRole = value; } /** *

Specify the speaker you want to define. Omitting this parameter is equivalent * to specifying both participants.

*/ inline void SetParticipantRole(ParticipantRole&& value) { m_participantRoleHasBeenSet = true; m_participantRole = std::move(value); } /** *

Specify the speaker you want to define. Omitting this parameter is equivalent * to specifying both participants.

*/ inline ChannelDefinition& WithParticipantRole(const ParticipantRole& value) { SetParticipantRole(value); return *this;} /** *

Specify the speaker you want to define. Omitting this parameter is equivalent * to specifying both participants.

*/ inline ChannelDefinition& WithParticipantRole(ParticipantRole&& value) { SetParticipantRole(std::move(value)); return *this;} private: int m_channelId; bool m_channelIdHasBeenSet = false; ParticipantRole m_participantRole; bool m_participantRoleHasBeenSet = false; }; } // namespace Model } // namespace TranscribeService } // namespace Aws