1 回答
- 最新
- 投票最多
- 评论最多
0
【以下的回答经过翻译处理】 请允许我简要介绍一下SNS短信服务流程:
流程:Amazon SNS->聚合器->移动运营商->移动终端
当从Pinpoint发送短信时,Pinpoint会将消息转发给聚合器,聚合器再将其转发给手机运营商。然后,手机运营商负责将消息发送到移动终端(终端用户设备)。电话运营商为该特定消息提供响应日志。因此,某些手机运营商内部的问题有时会导致向某些目标电话号码发送短信失败。我们将消息交接给移动运营商后,每个运营商都有自己的TTL计时器开始计时,并将尝试发布消息,直到它不过期为止。如果由于任何原因运营商无法在TTL内将消息发送到终端,它将出现“The delivery TTL has expired”的响应而失败。
这些信息失败的原因是,在移动运营商能在 TTL 内将信息发送到设备端点之前,信息的 TTL(Time To Live)已过期。可能的原因包括:
- 设备无法接收消息。例如,网络不可用/覆盖范围外或漫游,或设备没有留下接收新消息的空间
- 设备离线(关机)
请查看下面对您提出的问题的答案
这种错误的推荐处理方法是什么?
为了缓解问题:
- 确保终端用户设备不离线(关机)。
- 设备能够接收消息。例如,网络可用性/ 范围内或漫游。
- 设备留有接收新消息的空间。
默认 ttl 是多少?能否覆盖?(最好是基于发件人)- 如果可以,是更改配置还是更改 API 级别?
- TTL 是运营商特定的,不由 AWS 管理,我们无法更改 SMS 的 TTL 值。
相关内容
- AWS 官方已更新 1 年前
- AWS 官方已更新 1 年前
- AWS 官方已更新 1 年前
- AWS 官方已更新 1 年前