update:测试
This commit is contained in:
96
app.py
96
app.py
@@ -1,7 +1,7 @@
|
||||
from typing import Union
|
||||
from fastapi import FastAPI,Header
|
||||
from fastapi import FastAPI, Header
|
||||
from urllib.parse import unquote
|
||||
from flashSMS import sendFlash
|
||||
from flashSMS import sendFlash
|
||||
from tgMesaage import sendTg
|
||||
import re
|
||||
import pickle
|
||||
@@ -13,33 +13,34 @@ app = FastAPI()
|
||||
|
||||
|
||||
# 判断uid是否存在
|
||||
def findUid(uiddata,phoneNum):
|
||||
isFind=False
|
||||
newDict={}
|
||||
if(os.path.exists("data.txt")):
|
||||
def findUid(uiddata, phoneNum):
|
||||
isFind = False
|
||||
newDict = {}
|
||||
if os.path.exists("data.txt"):
|
||||
# print('文件存在')
|
||||
with open("data.txt", "rb") as f:
|
||||
newDict=pickle.load(f)
|
||||
newDict = pickle.load(f)
|
||||
if newDict[uiddata] is not None:
|
||||
print('newDict[uid]',newDict[uiddata])
|
||||
isFind= True
|
||||
print("newDict[uid]", newDict[uiddata])
|
||||
isFind = True
|
||||
else:
|
||||
newDict[uiddata] = phoneNum
|
||||
with open("data.txt", "wb") as f:
|
||||
pickle.dump(newDict, f)
|
||||
isFind= False
|
||||
isFind = False
|
||||
return isFind
|
||||
else:
|
||||
# print('文件不存在')
|
||||
isFind= False
|
||||
isFind = False
|
||||
newDict[uiddata] = phoneNum
|
||||
with open("data.txt", "wb") as f:
|
||||
pickle.dump(newDict, f)
|
||||
pickle.dump(newDict, f)
|
||||
return isFind
|
||||
|
||||
|
||||
|
||||
# findUid('test','13243889782')
|
||||
|
||||
|
||||
# 正则查找11位手机号
|
||||
def findPhoneNum(text):
|
||||
pattern = re.compile(r"1[356789]\d{9}")
|
||||
@@ -47,50 +48,71 @@ def findPhoneNum(text):
|
||||
result = pattern.findall(text)
|
||||
print(result)
|
||||
# ['13987692110']
|
||||
if len(result)>0:
|
||||
if len(result) > 0:
|
||||
return result[0]
|
||||
else:
|
||||
return None
|
||||
|
||||
|
||||
@app.get("/")
|
||||
#def read_root():
|
||||
# return {"Hello": "World"}
|
||||
def read_items(appid: Union[str, None] = Header(default=None),bid: Union[str, None] = Header(default=None),requestid: Union[str, None] = Header(default=None),uid: Union[str, None] = Header(default=None)):
|
||||
print("console :,","appid", appid,"bid", bid,"requestid", requestid,"uid", uid)
|
||||
return {"appid": appid,"bid": bid,"requestid": requestid,"uid": uid}
|
||||
# def read_root():
|
||||
# return {"Hello": "World"}
|
||||
def read_items(
|
||||
appid: Union[str, None] = Header(default=None),
|
||||
bid: Union[str, None] = Header(default=None),
|
||||
requestid: Union[str, None] = Header(default=None),
|
||||
uid: Union[str, None] = Header(default=None),
|
||||
):
|
||||
print("console :,", "appid", appid, "bid", bid, "requestid", requestid, "uid", uid)
|
||||
return {"appid": appid, "bid": bid, "requestid": requestid, "uid": uid}
|
||||
|
||||
|
||||
# 微信对话-用户输入
|
||||
@app.get("/input")
|
||||
async def getphonenum(inputArguments: Union[str, None] = None,appid: Union[str, None] = Header(default=None),bid: Union[str, None] = Header(default=None),requestid: Union[str, None] = Header(default=None),uid: Union[str, None] = Header(default=None)):
|
||||
print('inputArguments',inputArguments)
|
||||
# uid:唯一标识用户的openid
|
||||
print("appid", appid,"bid",bid,"requestid", requestid,"uid", uid)
|
||||
async def getphonenum(
|
||||
inputArguments: Union[str, None] = None,
|
||||
appid: Union[str, None] = Header(default=None),
|
||||
bid: Union[str, None] = Header(default=None),
|
||||
requestid: Union[str, None] = Header(default=None),
|
||||
uid: Union[str, None] = Header(default=None),
|
||||
):
|
||||
print("inputArguments", inputArguments)
|
||||
# uid:唯一标识用户的openid
|
||||
print("appid", appid, "bid", bid, "requestid", requestid, "uid", uid)
|
||||
# uid='wxx'
|
||||
# 要处理url编码问题decode
|
||||
try:
|
||||
inputArguments = unquote(inputArguments, 'utf-8')
|
||||
inputArguments = unquote(inputArguments, "utf-8")
|
||||
except:
|
||||
inputArguments=''
|
||||
inputArguments = ""
|
||||
# 正则获取11位手机号
|
||||
phonenumber=findPhoneNum(inputArguments)
|
||||
print('phonenumber',phonenumber)
|
||||
# # phonenumber='13243889782'
|
||||
phonenumber = findPhoneNum(inputArguments)
|
||||
print("phonenumber", phonenumber)
|
||||
# # phonenumber='13243889782'
|
||||
if phonenumber is not None and uid is not None:
|
||||
warntext='[异度世界],微信加群验证码:3399'
|
||||
sendTg(f'用户手机号{phonenumber},开始发送验证码')
|
||||
warntext = "[异度世界],微信加群验证码:3399"
|
||||
sendTg(f"用户手机号{phonenumber},开始发送验证码")
|
||||
# 判断用户uid是都触发过短信,不允许触发第2次
|
||||
if findUid(uid,phonenumber) is True:
|
||||
print('用户uid已存在,不触发短信')
|
||||
sendTg(f'用户{uid}已存在,不触发短信')
|
||||
if findUid(uid, phonenumber) is True:
|
||||
print("用户uid已存在,不触发短信")
|
||||
sendTg(f"用户{uid}已存在,不触发短信")
|
||||
else:
|
||||
# 发送闪信
|
||||
sendFlash(phonenumber,warntext)
|
||||
sendFlash(phonenumber, warntext)
|
||||
|
||||
else:
|
||||
sendTg(f'用户输入:{inputArguments},手机号不正确,或者uid参数异常')
|
||||
sendTg(f"用户输入:{inputArguments},手机号不正确,或者uid参数异常")
|
||||
|
||||
# 存储uid和手机号
|
||||
# return {"appid": appid,"bid": bid,"requestid": requestid,"uid": uid,'inputArguments':inputArguments}
|
||||
content = {"err_code": 0,"data_list": [{"outputArguments":'test'}]}
|
||||
headers = { "Content-Type":"application/json"}
|
||||
# content = {"err_code": 0,"data_list": [{"outputArguments":'test'}]}
|
||||
content = {
|
||||
"ans_node_name": "小微闲聊",
|
||||
"title": "小薇兄你好",
|
||||
"answer": "你好呀!",
|
||||
"from_user_name": "o9U-85tEZToQxIF8ht6o-KkagxO0",
|
||||
"status": "FAQ",
|
||||
"to_user_name": "xalsjfasf1ljasjdf1",
|
||||
}
|
||||
headers = {"Content-Type": "application/json"}
|
||||
return JSONResponse(content=content, headers=headers)
|
||||
|
||||
Reference in New Issue
Block a user