调整目录结构,将框架内容放到base里面

This commit is contained in:
liuwei
2025-05-26 17:13:04 +08:00
parent d01662a397
commit 209ecccfab
34 changed files with 60 additions and 73 deletions

View File

@@ -0,0 +1,58 @@
from dataclasses import dataclass
from typing import Dict, Any, Optional
from datetime import datetime
from base.event_system.event_manager import Event
@dataclass
class PluginCallStartEvent(Event):
"""插件调用开始事件"""
plugin_name: str # 插件名称
command: str # 触发的命令
full_command: str # 完整命令内容
user_id: str # 用户ID
group_id: Optional[str] = None # 群组ID私聊为None
is_group: bool = False # 是否群聊
message: Dict[str, Any] = None # 原始消息内容
timestamp: datetime = None # 事件时间戳
def __post_init__(self):
if self.timestamp is None:
self.timestamp = datetime.now()
@dataclass
class PluginCallEndEvent(Event):
"""插件调用结束事件"""
plugin_name: str # 插件名称
command: str # 触发的命令
user_id: str # 用户ID
group_id: Optional[str] = None # 群组ID私聊为None
is_group: bool = False # 是否群聊
process_result: bool = True # 处理结果True成功False失败
result_message: Optional[str] = None # 处理结果消息
process_time: int = 0 # 处理耗时(毫秒)
timestamp: datetime = None # 事件时间戳
def __post_init__(self):
if self.timestamp is None:
self.timestamp = datetime.now()
@dataclass
class PluginCallErrorEvent(Event):
"""插件调用错误事件"""
plugin_name: str # 插件名称
command: str # 触发的命令
user_id: str # 用户ID
group_id: Optional[str] # 群组ID私聊为None
is_group: bool # 是否群聊
error_message: str # 错误信息
stack_trace: Optional[str] = None # 堆栈跟踪
process_time: int = 0 # 处理耗时(毫秒)
timestamp: datetime = None # 事件时间戳
def __post_init__(self):
if self.timestamp is None:
self.timestamp = datetime.now()