【发布时间】:2013-01-27 00:01:50
【问题描述】:
目标:
我正在使用 Twilio 通过 SMS 向用户发送响应。然后我要求该用户再次通过 SMS 对响应进行评分。 我想将用户的评分保存为响应模型的属性。
问题:
我不知道如何以聪明的方式做到这一点。现在我能想到的最好的方法是找到发送给该用户的最新响应(用户可以有很多响应)并给它评分。但这有一些问题,例如,如果用户收到多个响应并想要对旧响应进行评分。
-
我很绿,不知道怎么实现代码。这是我在相关控制器中的内容:
class TwilioController < ApplicationController def process_sms @rating = params[:Body] #Find the response that this rating should get #Assign this rating to that response if @rating == "10" #thanks for the high rating else #will try to do better next time end end end
提前致谢,如果我能把这个问题做得更好,请告诉我——这是我第一次发帖。
【问题讨论】:
-
您能否在与此控制器方法 (process_sms) 关联的 URL 上成功接收来自 Twilio 的 SMS?如果是这样,那么只要您的“响应”模型支持“评级”属性,您就应该能够正常使用该模型。您是否不确定如何创建 Rails 模型的属性?
-
是的,短信成功通过。问题是 1)我不确定如何将该 SMS 转换为正确响应模型的属性,以及 2)我不确定是否有一种聪明的方法来检测评级对应的响应,因为 SMS 没有'没有线程/回复/等。
-
1.) 这将与任何 Rails 模型相同 - 创建一个迁移,将字符串添加到模型并运行迁移。然后,一个新属性应该在模型上是“可设置的”。 2.) 您应该能够使用 REST API 来获取从给定号码发送到您的应用程序的 SMS 消息列表。除非您的用户可以一次对多个回复进行评分,否则这应该会为您提供来自特定用户的回复列表。
标签: ruby-on-rails ruby sms twilio