Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 短信通信中的状态维护_C#_Asp.net_Sms_Session State - Fatal编程技术网

C# 短信通信中的状态维护

C# 短信通信中的状态维护,c#,asp.net,sms,session-state,C#,Asp.net,Sms,Session State,我们正在开发一个基于短信的问答比赛,用户通过向我们的服务器发送短信请求开始问答。然后服务器询问问题,用户回复。整个应用程序是一个web项目(C#)。所以我必须在请求之间保持状态。我在找一个类似ASP.NET会话的短信会话。这里SessionId是用户的mobno。 若用户未能回答问题,则会话应超时。。。请帮助我找到此方案的解决方案…“在收到来自特定号码的第一条短信时,您必须通过生成和存储带有响应的唯一ID来启动会话,并存储接收短信的时间。之后,每次收到回复时,都要将时间更新到数据库中的会话id

我们正在开发一个基于短信的问答比赛,用户通过向我们的服务器发送短信请求开始问答。然后服务器询问问题,用户回复。整个应用程序是一个web项目(C#)。所以我必须在请求之间保持状态。我在找一个类似ASP.NET会话的短信会话。这里SessionId是用户的mobno。
若用户未能回答问题,则会话应超时。。。请帮助我找到此方案的解决方案…“

在收到来自特定号码的第一条短信时,您必须通过生成和存储带有响应的唯一ID来启动会话,并存储接收短信的时间。之后,每次收到回复时,都要将时间更新到数据库中的会话id

您可以通过检查当前sms时间和上次sms时间来检查会话超时


这就是我认为您可以在此处维护会话的方式。

假设您将会话存储在数据库中,您需要有一个后台进程来监控会话,并且当会话过期时,您可以更新数据库中的会话记录并生成SMS消息来通知用户


后台进程可以是扫描数据库的windows服务,或者根据您使用的后端数据库,您可以使用计划的数据库任务来执行检查,大多数基于服务器的数据库(如SQL server)都支持计划作业的概念。

感谢您的快速回复Bhavik。但我必须通知用户,他/她的会话已超时并已得分。只有当用户在超时后发送任何消息时,您的解决方案才会起作用,但我必须在超时发生时自动发送