拨出电话Twillio客户端

时间:2015-04-16 23:18:05

标签: twilio

我试图让两部手机以Uber通过Twillio的方式相互呼叫:

FROM:客户A从他们的移动设备拨打电话,他们呼叫的号码显示为我的Twillio号码

TO:客户B接到客户A的电话,但该号码显示为我的Twilio号码以防止

但是我一直收到错误11200 - HTTP retrieval failureArchive

错误返回406表示值得

我不明白为什么我甚至需要这个url!我只是想连接电话!

ActionController :: UnknownFormat(ActionController :: UnknownFormat):

在我的控制器中

def make_twillio_call
account_sid = ENV["twllio_account_sid"]
auth_token = ENV["twillio_auth_token"]
@client = Twilio::REST::Client.new account_sid, auth_token
url_string = "http://myapp.com/customers/Dial_Twillio.xml"

@call = @client.account.calls.create(
    :from => ENV["TWILIO_MOBILE"],
    # :from => params[:From].to_s,
    :to => params[:To],
    :url => url_string
)
respond_to do |format|
  msg = {:status => "SUCCESS", :token => "Call connected"}
  format.json  { render :json => msg } # don't do msg.to_json
  end
end

客户/ Dial_Twillio.xml.erb

<?xml version="1.0" encoding="UTF-8"?>
 <Response>
</Response>

1 个答案:

答案 0 :(得分:1)

看起来您正在尝试使用隐私进行一些呼叫转移。通话的第一部分应该是用户A拨打你的Twilio号码。

然后,不要使用REST API,因为它看起来就像你现在正在做的那样,你应该用一些TwiML来回应告诉Twilio将调用转发给用户B.所以,你的控制器动作看起来有点像这样:

def forward_call
  response = Twilio::TwiML::Response.new do |r|
    r.Dial :callerId => YOUR_TWILIO_NUMBER do |d|
      d.Number USER_B_NUMBER
    end
  end
  render xml: response.to_xml
end

然后,您需要确保Twilio号码的语音网址指向此操作。

我已将callerId作为您的Twilio号码包含在此处,这意味着它将是用户B的电话响铃时显示的号码。

这有帮助吗?