我在我的rails 3.1.3应用程序中使用Twilio,并且基本设置了一切,即根据响应取决于视图的sms和xml构建器的控制器。唯一我无法弄清楚的是如何跟踪对话。 Twilio文档对于使用除PHP之外的任何其他文档都很不好。我尝试过使用Rails会话哈希,会话[:变量],但它似乎并没有保存会话,因为我试图重定向和打印出来,什么都没有。以下是控制器的代码。使用Rails和Twilio跟踪SMS对话
def receive # Check for session variable and redirect if necessary @sms_state = session[:sms_state] if @sms_state == 'confirmation' redirect_to 'confirm' end if condition @sms_state = 'confirmation' session[:sms_state] = @sms_state render :action => "view.xml.builder", :layout => false else @sms_state = 'new_state' session[:sms_state] = @sms_state render :action => "error.xml.builder", :layout => false end end # method that should be called after user deals with first part def confirm if condition @sms_state = session[:sms_state] = nil render :action => "confirm_view.xml.builder", :layout => false else @sms_state = 'confirmation' session[:sms_state] = @sms_state render :action => "error.xml.builder", :layout => false end end
我现在已经建立了一个数据库表来跟踪这取决于我的应用程序联系的电话号码当前通话状态。现在我唯一需要做的就是为会话设置一个到期,就像会话或cookie一样。我不确定如何做到这一点,或者甚至有可能。
我相信这篇博文是http://www.twilio.com/blog/2012/01/twilio-and-rails-3-tracking-sms-conversations.html,涵盖了你在找什么。特别是,看看Rails对CSRF的保护的底部。 – mguymon 2013-01-29 19:57:43
谢谢。我在写完文章后写了那篇文章,但感谢读它! – acmeyer9 2013-02-02 20:18:27