mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-10-11 23:10:02 +08:00
✨ 重构自检ui
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
from nonebot.rule import to_me
|
||||
from nonebot.permission import SUPERUSER
|
||||
from nonebot.plugin import PluginMetadata
|
||||
from nonebot_plugin_session import EventSession
|
||||
from nonebot_plugin_htmlrender import template_to_pic
|
||||
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
|
||||
|
||||
from zhenxun.services.log import logger
|
||||
from zhenxun.utils.enum import PluginType
|
||||
from zhenxun.utils.message import MessageUtils
|
||||
from zhenxun.configs.utils import PluginExtraData
|
||||
from zhenxun.configs.path_config import TEMPLATE_PATH
|
||||
|
||||
from .data_source import get_status_info
|
||||
|
||||
__plugin_meta__ = PluginMetadata(
|
||||
name="服务器自我检查",
|
||||
description="查看服务器当前状态",
|
||||
usage="""
|
||||
查看服务器当前状态
|
||||
指令:
|
||||
自检
|
||||
""".strip(),
|
||||
extra=PluginExtraData(
|
||||
author="HibiKier", version="0.1", plugin_type=PluginType.SUPERUSER
|
||||
).dict(),
|
||||
)
|
||||
|
||||
|
||||
_matcher = on_alconna(
|
||||
Alconna("自检"), rule=to_me(), permission=SUPERUSER, block=True, priority=1
|
||||
)
|
||||
|
||||
|
||||
@_matcher.handle()
|
||||
async def _(session: EventSession, arparma: Arparma):
|
||||
try:
|
||||
data = await get_status_info()
|
||||
image = await template_to_pic(
|
||||
template_path=str((TEMPLATE_PATH / "check").absolute()),
|
||||
template_name="main.html",
|
||||
templates={"data": data},
|
||||
pages={
|
||||
"viewport": {"width": 195, "height": 750},
|
||||
"base_url": f"file://{TEMPLATE_PATH}",
|
||||
},
|
||||
wait=2,
|
||||
)
|
||||
await MessageUtils.build_message(image).send()
|
||||
logger.info("自检", arparma.header_result, session=session)
|
||||
except Exception as e:
|
||||
await MessageUtils.build_message(f"自检失败: {e}").send()
|
||||
logger.error("自检失败", arparma.header_result, session=session, e=e)
|
||||
Reference in New Issue
Block a user