Why are my Amazon Pinpoint voice message logs not populating?

Last updated: 2022-04-26

I set up an Amazon Pinpoint voice event destination to log Amazon Pinpoint voice messages, but I'm not seeing any logs. Why are my Amazon Pinpoint voice message logs not populating, and how do I troubleshoot the issue?

Resolution

Note: If you receive errors when running AWS Command Line Interface (AWS CLI) commands, make sure that you're using the most recent AWS CLI version.

Verify that your requests to the SendVoiceMessage API operation include the name of your configuration set

Check the value for the ConfigurationSetName parameter in your requests to the SendVoiceMessage API operation. The request must contain the exact name of your configuration set.

Example Python request to the SendVoiceMessage API operation that includes the ConfigurationSetName parameter

response = client.send_voice_message(
    DestinationPhoneNumber=destinationNumber,
    OriginationPhoneNumber=originationNumber,
    ConfigurationSetName="ConfigurationSetName",  # Pass the ConfigurationSetName here
    Content={
        "SSMLMessage": {
            "LanguageCode": languageCode,
            "VoiceId": voiceId,
            "Text": ssmlMessage,
        }
    },
)

Verify that the Amazon Pinpoint voice event destination is activated

1.    Run the following get-configuration-set-event-destinations AWS CLI command:

Important: Replace <Pass_the_configuration_set_name> with your configuration set's name.

aws pinpoint-sms-voice get-configuration-set-event-destinations --configuration-set-name <Pass_the_configuration_set_name>

2.    In the command output, review the "Enabled" parameter. The event destination isn't activated if this parameter's value is false.

Note: Logs don't write to an event destination if the destination isn't activated.

3.    If the event destination isn't activated, then activate the event destination by running the following update-configuration-set-event-destination command:

Important: Replace <Pass_the_configuration_set_name> with your configuration set's name. Replace <EventDestinationName> with your event destination's name. Replace <InputFileName> with your input request file's name. Make sure that your input request file's "Enabled" parameter is configured as true.

aws pinpoint-sms-voice update-configuration-set-event-destination --configuration-set-name <Pass_the_configuration_set_name> --event-destination-name <EventDestinationName> --event-destination file://<InputFileName>.json

Example input request file for an Amazon Kinesis Data Firehose stream event destination

{
    "Enabled": true,
    "MatchingEventTypes": ["INITIATED_CALL","RINGING","ANSWERED","COMPLETED_CALL","BUSY","FAILED","NO_ANSWER"],
    "KinesisFirehoseDestination": {
        "DeliveryStreamArn": "arn:aws:firehose:<region>:<AccountID>:deliverystream/<Name_of_Kinesis_Firehose>",
        "IamRoleArn": "arn:aws:iam::<AccountID>:role/service-role/<IAM_role_name>"
    }
}

For more information about input request files, see How do I set up logging for Amazon Pinpoint voice messages?


Did this article help?


Do you need billing or technical support?