내 레일 3.1.3 앱에서 Twilio를 사용하고 있습니다. 기본적으로 응답에 따라 뷰의 SMS 및 SMS 빌더 용 컨트롤러를 모두 설정했습니다. 내가 알 수없는 유일한 방법은 대화를 추적하는 것입니다. Twilio 문서는 PHP 이외의 다른 것을 사용하기에 매우 좋지 않습니다. 내가 레일 세션 해시, 세션 [: 변수]를 사용하여 노력했지만 세션을 저장하지 않는 것, 리디렉션하고 그것을 밖으로 인쇄 해봤고 아무것도 얻지 못했습니다. 아래는 컨트롤러의 코드입니다.레일 및 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
나는 지금 내 응용 프로그램을 연락 전화 번호에 따라 현재 대화 상태를 추적하는 데이터베이스 테이블을 설정했습니다. 지금해야 할 일은 세션이나 쿠키처럼이 대화의 만료를 설정하는 것입니다. 나는 이것을 할 수 있을지 또는 가능한지 모르겠다.
나는이 블로그 게시물 (http://www.twilio.com/blog/2012/01/twilio-and-rails-3-tracking-sms-conversations.html)이 당신이 찾고있는 것을 다루고 있다고 믿는다. 특히 CSRF에 대한 Rails의 보호에 대한 맨 아래 부분을 살펴보십시오. – mguymon
네 감사합니다. 나는 그것을 알아 낸 후에 실제로 그 기사를 썼다. 그러나 그것을 읽는 것에 감사한다! – acmeyer9