From 53bfc7a5b4b0b331745a59385ef20ea747f52ef1 Mon Sep 17 00:00:00 2001 From: SengokuCola <1026294844@qq.com> Date: Mon, 21 Apr 2025 00:43:55 +0800 Subject: [PATCH] Update heartFC_processor.py --- .../heartFC_chat/heartFC_processor.py | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/src/plugins/chat_module/heartFC_chat/heartFC_processor.py b/src/plugins/chat_module/heartFC_chat/heartFC_processor.py index eba8a52d1..3fbada3e0 100644 --- a/src/plugins/chat_module/heartFC_chat/heartFC_processor.py +++ b/src/plugins/chat_module/heartFC_chat/heartFC_processor.py @@ -12,6 +12,7 @@ from ...chat.chat_stream import chat_manager from ...chat.message_buffer import message_buffer from ...utils.timer_calculater import Timer from .interest import InterestManager +from src.plugins.person_info.relationship_manager import relationship_manager # 定义日志配置 processor_config = LogConfig( @@ -166,7 +167,37 @@ class HeartFC_Processor: f"兴趣度: {current_interest:.2f}" ) - # 回复触发逻辑已移至 HeartFC_Chat 的监控任务 + try: + is_known = await relationship_manager.is_known_some_one( + message.message_info.platform, message.message_info.user_info.user_id + ) + if not is_known: + logger.info(f"首次认识用户: {message.message_info.user_info.user_nickname}") + await relationship_manager.first_knowing_some_one( + message.message_info.platform, + message.message_info.user_info.user_id, + message.message_info.user_info.user_nickname, + message.message_info.user_info.user_cardname + or message.message_info.user_info.user_nickname, + "", + ) + else: + logger.debug(f"已认识用户: {message.message_info.user_info.user_nickname}") + if not await relationship_manager.is_qved_name( + message.message_info.platform, message.message_info.user_info.user_id + ): + logger.info(f"更新已认识但未取名的用户: {message.message_info.user_info.user_nickname}") + await relationship_manager.first_knowing_some_one( + message.message_info.platform, + message.message_info.user_info.user_id, + message.message_info.user_info.user_nickname, + message.message_info.user_info.user_cardname + or message.message_info.user_info.user_nickname, + "", + ) + except Exception as e: + logger.error(f"处理认识关系失败: {e}") + logger.error(traceback.format_exc()) except Exception as e: logger.error(f"消息处理失败 (process_message V3): {e}")