Update Check

增加戳一戳获取自检
This commit is contained in:
ThelevenFD 2024-12-14 20:53:40 +08:00 committed by GitHub
parent e363d29b3b
commit 86718dd38c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -4,12 +4,15 @@ from nonebot.rule import to_me
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
from nonebot_plugin_htmlrender import template_to_pic from nonebot_plugin_htmlrender import template_to_pic
from nonebot_plugin_session import EventSession from nonebot_plugin_session import EventSession
from nonebot import on_notice
from nonebot.adapters.onebot.v11 import PokeNotifyEvent
from zhenxun.configs.path_config import TEMPLATE_PATH from zhenxun.configs.path_config import TEMPLATE_PATH
from zhenxun.configs.utils import PluginExtraData from zhenxun.configs.utils import PluginExtraData
from zhenxun.services.log import logger from zhenxun.services.log import logger
from zhenxun.utils.enum import PluginType from zhenxun.utils.enum import PluginType
from zhenxun.utils.message import MessageUtils from zhenxun.utils.message import MessageUtils
from zhenxun.utils.rules import notice_rule
from .data_source import get_status_info from .data_source import get_status_info
@ -31,10 +34,10 @@ _matcher = on_alconna(
Alconna("自检"), rule=to_me(), permission=SUPERUSER, block=True, priority=1 Alconna("自检"), rule=to_me(), permission=SUPERUSER, block=True, priority=1
) )
@_matcher.handle() @_matcher.handle()
async def _(session: EventSession, arparma: Arparma): async def _(session: EventSession, arparma: Arparma):
try: try:
logger.info("触发自检")
data = await get_status_info() data = await get_status_info()
image = await template_to_pic( image = await template_to_pic(
template_path=str((TEMPLATE_PATH / "check").absolute()), template_path=str((TEMPLATE_PATH / "check").absolute()),
@ -47,7 +50,32 @@ async def _(session: EventSession, arparma: Arparma):
wait=2, wait=2,
) )
await MessageUtils.build_message(image).send() await MessageUtils.build_message(image).send()
logger.info("自检", arparma.header_result, session=session) logger.info("自检成功", arparma.header_result, session=session)
except Exception as e: except Exception as e:
await MessageUtils.build_message(f"自检失败: {e}").send() await MessageUtils.build_message(f"自检失败: {e}").send()
logger.error("自检失败", arparma.header_result, session=session, e=e) logger.error("自检失败", arparma.header_result, session=session, e=e)
_matcherI = on_notice(priority=1, block=True, rule=notice_rule(PokeNotifyEvent) & to_me())
@_matcherI.handle()
async def _(event: PokeNotifyEvent):
try:
logger.info("触发自检")
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("自检成功")
except Exception as e:
await MessageUtils.build_message(f"自检失败: {e}").send()
logger.error("自检失败", e=e)