【问题标题】:Inconsistent webhook delivery of Twitter Account Activity APITwitter Account Activity API 的 webhook 交付不一致
【发布时间】:2020-06-04 15:19:34
【问题描述】:

我已经使用 Account Activity API 成功设置了一个 DM 机器人。一切都很好,除了有时发送到机器人的消息(通过 Twitter 的 Web 界面或移动应用程序)不会触发到我的服务器的 webhook。消息可以是快速回复或纯文本。

原因显然不是我的服务器停机,因为我试图在 2 个 webhook 注册用户之间进行对话(因此我的服务器接收两个用户的 webhook)并且对于发送的相同消息,我已成功接收到 webhook发件人(用户)但不是收件人(机器人)。 由于该机器人尚未投入生产,原因不是消息过载。目前只有 2 个用户进行对话。根据我的经验,大约 10% 的消息“丢失”了。

我正在使用免费(沙盒)帐户活动 API 层,但据我了解,免费版本和付费版本之间的唯一区别是订阅数量更高(我可以接受 15 个)和“重试”功能.关于此功能,specified 表示“当客户端的 Web 应用程序未针对帐户活动 webhook 事件返回‘成功’200 响应时,帐户活动 API 提供重试功能。” 它明确指出事件失败与客户端有关,而不是 Twitter 端。考虑到这个问题(我的服务器根本没有收到 webhook),即使在付费计划中,也不能保证每个事件都会交付。

这对机器人来说是一个很大的不便,因为一个按钮只能点击一次,所以用户必须从头开始重试对话(除了机器人“不起作用”的事实......)

所以我的问题是:

  • 这里有人遇到过这个问题吗?
  • 这是免费帐户活动 API 的“错误还是功能”?我的意思是,随机免费层不会故意触发 webhook(即使文档中没有指定)?
  • 有没有办法查看或衡量 Twitter 端的 webhook 故障,例如通过仪表板?
  • 猜测如果帐户经过验证(带有蓝色徽章)或达到追随者数量阈值,事件可能会更准确?由于潜在的事件激增,治疗可能会有所不同,因此使用更多资源对其进行监控,从而更可靠?

我已经在官方 Twitter 论坛中创建了一个topic,并且至少还有一个人在同一案例中,但到目前为止,Twitter 还没有官方答复。

非常感谢!

BR, 西蒙

【问题讨论】:

  • 我可以确认我在使用 Twitter 的 webhook 时观察到了相同的行为。大约十分之一的私人消息中缺少 webhook 事件。

标签: api twitter webhooks


【解决方案1】:

我得到了来自 Twitter 的官方答复:

不幸的是,当一个事件只有 1 次交付尝试时,不可能达到 100% 的交付率,这就是我们要重试的原因(即使这样,重试也不能保证)。事情可能会出错;可能是 Twitter 数据中心的内部问题、互联网中的路由问题、webhook 的托管问题等等。

因此,从目前来看,当您在 Twitter 上构建机器人时,似乎无法实现 100% 的成功交付。

完整答案可以阅读here

【讨论】:

    猜你喜欢
    • 2020-02-06
    • 2013-01-19
    • 1970-01-01
    • 2021-12-25
    • 2015-09-16
    • 1970-01-01
    • 1970-01-01
    • 2017-12-28
    • 2015-02-19
    相关资源
    最近更新 更多