使用aws短信服务踩坑

使用aws短信服务踩坑
1.调用aws短信api


//亚马逊短信
func (s basicService) SendAliSMSForVietnam(ctx context.Context, req *pb.SMSRequest) (response *pb.SMSResponse, err error) {
	response = new(pb.SMSResponse)
	Msg := fmt.Sprintf("[Tenda] Mã xác thực TDSEE là: %s. Vui lòng sử dụng trong 5 phút.", req.Code)
	cfg, err := config.LoadDefaultConfig(context.TODO(),
		config.WithRegion(s.conf.AwsSMS.AwsRegion),
		config.WithCredentialsProvider(credentials.NewStaticCredentialsProvider(s.conf.AwsSMS.AwsAccessKeyId, s.conf.AwsSMS.AwsSecretAccessKey, "")),
	)
	if err != nil {
		panic("configuration error, " + err.Error())
	}
	mylog.Debug(fmt.Sprintf("cfg=%v", cfg))
	client := sns.NewFromConfig(cfg)

	params := &sns.PublishInput{
		Message:     &Msg,
		PhoneNumber: &req.Phone,
	}
	mylog.Debug(fmt.Sprintf("input=%v", params))
	mylog.Debug(fmt.Sprintf("client=%v", client))
	// 发送短信
	resp, err := client.Publish(context.TODO(), params)
	if err != nil {
		mylog.Error("failed to send SMS, " + err.Error())
		response.RespCode = projectecode.INTERNAL_ERR
		return
	}
	mylog.Debug(fmt.Sprintf("result=%v", resp))
	fmt.Println("Message ID: " + *resp.MessageId)

	return
}

2.使用s3储存桶存放发送日志
1.新建存储桶
2.使用如下连接进行配置https://docs.aws.amazon.com/zh_cn/sns/latest/dg/sms_stats_usage.html
https://docs.aws.amazon.com/zh_cn/sns/latest/dg/sms_stats_usage.html#example_bucket_policy(替换bucket及account_id)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值