2015-09-07 42 views
1

爲什麼我得到這個錯誤「TwiML響應身體太大」。 我嘗試像Twilio呼叫添加參數,以獲得最新通話狀態:Twilio TwiML響應身體太大錯誤

call = client.account.calls.create({ 
     :url => used_url, 
     :to => to_no, 
     :from => from_no, 
     :method => "GET",        
     :status_callback => "http://xxx/en/update_twilio_call_status", 
     :status_callback_method => "POST", 
     :status_callback_event => ["initiated", "ringing", "answered", "completed"], 
     :if_machine => "Hangup", 
     :timeout => "20" 
     }) 

而且,在我的Rails控制器我有這樣的:這裏

def update_twilio_call_status 
    @job = TwilioCall.where(:twilio_sid => params['CallSid']).first 
    @job.twilio_status = params['CallStatus'] 
    @job.save 
    render nothing: true 
end 

回答

0

Twilio開發佈道者。

的Twilio錯誤消息在這裏更詳細的解釋:https://www.twilio.com/docs/errors/11750

它說:

可能的原因

  • ,你所服務的TwiML大於64 KB
  • 正在服務中非TwiML

雖然你看起來不像是服務超過64kB的TwiML,但可能是因爲你根本沒有返回TwiML。

嘗試返回一個空的<Response/>標記。

+0

好日子philnash,我對Twilio很新。添加諸如>> [:status_callback,:status_callback_method,:status_callback_event]這樣的參數時,我有問題。 我唯一的目的是在調用正在進行時獲取由Twilio API發佈的最新狀態。我是否需要返回XML響應? –

+0

你知道,我不會認爲這是問題,只是我的第一個建議給出的錯誤信息。你只有在回調函數上出現這個錯誤? 'used_url'做了什麼? – philnash

+0

只有在添加[status_callback,:status_callback_method,:status_callback_event]方法時纔可以。 「used_url」包含整個XML ....沒有使用上述方法時沒有問題。當我的GUI正在進行最新更新時,我只需要Twilio API發佈「CallStatus」。 –