如何使用 Twilio 连接 2 个匿名呼入呼叫者
How to connect 2 anonymous inbound callers with Twilio
我在 SO 上阅读了一些类似的帖子,但是回复没有解释 如何,他们只解释了 Twilio 是可能的。如果 Twilio 布道者能给我一些具体的指导,我将不胜感激。
想法是 (调用方 A) 调用 (Twilio 号码)。 Twilio 会存储来电者 A 的号码,直到接到第二个来电者。
一旦 (来电者 B) 调用相同的 (Twilio 号码),他将连接到来电者 A。
这是随机的,同时处理很多请求。来电者 A 和来电者 B 接通后,他们的号码将从存储中删除,因此其他人都不会与他们接通。
冲洗重复。
此处为 Twilio 开发人员布道师。
您可以使用 Enqueue
and <Queue>
. First you need to create your queue using the REST API 执行此操作。这可以提前完成。
我将在此处使用 Ruby 作为示例,但是您可以在我们的文档中查看其他语言的情况。
require "twilio-ruby"
client = Twilio::REST::Client.new(ENV["TWILIO_ACCOUNT_SID"], ENV["TWILIO_AUTH_TOKEN"])
queue = client.queues.create(:friendly_name => "call_roulette")
puts queue.sid
您需要保存 Queue Sid 和友好名称,稍后您将使用它们连接到队列。
然后,当有人打电话时,您需要检查队列中是否有人在等待。如果有则连接两个呼叫者,如果没有则将那个呼叫者放入队列并等待另一个呼叫。
调用时,Twilio 将向您在 Twilio console 中提供的 URL 发送 HTTP 请求。您需要回复正确的
根据以上条件
此示例使用 Sinatra 作为 Web 框架。
require "twilio-ruby"
require "sinatra"
client = Twilio::REST::Client.new(ENV["TWILIO_ACCOUNT_SID"], ENV["TWILIO_AUTH_TOKEN"])
post "/call" do
queue = client.queues.get(QUEUE_SID)
if queue.current_size == 0
twiml = "<Response><Enqueue>#{QUEUE_FRIENDLY_NAME}</Enqueue></Response>"
else
twiml = "<Response><Dial><Queue>#{QUEUE_FRIENDLY_NAME}</Queue></Dial></Response>"
end
return twiml
end
当队列为空时,我们使用Enqueue将呼叫者放入队列中,当队列中有人时,我们使用Dial和Queue拨打队列中的人。
如果有帮助请告诉我。
我在 SO 上阅读了一些类似的帖子,但是回复没有解释 如何,他们只解释了 Twilio 是可能的。如果 Twilio 布道者能给我一些具体的指导,我将不胜感激。
想法是 (调用方 A) 调用 (Twilio 号码)。 Twilio 会存储来电者 A 的号码,直到接到第二个来电者。
一旦 (来电者 B) 调用相同的 (Twilio 号码),他将连接到来电者 A。
这是随机的,同时处理很多请求。来电者 A 和来电者 B 接通后,他们的号码将从存储中删除,因此其他人都不会与他们接通。
冲洗重复。
此处为 Twilio 开发人员布道师。
您可以使用 Enqueue
and <Queue>
. First you need to create your queue using the REST API 执行此操作。这可以提前完成。
我将在此处使用 Ruby 作为示例,但是您可以在我们的文档中查看其他语言的情况。
require "twilio-ruby"
client = Twilio::REST::Client.new(ENV["TWILIO_ACCOUNT_SID"], ENV["TWILIO_AUTH_TOKEN"])
queue = client.queues.create(:friendly_name => "call_roulette")
puts queue.sid
您需要保存 Queue Sid 和友好名称,稍后您将使用它们连接到队列。
然后,当有人打电话时,您需要检查队列中是否有人在等待。如果有则连接两个呼叫者,如果没有则将那个呼叫者放入队列并等待另一个呼叫。
调用时,Twilio 将向您在 Twilio console 中提供的 URL 发送 HTTP 请求。您需要回复正确的 根据以上条件
此示例使用 Sinatra 作为 Web 框架。
require "twilio-ruby"
require "sinatra"
client = Twilio::REST::Client.new(ENV["TWILIO_ACCOUNT_SID"], ENV["TWILIO_AUTH_TOKEN"])
post "/call" do
queue = client.queues.get(QUEUE_SID)
if queue.current_size == 0
twiml = "<Response><Enqueue>#{QUEUE_FRIENDLY_NAME}</Enqueue></Response>"
else
twiml = "<Response><Dial><Queue>#{QUEUE_FRIENDLY_NAME}</Queue></Dial></Response>"
end
return twiml
end
当队列为空时,我们使用Enqueue将呼叫者放入队列中,当队列中有人时,我们使用Dial和Queue拨打队列中的人。
如果有帮助请告诉我。