'AWS SNS: SMS started to fail with "Unknown error attempting to reach phone"
Normally our application is sending transactional SMS via us-west-2 and us-east-1. Sending limits are not exceeded. Some days ago sending transactional SMS stopped working. About 12 hours later the AWS CloudWatch logs show the error: "Unknown error attempting to reach phone". The phone numbers received SMS successfully in the past. The receivers are located in Germany. Unfortunately, the API's response code is 200 (success), even though the SMS is not sent successfully.
Very surprisingly, some SMS is sent successfully. But most SMS are resulting in the before mentioned error. Even sending transactional SMS via AWS SNS Console are not working. The green Flash-Message is indicating a success, however, no SMS is sent.
What is causing this error? Are there possibilities to detect failed SMS in our application?
Solution 1:[1]
Since some SMS are sent successfully but most of the SMS are resulting with the error:
Unknown error attempting to reach phone
I would strongly suggest that you contact AWS Premium Support to help you identify why SMS sent are not being delivered.
Solution 2:[2]
I had the same issue and I solved this way
Context
Allow AWS Cognito send SMS messages for SMS MFA codes.
Solution
Step 1
- Open the AWS Support console
- Create a new Service Limit Increase case
Here's an example possible values
Limit Type ->
SNS Text MessagingFill in all of the optional fields, even if the system's url is your test environment.
Use case description ->
AWS Cognito is indicating me that "To send SMS messages for verification or MFA, you must request a spending limit increase".How do your customers opt to receive messages from you? Provide specific information about the opt-in process ->
When setting up an account a user is asked to setup their Multi-factor authentication.Please provide the message template that you plan to use to send messages to your customers ->
"Your authentication code is {####}"Region ->
Select your desired regionResource Type -> General Limits
Limit name -> Exit SMS Sandbox
New limit value -> 1000 (that means 1000 USD/month)
AWS Documentation for this step
Step 2
- Open the SNS console
- Open Mobile > Text Messaging (SMS)
- Click Edit, on the
Text messaging preferencespanel - Set the Account spend limit, it must be any value betwee 1 and the limit you requested to AWS Support, in my case $1000.
- In same view, scroll down and configure the
Delivery status logging, create or select and existing Role.
AWS Documentation for this step
Conclusion
You need an AWS limit increase and also configure SNS correctly.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | syumaK |
| Solution 2 | raulra08 |
