/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a chunk of audio sent from the client application to Amazon Lex
* V2. The audio is all or part of an utterance from the user. Amazon Lex V2
* accumulates audio chunks until it recognizes a natural pause in speech before
* processing the input.See Also:
AWS
* API Reference
An encoded stream of audio.
*/ inline const Aws::Utils::ByteBuffer& GetAudioChunk() const{ return m_audioChunk; } /** *An encoded stream of audio.
*/ inline bool AudioChunkHasBeenSet() const { return m_audioChunkHasBeenSet; } /** *An encoded stream of audio.
*/ inline void SetAudioChunk(const Aws::Utils::ByteBuffer& value) { m_audioChunkHasBeenSet = true; m_audioChunk = value; } /** *An encoded stream of audio.
*/ inline void SetAudioChunk(Aws::Utils::ByteBuffer&& value) { m_audioChunkHasBeenSet = true; m_audioChunk = std::move(value); } /** *An encoded stream of audio.
*/ inline AudioInputEvent& WithAudioChunk(const Aws::Utils::ByteBuffer& value) { SetAudioChunk(value); return *this;} /** *An encoded stream of audio.
*/ inline AudioInputEvent& WithAudioChunk(Aws::Utils::ByteBuffer&& value) { SetAudioChunk(std::move(value)); return *this;} /** *The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
The encoding used for the audio chunk. You must use 8 KHz PCM 16-bit * mono-channel little-endian format. The value of the field should be:
* audio/lpcm; sample-rate=8000; sample-size-bits=16; channel-count=1;
* is-big-endian=false
A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline const Aws::String& GetEventId() const{ return m_eventId; } /** *A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline bool EventIdHasBeenSet() const { return m_eventIdHasBeenSet; } /** *A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline void SetEventId(const Aws::String& value) { m_eventIdHasBeenSet = true; m_eventId = value; } /** *A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline void SetEventId(Aws::String&& value) { m_eventIdHasBeenSet = true; m_eventId = std::move(value); } /** *A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline void SetEventId(const char* value) { m_eventIdHasBeenSet = true; m_eventId.assign(value); } /** *A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline AudioInputEvent& WithEventId(const Aws::String& value) { SetEventId(value); return *this;} /** *A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline AudioInputEvent& WithEventId(Aws::String&& value) { SetEventId(std::move(value)); return *this;} /** *A unique identifier that your application assigns to the event. You can use * this to identify events in logs.
*/ inline AudioInputEvent& WithEventId(const char* value) { SetEventId(value); return *this;} /** *A timestamp set by the client of the date and time that the event was sent to * Amazon Lex V2.
*/ inline long long GetClientTimestampMillis() const{ return m_clientTimestampMillis; } /** *A timestamp set by the client of the date and time that the event was sent to * Amazon Lex V2.
*/ inline bool ClientTimestampMillisHasBeenSet() const { return m_clientTimestampMillisHasBeenSet; } /** *A timestamp set by the client of the date and time that the event was sent to * Amazon Lex V2.
*/ inline void SetClientTimestampMillis(long long value) { m_clientTimestampMillisHasBeenSet = true; m_clientTimestampMillis = value; } /** *A timestamp set by the client of the date and time that the event was sent to * Amazon Lex V2.
*/ inline AudioInputEvent& WithClientTimestampMillis(long long value) { SetClientTimestampMillis(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; long long m_clientTimestampMillis; bool m_clientTimestampMillisHasBeenSet = false; }; } // namespace Model } // namespace LexRuntimeV2 } // namespace Aws