🎨 统一发送格式

This commit is contained in:
HibiKier
2024-08-10 02:25:04 +08:00
parent 5e4de123b0
commit e0a3fe526e
61 changed files with 758 additions and 665 deletions
+3 -4
View File
@@ -2,7 +2,6 @@ import nonebot
from nonebot.plugin import PluginMetadata
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
from nonebot_plugin_alconna.matcher import AlconnaMatcher
from nonebot_plugin_saa import Image, Text
from nonebot_plugin_session import EventSession
from zhenxun.configs.path_config import IMAGE_PATH
@@ -18,6 +17,7 @@ from zhenxun.utils.image_utils import (
group_image,
text2image,
)
from zhenxun.utils.message import MessageUtils
from zhenxun.utils.rules import admin_check, ensure_group
__plugin_meta__ = PluginMetadata(
@@ -149,13 +149,12 @@ async def build_help() -> BuildImage:
@_matcher.handle()
async def _(
session: EventSession,
matcher: AlconnaMatcher,
arparma: Arparma,
):
if not ADMIN_HELP_IMAGE.exists():
try:
await build_help()
except EmptyError:
await Text("管理员帮助为空").finish(reply=True)
await Image(ADMIN_HELP_IMAGE).send()
await MessageUtils.build_message("管理员帮助为空").finish(reply=True)
await MessageUtils.build_message(ADMIN_HELP_IMAGE).send()
logger.info("查看管理员帮助", arparma.header_result, session=session)
+26 -18
View File
@@ -11,13 +11,13 @@ from nonebot_plugin_alconna import (
on_alconna,
store_true,
)
from nonebot_plugin_saa import Image, Mention, MessageFactory, Text
from nonebot_plugin_session import EventSession
from zhenxun.configs.config import Config
from zhenxun.configs.utils import PluginExtraData, RegisterConfig
from zhenxun.services.log import logger
from zhenxun.utils.enum import PluginType
from zhenxun.utils.message import MessageUtils
from zhenxun.utils.rules import admin_check
from ._data_source import BanManage
@@ -146,9 +146,9 @@ async def _(
_user_id = user_id.result if user_id.available else None
_group_id = group_id.result if group_id.available else None
if image := await BanManage.build_ban_image(filter_type, _user_id, _group_id):
await Image(image.pic2bytes()).finish(reply=True)
await MessageUtils.build_message(image).finish(reply_to=True)
else:
await Text("数据为空捏...").finish(reply=True)
await MessageUtils.build_message("数据为空捏...").finish(reply_to=True)
@_ban_matcher.handle()
@@ -166,7 +166,7 @@ async def _(
user_id = user.result.target
else:
if session.id1 not in bot.config.superusers:
await Text("权限不足捏...").finish(reply=True)
await MessageUtils.build_message("权限不足捏...").finish(reply_to=True)
user_id = user.result
_duration = duration.result * 60 if duration.available else -1
if (gid := session.id3 or session.id2) and not group_id.available:
@@ -181,13 +181,13 @@ async def _(
session=session,
target=f"{gid}:{user_id}",
)
await MessageFactory(
await MessageUtils.build_message(
[
Text("对 "),
Mention(user_id) if isinstance(user.result, At) else Text(user_id), # type: ignore
Text(f" 狠狠惩戒了一番,一脚踢进了小黑屋!"),
"对 ",
At(flag="user", target=user_id) if isinstance(user.result, At) else user_id, # type: ignore
f" 狠狠惩戒了一番,一脚踢进了小黑屋!",
]
).finish(reply=True)
).finish(reply_to=True)
elif session.id1 in bot.config.superusers:
_group_id = group_id.result if group_id.available else None
await BanManage.ban(user_id, _group_id, _duration, session, True)
@@ -198,7 +198,9 @@ async def _(
target=f"{_group_id}:{user_id}",
)
at_msg = user_id if user_id else f"群组:{_group_id}"
await Text(f"对 {at_msg} 狠狠惩戒了一番,一脚踢进了小黑屋!").finish(reply=True)
await MessageUtils.build_message(
f"对 {at_msg} 狠狠惩戒了一番,一脚踢进了小黑屋!"
).finish(reply_to=True)
@_unban_matcher.handle()
@@ -215,7 +217,7 @@ async def _(
user_id = user.result.target
else:
if session.id1 not in bot.config.superusers:
await Text("权限不足捏...").finish(reply=True)
await MessageUtils.build_message("权限不足捏...").finish(reply_to=True)
user_id = user.result
if gid := session.id3 or session.id2:
if group_id.available:
@@ -229,15 +231,17 @@ async def _(
session=session,
target=f"{gid}:{user_id}",
)
await MessageFactory(
await MessageUtils.build_message(
[
Text("将 "),
Mention(user_id) if isinstance(user.result, At) else Text(user_id), # type: ignore
Text(f" 从黑屋中拉了出来并急救了一下!"),
"将 ",
At(flag="user", target=user_id) if isinstance(user.result, At) else user_id, # type: ignore
f" 从黑屋中拉了出来并急救了一下!",
]
).finish(reply=True)
else:
await Text(f"该用户不在黑名单中捏...").finish(reply=True)
await MessageUtils.build_message(f"该用户不在黑名单中捏...").finish(
reply_to=True
)
elif session.id1 in bot.config.superusers:
_group_id = group_id.result if group_id.available else None
if await BanManage.unban(user_id, _group_id, session, True):
@@ -248,6 +252,10 @@ async def _(
target=f"{_group_id}:{user_id}",
)
at_msg = user_id if user_id else f"群组:{_group_id}"
await Text(f"对 {at_msg} 从黑屋中拉了出来并急救了一下!").finish(reply=True)
await MessageUtils.build_message(
f"对 {at_msg} 从黑屋中拉了出来并急救了一下!"
).finish(reply_to=True)
else:
await Text(f"该用户不在黑名单中捏...").finish(reply=True)
await MessageUtils.build_message(f"该用户不在黑名单中捏...").finish(
reply_to=True
)
@@ -102,7 +102,7 @@ class BanManage:
user_level = 9999
if not is_superuser and user_id and session.id1:
user_level = await LevelUser.get_user_level(session.id1, group_id)
if not await BanConsole.check_ban_level(user_id, group_id, user_level):
if await BanConsole.check_ban_level(user_id, group_id, user_level):
await BanConsole.unban(user_id, group_id)
return True
return False
@@ -3,13 +3,13 @@ from nonebot.adapters import Bot
from nonebot.adapters.onebot.v11 import GroupIncreaseNoticeEvent
from nonebot.plugin import PluginMetadata
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
from nonebot_plugin_saa import Text
from nonebot_plugin_session import EventSession
from zhenxun.configs.config import NICKNAME
from zhenxun.configs.utils import PluginExtraData
from zhenxun.services.log import logger
from zhenxun.utils.enum import PluginType
from zhenxun.utils.message import MessageUtils
from zhenxun.utils.rules import admin_check, ensure_group
from ._data_source import MemberUpdateManage
@@ -44,8 +44,10 @@ async def _(bot: Bot, session: EventSession, arparma: Arparma):
if gid := session.id3 or session.id2:
logger.info("更新群组成员信息", arparma.header_result, session=session)
await MemberUpdateManage.update(bot, gid)
await Text("已经成功更新了群组成员信息!").finish(reply=True)
await Text("群组id为空...").send()
await MessageUtils.build_message("已经成功更新了群组成员信息!").finish(
reply_to=True
)
await MessageUtils.build_message("群组id为空...").send()
_notice = on_notice(priority=1, block=False)
@@ -1,13 +1,13 @@
from nonebot.adapters import Bot
from nonebot.plugin import PluginMetadata
from nonebot_plugin_alconna import AlconnaQuery, Arparma, Match, Query
from nonebot_plugin_saa import Image, Text
from nonebot_plugin_session import EventSession
from zhenxun.configs.config import Config
from zhenxun.configs.utils import PluginExtraData, RegisterConfig
from zhenxun.services.log import logger
from zhenxun.utils.enum import BlockType, PluginType
from zhenxun.utils.message import MessageUtils
from ._data_source import PluginManage, build_plugin, build_task
from .command import _group_status_matcher, _status_matcher
@@ -98,9 +98,9 @@ async def _(
arparma.header_result,
session=session,
)
await Image(image.pic2bytes()).finish(reply=True)
await MessageUtils.build_message(image).finish(reply_to=True)
else:
await Text("权限不足捏...").finish(reply=True)
await MessageUtils.build_message("权限不足捏...").finish(reply_to=True)
@_status_matcher.assign("open")
@@ -115,7 +115,7 @@ async def _(
all: Query[bool] = AlconnaQuery("all.value", False),
):
if not all.result and not plugin_name.available:
await Text("请输入功能名称").finish(reply=True)
await MessageUtils.build_message("请输入功能名称").finish(reply_to=True)
name = plugin_name.result
gid = session.id3 or session.id2
if gid:
@@ -154,7 +154,7 @@ async def _(
logger.info(
f"开启功能 {name}", arparma.header_result, session=session
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
elif session.id1 in bot.config.superusers:
"""私聊"""
group_id = group.result if group.available else None
@@ -174,7 +174,7 @@ async def _(
arparma.header_result,
session=session,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
if default_status.result:
result = await PluginManage.set_default_status(name, True)
logger.info(
@@ -183,7 +183,7 @@ async def _(
session=session,
target=group_id,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
if task.result:
split_list = name.split()
if len(split_list) > 1:
@@ -204,7 +204,7 @@ async def _(
arparma.header_result,
session=session,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
else:
result = await PluginManage.superuser_block(name, None, group_id)
logger.info(
@@ -213,7 +213,7 @@ async def _(
session=session,
target=group_id,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
@_status_matcher.assign("close")
@@ -229,7 +229,7 @@ async def _(
all: Query[bool] = AlconnaQuery("all.value", False),
):
if not all.result and not plugin_name.available:
await Text("请输入功能名称").finish(reply=True)
await MessageUtils.build_message("请输入功能名称").finish(reply_to=True)
name = plugin_name.result
gid = session.id3 or session.id2
if gid:
@@ -268,7 +268,7 @@ async def _(
logger.info(
f"关闭功能 {name}", arparma.header_result, session=session
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
elif session.id1 in bot.config.superusers:
group_id = group.result if group.available else None
if all.result:
@@ -287,7 +287,7 @@ async def _(
arparma.header_result,
session=session,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
if default_status.result:
result = await PluginManage.set_default_status(name, False)
logger.info(
@@ -296,7 +296,7 @@ async def _(
session=session,
target=group_id,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
if task.result:
split_list = name.split()
if len(split_list) > 1:
@@ -317,7 +317,7 @@ async def _(
arparma.header_result,
session=session,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
else:
_type = BlockType.ALL
if block_type.available:
@@ -332,7 +332,7 @@ async def _(
session=session,
target=group_id,
)
await Text(result).finish(reply=True)
await MessageUtils.build_message(result).finish(reply_to=True)
@_group_status_matcher.handle()
@@ -345,14 +345,14 @@ async def _(
if status == "sleep":
await PluginManage.sleep(gid)
logger.info("进行休眠", arparma.header_result, session=session)
await Text("那我先睡觉了...").finish()
await MessageUtils.build_message("那我先睡觉了...").finish()
else:
if await PluginManage.is_wake(gid):
await Text("我还醒着呢!").finish()
await MessageUtils.build_message("我还醒着呢!").finish()
await PluginManage.wake(gid)
logger.info("醒来", arparma.header_result, session=session)
await Text("呜..醒来了...").finish()
return Text("群组id为空...").send()
await MessageUtils.build_message("呜..醒来了...").finish()
return MessageUtils.build_message("群组id为空...").send()
@_status_matcher.assign("task")
@@ -367,6 +367,6 @@ async def _(
arparma.header_result,
session=session,
)
await Image(image.pic2bytes()).finish(reply=True)
await MessageUtils.build_message(image).finish(reply_to=True)
else:
await Text("获取群被动任务失败...").finish(reply=True)
await MessageUtils.build_message("获取群被动任务失败...").finish(reply_to=True)