fix: send_sms因httperror不处理

This commit is contained in:
caoqianming 2023-12-21 11:13:48 +08:00
parent 0b20386fcc
commit 6bfd5ea9c4
1 changed files with 33 additions and 30 deletions

View File

@ -13,37 +13,40 @@ def send_sms(phone: str, template_code: int, template_param: dict):
config = get_sysconfig() config = get_sysconfig()
if config['sms'].get('enabled', True) is False: if config['sms'].get('enabled', True) is False:
return return
client = AcsClient(config['sms']['xn_key'], config['sms']['xn_secret'], 'default') try:
request = CommonRequest() client = AcsClient(config['sms']['xn_key'], config['sms']['xn_secret'], 'default')
# 固定json request = CommonRequest()
request.set_accept_format('json') # 固定json
# 固定地址 request.set_accept_format('json')
request.set_domain('sms11.hzgxr.com:40081') # 固定地址
# 固定POST request.set_domain('sms11.hzgxr.com:40081')
request.set_method('POST') # 固定POST
# 固定HTTP request.set_method('POST')
request.set_protocol_type('http') # https | http # 固定HTTP
# 固定版本号 request.set_protocol_type('http') # https | http
request.set_version('2017-05-25') # 固定版本号
# 固定操作名 request.set_version('2017-05-25')
request.set_action_name('SendSms') # 固定操作名
# 手机号码 request.set_action_name('SendSms')
request.add_query_param('PhoneNumbers', phone) # 手机号码
# 签名名称 request.add_query_param('PhoneNumbers', phone)
request.add_query_param('SignName', config['sms']['xn_sign']) # 签名名称
# 模板CODE request.add_query_param('SignName', config['sms']['xn_sign'])
request.add_query_param('TemplateCode', template_code) # 模板CODE
# 如果有模板参数 填写模板参数 如果无 无须填写 request.add_query_param('TemplateCode', template_code)
request.add_query_param('TemplateParam', json.dumps(template_param)) # 如果有模板参数 填写模板参数 如果无 无须填写
res = client.do_action(request) request.add_query_param('TemplateParam', json.dumps(template_param))
res_dict = json.loads(str(res, encoding='utf-8')) res = client.do_action(request)
# print(phone, template_code, template_param, res_dict) res_dict = json.loads(str(res, encoding='utf-8'))
if res_dict['result'] == 0: # print(phone, template_code, template_param, res_dict)
if res_dict['result'] == 0:
return True, res_dict return True, res_dict
else: else:
myLogger.error("短信发送失败:{}-{}-{}-{}".format(phone, template_code, str(template_param), str(res_dict))) myLogger.error("短信发送失败:{}-{}-{}-{}".format(phone, template_code, str(template_param), str(res_dict)))
return False, res_dict return False, res_dict
except Exception:
myLogger.error("短信发送失败", exc_info=True)
def send_sms_huawei(): def send_sms_huawei():