4

Twilio 将长代码 SMS 限制为 1/秒。为了提高吞吐量,我将批次分成 5 个电话号码。我发现到 Twilio API 的每个 HTTP POST 大约需要 0.5 秒。

有人会认为使用 5 个 twilio 电话号码向 1000 部手机发送消息需要 200 秒,但仅 POST 请求就需要 500 秒。所以两个电话号码将使我的吞吐量翻倍,但更多不会有什么不同。

我错过了什么吗?我想如果 API 为“To”参数获取电话号码列表会很好。我不想为短代码付费,但即使我这样做了,最大吞吐量似乎也是 2/秒,除非您求助于让多个线程为 Twilio 提供数据的复杂性。

我在通话期间注意到 TwiML 让您在构建响应时包含多个 sms 节点,因此似乎应该有一种方法可以对出站 SMS 执行相同的操作。

4

3 回答 3

10

Twilio 布道者在这里。目前,我们要求您将每条外发 SMS 消息作为其自己的 API 请求提交。

长码的当前速率限制是每秒 1 条消息。如果每秒发送更多消息,Twilio 会将它们排队并以每秒 1 条的速率发送出去。

一种潜在的解决方法是跨多个电话号码发出异步请求。这可以通过twilio node.js 模块或事件框架(例如 EventMachine for Ruby 或您选择的语言的类似工具集)来完成。

希望这可以帮助!

于 2014-01-14T01:13:21.497 回答
2

这是一个更现代的答案。Twilio 现在支持消息服务。它基本上可以让您创建一个可以将多个出站电话号码组合在一起的服务。因此,当您发出要发送文本的请求时,它可以使用消息组中的所有数字来执行发送。这有效地克服了每秒 1 个文本的限制。

Copilot 还附带消息服务。它添加了一些功能,例如“粘性发件人”。这可确保同一最终用户始终从池中的相同号码获取文本,而不是从不同号码获取文本。

于 2019-03-03T21:29:25.950 回答
0

如果您使用的是试用帐户,即使在数组中的每个项目之间以 5 秒的超时循环循环也不适合我。那只是两个数字。升级帐户后,代码立即生效,无需超时。

如果您收到的短信(仅发送到一个号码时)显示“从您的 Twilio 试用帐户发送 -”,您就知道这是试用帐户。

于 2017-02-02T00:58:18.160 回答