3

遵循 Twilio 客户端的教程。在您进行测试的地方卡住了 https://www.twilio.com/docs/quickstart/ruby/client/incoming-calls

curl -X POST http://localhost:3000/voice

我不断收到 WEBrick::HTTPStatus::LengthRequired 响应。

当我把它作为

curl -X POST http://localhost:3000/voice -d ''

有用。但是如何在我的路由或控制器中解决这个问题?

路线.rb

post 'voice', to: 'calls#voice', as: :voice

控制器

def voice
    response = Twilio::TwiML::Response.new do |r|
    # Should be your Twilio Number or a verified Caller ID
        r.Dial :callerId => '+16479316790' do |d|
            d.Client 'jenny'
        end
    end
    render :text => response.text
end

谢谢!此外,如果您之前已经这样做过……在仪表板中添加 localhost:3000 作为回调 url 时遇到问题。有什么建议么?

4

1 回答 1

1

语音 URL 不需要是 POST 请求,它可以是 GET 请求。在 App 仪表板中,您可以将语音请求 URL 的类型更改为 GET,然后修改您的 routes.rb 以使用 get。

使用“localhost”作为域将无法像希望 URL 指向您的网络服务器那样工作。相反,您想要的是您的网络服务器的完整 URL,您可以使用类似ngrok的东西来完成。

于 2013-09-29T00:03:55.103 回答