Dev (#26)
* feat: 整合开发历史 * codepy安全性升级 * 优化一些东西 * 再次优化 * 更新一下 requirements.txt * CQ码支持以及视频解析 * hotfix * 更新DEV readme.md * feat: 添加Docker沙箱代码执行功能 - 新增Docker沙箱执行环境,提供安全隔离的代码执行能力 - 重构code_py插件,使用Docker容器替代子进程执行 - 添加docker配置项和权限检查功能 - 实现代码执行队列和并发控制 - 新增广播插件,仅限管理员使用
This commit is contained in:
@@ -83,7 +83,7 @@ class MessageHandler(BaseHandler):
|
||||
|
||||
def command(
|
||||
self,
|
||||
name: str,
|
||||
*names: str,
|
||||
permission: Optional[Permission] = None,
|
||||
override_permission_check: bool = False
|
||||
) -> Callable:
|
||||
@@ -93,11 +93,12 @@ class MessageHandler(BaseHandler):
|
||||
def decorator(func: Callable) -> Callable:
|
||||
if not inspect.iscoroutinefunction(func):
|
||||
raise SyncHandlerError(f"命令处理器 {func.__name__} 必须是异步函数 (async def).")
|
||||
self.commands[name] = {
|
||||
"func": func,
|
||||
"permission": permission,
|
||||
"override_permission_check": override_permission_check,
|
||||
}
|
||||
for name in names:
|
||||
self.commands[name] = {
|
||||
"func": func,
|
||||
"permission": permission,
|
||||
"override_permission_check": override_permission_check,
|
||||
}
|
||||
return func
|
||||
return decorator
|
||||
|
||||
@@ -137,7 +138,8 @@ class MessageHandler(BaseHandler):
|
||||
permission_granted = await permission_manager.check_permission(event.user_id, permission)
|
||||
|
||||
if not permission_granted and not override_check:
|
||||
await bot.send(event, f"权限不足,需要 {permission.name} 权限")
|
||||
permission_name = permission.name if isinstance(permission, Permission) else permission
|
||||
await bot.send(event, f"权限不足,需要 {permission_name} 权限")
|
||||
return
|
||||
|
||||
await self._run_handler(
|
||||
|
||||
Reference in New Issue
Block a user