# -*- coding: utf-8 -*- import sys from aliyunsdkdysmsapi.request.v20170525 import SendSmsRequest from aliyunsdkdysmsapi.request.v20170525 import QuerySendDetailsRequest from aliyunsdkcore.client import AcsClient import uuid from aliyunsdkcore.profile import region_provider """ """ try: reload(sys) sys.setdefaultencoding('utf8') except NameError: pass except Exception as err: raise err # 注意:不要更改 REGION = "cn-hangzhou" PRODUCT_NAME = "Dysmsapi" DOMAIN = "dysmsapi.aliyuncs.com" ACCESSKEY = '你的Key' ACCESS_SECRET = '你的Secret' class AliSms: @staticmethod def send_sms(business_id, phone_numbers, sign_name, template_code, template_param=None): acs_client = AcsClient(ACCESSKEY, ACCESS_SECRET, REGION) region_provider.add_endpoint(PRODUCT_NAME, REGION, DOMAIN) smsRequest = SendSmsRequest.SendSmsRequest() # 申请的短信模板编码,必填 smsRequest.set_TemplateCode(template_code) # 短信模板变量参数 if template_param is not None: smsRequest.set_TemplateParam(template_param) # 设置业务请求流水号,必填。 smsRequest.set_OutId(business_id) # 短信签名 smsRequest.set_SignName(sign_name) smsRequest.set_PhoneNumbers(phone_numbers) # 调用短信发送接口,返回json smsResponse = acs_client.do_action_with_exception(smsRequest) return smsResponsed
调用方式:
result = AliSms.send_sms(__business_id, phone, "智加数字", "SMS_20230619",json.dumps({'key':'value'}))