Amazon Pinpoint SMS and Voice Service

2018/11/15 - Amazon Pinpoint SMS and Voice Service - 7 new api methods

Changes  With Amazon Pinpoint Voice, you can use text-to-speech technology to deliver personalized voice messages to your customers. Amazon Pinpoint Voice is a way to deliver transactional messages -- such as one-time passwords and appointment confirmations to customers.

SendVoiceMessage (new) Link ¶

Create a new voice message and send it to a recipient's phone number.

See also: AWS API Documentation

Request Syntax

client.send_voice_message(
    CallerId='string',
    ConfigurationSetName='string',
    Content={
        'CallInstructionsMessage': {
            'Text': 'string'
        },
        'PlainTextMessage': {
            'LanguageCode': 'string',
            'Text': 'string',
            'VoiceId': 'string'
        },
        'SSMLMessage': {
            'LanguageCode': 'string',
            'Text': 'string',
            'VoiceId': 'string'
        }
    },
    DestinationPhoneNumber='string',
    OriginationPhoneNumber='string'
)
type CallerId

string

param CallerId

The phone number that appears on recipients' devices when they receive the message.

type ConfigurationSetName

string

param ConfigurationSetName

The name of the configuration set that you want to use to send the message.

type Content

dict

param Content

An object that contains a voice message and information about the recipient that you want to send it to.

  • CallInstructionsMessage (dict) -- An object that defines a message that contains text formatted using Amazon Pinpoint Voice Instructions markup.

    • Text (string) -- The language to use when delivering the message. For a complete list of supported languages, see the Amazon Polly Developer Guide.

  • PlainTextMessage (dict) -- An object that defines a message that contains unformatted text.

    • LanguageCode (string) -- The language to use when delivering the message. For a complete list of supported languages, see the Amazon Polly Developer Guide.

    • Text (string) -- The plain (not SSML-formatted) text to deliver to the recipient.

    • VoiceId (string) -- The name of the voice that you want to use to deliver the message. For a complete list of supported voices, see the Amazon Polly Developer Guide.

  • SSMLMessage (dict) -- An object that defines a message that contains SSML-formatted text.

    • LanguageCode (string) -- The language to use when delivering the message. For a complete list of supported languages, see the Amazon Polly Developer Guide.

    • Text (string) -- The SSML-formatted text to deliver to the recipient.

    • VoiceId (string) -- The name of the voice that you want to use to deliver the message. For a complete list of supported voices, see the Amazon Polly Developer Guide.

type DestinationPhoneNumber

string

param DestinationPhoneNumber

The phone number that you want to send the voice message to.

type OriginationPhoneNumber

string

param OriginationPhoneNumber

The phone number that Amazon Pinpoint should use to send the voice message. This isn't necessarily the phone number that appears on recipients' devices when they receive the message, because you can specify a CallerId parameter in the request.

rtype

dict

returns

Response Syntax

{
    'MessageId': 'string'
}

Response Structure

  • (dict) -- SendVoiceMessageResponse

    • MessageId (string) -- A unique identifier for the voice message.

UpdateConfigurationSetEventDestination (new) Link ¶

Update an event destination in a configuration set. An event destination is a location that you publish information about your voice calls to. For example, you can log an event to an Amazon CloudWatch destination when a call fails.

See also: AWS API Documentation

Request Syntax

client.update_configuration_set_event_destination(
    ConfigurationSetName='string',
    EventDestination={
        'CloudWatchLogsDestination': {
            'IamRoleArn': 'string',
            'LogGroupArn': 'string'
        },
        'Enabled': True|False,
        'KinesisFirehoseDestination': {
            'DeliveryStreamArn': 'string',
            'IamRoleArn': 'string'
        },
        'MatchingEventTypes': [
            'INITIATED_CALL'|'RINGING'|'ANSWERED'|'COMPLETED_CALL'|'BUSY'|'FAILED'|'NO_ANSWER',
        ]
    },
    EventDestinationName='string'
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED] ConfigurationSetName

type EventDestination

dict

param EventDestination

An object that defines a single event destination.

  • CloudWatchLogsDestination (dict) -- An object that contains information about a event destination that sends data to Amazon CloudWatch Logs.

    • IamRoleArn (string) -- The Amazon Resource Name (ARN) of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon CloudWatch destination.

    • LogGroupArn (string) -- The name of the Amazon CloudWatch Log Group that you want to record events in.

  • Enabled (boolean) -- Indicates whether or not the event destination is enabled. If the event destination is enabled, then Amazon Pinpoint sends response data to the specified event destination.

  • KinesisFirehoseDestination (dict) -- An object that contains information about a event destination that sends data to Amazon Kinesis Data Firehose.

    • DeliveryStreamArn (string) -- The Amazon Resource Name (ARN) of an IAM role that can write data to an Amazon Kinesis Data Firehose stream.

    • IamRoleArn (string) -- The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose destination that you want to use in the event destination.

  • MatchingEventTypes (list) -- An array of EventDestination objects. Each EventDestination object includes ARNs and other information that define an event destination.

    • (string) -- The types of events that are sent to the event destination.

type EventDestinationName

string

param EventDestinationName

[REQUIRED] EventDestinationName

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) -- UpdateConfigurationSetEventDestinationResponse

CreateConfigurationSetEventDestination (new) Link ¶

Create a new event destination in a configuration set.

See also: AWS API Documentation

Request Syntax

