mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
59 lines
2.0 KiB
Python
59 lines
2.0 KiB
Python
|
|
from nonebot.permission import SUPERUSER
|
|||
|
|
from nonebot.plugin import PluginMetadata
|
|||
|
|
from nonebot.rule import to_me
|
|||
|
|
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
|
|||
|
|
from nonebot_plugin_uninfo import Uninfo
|
|||
|
|
|
|||
|
|
from zhenxun.configs.config import BotConfig
|
|||
|
|
from zhenxun.configs.utils import PluginExtraData
|
|||
|
|
from zhenxun.services.log import logger
|
|||
|
|
from zhenxun.utils.manager.bot_profile_manager import BotProfileManager
|
|||
|
|
from zhenxun.utils.message import MessageUtils
|
|||
|
|
|
|||
|
|
__plugin_meta__ = PluginMetadata(
|
|||
|
|
name="自我介绍",
|
|||
|
|
description=f"这是{BotConfig.self_nickname}的深情告白",
|
|||
|
|
usage="""
|
|||
|
|
指令:
|
|||
|
|
自我介绍
|
|||
|
|
""".strip(),
|
|||
|
|
extra=PluginExtraData(
|
|||
|
|
author="HibiKier",
|
|||
|
|
version="0.1",
|
|||
|
|
menu_type="其他",
|
|||
|
|
superuser_help="""
|
|||
|
|
在data/bot_profile/bot_id/profile.txt 中编辑BOT自我介绍
|
|||
|
|
在data/bot_profile/bot_id/bot_id.png 中编辑BOT头像
|
|||
|
|
指令:
|
|||
|
|
重载自我介绍
|
|||
|
|
""".strip(),
|
|||
|
|
).to_dict(),
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
|
|||
|
|
_matcher = on_alconna(Alconna("自我介绍"), priority=5, block=True, rule=to_me())
|
|||
|
|
|
|||
|
|
_reload_matcher = on_alconna(
|
|||
|
|
Alconna("重载自我介绍"), priority=1, block=True, permission=SUPERUSER
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
|
|||
|
|
@_matcher.handle()
|
|||
|
|
async def _(session: Uninfo, arparma: Arparma):
|
|||
|
|
file_path = await BotProfileManager.build_bot_profile_image(session.self_id)
|
|||
|
|
if not file_path:
|
|||
|
|
await MessageUtils.build_message(
|
|||
|
|
f"{BotConfig.self_nickname}当前没有自我简介哦"
|
|||
|
|
).finish(reply_to=True)
|
|||
|
|
await MessageUtils.build_message(file_path).send()
|
|||
|
|
logger.info("BOT自我介绍", arparma.header_result, session=session)
|
|||
|
|
|
|||
|
|
|
|||
|
|
@_reload_matcher.handle()
|
|||
|
|
async def _(session: Uninfo, arparma: Arparma):
|
|||
|
|
BotProfileManager.clear_profile_image(session.self_id)
|
|||
|
|
await MessageUtils.build_message(f"重载{BotConfig.self_nickname}自我介绍成功").send(
|
|||
|
|
reply_to=True
|
|||
|
|
)
|
|||
|
|
logger.info("重载BOT自我介绍", arparma.header_result, session=session)
|