Пример #1
0
        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);
            }
        }
Пример #2
0
        //短信发送接口(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()));
        }