fix: issue #22

This commit is contained in:
Relakkes
2023-07-30 20:43:02 +08:00
parent 4ff2cf8661
commit bf659455bb
7 changed files with 51 additions and 35 deletions

View File

@@ -4,7 +4,7 @@ import json
import re
from typing import List
import aioredis
import redis
import tornado.web
import config
@@ -15,7 +15,7 @@ def extract_verification_code(message) -> str:
Extract verification code of 6 digits from the SMS.
"""
pattern = re.compile(r'\b[0-9]{6}\b')
codes: List[str]= pattern.findall(message)
codes: List[str] = pattern.findall(message)
return codes[0] if codes and len(codes) > 0 else ""
@@ -47,7 +47,7 @@ class RecvSmsNotificationHandler(tornado.web.RequestHandler):
request_body = self.request.body.decode("utf-8")
req_body_dict = json.loads(request_body)
print("recv sms notification and body content: ", req_body_dict)
redis_obj = aioredis.from_url(url=config.REDIS_DB_HOST, password=config.REDIS_DB_PWD, decode_responses=True)
redis_obj = redis.Redis(host=config.REDIS_DB_HOST, password=config.REDIS_DB_PWD)
sms_content = req_body_dict.get("sms_content")
sms_code = extract_verification_code(sms_content)
if sms_code:
@@ -55,7 +55,7 @@ class RecvSmsNotificationHandler(tornado.web.RequestHandler):
# Use Redis string data structure, in the following format:
# xhs_138xxxxxxxx -> 171959
key = f"{req_body_dict.get('platform')}_{req_body_dict.get('current_number')}"
await redis_obj.set(name=key, value=sms_code, ex=60 * 3)
redis_obj.set(name=key, value=sms_code, ex=60 * 3)
self.set_status(200)
self.write("ok")