예제 #1
0
        public JsonResult MockMessage(int templateId, int?MaxCount)
        {
            using (var l = new MessagesModuleLogic()) {
                var tmpl = l.Get <tblTemplate>(templateId);
                if (tmpl == null)
                {
                    return(NgResultToJsonResult(NgResult.Fail(DEBS.Translate("MessageMdl.Server Error: cannot find template, try save it and re-open."))));
                }

                var items = TASK_PROTOTYPE.GetDemoMessages(l, tmpl, sqllogic, tmpl.IsSms, MaxCount ?? 0);
                return(NgResultToJsonResult(FetchResult <Message> .Succes(items, items.Count)));
            }
        }
예제 #2
0
        public void WorkService(object sender, System.Timers.ElapsedEventArgs e)
        {
            ServiceTimer.Stop();

            using (var logic = new MessagesModuleLogic(new MessageContext()))
            {
                TASK_PROTOTYPE.RunScheduledBatchSending(logic, new BatchSendingTaskSettings {
                    SmsLimit = 20, MailsLimit = 20
                });
            }

            ServiceTimer.Start();
        }
예제 #3
0
 public JsonResult SendImmediately(int ScheduleId)
 {
     using (var l = new MessagesModuleLogic()) {
         var sched = l.Get <tblMessageSchedule>(ScheduleId);
         if (sched == null)
         {
             return(NgResultToJsonResult(NgResult.Fail(DEBS.Translate("MessageMdl.Server Error: cannot find template, try save it and re-open."))));
         }
         var result     = TASK_PROTOTYPE.RunImmediateBatchCreation(sched, 1, sqllogic, l);
         var msgBuilder = new StringBuilder();
         msgBuilder.AppendLine(DEBS.Translate("MessageMdl.Message Batch was created and will be sended as soon as possible."));
         msgBuilder.AppendLine(DEBS.Translate("MessageMdl.It contains: {0} messages.", result.Messages.Count()));
         var msg = msgBuilder.ToString();
         return(NgResultToJsonResult(NgResult.Succes(msg)));
     }
 }
예제 #4
0
 public override void Execute()
 {
     using (var logicSetting = new tblSettingLogic())
     {
         if (logicSetting.BatchSendingIsActive)
         {
             using (var logic = new MessagesModuleLogic(new MessageContext()))
             {
                 //logger.Info("BatchSending");
                 TASK_PROTOTYPE.RunScheduledBatchSending(logic, new BatchSendingTaskSettings {
                     SmsLimit = 20, MailsLimit = 20
                 });
                 logicSetting.BatchSendingLastRun = DateTime.UtcNow;
             }
         }
     }
 }