diff options
| -rw-r--r-- | ATRI/plugins/manage/__init__.py | 46 | ||||
| -rw-r--r-- | ATRI/plugins/manage/data_source.py | 8 | 
2 files changed, 33 insertions, 21 deletions
| diff --git a/ATRI/plugins/manage/__init__.py b/ATRI/plugins/manage/__init__.py index 672ba97..e6fc4a9 100644 --- a/ATRI/plugins/manage/__init__.py +++ b/ATRI/plugins/manage/__init__.py @@ -6,10 +6,11 @@ from nonebot.params import ArgPlainText, CommandArg  from nonebot.adapters.onebot.v11 import Bot, Message, MessageEvent, GroupMessageEvent  from nonebot.adapters.onebot.v11 import GROUP_OWNER, GROUP_ADMIN +from ATRI.rule import to_bot  from .data_source import Manage -block_user = Manage().on_command("封禁用户", "对目标用户进行封禁", permission=SUPERUSER) +block_user = Manage().on_command("封禁用户", "对目标用户进行封禁")  @block_user.handle() @@ -32,7 +33,7 @@ async def _deal_block_user(user_id: str = ArgPlainText("block_user")):      await block_user.finish(f"用户 {user_id} 危!") -unblock_user = Manage().on_command("解封用户", "对目标用户进行解封", permission=SUPERUSER) +unblock_user = Manage().on_command("解封用户", "对目标用户进行解封")  @unblock_user.handle() @@ -55,7 +56,7 @@ async def _deal_unblock_user(user_id: str = ArgPlainText("unblock_user")):      await unblock_user.finish(f"好欸!{user_id} 重获新生!") -block_group = Manage().on_command("封禁群", "对目标群进行封禁", permission=SUPERUSER) +block_group = Manage().on_command("封禁群", "对目标群进行封禁")  @block_group.handle() @@ -78,7 +79,7 @@ async def _deal_block_group(group_id: str = ArgPlainText("block_group")):      await block_group.finish(f"群 {group_id} 危!") -unblock_group = Manage().on_command("解封群", "对目标群进行解封", permission=SUPERUSER) +unblock_group = Manage().on_command("解封群", "对目标群进行解封")  @unblock_group.handle() @@ -101,7 +102,7 @@ async def _deal_unblock_group(group_id: str = ArgPlainText("unblock_group")):      await unblock_group.finish(f"好欸!群 {group_id} 重获新生!") -global_block_service = Manage().on_command("全局禁用", "全局禁用某服务", permission=SUPERUSER) +global_block_service = Manage().on_command("全局禁用", "全局禁用某服务")  @global_block_service.handle() @@ -126,7 +127,7 @@ async def _deal_global_block_service(      await global_block_service.finish(f"服务 {block_service} 已被禁用") -global_unblock_service = Manage().on_command("全局启用", "全局启用某服务", permission=SUPERUSER) +global_unblock_service = Manage().on_command("全局启用", "全局启用某服务")  @global_unblock_service.handle() @@ -153,9 +154,7 @@ async def _deal_global_unblock_service(      await global_unblock_service.finish(f"服务 {unblock_service} 已启用") -user_block_service = Manage().on_regex( -    r"对用户(.*?)禁用(.*)", "针对某一用户禁用服务", permission=SUPERUSER -) +user_block_service = Manage().on_regex(r"对用户(.*?)禁用(.*)", "针对某一用户(qid)禁用服务")  @user_block_service.handle() @@ -172,9 +171,7 @@ async def _user_block_service(event: MessageEvent):      await user_block_service.finish(f"完成~已禁止用户 {aim_user} 使用 {aim_service}") -user_unblock_service = Manage().on_regex( -    r"对用户(.*?)启用(.*)", "针对某一用户启用服务", permission=SUPERUSER -) +user_unblock_service = Manage().on_regex(r"对用户(.*?)启用(.*)", "针对某一用户(qid)启用服务")  @user_unblock_service.handle() @@ -249,7 +246,7 @@ async def _deal_group_unblock_service(      await group_unblock_service.finish(f"完成!~已允许本群使用服务:{aim_service}") -get_friend_add_list = Manage().on_command("获取好友申请", "获取好友申请列表", permission=SUPERUSER) +get_friend_add_list = Manage().on_command("获取好友申请", "获取好友申请列表")  @get_friend_add_list.handle() @@ -268,7 +265,7 @@ async def _get_friend_add_list():      await get_friend_add_list.finish(msg1) -approve_friend_add = Manage().on_command("同意好友", "同意好友申请", permission=SUPERUSER) +approve_friend_add = Manage().on_command("同意好友", "同意好友申请")  @approve_friend_add.handle() @@ -298,7 +295,7 @@ async def _deal_approve_friend_add(      await approve_friend_add.finish("好欸!申请已通过!") -refuse_friend_add = Manage().on_command("拒绝好友", "拒绝好友申请", permission=SUPERUSER) +refuse_friend_add = Manage().on_command("拒绝好友", "拒绝好友申请")  @refuse_friend_add.handle() @@ -328,7 +325,7 @@ async def _deal_refuse_friend_add(      await refuse_friend_add.finish("已拒绝!") -get_group_invite_list = Manage().on_command("获取邀请列表", "获取群邀请列表", permission=SUPERUSER) +get_group_invite_list = Manage().on_command("获取邀请列表", "获取群邀请列表")  @get_group_invite_list.handle() @@ -347,7 +344,7 @@ async def _get_group_invite_list():      await get_friend_add_list.finish(msg1) -approve_group_invite = Manage().on_command("同意邀请", "同意群聊邀请", permission=SUPERUSER) +approve_group_invite = Manage().on_command("同意邀请", "同意群聊邀请")  @approve_group_invite.handle() @@ -379,7 +376,7 @@ async def _deal_approve_group_invite(      await approve_group_invite.finish("好欸!申请已通过!") -refuse_group_invite = Manage().on_command("拒绝邀请", "拒绝群聊邀请", permission=SUPERUSER) +refuse_group_invite = Manage().on_command("拒绝邀请", "拒绝群聊邀请")  @refuse_group_invite.handle() @@ -429,3 +426,16 @@ async def _(track_code: str = ArgPlainText("track_code")):      repo = await Manage().track_error(track_code)      await track_error.finish(repo) + + +recall_msg = Manage().on_command("撤回", "撤回bot已发送的信息", to_bot()) + + +@recall_msg.handle() +async def _recall_msg(bot: Bot, event: MessageEvent): +    try: +        recall_id = event.reply.message_id  # type: ignore +    except Exception: +        await recall_msg.finish("无法获取必要信息...没法撤回惹...") + +    await bot.delete_msg(message_id=recall_id) diff --git a/ATRI/plugins/manage/data_source.py b/ATRI/plugins/manage/data_source.py index 92dcc42..35462f0 100644 --- a/ATRI/plugins/manage/data_source.py +++ b/ATRI/plugins/manage/data_source.py @@ -2,12 +2,14 @@ import json  from pathlib import Path  from datetime import datetime +from nonebot.permission import SUPERUSER +  from ATRI.service import Service, ServiceTools  from ATRI.exceptions import load_error -MANAGE_DIR = Path(".") / "data" / "database" / "manege" -ESSENTIAL_DIR = Path(".") / "data" / "database" / "essential" +MANAGE_DIR = Path(".") / "data" / "plugins" / "manege" +ESSENTIAL_DIR = Path(".") / "data" / "plugins" / "essential"  MANAGE_DIR.mkdir(parents=True, exist_ok=True)  ESSENTIAL_DIR.mkdir(parents=True, exist_ok=True) @@ -21,7 +23,7 @@ Time: {time}  class Manage(Service):      def __init__(self): -        Service.__init__(self, "管理", "控制bot的各项服务", True) +        Service.__init__(self, "管理", "控制bot的各项服务", True, permission=SUPERUSER)      @staticmethod      def _load_block_user_list() -> dict: | 
