"""语录 —— 触发器(Trigger)层。""" from __future__ import annotations from nonebot import logger, on_message, require from nonebot.adapters.onebot.v11 import Bot, Event from nonebot.rule import keyword from nonebot_plugin_alconna import UniMessage from ..services.generate import generate from ..utils.reply import extract_reply require("nonebot_plugin_alconna") maq = on_message(keyword("maq")) @maq.handle() async def maq_handle(bot: Bot, ev: Event): event = ev.dict() try: if event.get("message_type") != "group": return reply = await extract_reply(event, bot) if reply.message == -1: await maq.finish("请引用文字消息") logger.info(f"{reply.user_id}, {reply.user_card}, {reply.message}") image = await generate(reply) await UniMessage.image(raw=image.getvalue()).send() except (KeyError, TypeError) as e: logger.error(e) await maq.finish(str(e))