Twilio将长码短信限制为1 /秒。为了提高吞吐量,我将我的批处理分成5个电话号码。我发现Twilio API的每个HTTP POST大约需要0.5秒。
有人会认为使用5个twilio电话号码向1000部手机发送信息需要200秒,但仅需要500秒来发送请求。因此,两个电话号码将使我的吞吐量翻倍,但更多不会产生影响。
我错过了什么吗?我认为如果API会为“To”参数列出电话号码会很好。我不想为短代码付费,但即使我这样做,似乎最大吞吐量是2 /秒,除非你采用多线程喂Twilio的复杂性。
我在通话期间注意到TwiML让你在构建响应时包含多个短信节点,所以看起来应该有办法对出站短信做同样的事情。
答案 0 :(得分:10)
Twilio Evangelist在这里。目前,我们要求您提交每个outgoing SMS message作为自己的API请求。
长码上的当前rate limit是每秒1条消息。如果每秒发送的消息数量更多,Twilio会将它们排队并以每秒1的速率发送出去。
潜在的解决方法是跨多个电话号码发出异步请求。这可以通过twilio node.js module或一个事件框架(如EventMachine for Ruby)或类似的工具集来实现。
希望这有帮助!
答案 1 :(得分:0)
如果您正在使用试用帐户,即使在阵列中的每个项目之间使用5秒超时循环也不适用于我。这只是两个数字。一旦我升级了帐户,代码就会立即运行而不需要超时。
如果您收到的短信(仅发送到一个号码时)说明了#34;从您的Twilio试用帐户发送了 - "
,您知道它是试用帐户吗?答案 2 :(得分:0)
这是一个更现代的答案。 Twilio现在支持Messaging Services。基本上,它使您可以创建可以将多个出站电话号码分组在一起的服务。因此,当您发出发送文本的请求时,它可以使用消息组中的所有数字来执行发送。这有效地克服了每秒1个文本的限制。
消息传递服务也随Copilot一起提供。它增加了一些功能,例如“粘性发件人”。这样可以确保同一最终用户始终从池中的同一号码获取文本,而不是从不同号码获取文本。