diff --git a/plugins/hello_world_plugin/plugin.py b/plugins/hello_world_plugin/plugin.py
index ff59dbe7..072dcb9a 100644
--- a/plugins/hello_world_plugin/plugin.py
+++ b/plugins/hello_world_plugin/plugin.py
@@ -165,8 +165,6 @@ class ForwardMessages(BaseEventHandler):
self.messages: List[str] = []
async def execute(self, message: MaiMessages | None) -> Tuple[bool, bool, None, None, None]:
- if self.get_config("print_message.enabled", False):
- return True, True, None, None, None
if not message:
return True, True, None, None, None
stream_id = message.stream_id or ""
@@ -194,7 +192,7 @@ class HelloWorldPlugin(BasePlugin):
# 插件基本信息
plugin_name: str = "hello_world_plugin" # 内部标识符
- enable_plugin: bool = True
+ enable_plugin: bool = False
dependencies: List[str] = [] # 插件依赖列表
python_dependencies: List[str] = [] # Python包依赖列表
config_file_name: str = "config.toml" # 配置文件名
diff --git a/src/chat/message_receive/message.py b/src/chat/message_receive/message.py
index 8af56605..b152342a 100644
--- a/src/chat/message_receive/message.py
+++ b/src/chat/message_receive/message.py
@@ -8,6 +8,7 @@ from typing import Optional, Any, List
from maim_message import Seg, UserInfo, BaseMessageInfo, MessageBase
from src.common.logger import get_logger
+from src.config.config import global_config
from src.chat.utils.utils_image import get_image_manager
from src.chat.utils.utils_voice import get_voice_text
from .chat_stream import ChatStream
@@ -79,6 +80,14 @@ class Message(MessageBase):
if processed:
segments_text.append(processed)
return " ".join(segments_text)
+ elif segment.type == "forward":
+ segments_text = []
+ for node_dict in segment.data:
+ message = MessageBase.from_dict(node_dict) # type: ignore
+ processed_text = await self._process_message_segments(message.message_segment)
+ if processed_text:
+ segments_text.append(f"{global_config.bot.nickname}: {processed_text}")
+ return "[合并消息]: " + "\n".join(segments_text)
else:
# 处理单个消息段
return await self._process_single_segment(segment) # type: ignore
diff --git a/src/chat/message_receive/storage.py b/src/chat/message_receive/storage.py
index a60bd24c..2abf4ce2 100644
--- a/src/chat/message_receive/storage.py
+++ b/src/chat/message_receive/storage.py
@@ -33,7 +33,6 @@ class MessageStorage:
async def store_message(message: Union[MessageSending, MessageRecv], chat_stream: ChatStream) -> None:
"""存储消息到数据库"""
try:
- # 莫越权 救世啊
pattern = r".*?|.*?|.*?"
# print(message)
diff --git a/src/plugin_system/apis/send_api.py b/src/plugin_system/apis/send_api.py
index f57dd7fd..6a43b586 100644
--- a/src/plugin_system/apis/send_api.py
+++ b/src/plugin_system/apis/send_api.py
@@ -310,6 +310,7 @@ async def command_to_stream(
display_message=display_message,
typing=False,
storage_message=storage_message,
+ set_reply=False,
)
diff --git a/src/plugin_system/base/base_action.py b/src/plugin_system/base/base_action.py
index 5b25511f..e48181e2 100644
--- a/src/plugin_system/base/base_action.py
+++ b/src/plugin_system/base/base_action.py
@@ -397,6 +397,8 @@ class BaseAction(ABC):
reply_set=reply_set,
stream_id=self.chat_id,
storage_message=storage_message,
+ set_reply=False,
+ reply_message=None,
)
async def send_voice(self, audio_base64: str) -> bool:
diff --git a/src/plugin_system/base/base_command.py b/src/plugin_system/base/base_command.py
index 252b3c0b..4b098869 100644
--- a/src/plugin_system/base/base_command.py
+++ b/src/plugin_system/base/base_command.py
@@ -320,6 +320,8 @@ class BaseCommand(ABC):
reply_set=reply_set,
stream_id=chat_stream.stream_id,
storage_message=storage_message,
+ set_reply=False,
+ reply_message=None,
)
async def send_custom(
diff --git a/src/plugin_system/base/base_events_handler.py b/src/plugin_system/base/base_events_handler.py
index bb8391ca..22fe0369 100644
--- a/src/plugin_system/base/base_events_handler.py
+++ b/src/plugin_system/base/base_events_handler.py
@@ -377,4 +377,6 @@ class BaseEventHandler(ABC):
reply_set=reply_set,
stream_id=stream_id,
storage_message=storage_message,
+ set_reply=False,
+ reply_message=None,
)
diff --git a/src/plugin_system/core/events_manager.py b/src/plugin_system/core/events_manager.py
index ed85e0f1..beac2ca6 100644
--- a/src/plugin_system/core/events_manager.py
+++ b/src/plugin_system/core/events_manager.py
@@ -2,7 +2,7 @@ import asyncio
import contextlib
from typing import List, Dict, Optional, Type, Tuple, TYPE_CHECKING
-from src.chat.message_receive.message import MessageRecv
+from src.chat.message_receive.message import MessageRecv, MessageSending
from src.chat.message_receive.chat_stream import get_chat_manager
from src.common.logger import get_logger
from src.plugin_system.base.component_types import EventType, EventHandlerInfo, MaiMessages, CustomEventHandlerResult
@@ -66,7 +66,7 @@ class EventsManager:
async def handle_mai_events(
self,
event_type: EventType,
- message: Optional[MessageRecv] = None,
+ message: Optional[MessageRecv | MessageSending] = None,
llm_prompt: Optional[str] = None,
llm_response: Optional["LLMGenerationDataModel"] = None,
stream_id: Optional[str] = None,
@@ -206,7 +206,7 @@ class EventsManager:
def _transform_event_message(
self,
- message: MessageRecv,
+ message: MessageRecv | MessageSending,
llm_prompt: Optional[str] = None,
llm_response: Optional["LLMGenerationDataModel"] = None,
) -> MaiMessages:
@@ -295,7 +295,7 @@ class EventsManager:
def _prepare_message(
self,
event_type: EventType,
- message: Optional[MessageRecv] = None,
+ message: Optional[MessageRecv | MessageSending] = None,
llm_prompt: Optional[str] = None,
llm_response: Optional["LLMGenerationDataModel"] = None,
stream_id: Optional[str] = None,