58 lines
2.2 KiB
Python
58 lines
2.2 KiB
Python
# -*- coding:utf-8 -*-
|
|
import json
|
|
import sys
|
|
from alibabacloud_dysmsapi20170525.client import Client as Dysmsapi20170525Client
|
|
from alibabacloud_tea_openapi import models as open_api_models
|
|
from alibabacloud_dysmsapi20170525 import models as dysmsapi_20170525_models
|
|
from alibabacloud_tea_util import models as util_models
|
|
|
|
class Sms():
|
|
access_key = None
|
|
access_secret = None
|
|
|
|
def __init__(self, access_key, access_secret):
|
|
self.access_key = access_key
|
|
self.access_secret = access_secret
|
|
pass
|
|
|
|
def create_client(self,
|
|
access_key_id: str,
|
|
access_key_secret: str,
|
|
) -> Dysmsapi20170525Client:
|
|
config = open_api_models.Config(
|
|
# 必填,您的 AccessKey ID,
|
|
access_key_id=access_key_id,
|
|
# 必填,您的 AccessKey Secret,
|
|
access_key_secret=access_key_secret
|
|
)
|
|
# 访问的域名
|
|
config.endpoint = f'dysmsapi.aliyuncs.com'
|
|
return Dysmsapi20170525Client(config)
|
|
|
|
def main(self, phone_numbers, sign_name, template_code, template_param) -> None:
|
|
client = self.create_client(self.access_key, self.access_secret)
|
|
send_sms_request = dysmsapi_20170525_models.SendBatchSmsRequest(
|
|
phone_number_json=phone_numbers,
|
|
sign_name_json=sign_name,
|
|
template_code=template_code,
|
|
template_param_json=template_param,
|
|
)
|
|
try:
|
|
# 复制代码运行请自行打印 API 的返回值
|
|
res = client.send_batch_sms_with_options(send_sms_request, util_models.RuntimeOptions())
|
|
print("发送短信:", res)
|
|
except BaseException as error:
|
|
print(error)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
phone_numbers = json.dumps([18120779920])
|
|
sign_name = json.dumps(['厦门兴联智控'])
|
|
template_code = 'SMS_269515315'
|
|
template_param = json.dumps([{
|
|
"name": '9920管理员',
|
|
"numbers": '10001',
|
|
# "error": '链路告警',
|
|
}])
|
|
Sms("LTAI5tAg1GxL1VGNeSa9oZp5", "Rm7CqQBNoOB5C7DC6Uv14e80DijMJP").main(phone_numbers, sign_name, template_code, template_param)
|
|
pass |