mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-10-05 11:49:59 +08:00
✨ 添加bot画像
* ✨ 新增自我介绍功能及自动发送图片支持 - 在 bot_profile.py 中实现自我介绍指令及重载功能 - 在 group_handle 中添加自动发送自我介绍图片的逻辑 - 在 fg_request 中实现添加好友时自动发送自我介绍图片 - 新增 bot_profile_manager.py 管理 BOT 自我介绍及图片生成 - 更新 models.py 以支持插件自我介绍和注意事项字段 * 🎨 调整管理帮助宽度 * ✨ 更新数据访问层,优化获取数据的方法并引入缓存机制 * ✨ 更新用户数据访问逻辑,优化获取用户信息的方法,使用新的函数替代原有实现 * ✨ 在 BotProfileManager 中添加自我介绍文件不存在的日志记录,优化文件读取逻辑 * ✨ 更新 BOT 自我介绍帮助信息,增加文件不存在时自动创建功能
This commit is contained in:
@@ -10,7 +10,7 @@ from nonebot_plugin_uninfo import Uninfo
|
||||
import ujson as json
|
||||
|
||||
from zhenxun.builtin_plugins.platform.qq.exception import ForceAddGroupError
|
||||
from zhenxun.configs.config import Config
|
||||
from zhenxun.configs.config import BotConfig, Config
|
||||
from zhenxun.configs.path_config import DATA_PATH, IMAGE_PATH
|
||||
from zhenxun.models.fg_request import FgRequest
|
||||
from zhenxun.models.group_console import GroupConsole
|
||||
@@ -20,6 +20,7 @@ from zhenxun.models.plugin_info import PluginInfo
|
||||
from zhenxun.services.log import logger
|
||||
from zhenxun.utils.common_utils import CommonUtils
|
||||
from zhenxun.utils.enum import RequestHandleType
|
||||
from zhenxun.utils.manager.bot_profile_manager import BotProfileManager
|
||||
from zhenxun.utils.message import MessageUtils
|
||||
from zhenxun.utils.platform import PlatformUtils
|
||||
from zhenxun.utils.utils import FreqLimiter
|
||||
@@ -153,6 +154,17 @@ class GroupManager:
|
||||
await cls.__handle_add_group(bot, group_id, group)
|
||||
"""刷新群管理员权限"""
|
||||
await cls.__refresh_level(bot, group_id)
|
||||
if BotProfileManager.is_auto_send_profile():
|
||||
file_path = await BotProfileManager.build_bot_profile_image(bot.self_id)
|
||||
if file_path:
|
||||
await MessageUtils.build_message(
|
||||
[
|
||||
f"嗨,大家好,我是{BotConfig.self_nickname}, "
|
||||
"希望我们可以友好相处(眨眼眨眼)!",
|
||||
file_path,
|
||||
]
|
||||
).send()
|
||||
logger.info("加入群组自动发送BOT自我介绍图片", session=group_id)
|
||||
|
||||
@classmethod
|
||||
def get_path(cls, session: Uninfo) -> Path | None:
|
||||
|
||||
Reference in New Issue
Block a user