我的手机短信通过 Amazon Simple Notification Service (Amazon SNS) 或 AWS 终端用户消息发送服务发送失败。我在短信的 Amazon CloudWatch Logs 中收到“Unknown error attempting to reach phone”错误。
由于多种原因,您可能会在短信的 CloudWatch Logs 中收到“Unknown error attempting to reach phone”错误。要启用并查看短信的 CloudWatch Logs,请参阅查看 CloudWatch Logs。
要解决其他类型的短信错误消息,请参阅如何排查 Amazon SNS 中的手机短信 (SMS) 失败?
**重要事项:**短信的底层架构就是分散式的。最佳做法是避免对应用程序的短信传输可靠性和性能做出假设。有关详细信息,请参阅互联网工程任务组 (IETF) 的 RFC 5724。
确认问题并非由以下原因导致:
确认您遵循目的地国家/地区或您发送短信所在的 AWS 区域的短信最佳实践、规则和法规。
确认所使用的发件身份正确无误。如果需要,请注册身份。有关详细信息,请参阅支持使用 AWS 终端用户消息发送 SMS 服务发送短信的国家/地区和区域。
如果您向美国发送短信,请确保使用美国支持的发件号码。
如果您使用美国的免费号码,请确保该电话号码已注册。
如果您通过本地路由向印度发送短信,请在完成注册流程后指定实体 ID 和模板 ID 值。确保您指定的模板 ID 与您的短信模板完全匹配。
设备级短信屏蔽、漫游、脱离服务区及其他因素都有可能导致单台设备送达问题。
完成以下步骤:
如果这两个步骤均成功,请在其他设备上进行测试。
如果问题仍然存在,则设备所有者必须联系其移动运营商寻求支持。
如果短信送达延迟问题影响多台设备,则可能是下游的聚合商、供应商、提供商和运营商存在问题。
要解决潜在的下游问题,请为您用于发送短信的服务创建支持案例。
请在支持案例中提供以下信息:
**注意:**移动运营商存储短信的时间可能不会超过 3 天。
重要事项: CloudWatch Logs 中的短信送达记录可能无法提供准确的短信送达时间。短信可能在您收到 CloudWatch Logs 之前就已送达。送达日志中的 dwellTimeMsUntilDeviceAck 值显示运营商在何时接受消息,但不提供有关延迟短信的信息。有关详细信息,请参阅查看 CloudWatch Logs。
How to manage global sending of SMS with AWS End User Messaging(如何使用 AWS 终端用户消息发送服务管理全球短信发送)
使用 CloudWatch 监控 Amazon SNS 主题
发送短信有哪些最佳实践?