diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/LINGYUN/Abp/Aliyun/SettingManagement/AliyunSettingAppService.cs b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/LINGYUN/Abp/Aliyun/SettingManagement/AliyunSettingAppService.cs index 32c12c193..08ddb96d7 100644 --- a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/LINGYUN/Abp/Aliyun/SettingManagement/AliyunSettingAppService.cs +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun.SettingManagement/LINGYUN/Abp/Aliyun/SettingManagement/AliyunSettingAppService.cs @@ -154,6 +154,12 @@ public class AliyunSettingAppService : ApplicationService, IAliyunSettingAppServ providerName); var smsVerifyCodeSetting = aliyunSettingGroup.AddSetting(L["DisplayName:Aliyun.SmsVerifyCode"], L["Description:Aliyun.SmsVerifyCode"]); + smsVerifyCodeSetting.AddDetail( + await SettingDefinitionManager.GetAsync(AliyunSettingNames.SmsVerifyCode.Domain), + StringLocalizerFactory, + await SettingManager.GetOrNullAsync(AliyunSettingNames.SmsVerifyCode.Domain, providerName, providerKey), + ValueType.String, + providerName); smsVerifyCodeSetting.AddDetail( await SettingDefinitionManager.GetAsync(AliyunSettingNames.SmsVerifyCode.DefaultSignName), StringLocalizerFactory, diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/en.json b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/en.json index 0c2e819f4..0be8fdf50 100644 --- a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/en.json +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/en.json @@ -31,24 +31,6 @@ "DisplayName:DurationSeconds": "Duration Seconds,in seconds", "Description:DurationSeconds": "Duration Seconds,in seconds", "DisplayName:Policy": "Policy", - "Description:Policy": "Policy", - "DisplayName:Aliyun.Sms": "Sms", - "Description:Aliyun.Sms": "Sms", - "DisplayName:Aliyun.SmsVerifyCode": "Sms Verify Code", - "Description:Aliyun.SmsVerifyCode": "Sms Verify Code", - "DisplayName:ActionName": "Action Name", - "Description:ActionName": "Action Name", - "DisplayName:DefaultSignName": "Default Sign Name", - "Description:DefaultSignName": "Default Sign Name", - "DisplayName:DefaultTemplateCode": "Default Template Code", - "Description:DefaultTemplateCode": "Default Template Code", - "DisplayName:DefaultPhoneNumber": "Default Phone Number", - "Description:DefaultPhoneNumber": "Default Phone Number", - "DisplayName:Domain": "Domain", - "Description:Domain": "Domain", - "DisplayName:Version": "Version", - "Description:Version": "Version", - "DisplayName:VisableErrorToClient": "Visable Error To Client", - "Description:VisableErrorToClient": "Visable Error To Client" + "Description:Policy": "Policy" } } \ No newline at end of file diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/zh-Hans.json b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/zh-Hans.json index e88e82bf4..55c21c327 100644 --- a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/zh-Hans.json +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Localization/Resources/zh-Hans.json @@ -32,24 +32,6 @@ "Description:DurationSeconds": "过期时间最小值为900秒,默认3600秒", "DisplayName:Policy": "权限策略", "Description:Policy": "生成STS Token时可以指定一个额外的权限策略,以进一步限制STS Token的权限", - "DisplayName:Aliyun.Sms": "短信服务", - "Description:Aliyun.Sms": "阿里云短信服务", - "DisplayName:Aliyun.SmsVerifyCode": "短信认证服务", - "Description:Aliyun.SmsVerifyCode": "阿里云短信认证服务", - "DisplayName:ActionName": "发送短信方法", - "Description:ActionName": "发送短信方法名称,详情见阿里云Sms服务", - "DisplayName:DefaultSignName": "默认短信签名", - "Description:DefaultSignName": "当用户未指定短信签名时的默认签名名称", - "DisplayName:DefaultTemplateCode": "默认短信模板号", - "Description:DefaultTemplateCode": "当用户未指定短信签名时的默认短信模板号", - "DisplayName:DefaultPhoneNumber": "默认接收短信手机号", - "Description:DefaultPhoneNumber": "当用户未指定短信接收方时的默认接收手机号码", - "DisplayName:Domain": "阿里云sms服务域名", - "Description:Domain": "阿里云sms服务域名", - "DisplayName:Version": "阿里云sms服务版本号", - "Description:Version": "阿里云sms服务版本号", - "DisplayName:VisableErrorToClient": "发送错误到客户端", - "Description:VisableErrorToClient": "当短信服务发送出现错误时是否发送错误详情到客户端", "Region:HangZhou": "华东1(杭州)", "Region:ShangHai": "华东2(上海)", "Region:NanJing": "华东5(南京-本地地域)", diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingNames.cs b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingNames.cs index 54ea316eb..855101c27 100644 --- a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingNames.cs +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingNames.cs @@ -87,6 +87,10 @@ public static class AliyunSettingNames { public const string Prefix = AliyunSettingNames.Prefix + ".SmsVerifyCode"; /// + /// 阿里云号码认证服务域名 + /// + public const string Domain = Prefix + ".Domain"; + /// /// 默认签名 /// public const string DefaultSignName = Prefix + ".DefaultSignName"; diff --git a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingProvider.cs b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingProvider.cs index 3a8133c95..5e5f98805 100644 --- a/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingProvider.cs +++ b/aspnet-core/framework/cloud-aliyun/LINGYUN.Abp.Aliyun/LINGYUN/Abp/Aliyun/Settings/AliyunSettingProvider.cs @@ -170,8 +170,8 @@ public class AliyunSettingProvider : SettingDefinitionProvider new SettingDefinition( AliyunSettingNames.Sms.Domain, defaultValue: "dysmsapi.aliyuncs.com", - displayName: L("DisplayName:Domain"), - description: L("Description:Domain"), + displayName: L("DisplayName:SmsDomain"), + description: L("Description:SmsDomain"), isVisibleToClients: false ) .WithProviders( @@ -210,6 +210,18 @@ public class AliyunSettingProvider : SettingDefinitionProvider { return new SettingDefinition[] { + new SettingDefinition( + AliyunSettingNames.SmsVerifyCode.Domain, + defaultValue: "dypnsapi.aliyuncs.com", + displayName: L("DisplayName:SmsVerifyCodeDomain"), + description: L("Description:SmsVerifyCodeDomain"), + isVisibleToClients: false + ) + .WithProviders( + DefaultValueSettingValueProvider.ProviderName, + ConfigurationSettingValueProvider.ProviderName, + GlobalSettingValueProvider.ProviderName, + TenantSettingValueProvider.ProviderName), new SettingDefinition( AliyunSettingNames.SmsVerifyCode.DefaultSignName, displayName: L("DisplayName:DefaultSignName"), diff --git a/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/AliyunSmsSender.cs b/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/AliyunSmsSender.cs index c0958a652..2e749fb0e 100644 --- a/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/AliyunSmsSender.cs +++ b/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/AliyunSmsSender.cs @@ -54,11 +54,15 @@ public class AliyunSmsSender : ISmsSender, IAliyunSmsVerifyCodeSender if (smsMessage.Properties.ContainsKey("SmsVerifyCode") && smsMessage.Properties.TryGetValue("code", out var code)) { + smsMessage.Properties.TryGetValue("SignName", out var signName); + smsMessage.Properties.TryGetValue("TemplateCode", out var templateCode); // 调用短信验证码服务 await SendAsync( new SmsVerifyCodeMessage( smsMessage.PhoneNumber, - new SmsVerifyCodeMessageParam(code.ToString(), "5"))); + new SmsVerifyCodeMessageParam(code.ToString(), "5"), + signName?.ToString(), + templateCode?.ToString())); return; } @@ -116,15 +120,15 @@ public class AliyunSmsSender : ISmsSender, IAliyunSmsVerifyCodeSender AliyunFeatureNames.Sms.DefaultSendLimitInterval)] public async virtual Task SendAsync(SmsVerifyCodeMessage message) { - var domain = await SettingProvider.GetOrNullAsync(AliyunSettingNames.Sms.Domain); var version = await SettingProvider.GetOrNullAsync(AliyunSettingNames.Sms.Version); + var domain = await SettingProvider.GetOrNullAsync(AliyunSettingNames.SmsVerifyCode.Domain); var signName = message.SignName ?? await SettingProvider.GetOrNullAsync(AliyunSettingNames.SmsVerifyCode.DefaultSignName); var templateCode = message.TemplateCode ?? await SettingProvider.GetOrNullAsync(AliyunSettingNames.SmsVerifyCode.DefaultTemplateCode); - Check.NotNullOrWhiteSpace(domain, AliyunSettingNames.Sms.Domain); Check.NotNullOrWhiteSpace(version, AliyunSettingNames.Sms.Version); + Check.NotNullOrWhiteSpace(domain, AliyunSettingNames.SmsVerifyCode.Domain); Check.NotNullOrWhiteSpace(signName, AliyunSettingNames.SmsVerifyCode.DefaultSignName); Check.NotNullOrWhiteSpace(templateCode, AliyunSettingNames.SmsVerifyCode.DefaultTemplateCode); @@ -132,6 +136,7 @@ public class AliyunSmsSender : ISmsSender, IAliyunSmsVerifyCodeSender { Domain = domain, Version = version, + Product = "Dypnsapi", Method = MethodType.POST, Action = "SendSmsVerifyCode", }; diff --git a/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/en.json b/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/en.json index 5ef98e5a2..df50a12f6 100644 --- a/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/en.json +++ b/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/en.json @@ -1,6 +1,26 @@ { "culture": "en", "texts": { + "DisplayName:Aliyun.Sms": "Sms", + "Description:Aliyun.Sms": "Sms", + "DisplayName:Aliyun.SmsVerifyCode": "Sms Verify Code", + "Description:Aliyun.SmsVerifyCode": "Sms Verify Code", + "DisplayName:ActionName": "Action Name", + "Description:ActionName": "Action Name", + "DisplayName:DefaultSignName": "Default Sign Name", + "Description:DefaultSignName": "Default Sign Name", + "DisplayName:DefaultTemplateCode": "Default Template Code", + "Description:DefaultTemplateCode": "Default Template Code", + "DisplayName:DefaultPhoneNumber": "Default Phone Number", + "Description:DefaultPhoneNumber": "Default Phone Number", + "DisplayName:SmsDomain": "Domain", + "Description:SmsDomain": "Domain", + "DisplayName:SmsVerifyCodeDomain": "Domain", + "Description:SmsVerifyCodeDomain": "Sms Verify Code Domain", + "DisplayName:Version": "Version", + "Description:Version": "Version", + "DisplayName:VisableErrorToClient": "Visable Error To Client", + "Description:VisableErrorToClient": "Visable Error To Client", "SendMessageFailed": "Text message sending failed:{0}", "SMS_SIGNATURE_SCENE_ILLEGAL": "Signature scene used by SMS is illegal", "DENY_IP_RANGE": "Region where source IP address is disabled", diff --git a/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/zh-Hans.json b/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/zh-Hans.json index f2ba1b6a5..390a43155 100644 --- a/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/zh-Hans.json +++ b/aspnet-core/framework/common/LINGYUN.Abp.Sms.Aliyun/LINGYUN/Abp/Sms/Aliyun/Localization/Resources/zh-Hans.json @@ -1,6 +1,26 @@ { "culture": "zh-Hans", "texts": { + "DisplayName:Aliyun.Sms": "短信服务", + "Description:Aliyun.Sms": "阿里云短信服务", + "DisplayName:Aliyun.SmsVerifyCode": "短信认证服务", + "Description:Aliyun.SmsVerifyCode": "阿里云短信认证服务", + "DisplayName:ActionName": "发送短信方法", + "Description:ActionName": "发送短信方法名称,详情见阿里云Sms服务", + "DisplayName:DefaultSignName": "默认短信签名", + "Description:DefaultSignName": "当用户未指定短信签名时的默认签名名称", + "DisplayName:DefaultTemplateCode": "默认短信模板号", + "Description:DefaultTemplateCode": "当用户未指定短信签名时的默认短信模板号", + "DisplayName:DefaultPhoneNumber": "默认接收短信手机号", + "Description:DefaultPhoneNumber": "当用户未指定短信接收方时的默认接收手机号码", + "DisplayName:SmsDomain": "阿里云sms服务域名", + "Description:SmsDomain": "阿里云sms服务域名", + "DisplayName:SmsVerifyCodeDomain": "阿里云号码认证服务域名", + "Description:SmsVerifyCodeDomain": "阿里云号码认证服务域名", + "DisplayName:Version": "阿里云sms服务版本号", + "Description:Version": "阿里云sms服务版本号", + "DisplayName:VisableErrorToClient": "发送错误到客户端", + "Description:VisableErrorToClient": "当短信服务发送出现错误时是否发送错误详情到客户端", "SendMessageFailed": "发送短信错误:{0}", "SMS_SIGNATURE_SCENE_ILLEGAL": "短信所使用签名场景非法", "DENY_IP_RANGE": "源IP地址所在的地区被禁用",