sms.go 1.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package main
  2. import (
  3. "encoding/json"
  4. openapi "github.com/alibabacloud-go/darabonba-openapi/client"
  5. dysmsapi20170525 "github.com/alibabacloud-go/dysmsapi-20170525/v2/client"
  6. "github.com/alibabacloud-go/tea/tea"
  7. )
  8. const _accessKeyId string = "LTAI5tGjnZY6k799BHxhmqcm"
  9. const _accessKeySecret string = "eU1DmULbgHe2dnIg3P93634PO2vEh5"
  10. var client *dysmsapi20170525.Client
  11. func CreateClient(accessKeyId string, accessKeySecret string) (_result *dysmsapi20170525.Client, _err error) {
  12. config := &openapi.Config{
  13. // 您的AccessKey ID
  14. AccessKeyId: tea.String(accessKeyId),
  15. // 您的AccessKey Secret
  16. AccessKeySecret: tea.String(accessKeySecret),
  17. }
  18. // 访问的域名
  19. config.Endpoint = tea.String("dysmsapi.aliyuncs.com")
  20. _result, _err = dysmsapi20170525.NewClient(config)
  21. return _result, _err
  22. }
  23. func SendSMS(data *[]byte) error {
  24. if nil == client {
  25. if cli, err := CreateClient(_accessKeyId, _accessKeySecret); err != nil {
  26. return err
  27. } else {
  28. client = cli
  29. }
  30. }
  31. sendSmsRequest := &dysmsapi20170525.SendSmsRequest{}
  32. if err := json.Unmarshal(*data, sendSmsRequest); err != nil {
  33. return err
  34. }
  35. if _, err := client.SendSms(sendSmsRequest); err != nil {
  36. return err
  37. }
  38. return nil
  39. }