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/util"
|
||||
sender "github.com/casdoor/go-sms-sender"
|
||||
)
|
||||
|
||||
// SendEmail
|
||||
@ -43,8 +42,8 @@ func (c *ApiController) SendEmail() {
|
||||
var emailForm struct {
|
||||
Title string `json:"title"`
|
||||
Content string `json:"content"`
|
||||
Receivers []string `json:"receivers"`
|
||||
Sender string `json:"sender"`
|
||||
Receivers []string `json:"receivers"`
|
||||
}
|
||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &emailForm)
|
||||
if err != nil {
|
||||
@ -95,8 +94,8 @@ func (c *ApiController) SendSms() {
|
||||
}
|
||||
|
||||
var smsForm struct {
|
||||
Receivers []string `json:"receivers"`
|
||||
Parameters map[string]string `json:"parameters"`
|
||||
Content string `json:"content"`
|
||||
Receivers []string `json:"receivers"`
|
||||
}
|
||||
err := json.Unmarshal(c.Ctx.Input.RequestBody, &smsForm)
|
||||
if err != nil {
|
||||
@ -104,20 +103,6 @@ func (c *ApiController) SendSms() {
|
||||
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
|
||||
for _, receiver := range smsForm.Receivers {
|
||||
if !util.IsPhoneCnValid(receiver) {
|
||||
@ -130,7 +115,7 @@ func (c *ApiController) SendSms() {
|
||||
return
|
||||
}
|
||||
|
||||
err = client.SendMessage(smsForm.Parameters, smsForm.Receivers...)
|
||||
err = object.SendSms(provider, smsForm.Content, smsForm.Receivers...)
|
||||
if err != nil {
|
||||
c.ResponseError(err.Error())
|
||||
return
|
||||
|
@ -16,19 +16,19 @@ package object
|
||||
|
||||
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)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
param := map[string]string{}
|
||||
params := map[string]string{}
|
||||
if provider.Type == go_sms_sender.TencentCloud {
|
||||
param["0"] = code
|
||||
params["0"] = content
|
||||
} else {
|
||||
param["code"] = code
|
||||
params["code"] = content
|
||||
}
|
||||
|
||||
err = client.SendMessage(param, phone)
|
||||
err = client.SendMessage(params, phoneNumbers...)
|
||||
return err
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user