Попросите URL-адрес сгенерировать ответ TwiML в приложении rails

В нашем приложении мы используем библиотеку twilio-ruby. Служба Twilio работает должным образом, текстовые сообщения отправляются и принимаются нашими клиентами, как и ожидалось. Однако, когда есть входящее сообщение, с сервера приходит 500 (11200 ошибка извлечения HTTP). Я считаю, что нам нужно сгенерировать ответ TwiML, и это остановит ошибку. Я просто не уверен, как бы я это сделал. Я работаю в приложении rails, хочу ли я генерировать внутри контроллера? Заранее благодарю за любую помощь.


person Matt    schedule 17.09.2015    source источник


Ответы (1)


Рики из Twilio здесь. В блоге есть запись, посвященная настроить приложение Rails для ответа с помощью TwiML немного подробнее, но вы правы, что хотели бы сгенерировать TwiML из контроллера. Простой пример использования рубинового драгоценного камня Twilio будет выглядеть следующим образом:

  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

Дайте мне знать, если это поможет!

person rickyrobinett    schedule 17.09.2015
comment
Ваше решение сработало. Спасибо за ответ @rickyrobinett - person Matt; 18.09.2015