Files
zhenxun_bot/basic_plugins/admin_bot_manage/custom_welcome_message.py
T

65 lines
2.1 KiB
Python
Raw Normal View History

from typing import List
2021-11-23 21:44:59 +08:00
from nonebot import on_command
2022-02-19 18:20:19 +08:00
from nonebot.adapters.onebot.v11 import GroupMessageEvent, Message
from nonebot.adapters.onebot.v11.permission import GROUP
from nonebot.params import CommandArg
2023-03-19 21:05:34 +08:00
from configs.config import Config
2021-11-23 21:44:59 +08:00
from services.log import logger
2023-03-19 21:05:34 +08:00
from utils.depends import ImageList, OneCommand
2021-11-23 21:44:59 +08:00
from ._data_source import custom_group_welcome
2021-11-23 21:44:59 +08:00
__zx_plugin_name__ = "自定义进群欢迎消息 [Admin]"
__plugin_usage__ = """
usage:
指令:
自定义进群欢迎消息 ?[文本] ?[图片]
Note:可以通过[at]来确认是否艾特新成员
示例:自定义进群欢迎消息 欢迎新人![图片]
2021-11-23 21:44:59 +08:00
示例:自定义进群欢迎消息 欢迎你[at]
""".strip()
__plugin_des__ = "简易的自定义群欢迎消息"
__plugin_cmd__ = ["自定义群欢迎消息 ?[文本] ?[图片]"]
2021-11-23 21:44:59 +08:00
__plugin_version__ = 0.1
__plugin_author__ = "HibiKier"
2021-11-23 21:44:59 +08:00
__plugin_settings__ = {
"admin_level": Config.get_config(
"admin_bot_manage", "SET_GROUP_WELCOME_MESSAGE_LEVEL"
),
2021-11-23 21:44:59 +08:00
}
custom_welcome = on_command(
"自定义进群欢迎消息",
aliases={"自定义欢迎消息", "自定义群欢迎消息", "设置群欢迎消息"},
permission=GROUP,
priority=5,
block=True,
)
@custom_welcome.handle()
async def _(
2023-03-19 21:05:34 +08:00
event: GroupMessageEvent,
cmd: str = OneCommand(),
arg: Message = CommandArg(),
img: List[str] = ImageList(),
):
msg = arg.extract_plain_text().strip()
if not msg and not img:
await custom_welcome.finish(__plugin_usage__)
2021-11-23 21:44:59 +08:00
try:
await custom_welcome.send(
await custom_group_welcome(
msg, img, str(event.user_id), str(event.group_id)
),
2021-11-23 21:44:59 +08:00
at_sender=True,
)
logger.info(f"自定义群欢迎消息:{msg}", cmd, event.user_id, event.group_id)
2021-11-23 21:44:59 +08:00
except Exception as e:
2023-03-19 21:05:34 +08:00
logger.error(
f"自定义进群欢迎消息发生错误", cmd, event.user_id, getattr(event, "group_id", None), e=e
)
2021-11-23 21:44:59 +08:00
await custom_welcome.send("发生了一些未知错误...")