mirror of
https://github.com/casdoor/casdoor.git
synced 2025-05-23 02:35:49 +08:00
Improve SendSms() API.
This commit is contained in:
parent
089f4ff480
commit
ef1195960e
@ -23,7 +23,6 @@ import (
|
|||||||
|
|
||||||
"github.com/casbin/casdoor/object"
|
"github.com/casbin/casdoor/object"
|
||||||
"github.com/casbin/casdoor/util"
|
"github.com/casbin/casdoor/util"
|
||||||
sender "github.com/casdoor/go-sms-sender"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// SendEmail
|
// SendEmail
|
||||||
@ -43,8 +42,8 @@ func (c *ApiController) SendEmail() {
|
|||||||
var emailForm struct {
|
var emailForm struct {
|
||||||
Title string `json:"title"`
|
Title string `json:"title"`
|
||||||
Content string `json:"content"`
|
Content string `json:"content"`
|
||||||
Receivers []string `json:"receivers"`
|
|
||||||
Sender string `json:"sender"`
|
Sender string `json:"sender"`
|
||||||
|
Receivers []string `json:"receivers"`
|
||||||
}
|
}
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &emailForm)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &emailForm)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -95,8 +94,8 @@ func (c *ApiController) SendSms() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var smsForm struct {
|
var smsForm struct {
|
||||||
Receivers []string `json:"receivers"`
|
Content string `json:"content"`
|
||||||
Parameters map[string]string `json:"parameters"`
|
Receivers []string `json:"receivers"`
|
||||||
}
|
}
|
||||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &smsForm)
|
err := json.Unmarshal(c.Ctx.Input.RequestBody, &smsForm)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -104,20 +103,6 @@ func (c *ApiController) SendSms() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
client, err := sender.NewSmsClient(
|
|
||||||
provider.Type,
|
|
||||||
provider.ClientId,
|
|
||||||
provider.ClientSecret,
|
|
||||||
provider.SignName,
|
|
||||||
provider.RegionId,
|
|
||||||
provider.TemplateCode,
|
|
||||||
provider.AppId,
|
|
||||||
)
|
|
||||||
if err != nil {
|
|
||||||
c.ResponseError(err.Error())
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
var invalidReceivers []string
|
var invalidReceivers []string
|
||||||
for _, receiver := range smsForm.Receivers {
|
for _, receiver := range smsForm.Receivers {
|
||||||
if !util.IsPhoneCnValid(receiver) {
|
if !util.IsPhoneCnValid(receiver) {
|
||||||
@ -130,7 +115,7 @@ func (c *ApiController) SendSms() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
err = client.SendMessage(smsForm.Parameters, smsForm.Receivers...)
|
err = object.SendSms(provider, smsForm.Content, smsForm.Receivers...)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
c.ResponseError(err.Error())
|
c.ResponseError(err.Error())
|
||||||
return
|
return
|
||||||
|
@ -16,19 +16,19 @@ package object
|
|||||||
|
|
||||||
import "github.com/casdoor/go-sms-sender"
|
import "github.com/casdoor/go-sms-sender"
|
||||||
|
|
||||||
func SendSms(provider *Provider, phone string, code string) error {
|
func SendSms(provider *Provider, content string, phoneNumbers ...string) error {
|
||||||
client, err := go_sms_sender.NewSmsClient(provider.Type, provider.ClientId, provider.ClientSecret, provider.SignName, provider.RegionId, provider.TemplateCode, provider.AppId)
|
client, err := go_sms_sender.NewSmsClient(provider.Type, provider.ClientId, provider.ClientSecret, provider.SignName, provider.RegionId, provider.TemplateCode, provider.AppId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
param := map[string]string{}
|
params := map[string]string{}
|
||||||
if provider.Type == go_sms_sender.TencentCloud {
|
if provider.Type == go_sms_sender.TencentCloud {
|
||||||
param["0"] = code
|
params["0"] = content
|
||||||
} else {
|
} else {
|
||||||
param["code"] = code
|
params["code"] = content
|
||||||
}
|
}
|
||||||
|
|
||||||
err = client.SendMessage(param, phone)
|
err = client.SendMessage(params, phoneNumbers...)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user