This commit is contained in:
hackrobot
2024-04-11 00:10:08 +08:00
parent 90b8506f6a
commit cd36fd281a
3 changed files with 90 additions and 59 deletions

84
main.py
View File

@@ -28,6 +28,9 @@ import utils
import requests
import config
from urllib.parse import quote, unquote
import re
models.Base.metadata.create_all(bind=engine)
@@ -134,35 +137,42 @@ def read_users(wxid, db: Session = Depends(get_db)):
# 群-异度星球 49187487591@chatroom chatroom
def h5group(nickname, db: Session = Depends(get_db)):
newtext = unquote(nickname, 'utf-8')
pattern = r'收到(\w+)的在看'
print(newtext)
# 判断是否在群中
inGroup = False
groupList = WXBotService.get_group_members_list(
robot_wxid=config.account_wxid, from_wxid=config.chatroomId)
# print('groupList', groupList)
for groupItem in groupList['data']:
if groupItem['nickname'] == nickname:
inGroup = True
if inGroup:
return {"code": 200, "success": "fail", "message": "已经在群聊中"}
else:
new_wxid = None
allFriend = WXBotService.get_address_list(config.account_wxid)
for friendItem in allFriend['data']["contactList"]:
if friendItem['nickname'] == nickname:
new_wxid = friendItem['wxid']
else:
# print('通过nickname查不到wxid')
pass
if new_wxid:
WXBotService.add_group_members_40_more(
robot_wxid=config.account_wxid,
from_wxid=config.chatroomId, #异度星球群
new_wxid=new_wxid)
print('new_wxid--', new_wxid)
return {"code": 200, "success": "ok", "message": "群聊邀请已发送"}
matches = re.findall(pattern, newtext)
if matches:
print("匹配到的结果:", matches)
# 判断是否在群中
inGroup = False
groupList = WXBotService.get_group_members_list(
robot_wxid=config.account_wxid, from_wxid=config.chatroomId)
# print('groupList', groupList)
for groupItem in groupList['data']:
if groupItem['nickname'] == matches:
inGroup = True
if inGroup:
return {"code": 200, "success": "fail", "message": "已经在群聊中"}
else:
return {"code": 200, "success": "ok", "message": "查不到nickname"}
new_wxid = None
allFriend = WXBotService.get_address_list(config.account_wxid)
for friendItem in allFriend['data']["contactList"]:
if friendItem['nickname'] == matches:
new_wxid = friendItem['wxid']
else:
# print('通过nickname查不到wxid')
pass
if new_wxid:
WXBotService.add_group_members_40_more(
robot_wxid=config.account_wxid,
from_wxid=config.chatroomId, #异度星球群
new_wxid=new_wxid)
print('new_wxid--', new_wxid)
return {"code": 200, "success": "ok", "message": "群聊邀请已发送"}
else:
return {"code": 200, "success": "ok", "message": "查不到nickname"}
else:
print("未找到匹配项,或者有特殊字符")
# 创建用户
@@ -334,17 +344,17 @@ def kp(event_data):
# new_wxid='wxid_4413224132412')
# 发送小程序
utils.sendminiProgram(data, account_wxid, wxid, planetXml)
# utils.sendminiProgram(data, account_wxid, wxid, planetXml)
# H5链接
# WXBotService.send_link_message(
# account_wxid,
# wxid,
# title="欢迎加入微信群",
# desc="请查看规则",
# url=f'https://link.hackrobot.cn?wxid={wxid}',
# pic=
# "https://www.hackrobot.cn/wp-content/uploads/2023/05/cropped-cropped-Screenshot-2023-05-22-at-17.26.38.png"
# )
WXBotService.send_link_message(
account_wxid,
wxid,
title="欢迎加入微信群",
desc="请查看规则",
url=f'https://link.hackrobot.cn?wxid={wxid}',
pic=
"https://www.hackrobot.cn/wp-content/uploads/2023/05/cropped-cropped-Screenshot-2023-05-22-at-17.26.38.png"
)
# if msg in ['腾讯云']:
# # 发送小程序