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

The audio message. There is a 1 MB limit on the audio file input and the only * supported format is MP3. To convert your MP3 audio files to an Alexa-friendly, *

required codec version (MPEG version 2) and bit rate (48 kbps), you * might use converter software. One option for this is a command-line tool, * FFmpeg. For more information, see FFmpeg. * The following command converts the provided <input-file> to an MP3 file * that is played in the announcement:

ffmpeg -i <input-file> * -ac 2 -codec:a libmp3lame -b:a 48k -ar 16000 <output-file.mp3> *

See Also:

AWS * API Reference

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

The locale of the audio message. Currently, en-US is supported.

*/ inline const Locale& GetLocale() const{ return m_locale; } /** *

The locale of the audio message. Currently, en-US is supported.

*/ inline bool LocaleHasBeenSet() const { return m_localeHasBeenSet; } /** *

The locale of the audio message. Currently, en-US is supported.

*/ inline void SetLocale(const Locale& value) { m_localeHasBeenSet = true; m_locale = value; } /** *

The locale of the audio message. Currently, en-US is supported.

*/ inline void SetLocale(Locale&& value) { m_localeHasBeenSet = true; m_locale = std::move(value); } /** *

The locale of the audio message. Currently, en-US is supported.

*/ inline Audio& WithLocale(const Locale& value) { SetLocale(value); return *this;} /** *

The locale of the audio message. Currently, en-US is supported.

*/ inline Audio& WithLocale(Locale&& value) { SetLocale(std::move(value)); return *this;} /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline const Aws::String& GetLocation() const{ return m_location; } /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline void SetLocation(const Aws::String& value) { m_locationHasBeenSet = true; m_location = value; } /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline void SetLocation(Aws::String&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline void SetLocation(const char* value) { m_locationHasBeenSet = true; m_location.assign(value); } /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline Audio& WithLocation(const Aws::String& value) { SetLocation(value); return *this;} /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline Audio& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;} /** *

The location of the audio file. Currently, S3 URLs are supported. Only S3 * locations comprised of safe characters are valid. For more information, see Safe * Characters.

*/ inline Audio& WithLocation(const char* value) { SetLocation(value); return *this;} private: Locale m_locale; bool m_localeHasBeenSet = false; Aws::String m_location; bool m_locationHasBeenSet = false; }; } // namespace Model } // namespace AlexaForBusiness } // namespace Aws