/// <summary> /// 灵活发送短信 /// </summary> /// <param name="validatacodepara"></param> /// <returns></returns> public static ValidateResultMsg FlexVerificationCode(ValidataCodeParameter validatacodepara) { ValidateResultMsg resultMsg = null; string validatecode = new Random().Next(111111, 999999).ToString(); String product = "Dysmsapi"; //短信API产品名称 String domain = "dysmsapi.aliyuncs.com"; //短信API产品域名 String accessKeyId = validatacodepara.AccessKeyId; //你的accessKeyId String accessKeySecret = validatacodepara.AccessKeySecret; //你的accessKeySecret IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", accessKeyId, accessKeySecret); //IAcsClient client = new DefaultAcsClient(profile); // SingleSendSmsRequest request = new SingleSendSmsRequest(); DefaultProfile.AddEndpoint("cn-hangzhou", "cn-hangzhou", product, domain); IAcsClient acsClient = new DefaultAcsClient(profile); SendSmsRequest request = new SendSmsRequest(); try { //必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为20个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式 request.PhoneNumbers = validatacodepara.Mobile; //必填:短信签名-可在短信控制台中找到 request.SignName = validatacodepara.SignName; //必填:短信模板-可在短信控制台中找到 request.TemplateCode = validatacodepara.TemplateCode; //可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为 // request.TemplateParam = "{\"name\":\"Tom\", \"code\":\"123\"}"; // request.TemplateParam = "{\"code\":\"" + validatecode + "\"}"; request.TemplateParam = validatacodepara.TemplateParam; // 业务类型:${type} 申请人:${name} 业务进度:${schedule} 处理时间:${time} 感谢您使用xx微警务! // request.TemplateParam = "{\"type\":\"花花\",\"name\":\"水水\",\"schedule\":\"可以\",\"time\":\"2017-09-09\"}"; //可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者 request.OutId = "21212121211"; //请求失败这里会抛ClientException异常 SendSmsResponse sendSmsResponse = acsClient.GetAcsResponse(request); resultMsg = new ValidateResultMsg(); resultMsg.StatusCode = sendSmsResponse.Code; resultMsg.Info = sendSmsResponse.Message; resultMsg.BizId = sendSmsResponse.BizId; resultMsg.ValidataCode = validatecode; return(resultMsg); //System.Console.WriteLine(sendSmsResponse.Message); } catch (ServerException e) { resultMsg = new ValidateResultMsg(); resultMsg.StatusCode = ""; resultMsg.Info = e.ToString(); resultMsg.ValidataCode = ""; return(resultMsg); } }
public string index1() { string mobile = Request["mobile"]; ValidataCodeParameter valicodepara = new ValidataCodeParameter(); ValidateResultMsg result = new ValidateResultMsg(); //业务办理进度 // 模版CODE:SMS_89665068 //模版内容:您好,您申请的${type}业务办理进度状态有更新,请及时查看! //验证码 // 模版CODE:SMS_129757561 //模版内容:您的验证码为:${code},该验证码5分钟内有效,请勿泄露于他人。 string validatecode = new Random().Next(111111, 999999).ToString(); string temppar = "{'code':'" + validatecode + "'}"; // string temppar = "{'type':'视频'}"; // string code = "SMS_89665068";//我的业务进度 string code = "SMS_130915976"; //电子联盟 // string code = "SMS_129757561";//我的短信验证码 string accesskeyid = "LTAIcI6HnskaEPcd"; //电子联盟账号 string accesskeysecret = "8msoPHZT60r2RFkywOwU96wteISnFu"; //电子联盟密码 string signame = "蓝联盟众创空间"; // string accesskeyid = "LTAI2pVIR8OKNxPv";//我的 // string accesskeysecret = "v3aEoHynOoxkG2uVyArUfaJzCItrSj";//我的 // string signame = "乐意为"; valicodepara.AccessKeyId = accesskeyid; valicodepara.AccessKeySecret = accesskeysecret; valicodepara.SignName = signame; valicodepara.TemplateCode = code; valicodepara.Mobile = mobile; valicodepara.TemplateParam = temppar; result = SmsHelper.FlexVerificationCode(valicodepara); ViewBag.statuscode = result.StatusCode; ViewBag.info = result.Info; ViewBag.validatecode = validatecode; return(validatecode); }