我们正在开发基于SMS的测验竞赛,用户通过向我们的服务器发送短信请求开始测验。然后服务器和用户回复问题。整个应用程序是一个Web项目(C#)。所以我必须保持请求之间的状态。我正在寻找类似于ASP.NET Session的SMS会话。这里SessionId是用户的mobno。 如果用户没有回复问题,那么会话应该超时...请帮我找到这个场景的解决方案...'
答案 0 :(得分:2)
假设您将会话存储在数据库中,您将需要有一个监视会话的后台进程,当会话到期时,您可以更新数据库中的会话记录并生成SMS消息以通知用户。 / p>
后台进程可能是扫描数据库的Windows服务,或者根据您使用的后端数据库,您可以使用预定的数据库任务来执行检查,大多数基于服务器的数据库(如SQL Server)支持预定的概念作业。
答案 1 :(得分:0)
在从特定号码接收第一条SMS时,您必须通过生成并存储带有响应的唯一ID来启动会话,并且还存储接收短信的时间。在每次收到回复之后,更新数据库中该会话ID的时间。
您可以通过检查当前的短信时间和上一个短信时间来检查会话超时。
这是我认为你可以在这里维持会话的方式。