sms.go 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package api
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. openapi "github.com/alibabacloud-go/darabonba-openapi/client"
  6. dysmsapi20170525 "github.com/alibabacloud-go/dysmsapi-20170525/v2/client"
  7. "github.com/alibabacloud-go/tea/tea"
  8. )
  9. func createSmsClient() (_result *dysmsapi20170525.Client, _err error) {
  10. accessKeyId := tea.String("LTAI4FmvA9HNunGVq6biNASf")
  11. accessKeySecret := tea.String("QNHsxlW0iESK15TpouJwoLQzRMSxgu")
  12. config := &openapi.Config{
  13. AccessKeyId: accessKeyId,
  14. AccessKeySecret: accessKeySecret,
  15. }
  16. config.Endpoint = tea.String("dysmsapi.aliyuncs.com")
  17. _result, _err = dysmsapi20170525.NewClient(config)
  18. return _result, _err
  19. }
  20. type SupplierSmsReq struct {
  21. Porduct string
  22. SerialNumber string
  23. }
  24. func SendSmsNotify(phone string, info *SupplierSmsReq) error {
  25. // TODO dev
  26. phone = "13408547823"
  27. client, _err := createSmsClient()
  28. if _err != nil {
  29. return _err
  30. }
  31. infobytes, _ := json.Marshal(info)
  32. sendSmsRequest := &dysmsapi20170525.SendSmsRequest{
  33. PhoneNumbers: tea.String(phone),
  34. SignName: tea.String("中鱼互动"),
  35. TemplateCode: tea.String("SMS_460545008"),
  36. TemplateParam: tea.String(string(infobytes)),
  37. }
  38. resp, err := client.SendSms(sendSmsRequest)
  39. if err != nil {
  40. return err
  41. }
  42. if *resp.Body.Code == "OK" {
  43. return nil
  44. }
  45. return fmt.Errorf("code err %s", *resp.Body.Code)
  46. }