private void button1_Click(object sender, EventArgs e) { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "LTAI4Fvz7m6iggRvBuu6fdqG", "WzfhsSfgisHar3lUtIXxN0SkW6oyOu"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", "13917571446"); request.AddQueryParameters("SignName", "极风文字语音转换"); request.AddQueryParameters("TemplateCode", "SMS_183855040"); request.AddQueryParameters("TemplateParam", "{\"code\":\"nhpl\"}"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException ex) { Console.WriteLine(ex); } catch (ClientException ex) { Console.WriteLine(ex); } }
private void SendMessageToMe() { var profile = DefaultProfile.GetProfile("cn-hangzhou", "", ""); var client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest() { Method = MethodType.POST, Domain = "dysmsapi.aliyuncs.com", Version = "2017-05-25", Action = "SendSms", }; request.AddQueryParameters("PhoneNumbers", "123456789"); request.AddQueryParameters("SignName", "晚归提醒"); request.AddQueryParameters("TemplateCode", "SMS_164590230"); request.AddQueryParameters("TemplateParam", "{code:200}"); try { CommonResponse response = client.GetCommonResponse(request); label1.Text = Encoding.UTF8.GetString(response.HttpResponse.Content); } catch (Exception e) { label1.Text = e.ToString(); throw; } }
/// <summary> /// 发送(阿里云短信) /// </summary> /// <param name="mobile">手机</param> /// <param name="code">验证码</param> /// <param name="template">模版</param> /// <returns></returns> public static string SendSmsByAli(string mobile, string code, string template) { //注册验证码 //var msg = SmsHelper.SendSmsByAli("15215105588", "123456", "SMS_177245306"); //找回密码验证码 //var msg = SmsHelper.SendSmsByAli("15215105588", "987654", "SMS_177245315"); IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", accessKeyId, accessKeySecret); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; request.AddQueryParameters("PhoneNumbers", mobile); request.AddQueryParameters("SignName", "BlogSystem"); request.AddQueryParameters("TemplateCode", template); request.AddQueryParameters("TemplateParam", "{\"code\":\"" + code + "\"}"); try { CommonResponse response = client.GetCommonResponse(request); return(MessageHandle(System.Text.Encoding.Default.GetString(response.HttpResponse.Content))); } catch (ServerException e) { LogFactory.GetLogger().Error(e.Message); return(null); } catch (ClientException e) { LogFactory.GetLogger().Error(e.Message); return(null); } }
public static bool SendMessage(string phoneNum, string code) { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "LTAI8VrzTlV4qVdi", "ws2oOs5Ivveu0UFfpa8PUwfo78AUzj"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phoneNum); request.AddQueryParameters("SignName", "浪舟子"); request.AddQueryParameters("TemplateCode", "SMS_168250218"); string codeStr = "{\"code\":\"" + code + "\"}"; request.AddQueryParameters("TemplateParam", codeStr); try { CommonResponse response = client.GetCommonResponse(request); } catch (ServerException e) { MessageBox.Show(e.ToString()); } catch (ClientException e) { MessageBox.Show(e.ToString()); } return(true); }
public void SendSMS(string phoneNumber, TemplateCode templateCode, string signName = "signName") { IClientProfile profile = DefaultProfile.GetProfile("default", ConfigurationManager.AppSettings["accessKeyId"], ConfigurationManager.AppSettings["accessSecret"]); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest { Method = MethodType.POST, Domain = "dysmsapi.aliyuncs.com", Version = "2017-05-25", Action = "SendSms" }; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phoneNumber); request.AddQueryParameters("SignName", ConfigurationManager.AppSettings[signName]); request.AddQueryParameters("TemplateCode", ConfigurationManager.AppSettings[templateCode.ToString()]); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } }
public void Send(string message) { IClientProfile profile = DefaultProfile.GetProfile("default", Secret.AliyunSecretId, Secret.AliyunSecretKey); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", "18107718055"); request.AddQueryParameters("SignName", "青云微笙"); request.AddQueryParameters("TemplateCode", "SMS_171853916"); request.AddQueryParameters("TemplateParam", "{'name':' " + message + "'}"); try { CommonResponse response = client.GetCommonResponse(request); _logger.LogInformation(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { _logger.LogError(e.ToString()); } catch (ClientException e) { _logger.LogError(e.ToString()); } }
public static void SendFailSms <T>(List <string> PhoneNum, List <T> failDto) { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "______", "________"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendBatchSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumberJson", ListToStringList(PhoneNum)); request.AddQueryParameters("SignNameJson", GetSignNameString(failDto.Count)); request.AddQueryParameters("TemplateCode", "SMS_199760197"); request.AddQueryParameters("TemplateParamJson", GetJsonTemplateParamJson(failDto)); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } }
private void senSMS(string mobile_phone_num, string verification_code) { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "LTAI4FtZoCWx7m9dRkZDGU6y", "8pfL5CgBOrkz3YFn7g0fgBUDh92mRu"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; //request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", mobile_phone_num); request.AddQueryParameters("SignName", "绿徒体育"); request.AddQueryParameters("TemplateCode", "SMS_181785136"); request.AddQueryParameters("TemplateParam", "{\"code\":\"" + verification_code + "\"}"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } }
/// <summary> /// 查询发送记录 /// </summary> /// <param name="phoneNumbers"></param> /// <param name="sendDate"></param> /// <param name="pageSize"></param> /// <param name="currentPage"></param> /// <param name="bizId"></param> /// <returns></returns> internal QuerySmsResponse QuerySendRecords(string phoneNumbers, DateTime sendDate, int pageSize = 10, int currentPage = 1, string bizId = null) { CommonRequest request = new CommonRequest { Method = MethodType.POST, Domain = "dysmsapi.aliyuncs.com", Version = "2017-05-25", Action = "QuerySendDetails" }; request.AddQueryParameters("PhoneNumber", phoneNumbers); request.AddQueryParameters("SendDate", sendDate.ToString("yyyyMMdd")); request.AddQueryParameters("PageSize", pageSize.ToString()); request.AddQueryParameters("CurrentPage", currentPage.ToString()); if (!string.IsNullOrWhiteSpace(bizId)) { request.AddQueryParameters("BizId", bizId); } try { CommonResponse response = acsClient.GetCommonResponse(request); QuerySmsResponse querySmsResponseMessage = Newtonsoft.Json.JsonConvert.DeserializeObject <QuerySmsResponse>(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); return(querySmsResponseMessage); } catch (ServerException e) { logger.LogError(e, "Aliyuncs dysmsapi Server Exception"); return(null); } catch (ClientException e) { logger.LogError(e, "Aliyun Client Exception"); return(null); } }
public void sendMsg(string mobile) { IClientProfile profile = DefaultProfile.GetProfile("default", "LTAIKq0r0wXeCOO7", "U2IDaGVEH3cl9Xsv9RKnodi5BA0ZML"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("SignName", "舆情宝"); request.AddQueryParameters("PhoneNumbers", mobile); request.AddQueryParameters("TemplateCode", "SMS_167963792"); request.AddQueryParameters("TemplateParam", "{'code':'8888',}"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException ex) { MessageBox.Show(ex.ToString()); } label7.Text = "已成功发送消息!"; }
/// <summary> /// /// </summary> /// <param name="phoneNumbers"></param> /// <param name="templateCode"></param> /// <param name="templateParam"></param> /// <returns></returns> internal SendSmsResponse SendSms(string phoneNumbers, string templateCode, string templateParam) { CommonRequest request = new CommonRequest { Method = MethodType.POST, Domain = "dysmsapi.aliyuncs.com", Version = "2017-05-25", Action = "SendSms" }; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phoneNumbers); request.AddQueryParameters("SignName", aliYunSmsOptions.SignName); request.AddQueryParameters("TemplateCode", templateCode); request.AddQueryParameters("TemplateParam", templateParam); try { CommonResponse response = acsClient.GetCommonResponse(request); SendSmsResponse sendSmsResponseMessage = Newtonsoft.Json.JsonConvert.DeserializeObject <SendSmsResponse>(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); return(sendSmsResponseMessage); } catch (ServerException e) { logger.LogError(e, "Aliyuncs dysmsapi Server Exception"); return(null); } catch (ClientException e) { logger.LogError(e, "Aliyun Client Exception"); return(null); } }
public async Task SendAsync(string phone, string templateId, object obj) { if (_config.AccessKeyId.IsNullOrWhiteSpace() || _config.AccessKeySecret.IsNullOrWhiteSpace()) { Logger.Warn($"Using AliYunSmsSender, but not config well!"); return; } IClientProfile profile = DefaultProfile.GetProfile("default", _config.AccessKeyId, _config.AccessKeySecret); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = _config.SmsEndpoint; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phone); request.AddQueryParameters("SignName", _config.SignName); //短信签名 request.AddQueryParameters("TemplateCode", templateId); request.AddQueryParameters("TemplateParam", obj.ToJsonString()); //json字符串 try { CommonResponse response = client.GetCommonResponse(request); Logger.Debug(Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Logger.Error($"AliYunSmsSender ServerException:{e.Message}", e); } catch (ClientException e) { Logger.Error($"AliYunSmsSender ClientException:{e.Message}", e); } }
public static void SendMessage(string phoneNumber, string code) { /* * accessKeyId: LTAI4GB4yjjrQzr7TuYEiVa6 * accessKeySecret: b5JVF50XjGU3tmxcHE5lgcHc3jyMvF */ IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "LTAI4GB4yjjrQzr7TuYEiVa6", "b5JVF50XjGU3tmxcHE5lgcHc3jyMvF"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phoneNumber); // 电话号码 request.AddQueryParameters("SignName", "朝夕教育Eleven"); // 签名模板的名称 request.AddQueryParameters("TemplateCode", "SMS_210070060"); // 验证码模板ID request.AddQueryParameters("TemplateParam", "{\"code\":\"" + code + "\"}"); // 验证码 try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } }
public static bool SendSms(string mobile, string code) { CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", mobile); request.AddQueryParameters("SignName", SignName); request.AddQueryParameters("TemplateCode", TemplateCode); request.AddQueryParameters("TemplateParam", "{\"code\":\"" + code + "\"}"); try { CommonResponse response = _client.GetCommonResponse(request); var result = System.Text.Encoding.Default.GetString(response.HttpResponse.Content); return(result.Contains("OK")); } catch (Exception ex) { throw new NotImplementedException(ex.Message); } //catch (ServerException e) //{ //} //catch (ClientException e) //{ // Console.WriteLine(e); //} }
public Task SendSmsAsync(string number, string message) { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", senderOptions.AliAccessKey, senderOptions.AliAccessSecret); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", number); request.AddQueryParameters("SignName", senderOptions.AliSignName); request.AddQueryParameters("TemplateCode", senderOptions.AliTemplateCode); request.AddQueryParameters("TemplateParam", "{\"code\":\"" + message + "\"}"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } return(Task.FromResult(0)); }
public static AliCloudMessageResponse Send(AliCloudMessageConfig form) { AliCloudMessageResponse rtn = new AliCloudMessageResponse(); try { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", form.LoginName, form.VerifyKey); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = form.Domain; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", form.PhoneNumber); request.AddQueryParameters("SignName", form.SignName); request.AddQueryParameters("TemplateCode", form.TempCode); request.AddQueryParameters("TemplateParam", "{'code':'" + form.VerifyCode + "'}"); CommonResponse response = client.GetCommonResponse(request); rtn = Newtonsoft.Json.JsonConvert.DeserializeObject <AliCloudMessageResponse>(response.Data); } catch (Exception ex) { rtn.Code = "failed"; rtn.Message = ex.Message; } return(rtn); }
static void Main3(string[] args) { IClientProfile profile = DefaultProfile.GetProfile("cn-shanghai", "LTAI5tQewyNWV67aiSbyjiVV", "DuUFuq933u1CrhOajxFQaofYet049m"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "ocr.cn-shanghai.aliyuncs.com"; request.Version = "2019-12-30"; request.Action = "RecognizeIdentityCard"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("Side", "face"); request.AddQueryParameters("ImageURL", "http://viapi-test.oss-cn-shanghai.aliyuncs.com/viapi-3.0domepic/ocr/RecognizeIdentityCard/sfz1.jpg"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } }
protected void Page_Load(object sender, EventArgs e) { if (1 == 2) { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "LTAI4FhvagdVU5NnoSzwdS6j", "4bR854vHtU2IRBlefeyn5avSx1fQDF"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", "15221319981"); request.AddQueryParameters("SignName", "个人信息管理平台"); request.AddQueryParameters("TemplateCode", "SMS_173472920"); request.AddQueryParameters("TemplateParam", "{\"code\":\"2233\"}"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException ex) { Console.WriteLine(ex); } catch (ClientException ex) { Console.WriteLine(ex); } } }
/// <summary> /// 阿里云短信发送接口 /// </summary> public CommonResponse TemplateSmsSend(TemplateSmsSendDto parm) { IClientProfile profile = DefaultProfile.GetProfile(AppSettings.Configuration["ALYUN_SMS:REGIONID"], AppSettings.Configuration["ALYUN_SMS:KEY"], AppSettings.Configuration["ALYUN_SMS:SECRET"]); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; request.AddQueryParameters("PhoneNumbers", parm.PhoneNumber); request.AddQueryParameters("SignName", parm.SignName); request.AddQueryParameters("TemplateCode", parm.TemplateCode); request.AddQueryParameters("TemplateParam", parm.TemplateParam); string logs = $"向用户 : { parm.PhoneNumber } 发送短信\r\n"; logs += $"请求内容 : { JsonConvert.SerializeObject(request) } \r\n"; CommonResponse response = client.GetCommonResponse(request); logs += $"返回内容 : { JsonConvert.SerializeObject(response) } \r\n"; _logger.LogDebug(logs); return(response); }
/// <summary> /// 发送短信验证码 /// </summary> /// <returns></returns> public CommonResponse sendSms(string phoneNumbers, string signName, string templateCode, string templateParam = "{}") { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "LTAIcMnaxxUG7dbk", "VhNgQZrGYz7dXpiCUS8r36mbLgy6db"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phoneNumbers); request.AddQueryParameters("SignName", signName); request.AddQueryParameters("TemplateCode", templateCode); request.AddQueryParameters("TemplateCode", templateCode); request.AddQueryParameters("TemplateParam", templateParam); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); return(response); } catch (ServerException e) { Console.WriteLine(e); return(null); } catch (ClientException e) { Console.WriteLine(e); return(null); } }
public bool sendMsg(string msg, string PhoneNumbers, string TemplateCode, string code) { IClientProfile profile = DefaultProfile.GetProfile("default", "LTAILhQTlW0BVBrh", "VeiVpu7lhKjE1bjzKDMzZ3QaCv06k4"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; request.AddQueryParameters("PhoneNumbers", PhoneNumbers); request.AddQueryParameters("SignName", "快洗车app"); request.AddQueryParameters("TemplateCode", TemplateCode); request.AddQueryParameters("TemplateParam", "{\"code\":\"" + code + "\"}"); request.Protocol = ProtocolType.HTTP; try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); return(true); } catch (ServerException ex) { LogErrorRecord.ErrorFormat("错误日志:{0}", ex.Message); return(false); } catch (ClientException ex) { LogErrorRecord.ErrorFormat("错误日志:{0}", ex.Message); return(false); } }
private static void SendAcs(string mobile, string templateCode, dynamic json, int ourid) { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "<accessKeyId>", "<accessSecret>"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", "18173608896"); request.AddQueryParameters("SignName", "jonty博客"); request.AddQueryParameters("TemplateCode", "SMS_197465032"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } }
//public ActionResult Index() //{ // return View(); //} public string SendMsM(string phone = null) { string code = YanZheng(6); Session["yanzheng"] = code; IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "LTAIb5CqZhlpFDjU", "rFp8cdI9lSZE8kJ137uwzwfNUgtF53"); //IClientProfile profile = DefaultProfile.GetProfile("default", "<accessKeyId>", "<accessSecret>"); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phone); request.AddQueryParameters("SignName", "放心游"); request.AddQueryParameters("TemplateCode", "SMS_165380814"); request.AddQueryParameters("TemplateParam", "{\"code\":\"" + code + "\"}"); try { CommonResponse response = client.GetCommonResponse(request); Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)); //return System.Text.Encoding.Default.GetString(response.HttpResponse.Content); } catch (ServerException e) { Console.WriteLine(e); } catch (ClientException e) { Console.WriteLine(e); } return(null); }
/// <summary> /// 短信发送 /// </summary> /// <param name="mobile">手机号</param> /// <param name="templateCode">模板code</param> /// <param name="templateParam">内容</param> /// <returns>Code=ok 成功</returns> public string SmsSend(string mobile, string templateCode, string templateParam = "") { IClientProfile profile = DefaultProfile.GetProfile("default", _accessId, _accessSecret); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; request.AddQueryParameters("PhoneNumbers", mobile); request.AddQueryParameters("SignName", _signName); request.AddQueryParameters("TemplateCode", templateCode); request.AddQueryParameters("TemplateParam", templateParam); // request.Protocol = ProtocolType.HTTP; try { CommonResponse response = client.GetCommonResponse(request); string code = JsonHelper.DataRowFromJSON(System.Text.Encoding.Default.GetString(response.HttpResponse.Content))["Code"].ToString(); return(code); } catch (ServerException e) { return(e.Message); } catch (ClientException e) { return(e.Message); } }
public (bool success, string msg) SendSmsTemplate2(string phoneNumber, string signName, string templateCode, string outId = null, Dictionary <string, string> templateParamDic = null) { (bool success, string msg)result = new ValueTuple <bool, string>(); IClientProfile profile = DefaultProfile.GetProfile(aliyunSmsOptionsValue.RegionId, aliyunSmsOptionsValue.AccessKeyId, aliyunSmsOptionsValue.AccessSecret); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; request.AddQueryParameters("PhoneNumbers", phoneNumber); request.AddQueryParameters("SignName", signName); request.AddQueryParameters("TemplateCode", templateCode); //短信模板变量对应的实际值,JSON格式。说明 如果JSON中需要带换行符,请参照标准的JSON协议处理。 if (templateParamDic != null && templateParamDic.Count > 0) { var converter = new IsoDateTimeConverter(); converter.DateTimeFormat = "yyyy-MM-dd HH:mm:ss"; var jsonTemplateParam = JsonConvert.SerializeObject(templateParamDic, Formatting.Indented, converter); request.AddQueryParameters("TemplateParam", jsonTemplateParam); } //可选:外部流水扩展字段。 request.AddQueryParameters("OutId", outId); try { CommonResponse response = client.GetCommonResponse(request); var respStr = System.Text.Encoding.Default.GetString(response.HttpResponse.Content); JsonSerializerSettings setting = new JsonSerializerSettings(); setting.NullValueHandling = NullValueHandling.Ignore; setting.MissingMemberHandling = MissingMemberHandling.Ignore; var sendSmsResponse = JsonConvert.DeserializeObject <AliyunSmsRespModel>(respStr, setting); if (!string.IsNullOrEmpty(sendSmsResponse.Code) && sendSmsResponse.Code.ToUpper() == "OK") { result.success = true; } else { result.success = false; result.msg = sendSmsResponse.Message; } } catch (ServerException e) { result.success = false; result.msg = e.Message; } catch (ClientException e) { result.success = false; result.msg = e.Message; } return(result); }
/// <summary> /// 发送验证码 /// </summary> /// <param name="regionId">短信节点</param> /// <param name="accessKeyId">APPID</param> /// <param name="secret">secret</param> /// <param name="phone">手机号码</param> /// <param name="signName">短信签名</param> /// <param name="templateCode">短信模板ID</param> /// <param name="templateParam">短信模板变量对应的实际值,JSON格式</param> /// <param name="isvType">短信供应商(默认阿里云)</param> /// <returns></returns> public WebResponseContent SendTemplateSms(string regionId, string accessKeyId, string secret, string phone, string signName, string templateCode, string templateParam, IsvType isvType = IsvType.Aliyun) { switch (isvType) { case IsvType.Aliyun: IClientProfile profile = DefaultProfile.GetProfile(regionId, accessKeyId, secret); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; //短信 // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", phone); request.AddQueryParameters("SignName", signName); //"广州悦发" request.AddQueryParameters("TemplateCode", templateCode); // //request.AddQueryParameters("TemplateParam", "{ \"code \": \"" + content + "\" }"); request.AddQueryParameters("TemplateParam", templateParam); //"TemplateParam", "{'code':'" + content + "'}" // request.Protocol = ProtocolType.HTTP; CommonResponse response = client.GetCommonResponse(request); //string code = System.Text.Encoding.Default.GetString(response.HttpResponse.Content).Split(',')[1]; string _code = JsonConvert.DeserializeObject <AliSMSResult>(System.Text.Encoding.Default.GetString(response.HttpResponse.Content)).Code; if (_code == "OK") { return(new WebResponseContent().OK("发送成功")); } else { return(new WebResponseContent().Error(ExceptionMsg(_code))); } case IsvType.getui: string url = "http://www.ztsms.cn/sendNSms.do"; string userName = "******"; string tkey = System.DateTime.Now.ToString("yyyyMMddHHmmss"); string other = HashEncrypt.GetMd5("SMSKey"); string password = HashEncrypt.GetMd5(other + tkey); string data = string.Format("?username={0}&password={1}&mobile={2}&content={3}&tkey={4}&productid=676767&xh=", userName, password, phone, templateParam, tkey); HttpHelper httpHelper = new HttpHelper(url + data); string s = httpHelper.SendGet(); string code = s.Split(',')[0]; if (code == "1") { return(new WebResponseContent().OK("发送成功")); } else { return(new WebResponseContent().Error(ExceptionMsg(code))); } default: return(new WebResponseContent().Error("发送失败")); } }
/// <summary> /// 指定单个手机号发送短信 /// </summary> /// <param name="param">短信参数</param> /// <returns></returns> public SmsResponseDto <Configuration.Ioc.Plugs.Sms.Dto.Sms.SendSmsResponseDto> SendSms(SendSmsParam param) { new SendSmsParamValidator().Validate(param).Check(HttpStatus.Err.Name); CommonRequest request = base.GetRequest("dysmsapi.aliyuncs.com", "SendSms", "2017-05-25", "cn-hangzhou"); request.AddQueryParameters("PhoneNumbers", param.Phone); request.AddQueryParameters("SignName", param.SignName); request.AddQueryParameters("TemplateCode", param.TemplateCode); Dictionary <string, string> data = new Dictionary <string, string>(); param.Content.ForEach(item => { data.Add(item.Key, item.Value); }); request.AddQueryParameters("TemplateParam", _jsonProvider.Serializer(data)); try { CommonResponse response = GetClient().GetCommonResponse(request); if (response != null) { var res = _jsonProvider .Deserialize <SendSmsResponseDto>( response.Data); if (res != null) { SmsCode smsCode = SmsCodeMap.Where(x => x.Key == res.Code).Select(x => x.Value) .FirstOrDefault(); if (smsCode != default(SmsCode)) { return(new SmsResponseDto <Configuration.Ioc.Plugs.Sms.Dto.Sms.SendSmsResponseDto>() { Code = smsCode, Msg = smsCode == SmsCode.Ok ? "success" : "lose", Extend = new Configuration.Ioc.Plugs.Sms.Dto.Sms.SendSmsResponseDto(param.Phone, new SendSmsExtend() { BizId = smsCode == SmsCode.Ok ? _jsonProvider .Deserialize <SendSmsSuccessResponseDto>( response.Data).BizId : "", RequestId = res.RequestId, Msg = res.Message }) }); } } } } catch (ServerException e) { } return(new SmsResponseDto <Configuration.Ioc.Plugs.Sms.Dto.Sms.SendSmsResponseDto>() { Code = SmsCode.Unknown, Msg = "发送异常" }); }
//TODO: 等待阿里云增加异步方法 /// <summary> /// /// </summary> /// <param name="mobile"></param> /// <returns></returns> /// <exception cref="SmsException"></exception> public void SendValidationCode(string mobile /*, out string smsCode*/) { string smsCode = GenerateNewSmsCode(_options.TemplateIdentityValidation.CodeLength); string templateParam = string.Format(GlobalSettings.Culture, "{{\"{0}\":\"{1}\", \"{2}\":\"{3}\"}}", _options.TemplateIdentityValidation.ParamCode, smsCode, _options.TemplateIdentityValidation.ParamProduct, _options.TemplateIdentityValidation.ParamProductValue); CommonRequest request = new CommonRequest { Method = MethodType.POST, Domain = "dysmsapi.aliyuncs.com", Version = "2017-05-25", Action = "SendSms" }; request.AddQueryParameters("PhoneNumbers", mobile); request.AddQueryParameters("SignName", _options.SignName); request.AddQueryParameters("TemplateCode", _options.TemplateIdentityValidation.TemplateCode); request.AddQueryParameters("TemplateParam", templateParam); try { CommonResponse response = PolicyManager.Default(_logger).Execute(() => { return(_client.GetCommonResponse(request)); }); SendResult?sendResult = SerializeUtil.FromJson <SendResult>(response.Data); if (sendResult != null && sendResult.IsSuccessful()) { SetSmsCodeToCache(mobile, smsCode, _options.TemplateIdentityValidation.ExpireMinutes); } else { string errorMessage = $"Validate Sms Code Send Err. Mobile:{mobile}, Code:{sendResult?.Code}, Message:{sendResult?.Message}"; throw Exceptions.SmsSendError(mobile: mobile, code: sendResult?.Code, message: sendResult?.Message); } } catch (CacheException ex) { throw Exceptions.SmsCacheError("", ex); } catch (AliyunException ex) { throw Exceptions.SmsServerError("", ex); } catch (JsonException ex) { throw Exceptions.SmsFormatError("阿里云短信服务,格式返回错误", ex); } catch (ClientException ex) { throw Exceptions.SmsClientError("AliyunSmsServiceDownErrorMessage", ex); } }
public static MessageReturn SendMessageCode(string pheone) { LogHelper.WriteLog("SendMessageCode start"); LogHelper.WriteLog("短信认证手机号:" + pheone); MessageReturn messageReturn = new MessageReturn(); JavaScriptSerializer jsonSerialize = new JavaScriptSerializer(); IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", ConfigurationManager.AppSettings["AccessKeyID"].ToString(), ConfigurationManager.AppSettings["AccessKeySecret"].ToString()); DefaultAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.Method = MethodType.POST; request.Domain = "dysmsapi.aliyuncs.com"; request.Version = "2017-05-25"; request.Action = "SendSms"; // request.Protocol = ProtocolType.HTTP; request.AddQueryParameters("PhoneNumbers", pheone); request.AddQueryParameters("SignName", ConfigurationManager.AppSettings["SignName"].ToString()); request.AddQueryParameters("TemplateCode", ConfigurationManager.AppSettings["TemplateCode"].ToString()); MessageNo messageNo = new MessageNo(); Random rd = new Random(); int num = rd.Next(100000, 1000000); messageNo.code = num.ToString(); request.AddQueryParameters("TemplateParam", jsonSerialize.Serialize(messageNo)); LogHelper.WriteLog("短信认证参数:" + jsonSerialize.Serialize(request.QueryParameters)); try { CommonResponse response = client.GetCommonResponse(request); LogHelper.WriteLog("SendMessageCode response" + response); var sendSmsResponse = jsonSerialize.Deserialize <SendSmsResponse>(response.Data); if (sendSmsResponse.Code.Equals("OK")) { LogHelper.WriteLog("SendMessageCode num" + num.ToString()); messageReturn.Status = true; messageReturn.Message = num.ToString(); } } catch (ServerException e) { messageReturn.Status = false; messageReturn.Message = e.Message; LogHelper.WriteLog("短信认证错误:" + jsonSerialize.Serialize(messageReturn.Message), e); } catch (ClientException e) { messageReturn.Status = false; messageReturn.Message = e.Message; LogHelper.WriteLog("短信认证错误:" + jsonSerialize.Serialize(messageReturn.Message), e); } LogHelper.WriteLog("SendMessageCode end"); return(messageReturn); }
private void TryAddTemplateCode(CommonRequest request, SmsMessage smsMessage) { if (smsMessage.Properties.TryGetValue("TemplateCode", out object template)) { request.AddQueryParameters("TemplateCode", template.ToString()); smsMessage.Properties.Remove("TemplateCode"); } else { Check.NotNullOrWhiteSpace(Options.DefaultTemplateCode, nameof(Options.DefaultTemplateCode)); request.AddQueryParameters("TemplateCode", Options.DefaultTemplateCode); } }