检索来电的CallSid

时间:2013-08-07 17:31:15

标签: ruby sinatra twilio

当我的ruby脚本通过Twilio拨打电话时,对于我来说,查找,输出和重复使用呼叫Sid对我来说是一块蛋糕:

  

@client = Twilio::REST:Client.new account_sid, auth_token

     

call = @client.account.calls.create({ :from=>'INC', :to=>'OUT', :url=>'URL', :method=>'GET'})

     

puts call.sid

这适用于我自己制作的拨出电话。

问题是当我尝试接听来电时的呼叫SID。

  

get '/greeting' do

     

Twilio::TwiML::Response.new do |r|

     

r.Say 'Hello. Welcome.'

     

r.Gather :numDigits => '1', :action => '/greeting/handle-gather', :method => 'get' do |g|

     
    

g.Say 'For X, press 1. For Y, press 2. For Z, press 3.'

  
     

end

     

end.text


  

puts Twilio::TwiML::Request.CallSid

     

CallSid = incoming_Cid

     

end

然后将incoming_Cid存储在MYSQL数据库中以供日后使用。我不确定Twilio::TwiML::Request.CallSid是否是获取Twilio传递给我的应用程序的请求参数的正确方法。

如何正确检索来电的CallSid?

1 个答案:

答案 0 :(得分:0)

没关系,只需使用Ruby的params而不是Twilio HTTP Request对象解决了这个问题:

  

puts params['CallSid']