zhenxun_bot/plugins/help/__init__.py

47 lines
1.5 KiB
Python
Raw Normal View History

2021-05-20 19:23:32 +08:00
from nonebot import on_command
from nonebot.adapters.cqhttp import Bot, GroupMessageEvent, PrivateMessageEvent
from nonebot.typing import T_State
from nonebot.rule import to_me
from configs.path_config import DATA_PATH
2021-07-30 21:21:51 +08:00
from utils.message_builder import image
2021-05-20 19:23:32 +08:00
import os
2021-06-15 10:57:08 +08:00
from .data_source import create_help_img, create_group_help_img, get_plugin_help
2021-05-20 19:23:32 +08:00
from nonebot import require
2021-06-30 19:50:55 +08:00
from utils.utils import get_message_text
2021-06-15 10:57:08 +08:00
2021-05-20 19:23:32 +08:00
export = require("nonebot_plugin_manager")
2021-07-30 21:21:51 +08:00
__plugin_name__ = "帮助"
2021-05-20 19:23:32 +08:00
2021-07-30 21:21:51 +08:00
if not os.path.exists(DATA_PATH + "group_help/"):
os.mkdir(DATA_PATH + "group_help/")
2021-05-20 19:23:32 +08:00
create_help_img()
2021-07-30 21:21:51 +08:00
for file in os.listdir(DATA_PATH + "group_help/"):
os.remove(DATA_PATH + "group_help/" + file)
2021-05-20 19:23:32 +08:00
2021-07-30 21:21:51 +08:00
_help = on_command("功能", rule=to_me(), aliases={"help", "帮助"}, priority=1, block=True)
2021-05-20 19:23:32 +08:00
@_help.handle()
async def _(bot: Bot, event: GroupMessageEvent, state: T_State):
2021-06-15 10:57:08 +08:00
msg = get_message_text(event.json())
if not msg:
2021-07-30 21:21:51 +08:00
if not os.path.exists(DATA_PATH + f"group_help/{event.group_id}.png"):
2021-06-15 10:57:08 +08:00
create_group_help_img(event.group_id)
2021-07-30 21:21:51 +08:00
await _help.finish(
image(abspath=DATA_PATH + f"group_help/{event.group_id}.png")
)
2021-06-15 10:57:08 +08:00
else:
await _help.finish(get_plugin_help(msg))
2021-05-20 19:23:32 +08:00
@_help.handle()
async def _(bot: Bot, event: PrivateMessageEvent, state: T_State):
2021-06-15 10:57:08 +08:00
msg = get_message_text(event.json())
if not msg:
2021-07-30 21:21:51 +08:00
await _help.finish(image("help.png"))
2021-06-15 10:57:08 +08:00
else:
await _help.finish(get_plugin_help(msg))