让一个URL在rails应用程序中生成TwiML响应

时间:2015-09-17 20:49:18

标签: ruby-on-rails ruby http twilio twiml

我们正在使用' twilio-ruby'我们的应用程序库。 Twilio服务按预期工作,正在按预期发送和接收来自客户端的文本消息。但是,当有传入消息时,服务器有一个500(HTTP检索失败)。我相信我们需要生成一个TwiML响应,这将停止错误。我不确定我将如何做到这一点。我在rails应用程序中工作,我想在控制器内生成吗?提前感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

来自Twilio的Ricky在这里。有一个博客文章遍历setting up a Rails app to respond with TwiML in a bit more in depth,但你是正确的,想要从控制器内生成TwiML。使用Twilio ruby​​ gem的简单示例如下所示:

  def sms
    response = Twilio::TwiML::Response.new do |r|
      r.Message 'Hey there. Congrats on integrating Twilio into your Rails 4 app.'
    end

    render xml: response.to_xml
  end

博客文章中详细介绍了这一点,但为了让Twilio能够POST到此端点,您还需要确保在控制器中禁用CSRF。您可以通过添加以下行来执行此操作:

skip_before_action :verify_authenticity_token

如果有帮助,请告诉我!