from qcloudsms_py import SmsSingleSender
from qcloudsms_py.httpclient import HTTPError
from settings import constant # 在文件中配置常量
from .logging import logger # 記錄日誌
# mac要加入如下兩句代碼,windows可加可不加
import ssl
ssl._create_unverified_context = ssl._create_default_https_context
_app_id = constant.APP_ID # 在騰訊雲中申請本身的appid
_app_key = constant.APP_KEY # 在騰訊雲中申請本身的app_key
_template_id = 402722 # 模板id
_sms_sign = "**的技術棧" # 短信簽名內容
# 須要發送短信的手機號碼
phone_numbers = ["1851657****"]
_sender = SmsSingleSender(_app_id, _app_key)
import random
def get_code():
code = ''
for i in range(4):
code += str(random.randint(0, 9))
return code
def send_sms_params(mobile, code, ex): # code:驗證碼 ex:過時時間
result = None
try:
result = _sender.send_with_param(86, mobile, _template_id, (code, ex),
sign=_sms_sign, extend="", ext="")
except HTTPError as e:
logger.warning(e)
except Exception as e:
logger.warning(e)
if result and result.get('result') == 0:
return True
return False