From b51f8c5439fde667021f9e8955152c7c7653cf5e Mon Sep 17 00:00:00 2001 From: hackrobot Date: Sun, 28 Apr 2024 13:57:09 +0800 Subject: [PATCH] qwfwq --- main.py | 156 ++++++++++++++++++++++++++++++++------------------------ 1 file changed, 88 insertions(+), 68 deletions(-) diff --git a/main.py b/main.py index cd5f59d..05f62e9 100644 --- a/main.py +++ b/main.py @@ -341,7 +341,7 @@ def kp(event_data): event_type = event_data.get('event_type') #事件类型 account_wxid = event_data.get('account_wxid') #机器人id data = event_data.get('data') - print('data===>',data) + print('data===>', data) # global globalMsgData # globalMsgData=event_data.get('data') msg_type = data.get('msgtype') #消息类型 @@ -352,10 +352,12 @@ def kp(event_data): subtype = data.get('subtype') #类型 thumbpath = data.get('thumbpath') #图片,存在电脑绝对路径 - wxid = data.get('final_from_wxid') #消息来源用户 - wx_name = data.get('final_from_name') + wxid = data.get('final_from_wxid') #消息来源-用户wxid + wx_name = data.get('final_from_name') #消息来源-用户名字 + # 群聊id group = None if data.get('from_wxid') == wxid else data.get('from_wxid') + # 群聊名称 group_name = None if data.get('from_name') == wx_name else data.get( 'from_name') '''event类型判断''' @@ -424,75 +426,93 @@ def kp(event_data): else: type_str = f'机器人电脑端 发送的 ' + type_str + +# from_wxid': '18507867712@chatroom' if msg_type == 1: # 1 文本消息/自带表情 + kp_log = f'{type_str} 文本消息 内容:{msg}' - if msg in ['工具箱']: - # 发送小程序 - utils.sendminiProgram(data, account_wxid, wxid, planetXml) - # if msg in ['加群']: - if msg == '加群': - # 将好友信息=>保存到数据库 - newFriendDict = WXBotService.get_friend_info( - account_wxid, wxid) - # print('newFriendDict[data]---',newFriendDict['data']) - userClass = models.User(**(newFriendDict['data'])) - # print('userClass====',type(userClass)) - # crud.create_user(db=SessionLocal(),user=userClass) - - # 保存好友信息 - # utils.saveWxidInfo(account_wxid, wxid) - - # 直接邀请加群>40 - # WXBotService.add_group_members_40_more(robot_wxid='wxid_sfvsru738v3122', - # from_wxid='49187487591@chatroom', - # new_wxid='wxid_4413224132412') - # print("data", data) - # if "emoji" in wx_name: - # # 发送小程序 - # utils.sendminiProgram(data, account_wxid, wxid, planetXml) - # else: - # H5链接 - WXBotService.send_link_message( - account_wxid, - wxid, - title="欢迎加入微信群", - desc="请查看规则", - url= - f'https://link.hackrobot.cn#/pages/index/index?wxid={wxid}', - pic= - "https://www.hackrobot.cn/wp-content/uploads/2023/05/cropped-cropped-Screenshot-2023-05-22-at-17.26.38.png" - ) + + # 收到群聊消息 + if group: + # 异度世界交流群2 + if group=="18507867712@chatroom": + # 群聊被@ + if "@异度世界" in msg: + WXBotService.send_text_message(robot_wxid=account_wxid, + # from_wxid=wxid, + from_wxid=group, + msg="testgroup") + else: + pass else: - pass - # # 判断私聊还是群聊 - # # 指定群聊房间 - - # # 不是自己发的消息 - # if data.get('isSender') != 1: - # # chaglm api在本地8000端口 - # # winHookUrl='http://192.168.31.184:8000/img' - # winHookUrl = 'http://chatbot.hackrobot.cn/img' - # payload = {'query': msg} - # newPayload=json.loads(json.dumps(payload)) - # res = requests.post(winHookUrl, json=newPayload) - # r = res.json() - # answer = r.get("answer", "No answer provided") - # # newanswer="@"+wx_name+", "+answer - # if "/img" in msg: - # newanswer = re.sub(r'#web_img\s+', '', answer) - # WXBotService.send_image_message(robot_wxid=account_wxid, - # from_wxid=wxid, - # msg=newanswer) - # else: - # newanswer=f'@{wx_name} ,{answer} \n [本消息是机器人bot自动回复]' - # print(newanswer) - # WXBotService.send_text_message(robot_wxid=account_wxid, - # from_wxid=wxid, - # msg=newanswer) + # pass + if msg in ['工具箱']: + # 发送小程序 + utils.sendminiProgram(data, account_wxid, wxid, planetXml) + # if msg in ['加群']: + if msg == '加群': + # 将好友信息=>保存到数据库 + newFriendDict = WXBotService.get_friend_info( + account_wxid, wxid) + # print('newFriendDict[data]---',newFriendDict['data']) + userClass = models.User(**(newFriendDict['data'])) + # print('userClass====',type(userClass)) + # crud.create_user(db=SessionLocal(),user=userClass) - # if msg in ['腾讯云']: - # # 发送小程序 - # utils.sendminiProgram(data, account_wxid, wxid, tengxunyunXml) + # 保存好友信息 + # utils.saveWxidInfo(account_wxid, wxid) + + # 直接邀请加群>40 + # WXBotService.add_group_members_40_more(robot_wxid='wxid_sfvsru738v3122', + # from_wxid='49187487591@chatroom', + # new_wxid='wxid_4413224132412') + # print("data", data) + # if "emoji" in wx_name: + # # 发送小程序 + # utils.sendminiProgram(data, account_wxid, wxid, planetXml) + # else: + # H5链接 + WXBotService.send_link_message( + account_wxid, + wxid, + title="欢迎加入微信群", + desc="请查看规则", + url= + f'https://link.hackrobot.cn#/pages/index/index?wxid={wxid}', + pic= + "https://www.hackrobot.cn/wp-content/uploads/2023/05/cropped-cropped-Screenshot-2023-05-22-at-17.26.38.png" + ) + else: + pass + # # 判断私聊还是群聊 + # # 指定群聊房间 + + # # 不是自己发的消息 + # if data.get('isSender') != 1: + # # chaglm api在本地8000端口 + # # winHookUrl='http://192.168.31.184:8000/img' + # winHookUrl = 'http://chatbot.hackrobot.cn/img' + # payload = {'query': msg} + # newPayload=json.loads(json.dumps(payload)) + # res = requests.post(winHookUrl, json=newPayload) + # r = res.json() + # answer = r.get("answer", "No answer provided") + # # newanswer="@"+wx_name+", "+answer + # if "/img" in msg: + # newanswer = re.sub(r'#web_img\s+', '', answer) + # WXBotService.send_image_message(robot_wxid=account_wxid, + # from_wxid=wxid, + # msg=newanswer) + # else: + # newanswer=f'@{wx_name} ,{answer} \n [本消息是机器人bot自动回复]' + # print(newanswer) + # WXBotService.send_text_message(robot_wxid=account_wxid, + # from_wxid=wxid, + # msg=newanswer) + + # if msg in ['腾讯云']: + # # 发送小程序 + # utils.sendminiProgram(data, account_wxid, wxid, tengxunyunXml) elif msg_type == 3: # 3 图片消息 kp_log = f'{type_str} 图片消息 内容:{filepath}'