private void SendMessage(string configName, string mobileMessage, string mailMessage) { ThreadPool.QueueUserWorkItem(state => { try { var configitem = AlarmConfigurationBase.GetConfig().AlarmConfigurationByStatistics.Values.FirstOrDefault(c => c.ConfigName == configName); if (configitem != null) { foreach (var groupName in configitem.AlarmReceiverGroupNames.Values) { var group = AlarmConfigurationBase.GetConfig().AlarmReceiverGroups.Values.FirstOrDefault(g => g.GroupName == groupName); foreach (var r in group.AlarmReceivers) { var admin = mongodbQueryService.GetAdminConfigurationInternal(r.Value.Name); if (admin != null) { if (group.EnableMobileMessage) { var mobile = new MobileItem { MobileNumber = admin.MobileNumber, MobileMessage = mobileMessage, }; mobileService.Send(new List <MobileItem> { mobile }); } if (group.EnableMailMessage) { var mail = new MailItem { MailTitle = mailMessage, MailBody = mailMessage, MailAddress = admin.MailAddress, }; mailService.Send(new List <MailItem> { mail }); } } } } } } catch (Exception ex) { ex.Handle("SendMessage"); throw; } }); }
public List <MongodbAdminConfigurationItem> GetAlarmReceivers(string groupName) { List <MongodbAdminConfigurationItem> receivers = new List <MongodbAdminConfigurationItem>(); var group = AlarmConfigurationBase.GetConfig().AlarmReceiverGroups.Values.FirstOrDefault(g => g.GroupName == groupName); foreach (var r in group.AlarmReceivers) { var admin = mongodbQueryService.GetAdminConfigurationInternal(r.Value.Name); if (admin != null) { receivers.Add(admin); } } return(receivers); }
public List <string> GetAlarmGroup() { var group = AlarmConfigurationBase.GetConfig().AlarmReceiverGroups.Values.Select(a => a.GroupName).ToList(); return(group); }
static DataService() { mailService.Init(AlarmConfigurationBase.GetConfig().MailSmtp, AlarmConfigurationBase.GetConfig().MailUsername, AlarmConfigurationBase.GetConfig().MailPassword); mobileService.Init(AlarmConfigurationBase.GetConfig().MobileCategoryId); }