我需要逻辑方面的帮助。我有一个发送短信的应用程序。要插入的SMS由用户(.NET MVC应用程序)插入,DB中有一个表。
表输出短信:
我计划的应用程序是Windows服务(用于Topshelf),它每隔10秒检查表中是否有新行,其中WHERE字段Sent为TRUE且DateTime.Now-DateTime2Send = <0,然后发送。查找用户直接插入表中的消息的所有内容。
现在,我需要实施按时间间隔发送SMS的计划-每30分钟,每天,每周,每月。为此,我创建了一个表SMSschedule:
可能有1条以上的消息安排给每个接收者。我认为要制定另一个计划,每10(或30)分钟检查一次此表,并在第一个表outputSMS中创建数据(哦,我需要添加字段以标识已计划或由用户插入)。我想按此间隔检查它,因为用户可以随时按计划进行更改。接收器的最大数量为20k,每个接收器可能有多个调度表。
接收器SMS_ScheduleType SMS_DateToSend SMS_DayOfWeekToSend SMS_TimeToSend SMS_TextToSend Rec-1每天0 0 20:00晚上 Rec-2每天0 0 6:00早上 Rec-3每小时0 0 0 INFO每小时 Rec-4每周0 3 15:30 TEST每周 Rec-4每月23 0 10:00每月测试
我应该为“每小时”添加一个字段来设置什么时间发送?对于Time2Send字段,步长必须为0.5小时,即30分钟。你有什么建议?DB是Postgres,可以转移到Oracle。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句