import nonebot from nonebot.adapters.onebot.v11.bot import Bot from nonebot.adapters.onebot.v11.event import GroupMessageEvent from nonebot_plugin_alconna import UniMsg, UniMessage from pydantic import BaseModel class NoLuowenConfig(BaseModel): plugin_noluowen_qqid: int = -1 plugin_noluowen_enable_group: list[int] = [] config = nonebot.get_plugin_config(NoLuowenConfig) async def is_luowen_mentioned(evt: GroupMessageEvent, msg: UniMsg) -> bool: if config.plugin_noluowen_qqid <= 0: return False if evt.user_id == config.plugin_noluowen_qqid: return False if evt.group_id not in config.plugin_noluowen_enable_group: return False txt = msg.extract_plain_text() if "洛温" not in txt: return False if "罗文" in txt: return False if "阿特金森" in txt: return False return True evt_luowen_mentioned = nonebot.on_message(rule=is_luowen_mentioned) @evt_luowen_mentioned.handle() async def _(evt: GroupMessageEvent, bot: Bot): msg = ( UniMessage() .reply(str(evt.message_id)) .at(str(config.plugin_noluowen_qqid)) .text(" 好像有人念错了你的 ID") ) await evt_luowen_mentioned.send(await msg.export(bot=bot))