from nonebot import on_notice, require from nonebot.adapters.onebot.v11 import ( Bot, GroupDecreaseNoticeEvent, GroupIncreaseNoticeEvent, ) from nonebot.rule import is_type require("nonebot_plugin_alconna") from nonebot_plugin_alconna import UniMessage group_decrease_notice = on_notice(rule=is_type(GroupDecreaseNoticeEvent)) @group_decrease_notice.handle() async def group_decrease_handle(bot: Bot, ev: GroupDecreaseNoticeEvent): sub_type = ev.sub_type uid = ev.user_id operator_id = ev.operator_id data = await bot.get_stranger_info(user_id=uid) name = data["nickname"] if sub_type == "kick": await UniMessage.at(user_id=operator_id).text( f"认为{name}({uid})不适合本群" ).send() elif sub_type == "leave": await UniMessage.text(f"{name}({uid})离开了我们,相信会有再见的一天!").send() group_increase_notice = on_notice(rule=is_type(GroupIncreaseNoticeEvent)) @group_increase_notice.handle() async def group_increase_handle(bot: Bot, ev: GroupIncreaseNoticeEvent): if ev.user_id == ev.self_id: return # 忽略自己 await UniMessage.text("欢迎入群~,请认真阅读群规").send(at_sender=True)