This commit is contained in:
meng_xi_pan
2025-04-04 18:24:43 +08:00
parent 40a8db6b17
commit 132861d16b
4 changed files with 9 additions and 10 deletions

View File

@@ -6,7 +6,7 @@ from .message import MessageRecv
from ..message.message_base import BaseMessageInfo from ..message.message_base import BaseMessageInfo
import hashlib import hashlib
from typing import Dict from typing import Dict
from dataclasses import dataclass, field from dataclasses import field
from collections import OrderedDict from collections import OrderedDict
import random import random
import time import time
@@ -20,7 +20,7 @@ class CacheMessages:
result: str = "U" result: str = "U"
class MassageBuffer: class MessageBuffer:
def __init__(self): def __init__(self):
self.buffer_pool: Dict[str, OrderedDict[str, CacheMessages]] = {} self.buffer_pool: Dict[str, OrderedDict[str, CacheMessages]] = {}
self.lock = asyncio.Lock() self.lock = asyncio.Lock()
@@ -59,7 +59,7 @@ class MassageBuffer:
return return
# 标记该用户之前的未处理消息 # 标记该用户之前的未处理消息
for msg_id, cache_msg in self.buffer_pool[person_id_].items(): for cache_msg in self.buffer_pool[person_id_].values:
if cache_msg.result == "U": if cache_msg.result == "U":
cache_msg.result = "F" cache_msg.result = "F"
cache_msg.cache_determination.set() cache_msg.cache_determination.set()
@@ -174,4 +174,4 @@ class MassageBuffer:
await person_info_manager.update_one_field(person_id, "msg_interval_list", message_interval_list, data) await person_info_manager.update_one_field(person_id, "msg_interval_list", message_interval_list, data)
message_buffer = MassageBuffer() message_buffer = MessageBuffer()

View File

@@ -181,9 +181,9 @@ class ReasoningChat:
if message.message_segment.type == "text": if message.message_segment.type == "text":
logger.info(f"触发缓冲,已炸飞消息:{message.processed_plain_text}") logger.info(f"触发缓冲,已炸飞消息:{message.processed_plain_text}")
elif message.message_segment.type == "image": elif message.message_segment.type == "image":
logger.info(f"触发缓冲,已炸飞表情包/图片") logger.info("触发缓冲,已炸飞表情包/图片")
elif message.message_segment.type == "seglist": elif message.message_segment.type == "seglist":
logger.info(f"触发缓冲,已炸飞消息列") logger.info("触发缓冲,已炸飞消息列")
return return
is_mentioned = is_mentioned_bot_in_message(message) is_mentioned = is_mentioned_bot_in_message(message)

View File

@@ -204,9 +204,9 @@ class ThinkFlowChat:
if message.message_segment.type == "text": if message.message_segment.type == "text":
logger.info(f"触发缓冲,已炸飞消息:{message.processed_plain_text}") logger.info(f"触发缓冲,已炸飞消息:{message.processed_plain_text}")
elif message.message_segment.type == "image": elif message.message_segment.type == "image":
logger.info(f"触发缓冲,已炸飞表情包/图片") logger.info("触发缓冲,已炸飞表情包/图片")
elif message.message_segment.type == "seglist": elif message.message_segment.type == "seglist":
logger.info(f"触发缓冲,已炸飞消息列") logger.info("触发缓冲,已炸飞消息列")
return return
is_mentioned = is_mentioned_bot_in_message(message) is_mentioned = is_mentioned_bot_in_message(message)

View File

@@ -3,15 +3,14 @@ from ...common.database import db
import copy import copy
import hashlib import hashlib
from typing import Any, Callable, Dict, TypeVar from typing import Any, Callable, Dict, TypeVar
T = TypeVar('T') # 泛型类型
import datetime import datetime
import asyncio import asyncio
import numpy import numpy
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
from pathlib import Path from pathlib import Path
import pandas as pd import pandas as pd
""" """
PersonInfoManager 类方法功能摘要: PersonInfoManager 类方法功能摘要:
1. get_person_id - 根据平台和用户ID生成MD5哈希的唯一person_id 1. get_person_id - 根据平台和用户ID生成MD5哈希的唯一person_id