From e83a9e116f2842b68d835be12bcb777c2b066432 Mon Sep 17 00:00:00 2001 From: woni <320753691@qq.com> Date: Tue, 28 May 2024 16:21:16 +0800 Subject: [PATCH] fix print --- app/__init__.py | 16 +++--------- app/task.py | 69 +++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 67 insertions(+), 18 deletions(-) diff --git a/app/__init__.py b/app/__init__.py index 3200d62..85284aa 100644 --- a/app/__init__.py +++ b/app/__init__.py @@ -50,30 +50,20 @@ if not os.path.exists(cache_dir): def do_p2_im_message_receive_v1(data: P2ImMessageReceiveV1) -> None: - lark.logger.info(f"receive message: {lark.JSON.marshal(data)}") # print(client, bitable_token, table_id, cache_dir, data) - message_type = data.event.message.message_type - content = json.loads(data.event.message.content) - sender_id = data.event.sender.sender_id.open_id message_id = data.event.message.message_id thread_id = data.event.message.thread_id - clear_data = {} - clear_data["message_type"] = message_type - clear_data["content"] = content - clear_data["sender_id"] = sender_id - clear_data["message_id"] = message_id - clear_data["thread_id"] = thread_id - + data = lark.JSON.marshal(data) print("=====================================") print(f"thread_id: {thread_id}") print(f"thread_id: {message_id}") process_message_callback.delay( - app_id, app_secret, bitable_token, table_id, cache_dir, clear_data + app_id, app_secret, bitable_token, table_id, cache_dir, data ) - print(lark.JSON.marshal(data)) + lark.logger.info(f"receive message: {lark.JSON.marshal(data)}") print("=====================================") diff --git a/app/task.py b/app/task.py index bd176e1..1069675 100644 --- a/app/task.py +++ b/app/task.py @@ -16,13 +16,73 @@ from app.utils.utils import update_record def process_message_callback( app_id, app_secret, bitable_token, table_id, cache_dir, data ) -> None: + """ + { + "schema": "2.0", + "header": { + "event_id": "5a62a955882eb0bef60d8cd92cbd3797", + "token": "35LaoAPYTXRyBmjeaBvzRbRUsJSL1KBx", + "create_time": "1716882569266", + "event_type": "im.message.receive_v1", + "tenant_key": "11cf67642edc175f", + "app_id": "cli_a5110cd1da70900b" + }, + "event": { + "sender": { + "sender_id": { + "user_id": "7g3756f4", + "open_id": "ou_d542891996bf1961f9a94563e6bd4d49", + "union_id": "on_d0b974fa569f61a46f99b6aaac856779" + }, + "sender_type": "user", + "tenant_key": "11cf67642edc175f" + }, + "message": { + "message_id": "om_b9fc436533bd2f9b103fb036926558be", + "root_id": "om_eb490fc20824200d204ef8091ea41442", + "parent_id": "om_eb490fc20824200d204ef8091ea41442", + "create_time": "1716882569049", + "update_time": "1716882569049", + "chat_id": "oc_078dfeaefc42b43a25c35d3de348c7fc", + "thread_id": "omt_1531b4e1939f9740", + "chat_type": "group", + "message_type": "text", + "content": "{\"text\":\"@_user_1 1\"}", + "mentions": [ + { + "key": "@_user_1", + "id": { + "user_id": "", + "open_id": "ou_76322e169bb6bb8f6e1c8b6631b54d72", + "union_id": "on_fef0f7ff1f1a29a806df7fe0625d40e5" + }, + "name": "官方应用指令", + "tenant_key": "11cf67642edc175f" + } + ] + } + } + } + """ # 记录问题到多维表格逻辑 # 如果 @机器人 等于"记录问题", 获取当前的话题 - message_type = data.get("message_type") - content = data.get("content") - sender_id = data.get("sender_id") - message_id = data.get("message_id") + event_message = data.get("event") + sender_info = event_message.get("sender") + message_data = event_message.get("message") + + message_type = message_data.get("message_type") + content = message_data.get("content") + sender_id = message_data.get("sender_id") + message_id = message_data.get("message_id") + + if not message_data.get("mentions"): + # 忽略非@人的消息 + return + + if message_data.get("mentions").get("name") != "官方应用指令": + # 忽略@官方应用指令的消息 + return message_content = "" record = {} @@ -38,7 +98,6 @@ def process_message_callback( if item.get("tag") == "img": images.append(item["image_key"]) - if message_type != "text" or message_content != "记录问题": return