public SMSConfig GetSMSEmailMasterDetails(string groupId) { SMSConfig objData = new SMSConfig(); try { var connectionString = GetCustomerConnString(groupId); using (var contextNew = new BOTSDBContext(connectionString)) { var lstSMSEmail = contextNew.SMSEmailMasters.ToList(); if (lstSMSEmail != null) { objData.Enrollment = lstSMSEmail.Where(x => x.MessageId == "100").Select(y => y.SMS).FirstOrDefault(); objData.Earn = lstSMSEmail.Where(x => x.MessageId == "101").Select(y => y.SMS).FirstOrDefault(); objData.Burn = lstSMSEmail.Where(x => x.MessageId == "102").Select(y => y.SMS).FirstOrDefault(); objData.CancelEarn = lstSMSEmail.Where(x => x.MessageId == "103").Select(y => y.SMS).FirstOrDefault(); objData.CancelBurn = lstSMSEmail.Where(x => x.MessageId == "104").Select(y => y.SMS).FirstOrDefault(); objData.OTP = lstSMSEmail.Where(x => x.MessageId == "105").Select(y => y.SMS).FirstOrDefault(); objData.BalanceInquiry = lstSMSEmail.Where(x => x.MessageId == "106").Select(y => y.SMS).FirstOrDefault(); objData.EnrollmentAndEarn = lstSMSEmail.Where(x => x.MessageId == "107").Select(y => y.SMS).FirstOrDefault(); } } } catch (Exception ex) { } return(objData); }
private bool SendSMS(string[] toPhoneNumbers, string content) { var setting = this.Context.WebSite.SiteDb().CoreSetting.GetSetting <ChinaMobileSMSSetting>(); if (setting == null || string.IsNullOrWhiteSpace(setting.ecName) || string.IsNullOrWhiteSpace(setting.apId) || string.IsNullOrWhiteSpace(setting.secretKey) || string.IsNullOrWhiteSpace(setting.sign)) { throw new Exception("China Mobile SMS service not configured"); } var smsConfig = new SMSConfig { EcName = setting.ecName, ApId = setting.apId, SecretKey = setting.secretKey, Sign = setting.sign }; var smsClient = new SMSClient(smsConfig); var smsResult = smsClient.SendAsync(toPhoneNumbers, content).Result; if (smsResult.IsFailure) { throw new Exception(smsResult.Message); } return(true); }
// Token: 0x06000006 RID: 6 RVA: 0x0000228C File Offset: 0x0000048C public static bool SaveConfig(SMSConfig smsconfig) { string mapPath = FPUtils.GetMapPath(WebConfig.WebPath + "config/sms.config"); FPCache.Remove("FP_SMSCONFIG"); return(FPSerializer.Save <SMSConfig>(smsconfig, mapPath)); }
public IActionResult SMSConfig_Submit() { //北京网通 SMSConfig.Instance.G_eid = GetParam("txtg_eid"); SMSConfig.Instance.G_uid = GetParam("txtg_uid"); SMSConfig.Instance.G_pwd = GetParam("txtg_pwd"); SMSConfig.Instance.G_gate_id = GetParam("txt_h_gate_id"); //深圳电信 SMSConfig.Instance.MssUser = GetParam("TxtMssUser"); SMSConfig.Instance.MssPsw = GetParam("TxtMssPsw"); //北京亿美 SMSConfig.Instance.sms_key = GetParam("smskeyT"); SMSConfig.Instance.sms_pwd = GetParam("smspwdT"); SMSConfig.Instance.DefaultSMS = GetParam("ddlMessageCheck_DP"); SMSConfig.Instance.Tlp_Reg = GetParam("Tlp_Reg"); SMSConfig.Instance.Tlp_GetBack = GetParam("Tlp_GetBack"); SMSConfig.Instance.Tlp_ChangeMobile = GetParam("Tlp_ChangeMobile"); SMSConfig.Instance.QCloud_APPID = GetParam("QC_APPID"); SMSConfig.Instance.QCloud_APPKey = GetParam("QC_APPKey"); SMSConfig.Instance.QCloud_Sign = GetParam("QC_Sign"); SiteConfig.SiteOption.MaxMobileMsg = DataConverter.CLng(GetParam("MaxPhoneMsg")); SiteConfig.SiteOption.MaxIpMsg = DataConverter.CLng(GetParam("MaxIpMsg")); SiteConfig.UserConfig.UserMobilAuth = GetParam("userMobilAuth"); SMSConfig.Update(); SiteConfig.Update(); return(WriteOK("操作成功", "SMSCfg")); }
public JusibeClient(string key, string token) { this.config = new SMSConfig() { AccessToken = token, PublicKey = key }; }
public void Url_Is_Generated_Properly() { this.LoadEnvironment(); var config = new SMSConfig() { }; Assert.Equal("https://jusibe.com/smsapi/send_sms", config.ResolveURL("send_sms")); }
public void SMSConfig_IsDefault() { // Arrange var configValue = "44|12345|API_KEY|API_PASSWORD|true"; // Act var result = new SMSConfig(configValue); // Assert Assert.IsNotNull(result); Assert.IsTrue(result.IsDefault); }
public void Network_Credentials_Are_Generated_Properly() { this.LoadEnvironment(); var config = new SMSConfig() { AccessToken = System.Environment.GetEnvironmentVariable("Jusibe_Token"), PublicKey = System.Environment.GetEnvironmentVariable("Jusibe_Key") }; Assert.NotNull(config.Credentials.UserName); Assert.NotNull(config.Credentials.Password); }
public async Task AutoSendSMSRemind(string userName, SMSConfig smsConfig) { var currentUser = await _userManager.GetUserByName(userName); var currentInvestmentTarget = await GetInvestmentTarget(currentUser.Id); if (currentInvestmentTarget == null || currentInvestmentTarget.Status == smartFunds.Common.EditStatus.Updating || currentInvestmentTarget.ExpectedAmount <= currentUser.CurrentAccountAmount || (DateTime.Now - currentInvestmentTarget.DateLastUpdated).Days / 30 >= (int)currentInvestmentTarget.Duration) { RecurringJob.RemoveIfExists("InvestmentTargetSend" + currentUser.UserName); return; } _smsGateway.Send(smsConfig); }
/// <summary> /// 发送短信 /// </summary> /// <param name="mobiles">手机号码</param> /// <param name="content">内容</param> /// <returns>发送结果:0-成功;其他-错误信息</returns> public static string SendMessage(string mobiles, string content) { MyConfig = GetConfig(); if (MyConfig != null) { ISendSMS iSend = (ISendSMS)MyConfig.TheClass; iSend.Config = MyConfig.ConfigString; return(iSend.Send(mobiles, content)); } else { return("无法加载短信网关配置信息,请检查sms.config配置文件是否正确。"); } }
public void SMSConfig_Construct() { // Arrange var configValue = "44|12345|API_KEY|API_PASSWORD|false"; // Act var result = new SMSConfig(configValue); // Assert Assert.IsNotNull(result); Assert.AreEqual(44, result.CountryCode); Assert.AreEqual("12345", result.AccountId); Assert.AreEqual("API_KEY", result.ApiKey); Assert.AreEqual("API_PASSWORD", result.ApiPassword); Assert.IsFalse(result.IsDefault); }
private static SMSConfig GetConfig() { if (MyConfig == null) { lock (lockConfig) { if (MyConfig == null) { MyConfig = LoadConfig(); Assembly a = Assembly.LoadFrom(MyConfig.Assembly); //创建类的实例 MyConfig.TheClass = a.CreateInstance(MyConfig.ClassName); } } } return(MyConfig); }
// Token: 0x06000005 RID: 5 RVA: 0x000021E4 File Offset: 0x000003E4 public static SMSConfig GetSMSConfig() { SMSConfig smsconfig = FPCache.Get <SMSConfig>("FP_SMSCONFIG"); lock (SMSConfigs.lockHelper) { if (smsconfig == null) { string mapPath = FPUtils.GetMapPath(WebConfig.WebPath + "config/sms.config"); smsconfig = FPSerializer.Load <SMSConfig>(mapPath); if (smsconfig.posturl == "") { smsconfig.posturl = "http://sms.106jiekou.com/utf8/sms.aspx"; } FPCache.Insert("FP_SMSCONFIG", smsconfig, mapPath); } } return(smsconfig); }
/// <summary> /// 发送短信 /// </summary> /// <param name="InputConfig">配置档</param> /// <param name="InputReceiverInfo">短信接收信息</param> public bool Send(SMSConfig InputConfig, SMSReceiveInfo InputReceiverInfo) { bool reVal = false; string Url = InputConfig.Url + "?suser=@UserName&spass=@Password&telnum=@Tel&nr=@Content"; string ReceverNum = string.Empty; foreach (SMSReceiver Receiver in InputReceiverInfo.ReceiverList) { ReceverNum += Receiver.PhoneNum + ","; } if (!ReceverNum.IsNullOrEmpty()) { ReceverNum = ReceverNum.RemoveEndChar(","); Url = Url .Replace("@UserName", InputConfig.UserName) .Replace("@Password", InputConfig.Password) .Replace("@Tel", ReceverNum) .Replace("@Content", InputReceiverInfo.Content); } return(reVal); }
private static SMSConfig LoadConfig() { string smsConfigFile = HttpContext.Current.Server.MapPath("~/config/sms.config"); if (File.Exists(smsConfigFile)) { SMSConfig myConfig = new SMSConfig(); XmlDocument xml = new XmlDocument(); xml.Load(smsConfigFile); XmlNode root = xml.SelectSingleNode("items"); foreach (XmlNode n in root.ChildNodes) { if (n.NodeType != XmlNodeType.Comment && n.Name.ToLower() == "item") { XmlAttribute name = n.Attributes["name"]; XmlAttribute value = n.Attributes["value"]; if (name != null && name.Name == "Assembly" && value != null) { myConfig.Assembly = value.Value; } if (name != null && name.Name == "ClassName" && value != null) { myConfig.ClassName = value.Value; } if (name != null && name.Name == "ConfigString" && value != null) { myConfig.ConfigString = value.Value; } } } return(myConfig); } else { return(null); } }
/// <summary> /// 直接返回带短信参数的类 /// </summary> /// <returns></returns> public SMSConfig GetSmsConfing(Sys_ParamConfig _config) { try { var model = _config; var config = new SMSConfig(); if (_config != null) { var value = model.ConfigValue.Split(';'); config.hostIP = value[0]; config.Port = Convert.ToInt32(value[1]); config.Account = value[2]; config.PassWord = value[3]; config.ServiceID = "0"; } return(config); } catch { return(new SMSConfig()); } }
/// <summary> /// 获取配置 /// </summary> public void GetConfig(Sys_ParamConfig _config = null) { config = (new Sys_ParamConfigBL()).GetSmsConfing(_config); }
/// <summary> /// 保存短信配置 /// </summary> /// <param name="config">短信配置信息</param> /// <returns>是否保存结果</returns> public bool SaveSMSConfig(SMSConfig config) { return(SaveConfig(config, IOHelper.GetMapPath(_smsconfigfilepath))); }
public JusibeClient(SMSConfig config) { this.config = config; }
public async Task AutoSendSMSRemind(string userName, SMSConfig smsConfig) { await _investmentTargetManager.AutoSendSMSRemind(userName, smsConfig); }
public SMSClient(SMSConfig config) { _httpClient = new HttpClient(); _config = config; }
public bool Send(SMSConfig smsConfig) { try { string url = "http://api.esms.vn/MainService.svc/xml/SendMultipleMessage_V4/"; // declare ascii encoding UTF8Encoding encoding = new UTF8Encoding(); string strResult = string.Empty; string customers = string.Empty; string[] listPhone = smsConfig.Phone.Split(','); foreach (var phone in listPhone) { customers = customers + @"<CUSTOMER>" + "<PHONE>" + phone + "</PHONE>" + "</CUSTOMER>"; } string SampleXml = @"<RQST>" + "<APIKEY>" + smsConfig.APIKey + "</APIKEY>" + "<SECRETKEY>" + smsConfig.SecretKey + "</SECRETKEY>" + "<ISFLASH>" + (smsConfig.IsFlash ? "1" : "0") + "</ISFLASH>" + "<BRANDNAME>" + smsConfig.BrandName + "</BRANDNAME>" //De dang ky brandname rieng vui long lien he hotline 0902435340 hoac nhan vien kinh Doanh cua ban + "<SMSTYPE>" + smsConfig.SMSType + "</SMSTYPE>" + "<CONTENT>" + smsConfig.Message + "</CONTENT>" + "<CONTACTS>" + customers + "</CONTACTS>" + "</RQST>"; string postData = SampleXml.Trim().ToString(); // convert xmlstring to byte using ascii encoding byte[] data = encoding.GetBytes(postData); // declare httpwebrequet wrt url defined above HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create(url); // set method as post webrequest.Method = "POST"; webrequest.Timeout = 500000; // set content type webrequest.ContentType = "application/x-www-form-urlencoded"; // set content length webrequest.ContentLength = data.Length; // get stream data out of webrequest object Stream newStream = webrequest.GetRequestStream(); newStream.Write(data, 0, data.Length); newStream.Close(); // declare & read response from service HttpWebResponse webresponse = (HttpWebResponse)webrequest.GetResponse(); // set utf8 encoding Encoding enc = System.Text.Encoding.GetEncoding("utf-8"); // read response stream from response object StreamReader loResponseStream = new StreamReader(webresponse.GetResponseStream(), enc); // read string from stream data strResult = loResponseStream.ReadToEnd(); // close the stream object loResponseStream.Close(); // close the response object webresponse.Close(); // below steps remove unwanted data from response string strResult = strResult.Replace("</string>", ""); var xDoc = XDocument.Parse(strResult); var code = xDoc.Descendants("CodeResult").Single(); var errorMessage = xDoc.Descendants("ErrorMessage").Single(); if (code.Value == "100") { return(true); } else { var logger = NLog.Web.NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger(); logger.Error("Send SMS Error: Code: " + code.Value + ", Message: " + errorMessage.Value); return(false); } } catch (Exception ex) { throw new ApplicationException("Send SMS Error: " + ex.Message); } }