/// <summary>
/// 阿里云短信发送帮助类
/// </summary>
public class SendSMSAliHelper
{
static String product = "Dysmsapi";//短信API产品名称
static String domain = "dysmsapi.aliyuncs.com";//短信API产品域名
static String regionIdForPop = "cn-hangzhou";
public static string SendSMS(String accessId, String accessSecret,string PhoneNumbers,string SignName,string TemplateCode,string TemplateParam)
{
string result = "{}";
SMSAliResponse response = new SMSAliResponse();
IClientProfile profile = DefaultProfile.GetProfile(regionIdForPop, accessId, accessSecret);
DefaultProfile.AddEndpoint(regionIdForPop, regionIdForPop, product, domain);
IAcsClient acsClient = new DefaultAcsClient(profile);
SendSmsRequest request = new SendSmsRequest();
try
{
//request.SignName = "上云预发测试";//"管理控制台中配置的短信签名(状态必须是验证通过)"
//request.TemplateCode = "SMS_71130001";//管理控制台中配置的审核通过的短信模板的模板CODE(状态必须是验证通过)"
//request.RecNum = "13567939485";//"接收号码,多个号码可以逗号分隔"
//request.ParamString = "{\"name\":\"123\"}";//短信模板中的变量;数字需要转换为字符串;个人用户每个变量长度必须小于15个字符。"
//SingleSendSmsResponse httpResponse = client.GetAcsResponse(request);
//request.PhoneNumbers = "1350000000";
//request.SignName = "xxxxxx";
//request.TemplateCode = "SMS_xxxxxxx";
//request.TemplateParam = "{\"code\":\"123\"}";
//request.OutId = "xxxxxxxx";
//请求失败这里会抛ClientException异常
request.PhoneNumbers =PhoneNumbers;
request.SignName = SignName;
request.TemplateCode = TemplateCode;
request.TemplateParam = TemplateParam;
SendSmsResponse sendSmsResponse = acsClient.GetAcsResponse(request);
if (sendSmsResponse.Message == "OK")
{
response.code = 200;
response.msg = sendSmsResponse.Message;
}
else
{
response.code = 500;
response.msg = sendSmsResponse.Message;
}
}
catch (Exception ex)
{
response.code = 500;
response.msg = ex.ToString();
}
result = Newtonsoft.Json.JsonConvert.SerializeObject(response);
return result;
}
}
public class SMSAliResponse
{
public int code { get; set; }
public string msg { get; set; }
}