/** * 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 LexRuntimeV2 { namespace Model { /** *

An event sent from Amazon Lex V2 to your client application containing audio * to play to the user.

See Also:

AWS * API Reference

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

A chunk of the audio to play.

*/ inline const Aws::Utils::ByteBuffer& GetAudioChunk() const{ return m_audioChunk; } /** *

A chunk of the audio to play.

*/ inline bool AudioChunkHasBeenSet() const { return m_audioChunkHasBeenSet; } /** *

A chunk of the audio to play.

*/ inline void SetAudioChunk(const Aws::Utils::ByteBuffer& value) { m_audioChunkHasBeenSet = true; m_audioChunk = value; } /** *

A chunk of the audio to play.

*/ inline void SetAudioChunk(Aws::Utils::ByteBuffer&& value) { m_audioChunkHasBeenSet = true; m_audioChunk = std::move(value); } /** *

A chunk of the audio to play.

*/ inline AudioResponseEvent& WithAudioChunk(const Aws::Utils::ByteBuffer& value) { SetAudioChunk(value); return *this;} /** *

A chunk of the audio to play.

*/ inline AudioResponseEvent& WithAudioChunk(Aws::Utils::ByteBuffer&& value) { SetAudioChunk(std::move(value)); return *this;} /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline const Aws::String& GetContentType() const{ return m_contentType; } /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline bool ContentTypeHasBeenSet() const { return m_contentTypeHasBeenSet; } /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline void SetContentType(const Aws::String& value) { m_contentTypeHasBeenSet = true; m_contentType = value; } /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline void SetContentType(Aws::String&& value) { m_contentTypeHasBeenSet = true; m_contentType = std::move(value); } /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline void SetContentType(const char* value) { m_contentTypeHasBeenSet = true; m_contentType.assign(value); } /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline AudioResponseEvent& WithContentType(const Aws::String& value) { SetContentType(value); return *this;} /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline AudioResponseEvent& WithContentType(Aws::String&& value) { SetContentType(std::move(value)); return *this;} /** *

The encoding of the audio chunk. This is the same as the encoding configure * in the contentType field of the * ConfigurationEvent.

*/ inline AudioResponseEvent& WithContentType(const char* value) { SetContentType(value); return *this;} /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline const Aws::String& GetEventId() const{ return m_eventId; } /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline bool EventIdHasBeenSet() const { return m_eventIdHasBeenSet; } /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline void SetEventId(const Aws::String& value) { m_eventIdHasBeenSet = true; m_eventId = value; } /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline void SetEventId(Aws::String&& value) { m_eventIdHasBeenSet = true; m_eventId = std::move(value); } /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline void SetEventId(const char* value) { m_eventIdHasBeenSet = true; m_eventId.assign(value); } /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline AudioResponseEvent& WithEventId(const Aws::String& value) { SetEventId(value); return *this;} /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline AudioResponseEvent& WithEventId(Aws::String&& value) { SetEventId(std::move(value)); return *this;} /** *

A unique identifier of the event sent by Amazon Lex V2. The identifier is in * the form RESPONSE-N, where N is a number starting with one and * incremented for each event sent by Amazon Lex V2 in the current session.

*/ inline AudioResponseEvent& WithEventId(const char* value) { SetEventId(value); return *this;} private: Aws::Utils::ByteBuffer m_audioChunk; bool m_audioChunkHasBeenSet = false; Aws::String m_contentType; bool m_contentTypeHasBeenSet = false; Aws::String m_eventId; bool m_eventIdHasBeenSet = false; }; } // namespace Model } // namespace LexRuntimeV2 } // namespace Aws