如何解决 Amazon SNS 短信中的“Unknown error attempting to reach phone”错误?

上次更新日期:2021 年 9 月 8 日

我的移动短信(SMS 消息)无法通过 Amazon Simple Notification Service (Amazon SNS) 或 Amazon Pinpoint 发送。然后,我收到来自 Amazon SNS 或 Amazon Pinpoint 的短信,提示出现了“Unknown error attempting to reach phone”错误。

简短描述

短信通过第三方下游聚合器、短信供应商和移动运营商发送到移动设备。也就是说,如果您将短信与 Amazon SNS、Amazon Pinpoint,或者与 Amazon SNS 或 Amazon Pinpoint 集成的任何 AWS 服务一起使用,当这些下游合作伙伴无法访问移动设备时,您就会收到“Unknown error attempting to reach phone”错误。

重要提示:短信架构设计为分布式。最佳做法是不要假设应用程序的短信传输具有较高可靠性和性能。有关更多信息,请参阅互联网工程任务组 (IETF) 中的 RFC 5724

解决方法

检查常见问题

排除与 Amazon SNS 或 Amazon Pinpoint 无关的常见问题。

您收到此错误的原因可能如下:

  • 电话号码被运营商当作垃圾内容阻止。
  • 目标被阻止。
  • 信息正文无效。
  • 电话号码位于“请勿打扰”列表中。
  • 手机在漫游网络中。
  • 手机运营商阻止此消息。
  • 手机阻止短信。
  • 手机暂时超出了覆盖区域。
  • 手机已关机。
  • 电话是固定电话号码(不是手机号码)。
  • 消息正文中的 URL 未注册。
  • 手机号码无效。
  • 下游合作伙伴的给定号码或一组区域号码的网络配置不正确。

查看短信最佳实践

确认您遵循发送短信的目标国家/地区或 AWS 区域的短信最佳实践、规则和法规。

确认您使用的是正确的来源身份。如果需要,必须注册身份。有关更多信息,请参阅支持的国家/地区和区域(短信通道)

如果您向美国发送短信,请参阅关于向美国目的地发送短信的特殊要求

如果您使用本地路由向印度发送短信,请先预先注册专用的字母发件人 ID。然后,使用 DLT 注册的模板。有关更多信息,请参阅关于向印度收件人发送短信的特殊要求

单个设备交付问题故障排查

设备级短信阻止、漫游、覆盖范围差距和其他因素都可能导致单个设备交付问题。

要对这些问题进行故障排查,请执行以下操作:

  1. 使用 Amazon Pinpoint API 验证电话号码
  2. 从另一台设备发送短信,然后检查短信是否成功发送。

如果上述两个步骤都成功,则考虑在其他设备上进行测试。

如果问题仍然存在,那么设备所有者应联系其移动运营商以寻求支持。

多个设备交付问题故障排查

如果短信交付影响多台设备,可能是下游聚合器、供应商和运营商存在问题

要对潜在的下游问题进行故障排查,请就用于发送短信的服务创建支持案例

在支持案例中提供以下信息:

  • 您用来发送短信的区域
  • 问题开始的时间戳
  • 短信日志示例,其中包含至少三个或四个不同号码不超过三天的失败短信的消息 ID

注意:通常,移动运营商不会存储短信超过三天。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?