public SMSSendResult SendSms(string mobile, string message, string sign, string user) { SMSSendResult result = new SMSSendResult(); try { Guid id = Guid.NewGuid(); var re = msService.SendOneMessage(mobile, message, sign, id.ToString(), int.Parse(target)); if (re != "") { result.success = false; result.info = re; } else { result.success = true; result.info = "发送成功"; try { string str = string.Format("insert into dbo.SMSSendBase(Id,Phone,Message,State,CreateDate,CreateUserId,SenderMark,SendCount,SendState,UnitPrice,UpdateDate,TaskId," + "ClientName,SmsTempletName,Templet_Id,Category,BatchId) values('{0}','{1}','{2}',1,getdate(),'{3}',{4},1,0,0.07,getdate(),'{3}','{5}','{6}','{3}','CFC','{0}');", id, mobile, message, Guid.Empty, target, sign, user); db.ExecuteSql(str); } catch (Exception ex) { result.info = "入库失败!"; } } return(result); } catch (Exception ex) { result.success = false; result.info = ex.Message; return(result); } }
//短信发送接口(mobile:手机号|txt:短信内容|sign:短信签名|user:使用方ID|key:安全KEY) public ActionResult SendMsg(string mobile, string txt, string sign, string user, string key) { string basekey = "1qaz!QAZ" + DateTime.Now.ToString("yyyyMMdd"); string md5key = GetMD5(basekey); SMSSendResult re = new SMSSendResult(); if (string.IsNullOrEmpty(mobile)) { re.success = false; re.info = "手机号不能为空!"; return(Content(re.ToJson())); } else if (!IsMobile(mobile)) { re.success = false; re.info = "手机号格式错误!"; return(Content(re.ToJson())); } else if (string.IsNullOrEmpty(sign)) { re.success = false; re.info = "短信签名不能为空!"; return(Content(re.ToJson())); } else if (string.IsNullOrEmpty(user)) { re.success = false; re.info = "使用方ID不能为空!"; return(Content(re.ToJson())); } else if (!se.CheckUserID(user)) { re.success = false; re.info = "使用方ID无发送短信权限!"; return(Content(re.ToJson())); } else if (key.ToLower() != md5key) { re.success = false; re.info = "安全KEY不正确!"; return(Content(re.ToJson())); } else { string msg = ""; //短信内容 (格式:【签名】+内容) string allmsg = string.Format(@"【{0}】{1}", sign, txt); try { //检测敏感字 if (SMSHelper.CheckSensitiveWords(allmsg, out msg)) { re.success = false; re.info = (string.IsNullOrEmpty(msg) ? "敏感字检测失败!" : (msg + "为敏感字!")); return(Content(re.ToJson())); } re = se.SendSms(mobile, allmsg, sign, user); } catch (Exception ex) { re.success = false; re.info = ex.Message; } } return(Content(re.ToJson())); }