Commit 9ee1a561 authored by 黄奎's avatar 黄奎

甲鹤上传调整

parent 16b39fe3
......@@ -242,7 +242,7 @@ namespace Edu.Module.System
}
}
}
// ThirdCore.Message.SMSService.SendMsg("13551132417", PhoneMessage, "SMS_201722097", "印象之旅", "dysmsapi.aliyuncs.com", "LTAIwE7l9dImZSa3", "j47Ajn0d0WzUCIX8Biyj3P2r8QDltI", "cn-hangzhou");
}
......
......@@ -17,14 +17,14 @@ namespace Edu.ThirdCore.Message
private static bool IsFinish = true;
public static void Init()
{
while (QueueHelper.Queue.Count == 0 || !IsFinish)
{
Thread.Sleep(1000);
};
IsFinish = false;
string content = QueueHelper.Queue.Dequeue() as string;
Run(content);
Init();
//while (QueueHelper.Queue.Count == 0 || !IsFinish)
//{
// Thread.Sleep(1000);
//};
//IsFinish = false;
//string content = QueueHelper.Queue.Dequeue() as string;
//Run(content);
//Init();
}
public static void Run(string content)
......@@ -36,7 +36,7 @@ namespace Edu.ThirdCore.Message
switch (obj["cmd"].ToString().ToLower())
{
case "sms":
SendSMS(obj);
//SendSMS(obj);
break;
default:
......@@ -52,44 +52,44 @@ namespace Edu.ThirdCore.Message
private static void SendSMS(JObject obj)
{
SendSmsRequest request = new SendSmsRequest();
try
{
String product = "Dysmsapi";//短信API产品名称(短信产品名固定,无需修改)
String domain = obj["Domain"].ToString(); //短信API产品域名(接口地址固定,无需修改)
String accessKeyId = obj["AccessKeyId"].ToString();
String accessKeySecret = obj["AccessKeySecret"].ToString();
IClientProfile profile = DefaultProfile.GetProfile(obj["RegionId"].ToString(), accessKeyId, accessKeySecret);
DefaultProfile.AddEndpoint(obj["RegionId"].ToString(), obj["RegionId"].ToString(), product, domain);
IAcsClient acsClient = new DefaultAcsClient(profile);
//必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为1000个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式
request.PhoneNumbers = obj["phoneNumber"].ToString();
request.SignName = obj["SignName"].ToString(); //aliSms["signName"].ToString();
//必填:短信模板-可在短信控制台中找到
request.TemplateCode = obj["templateCode"].ToString();
//可选:模板中的变量替换JSON串,如模板内容为"您的验证码为${code}"时,此处的值为
request.TemplateParam = obj["templateParam"].ToString();
//可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者
request.OutId = obj["OutId"].ToString();
//请求失败这里会抛ClientException异常
SendSmsResponse sendSmsResponse = acsClient.GetAcsResponse(request);
if (!sendSmsResponse.Code.Equals("OK"))
{
var data = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = sendSmsResponse.Code, message = sendSmsResponse.Message };
Common.Plugin.LogHelper.WriteInfo( string.Format("SendSMS0_{0}", Common.Plugin.JsonHelper.Serialize(data)));
}
var datatst = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = sendSmsResponse.Code, message = sendSmsResponse.Message };
}
catch (Aliyun.Acs.Core.Exceptions.ServerException ex)
{
var data = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = "NO", message = ex.ToString() };
Common.Plugin.LogHelper.Write(ex, string.Format("SendSMS1_{0}", Common.Plugin.JsonHelper.Serialize(data)));
}
catch (ClientException ex)
{
var data = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = "NO", message = ex.ToString() };
Common.Plugin.LogHelper.Write(ex, string.Format("SendSMS2_{0}",Common.Plugin.JsonHelper.Serialize(data)));
}
//SendSmsRequest request = new SendSmsRequest();
//try
//{
// String product = "Dysmsapi";//短信API产品名称(短信产品名固定,无需修改)
// String domain = obj["Domain"].ToString(); //短信API产品域名(接口地址固定,无需修改)
// String accessKeyId = obj["AccessKeyId"].ToString();
// String accessKeySecret = obj["AccessKeySecret"].ToString();
// IClientProfile profile = DefaultProfile.GetProfile(obj["RegionId"].ToString(), accessKeyId, accessKeySecret);
// DefaultProfile.AddEndpoint(obj["RegionId"].ToString(), obj["RegionId"].ToString(), product, domain);
// IAcsClient acsClient = new DefaultAcsClient(profile);
// //必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为1000个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式
// request.PhoneNumbers = obj["phoneNumber"].ToString();
// request.SignName = obj["SignName"].ToString(); //aliSms["signName"].ToString();
// //必填:短信模板-可在短信控制台中找到
// request.TemplateCode = obj["templateCode"].ToString();
// //可选:模板中的变量替换JSON串,如模板内容为"您的验证码为${code}"时,此处的值为
// request.TemplateParam = obj["templateParam"].ToString();
// //可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者
// request.OutId = obj["OutId"].ToString();
// //请求失败这里会抛ClientException异常
// SendSmsResponse sendSmsResponse = acsClient.GetAcsResponse(request);
// if (!sendSmsResponse.Code.Equals("OK"))
// {
// var data = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = sendSmsResponse.Code, message = sendSmsResponse.Message };
// Common.Plugin.LogHelper.WriteInfo( string.Format("SendSMS0_{0}", Common.Plugin.JsonHelper.Serialize(data)));
// }
// var datatst = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = sendSmsResponse.Code, message = sendSmsResponse.Message };
//}
//catch (Aliyun.Acs.Core.Exceptions.ServerException ex)
//{
// var data = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = "NO", message = ex.ToString() };
// Common.Plugin.LogHelper.Write(ex, string.Format("SendSMS1_{0}", Common.Plugin.JsonHelper.Serialize(data)));
//}
//catch (ClientException ex)
//{
// var data = new { phoneNumber = obj["phoneNumber"].ToString(), templateParam = obj["templateParam"].ToString(), code = "NO", message = ex.ToString() };
// Common.Plugin.LogHelper.Write(ex, string.Format("SendSMS2_{0}",Common.Plugin.JsonHelper.Serialize(data)));
//}
}
......@@ -102,16 +102,17 @@ namespace Edu.ThirdCore.Message
/// <returns></returns>
public static string SendSMSStatus(string phoneNumber, string SendDate, string BizId, string Domain, string AccessKeyId, string AccessKeySecret, string RegionId)
{
String product = "Dysmsapi";//短信API产品名称(短信产品名固定,无需修改)
String domain = Domain;// "dysmsapi.aliyuncs.com";//短信API产品域名(接口地址固定,无需修改)
String accessKeyId = AccessKeyId;// aliSms["accessKeyId"].ToString();
String accessKeySecret = AccessKeySecret; //aliSms["accessKeySecret"].ToString();
IClientProfile profile = DefaultProfile.GetProfile(RegionId, accessKeyId, accessKeySecret);
DefaultProfile.AddEndpoint(RegionId, RegionId, product, domain);
IAcsClient acsClient = new DefaultAcsClient(profile);
//拼接参数 返回url
string url = $@"https://{domain}/?AccessKeyId={accessKeyId}&Action=QuerySendDetails&CurrentPage=1&Format=JSON&PageSize=12&PhoneNumber={phoneNumber}&RegionId=cn-hangzhou&SecureTransport=true&SendDate={SendDate}&BizId={BizId}&SignatureMethod=HMAC-SHA1&SignatureNonce=46edc0b6cc74e437aa0ba1703c71a99b&SignatureVersion=1.0&SourceIp=171.88.98.6&Timestamp=2019-09-25T02%3A12%3A35Z&Version=2017-05-25&Signature=Uvqz3E13092wPxNYUt3ytDojV50%3D";
return url;
//String product = "Dysmsapi";//短信API产品名称(短信产品名固定,无需修改)
//String domain = Domain;// "dysmsapi.aliyuncs.com";//短信API产品域名(接口地址固定,无需修改)
//String accessKeyId = AccessKeyId;// aliSms["accessKeyId"].ToString();
//String accessKeySecret = AccessKeySecret; //aliSms["accessKeySecret"].ToString();
//IClientProfile profile = DefaultProfile.GetProfile(RegionId, accessKeyId, accessKeySecret);
//DefaultProfile.AddEndpoint(RegionId, RegionId, product, domain);
//IAcsClient acsClient = new DefaultAcsClient(profile);
////拼接参数 返回url
//string url = $@"https://{domain}/?AccessKeyId={accessKeyId}&Action=QuerySendDetails&CurrentPage=1&Format=JSON&PageSize=12&PhoneNumber={phoneNumber}&RegionId=cn-hangzhou&SecureTransport=true&SendDate={SendDate}&BizId={BizId}&SignatureMethod=HMAC-SHA1&SignatureNonce=46edc0b6cc74e437aa0ba1703c71a99b&SignatureVersion=1.0&SourceIp=171.88.98.6&Timestamp=2019-09-25T02%3A12%3A35Z&Version=2017-05-25&Signature=Uvqz3E13092wPxNYUt3ytDojV50%3D";
//return url;
return "";
}
/// <summary>
......
......@@ -25,16 +25,16 @@ namespace Edu.ThirdCore.Message
/// <param name="task"></param>
public static void EnqueueTask(string task)
{
lock (locker)
{
//同样的任务,不同时加入
IList<string> tasks = Queue.ToList();
if (tasks.Count(p => p == task) == 0)
{
Queue.Enqueue(task);
Monitor.PulseAll(locker);
}
}
//lock (locker)
//{
// //同样的任务,不同时加入
// IList<string> tasks = Queue.ToList();
// if (tasks.Count(p => p == task) == 0)
// {
// Queue.Enqueue(task);
// Monitor.PulseAll(locker);
// }
//}
}
}
}
......@@ -40,7 +40,7 @@ namespace Edu.ThirdCore.Message
var TemplateParam = new { code };
obj["OutId"] = OutId;
obj["templateParam"] = JsonConvert.SerializeObject(TemplateParam);
QueueHelper.EnqueueTask(JsonConvert.SerializeObject(obj));
// QueueHelper.EnqueueTask(JsonConvert.SerializeObject(obj));
}
/// <summary>
......@@ -65,7 +65,7 @@ namespace Edu.ThirdCore.Message
var TemplateParam = new { content };
obj["OutId"] = OutId;
obj["templateParam"] = JsonConvert.SerializeObject(TemplateParam);
QueueHelper.EnqueueTask(JsonConvert.SerializeObject(obj));
//QueueHelper.EnqueueTask(JsonConvert.SerializeObject(obj));
}
/// <summary>
......@@ -90,7 +90,7 @@ namespace Edu.ThirdCore.Message
obj["AccessKeySecret"] = AccessKeySecret;
obj["OutId"] = OutId;
obj["templateParam"] = JsonConvert.SerializeObject(TemplateParam);
QueueHelper.EnqueueTask(JsonConvert.SerializeObject(obj));
//QueueHelper.EnqueueTask(JsonConvert.SerializeObject(obj));
}
}
}
......@@ -295,7 +295,6 @@ namespace Edu.WebApi.Controllers.Public
msgLogModule.SendMsg(PhoneMessage, Common.Enum.System.BaseTemplateTypeEnum.OrderSuccess, msgLogModel);
// ThirdCore.Message.SMSService.SendMsg("13551132417", PhoneMessage, "SMS_201722097", "印象之旅", "dysmsapi.aliyuncs.com", "LTAIwE7l9dImZSa3", "j47Ajn0d0WzUCIX8Biyj3P2r8QDltI", "cn-hangzhou");
return ApiResult.Success("");
}
......
......@@ -111,8 +111,7 @@ namespace Edu.WebApi
//启动信息发送
// Task.Run(() => MessageCore.Init());
Task.Run(() => MessageCore.Init());
//Task.Run(() => MessageCore.Init());
app.UseEndpoints(endpoints =>
{
endpoints.MapHub<MessageCenterHub>("/messagecenter");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment