Alexa For Business

2019/05/02 - Alexa For Business - 1 new api methods

Changes  This release allows developers and customers to send text and audio announcements to rooms.

SendAnnouncement (new) Link ΒΆ

Triggers an asynchronous flow to send text, SSML, or audio announcements to multiple rooms, identified by a search, such as filter.

See also: AWS API Documentation

Request Syntax

client.send_announcement(
    RoomFilters=[
        {
            'Key': 'string',
            'Values': [
                'string',
            ]
        },
    ],
    Content={
        'TextList': [
            {
                'Locale': 'en-US',
                'Value': 'string'
            },
        ],
        'SsmlList': [
            {
                'Locale': 'en-US',
                'Value': 'string'
            },
        ],
        'AudioList': [
            {
                'Locale': 'en-US',
                'Location': 'string'
            },
        ]
    },
    TimeToLiveInSeconds=123,
    ClientRequestToken='string'
)
type RoomFilters

list

param RoomFilters

[REQUIRED]

The filters to use to send an announcement to a specified list of rooms. The supported filter keys are RoomName, ProfileName, RoomArn, and ProfileArn. To send to all rooms, specify an empty RoomFilters list.

  • (dict) --

    A filter name and value pair that is used to return a more specific list of results. Filters can be used to match a set of resources by various criteria.

    • Key (string) -- [REQUIRED]

      The key of a filter.

    • Values (list) -- [REQUIRED]

      The values of a filter.

      • (string) --

type Content

dict

param Content

[REQUIRED]

The announcement content. This can contain only one of the three possible announcement types (text, SSML or audio).

  • TextList (list) --

    The list of text messages.

    • (dict) --

      The text message.

      • Locale (string) -- [REQUIRED]

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

      • Value (string) -- [REQUIRED]

        The value of the text message.

  • SsmlList (list) --

    The list of SSML messages.

    • (dict) --

      The SSML message. For more information, see SSML Reference.

      • Locale (string) -- [REQUIRED]

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

      • Value (string) -- [REQUIRED]

        The value of the SSML message in the correct SSML format. The audio tag is not supported.

  • AudioList (list) --

    The list of audio messages.

    • (dict) --

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

      You might need to use converter software to convert your MP3 files to the required codec version (MPEG version 2) and bit rate (48 kbps). 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 will be played in the announcement:

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

      • Locale (string) -- [REQUIRED]

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

      • Location (string) -- [REQUIRED]

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

type TimeToLiveInSeconds

integer

param TimeToLiveInSeconds

The time to live for an announcement. If delivery doesn't occur within this time, the announcement will not be delivered.

type ClientRequestToken

string

param ClientRequestToken

[REQUIRED]

The unique, user-specified identifier for the request that ensures idempotency.

This field is autopopulated if not provided.

rtype

dict

returns

Response Syntax

{
    'AnnouncementArn': 'string'
}

Response Structure

  • (dict) --

    • AnnouncementArn (string) --

      The identifier of the announcement.