74 lines
2.3 KiB
Python
74 lines
2.3 KiB
Python
from event_system.event_manager import Event
|
||
from typing import Optional, Dict, Any
|
||
|
||
|
||
class PluginCallStartEvent(Event):
|
||
"""插件调用开始事件"""
|
||
def __init__(self, plugin_name: str, command: str, user_id: str,
|
||
group_id: Optional[str] = None, **kwargs):
|
||
"""
|
||
Args:
|
||
plugin_name: 插件名称
|
||
command: 触发的命令
|
||
user_id: 用户ID
|
||
group_id: 群组ID,私聊为None
|
||
"""
|
||
super().__init__(
|
||
plugin_name=plugin_name,
|
||
command=command,
|
||
user_id=user_id,
|
||
group_id=group_id,
|
||
**kwargs
|
||
)
|
||
|
||
|
||
class PluginCallEndEvent(Event):
|
||
"""插件调用结束事件"""
|
||
def __init__(self, plugin_name: str, command: str, user_id: str,
|
||
group_id: Optional[str], success: bool,
|
||
process_time_ms: float, result: Any = None, **kwargs):
|
||
"""
|
||
Args:
|
||
plugin_name: 插件名称
|
||
command: 触发的命令
|
||
user_id: 用户ID
|
||
group_id: 群组ID,私聊为None
|
||
success: 是否调用成功
|
||
process_time_ms: 处理时间(毫秒)
|
||
result: 处理结果
|
||
"""
|
||
super().__init__(
|
||
plugin_name=plugin_name,
|
||
command=command,
|
||
user_id=user_id,
|
||
group_id=group_id,
|
||
success=success,
|
||
process_time_ms=process_time_ms,
|
||
result=result,
|
||
**kwargs
|
||
)
|
||
|
||
|
||
class PluginErrorEvent(Event):
|
||
"""插件错误事件"""
|
||
def __init__(self, plugin_name: str, command: str, user_id: str,
|
||
group_id: Optional[str], error_message: str,
|
||
stack_trace: Optional[str] = None, **kwargs):
|
||
"""
|
||
Args:
|
||
plugin_name: 插件名称
|
||
command: 触发的命令
|
||
user_id: 用户ID
|
||
group_id: 群组ID,私聊为None
|
||
error_message: 错误信息
|
||
stack_trace: 堆栈跟踪
|
||
"""
|
||
super().__init__(
|
||
plugin_name=plugin_name,
|
||
command=command,
|
||
user_id=user_id,
|
||
group_id=group_id,
|
||
error_message=error_message,
|
||
stack_trace=stack_trace,
|
||
**kwargs
|
||
) |