在 aws pinpoint中的 TTL_EXPIRED 问题:如何处理,如何覆盖TTL?

0

【以下的问题经过翻译处理】 偶尔我们在短信送达通知中会收到TTL_EXPIRED错误。在某些天数,这种错误的数量显著增加。根据AWS支持团队的说法,如果设备无法访问,可能会发生这种情况。

  • 处理这些错误的推荐方法是什么?
  • 默认TTL是多少?我们可以覆盖它吗?(最好基于发送者)- 如果可以,是配置更改还是API级别更改?
  • TTL在AWS端吗?还是在下游电信公司?
profile picture
专家
已提问 5 个月前43 查看次数
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 值。
profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则