client.create_configuration_set_event_destination(
    ConfigurationSetName='string',
    EventDestination={
        'CloudWatchLogsDestination': {
            'IamRoleArn': 'string',
            'LogGroupArn': 'string'
        },
        'Enabled': True|False,
        'KinesisFirehoseDestination': {
            'DeliveryStreamArn': 'string',
            'IamRoleArn': 'string'
        },
        'MatchingEventTypes': [
            'INITIATED_CALL'|'RINGING'|'ANSWERED'|'COMPLETED_CALL'|'BUSY'|'FAILED'|'NO_ANSWER',
        ]
    },
    EventDestinationName='string'
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED] ConfigurationSetName

type EventDestination

dict

param EventDestination

An object that defines a single event destination.

  • CloudWatchLogsDestination (dict) -- An object that contains information about a event destination that sends data to Amazon CloudWatch Logs.

    • IamRoleArn (string) -- The Amazon Resource Name (ARN) of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon CloudWatch destination.

    • LogGroupArn (string) -- The name of the Amazon CloudWatch Log Group that you want to record events in.

  • Enabled (boolean) -- Indicates whether or not the event destination is enabled. If the event destination is enabled, then Amazon Pinpoint sends response data to the specified event destination.

  • KinesisFirehoseDestination (dict) -- An object that contains information about a event destination that sends data to Amazon Kinesis Data Firehose.

    • DeliveryStreamArn (string) -- The Amazon Resource Name (ARN) of an IAM role that can write data to an Amazon Kinesis Data Firehose stream.

    • IamRoleArn (string) -- The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose destination that you want to use in the event destination.

  • MatchingEventTypes (list) -- An array of EventDestination objects. Each EventDestination object includes ARNs and other information that define an event destination.

    • (string) -- The types of events that are sent to the event destination.

type EventDestinationName

string

param EventDestinationName

A name that identifies the event destination.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) -- CreateConfigurationSetEventDestinationResponse

DeleteConfigurationSet (new) Link ¶

Deletes an existing configuration set.

See also: AWS API Documentation

Request Syntax

client.delete_configuration_set(
    ConfigurationSetName='string'
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED] ConfigurationSetName

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) -- DeleteConfigurationSetResponse

CreateConfigurationSet (new) Link ¶

Create a new configuration set. After you create the configuration set, you can add one or more event destinations to it.

See also: AWS API Documentation

Request Syntax

client.create_configuration_set(
    ConfigurationSetName='string'
)
type ConfigurationSetName

string

param ConfigurationSetName

The name that you want to give the configuration set.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) -- CreateConfigurationSetResponse

GetConfigurationSetEventDestinations (new) Link ¶

Obtain information about an event destination, including the types of events it reports, the Amazon Resource Name (ARN) of the destination, and the name of the event destination.

See also: AWS API Documentation

Request Syntax

client.get_configuration_set_event_destinations(
    ConfigurationSetName='string'
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED] ConfigurationSetName

rtype

dict

returns

Response Syntax

{
    'EventDestinations': [
        {
            'CloudWatchLogsDestination': {
                'IamRoleArn': 'string',
                'LogGroupArn': 'string'
            },
            'Enabled': True|False,
            'KinesisFirehoseDestination': {
                'DeliveryStreamArn': 'string',
                'IamRoleArn': 'string'
            },
            'MatchingEventTypes': [
                'INITIATED_CALL'|'RINGING'|'ANSWERED'|'COMPLETED_CALL'|'BUSY'|'FAILED'|'NO_ANSWER',
            ],
            'Name': 'string'
        },
    ]
}

Response Structure

  • (dict) -- GetConfigurationSetEventDestinationsResponse

    • EventDestinations (list) -- An array of EventDestination objects. Each EventDestination object includes ARNs and other information that define an event destination.

      • (dict) -- An object that defines an event destination.

        • CloudWatchLogsDestination (dict) -- An object that contains information about a event destination that sends data to Amazon CloudWatch Logs.

          • IamRoleArn (string) -- The Amazon Resource Name (ARN) of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon CloudWatch destination.

          • LogGroupArn (string) -- The name of the Amazon CloudWatch Log Group that you want to record events in.

        • Enabled (boolean) -- Indicates whether or not the event destination is enabled. If the event destination is enabled, then Amazon Pinpoint sends response data to the specified event destination.

        • KinesisFirehoseDestination (dict) -- An object that contains information about a event destination that sends data to Amazon Kinesis Data Firehose.

          • DeliveryStreamArn (string) -- The Amazon Resource Name (ARN) of an IAM role that can write data to an Amazon Kinesis Data Firehose stream.

          • IamRoleArn (string) -- The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose destination that you want to use in the event destination.

        • MatchingEventTypes (list) -- An array of EventDestination objects. Each EventDestination object includes ARNs and other information that define an event destination.

          • (string) -- The types of events that are sent to the event destination.

        • Name (string) -- A name that identifies the event destination configuration.

DeleteConfigurationSetEventDestination (new) Link ¶

Deletes an event destination in a configuration set.

See also: AWS API Documentation

Request Syntax

client.delete_configuration_set_event_destination(
    ConfigurationSetName='string',
    EventDestinationName='string'
)
type ConfigurationSetName

string

param ConfigurationSetName

[REQUIRED] ConfigurationSetName

type EventDestinationName

string

param EventDestinationName

[REQUIRED] EventDestinationName

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) -- DeleteConfigurationSetEventDestinationResponse