diff options
Diffstat (limited to 'ATRI/plugins/help')
-rw-r--r-- | ATRI/plugins/help/__init__.py | 14 | ||||
-rw-r--r-- | ATRI/plugins/help/data_source.py | 34 |
2 files changed, 23 insertions, 25 deletions
diff --git a/ATRI/plugins/help/__init__.py b/ATRI/plugins/help/__init__.py index efdd985..357a337 100644 --- a/ATRI/plugins/help/__init__.py +++ b/ATRI/plugins/help/__init__.py @@ -5,10 +5,7 @@ from ATRI.rule import to_bot from .data_source import Helper -main_help = Helper().on_command( - "菜单", "获取食用bot的方法", rule=to_bot(), aliases={"/help", "menu"} -) - +main_help = Helper().on_command("菜单", "获取食用bot的方法", rule=to_bot(), aliases={"/help", "menu"}) @main_help.handle() async def _main_help(bot: Bot, event: MessageEvent): @@ -18,7 +15,6 @@ async def _main_help(bot: Bot, event: MessageEvent): about_me = Helper().on_command("关于", "获取关于bot的信息", rule=to_bot(), aliases={"about"}) - @about_me.handle() async def _about_me(bot: Bot, event: MessageEvent): repo = Helper().about() @@ -27,15 +23,13 @@ async def _about_me(bot: Bot, event: MessageEvent): service_list = Helper().on_command("服务列表", "查看所有可用服务", rule=to_bot(), aliases={"功能列表"}) - @service_list.handle() async def _service_list(bot: Bot, event: MessageEvent): repo = Helper().service_list() await service_list.finish(repo) -service_info = Helper().on_command("帮助", "获取服务详细帮助") - +service_info = Helper().on_command("帮助", "获取服务详细帮助", rule=to_bot()) @service_info.handle() async def _ready_service_info(bot: Bot, event: MessageEvent, state: T_State): @@ -45,10 +39,10 @@ async def _ready_service_info(bot: Bot, event: MessageEvent, state: T_State): cmd = msg[1] except BaseException: cmd = str() - + if not cmd: repo = Helper().service_info(service) await service_info.finish(repo) - + repo = Helper().cmd_info(service, cmd) await service_info.finish(repo) diff --git a/ATRI/plugins/help/data_source.py b/ATRI/plugins/help/data_source.py index 831d1e0..f5104e5 100644 --- a/ATRI/plugins/help/data_source.py +++ b/ATRI/plugins/help/data_source.py @@ -24,9 +24,10 @@ COMMAND_INFO_FORMAT = """ class Helper(Service): + def __init__(self): Service.__init__(self, "帮助", "bot的食用指南~") - + @staticmethod def menu() -> str: return ( @@ -34,9 +35,9 @@ class Helper(Service): "关于 -查看bot基本信息\n" "服务列表 -以查看所有可用服务\n" "帮助 [服务] -以查看对应服务帮助\n" - "Tip: 均需要at触发。菜单 打开此页面" + "Tip: 均需要at触发。菜单 以打开此页面" ) - + @staticmethod def about() -> str: temp_list = list() @@ -50,7 +51,7 @@ class Helper(Service): "想进一步了解:\n" "https://github.com/Kyomotoi/ATRI" ) - + @staticmethod def service_list() -> str: files = os.listdir(SERVICES_DIR) @@ -58,42 +59,42 @@ class Helper(Service): for i in files: service = i.replace(".json", "") temp_list.append(service) - + msg0 = "咱搭载了以下服务~\n" services = " | ".join(map(str, temp_list)) msg0 = msg0 + services - repo = msg0 + "\n帮助 [服务] -以查看对应服务帮助" + repo = msg0 + "\n@ 帮助 [服务] -以查看对应服务帮助" return repo - + @staticmethod def service_info(service: str) -> str: try: data = ServiceTools().load_service(service) except ReadFileError: return "请检查是否输入错误呢..." - + service_name = data.get("service", "error") service_docs = data.get("docs", "error") service_enabled = data.get("enabled", True) - + _service_cmd_list = list(data.get("cmd_list", {"error"})) service_cmd_list = "\n".join(map(str, _service_cmd_list)) - + repo = SERVICE_INFO_FORMAT.format( service=service_name, docs=service_docs, cmd_list=service_cmd_list, - enabled=service_enabled, + enabled=service_enabled ) return repo - + @staticmethod def cmd_info(service: str, cmd: str) -> str: try: data = ServiceTools().load_service(service) except ReadFileError: return "请检查是否输入错误..." - + cmd_list: dict = data["cmd_list"] cmd_info = cmd_list.get(cmd, dict()) if not cmd_info: @@ -101,8 +102,11 @@ class Helper(Service): cmd_type = cmd_info.get("type", "ignore") docs = cmd_info.get("docs", "ignore") aliases = cmd_info.get("aliases", "ignore") - + repo = COMMAND_INFO_FORMAT.format( - cmd=cmd, cmd_type=cmd_type, docs=docs, aliases=aliases + cmd=cmd, + cmd_type=cmd_type, + docs=docs, + aliases=aliases ) return repo |