mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 14:22:55 +08:00
🐛 代码优化
This commit is contained in:
parent
1ecb364f30
commit
fdb62f7226
@ -1,4 +1,3 @@
|
|||||||
import os
|
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
from nonebot import require
|
from nonebot import require
|
||||||
@ -22,16 +21,10 @@ require("nonebot_plugin_userinfo")
|
|||||||
from nonebot_plugin_saa import enable_auto_select_bot
|
from nonebot_plugin_saa import enable_auto_select_bot
|
||||||
|
|
||||||
enable_auto_select_bot()
|
enable_auto_select_bot()
|
||||||
from pathlib import Path
|
|
||||||
|
|
||||||
import nonebot
|
import nonebot
|
||||||
import ujson as json
|
import ujson as json
|
||||||
|
|
||||||
path = Path(__file__).parent / "platform"
|
|
||||||
for d in os.listdir(path):
|
|
||||||
nonebot.load_plugins(str((path / d).resolve()))
|
|
||||||
|
|
||||||
|
|
||||||
driver: Driver = nonebot.get_driver()
|
driver: Driver = nonebot.get_driver()
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,4 @@
|
|||||||
import nonebot
|
import nonebot
|
||||||
from arclet.alconna import Args, Option
|
|
||||||
from nonebot.plugin import PluginMetadata
|
from nonebot.plugin import PluginMetadata
|
||||||
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
|
from nonebot_plugin_alconna import Alconna, Arparma, on_alconna
|
||||||
from nonebot_plugin_alconna.matcher import AlconnaMatcher
|
from nonebot_plugin_alconna.matcher import AlconnaMatcher
|
||||||
@ -7,8 +6,8 @@ from nonebot_plugin_saa import Image, Text
|
|||||||
from nonebot_plugin_session import EventSession
|
from nonebot_plugin_session import EventSession
|
||||||
|
|
||||||
from zhenxun.configs.config import Config
|
from zhenxun.configs.config import Config
|
||||||
from zhenxun.configs.path_config import DATA_PATH, IMAGE_PATH
|
from zhenxun.configs.path_config import IMAGE_PATH
|
||||||
from zhenxun.configs.utils import PluginExtraData, RegisterConfig
|
from zhenxun.configs.utils import PluginExtraData
|
||||||
from zhenxun.models.plugin_info import PluginInfo
|
from zhenxun.models.plugin_info import PluginInfo
|
||||||
from zhenxun.models.task_info import TaskInfo
|
from zhenxun.models.task_info import TaskInfo
|
||||||
from zhenxun.services.log import logger
|
from zhenxun.services.log import logger
|
||||||
|
|||||||
@ -4,7 +4,6 @@ from nonebot.plugin import PluginMetadata
|
|||||||
|
|
||||||
from zhenxun.configs.config import Config
|
from zhenxun.configs.config import Config
|
||||||
from zhenxun.configs.utils import PluginExtraData
|
from zhenxun.configs.utils import PluginExtraData
|
||||||
from zhenxun.models.group_member_info import GroupInfoUser
|
|
||||||
from zhenxun.models.level_user import LevelUser
|
from zhenxun.models.level_user import LevelUser
|
||||||
from zhenxun.services.log import logger
|
from zhenxun.services.log import logger
|
||||||
from zhenxun.utils.enum import PluginType
|
from zhenxun.utils.enum import PluginType
|
||||||
@ -26,11 +25,6 @@ base_config = Config.get("admin_bot_manage")
|
|||||||
|
|
||||||
@admin_notice.handle()
|
@admin_notice.handle()
|
||||||
async def _(event: GroupAdminNoticeEvent):
|
async def _(event: GroupAdminNoticeEvent):
|
||||||
nickname = event.user_id
|
|
||||||
if user := await GroupInfoUser.get_or_none(
|
|
||||||
user_id=str(event.user_id), group_id=str(event.group_id)
|
|
||||||
):
|
|
||||||
nickname = user.user_name
|
|
||||||
if event.sub_type == "set":
|
if event.sub_type == "set":
|
||||||
admin_default_auth = base_config.get("ADMIN_DEFAULT_AUTH")
|
admin_default_auth = base_config.get("ADMIN_DEFAULT_AUTH")
|
||||||
if admin_default_auth is not None:
|
if admin_default_auth is not None:
|
||||||
|
|||||||
11
zhenxun/builtin_plugins/platform/__init__.py
Normal file
11
zhenxun/builtin_plugins/platform/__init__.py
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
import os
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
|
import nonebot
|
||||||
|
|
||||||
|
path = Path(__file__).parent
|
||||||
|
|
||||||
|
for f in os.listdir(path):
|
||||||
|
_p = path / f
|
||||||
|
if _p.is_dir():
|
||||||
|
nonebot.load_plugins(str(_p.resolve()))
|
||||||
@ -27,7 +27,7 @@ from zhenxun.models.group_member_info import GroupInfoUser
|
|||||||
from zhenxun.models.level_user import LevelUser
|
from zhenxun.models.level_user import LevelUser
|
||||||
from zhenxun.models.plugin_info import PluginInfo
|
from zhenxun.models.plugin_info import PluginInfo
|
||||||
from zhenxun.services.log import logger
|
from zhenxun.services.log import logger
|
||||||
from zhenxun.utils.enum import PluginType, RequestHandleType, RequestType
|
from zhenxun.utils.enum import PluginType, RequestHandleType
|
||||||
from zhenxun.utils.utils import FreqLimiter
|
from zhenxun.utils.utils import FreqLimiter
|
||||||
|
|
||||||
__plugin_meta__ = PluginMetadata(
|
__plugin_meta__ = PluginMetadata(
|
||||||
@ -110,7 +110,9 @@ async def _(bot: Bot, event: GroupIncreaseNoticeEvent | GroupMemberIncreaseEvent
|
|||||||
group_id = str(event.group_id)
|
group_id = str(event.group_id)
|
||||||
if user_id == bot.self_id:
|
if user_id == bot.self_id:
|
||||||
"""新成员为bot本身"""
|
"""新成员为bot本身"""
|
||||||
group = await GroupConsole.get_or_none(group_id=group_id)
|
group = await GroupConsole.get_or_none(
|
||||||
|
group_id=group_id, channel_id__isnull=True
|
||||||
|
)
|
||||||
if (not group or group.group_flag == 0) and base_config.get("flag"):
|
if (not group or group.group_flag == 0) and base_config.get("flag"):
|
||||||
"""群聊不存在或被强制拉群,退出该群"""
|
"""群聊不存在或被强制拉群,退出该群"""
|
||||||
try:
|
try:
|
||||||
@ -142,9 +144,7 @@ async def _(bot: Bot, event: GroupIncreaseNoticeEvent | GroupMemberIncreaseEvent
|
|||||||
user_id=int(superuser),
|
user_id=int(superuser),
|
||||||
message=f"触发强制入群保护,退出群聊 {event.group_id} 失败...",
|
message=f"触发强制入群保护,退出群聊 {event.group_id} 失败...",
|
||||||
)
|
)
|
||||||
elif group_id not in await GroupConsole.all().values_list(
|
elif not GroupConsole.exists(group_id=group_id, channel_id__isnull=True):
|
||||||
"group_id", flat=True
|
|
||||||
):
|
|
||||||
"""默认群功能开关"""
|
"""默认群功能开关"""
|
||||||
block_plugin = ""
|
block_plugin = ""
|
||||||
if plugin_list := await PluginInfo.filter(default_status=False).all():
|
if plugin_list := await PluginInfo.filter(default_status=False).all():
|
||||||
@ -230,14 +230,15 @@ async def _(bot: Bot, event: GroupIncreaseNoticeEvent | GroupMemberIncreaseEvent
|
|||||||
if msg_list:
|
if msg_list:
|
||||||
await MessageFactory(msg_list).send()
|
await MessageFactory(msg_list).send()
|
||||||
else:
|
else:
|
||||||
|
image = (
|
||||||
|
IMAGE_PATH
|
||||||
|
/ "qxz"
|
||||||
|
/ random.choice(os.listdir(IMAGE_PATH / "qxz"))
|
||||||
|
)
|
||||||
await MessageFactory(
|
await MessageFactory(
|
||||||
[
|
[
|
||||||
Text("新人快跑啊!!本群现状↓(快使用自定义!)"),
|
Text("新人快跑啊!!本群现状↓(快使用自定义!)"),
|
||||||
Image(
|
Image(image),
|
||||||
IMAGE_PATH
|
|
||||||
/ "qxz"
|
|
||||||
/ random.choice(os.listdir(IMAGE_PATH / "qxz"))
|
|
||||||
),
|
|
||||||
]
|
]
|
||||||
).send()
|
).send()
|
||||||
|
|
||||||
@ -256,7 +257,7 @@ async def _(bot: Bot, event: GroupDecreaseNoticeEvent | GroupMemberDecreaseEvent
|
|||||||
operator_name = "None"
|
operator_name = "None"
|
||||||
group = await GroupConsole.filter(group_id=str(group_id)).first()
|
group = await GroupConsole.filter(group_id=str(group_id)).first()
|
||||||
group_name = group.group_name if group else ""
|
group_name = group.group_name if group else ""
|
||||||
coffee = int(list(bot.config.superusers)[0])
|
coffee = int(superuser)
|
||||||
await bot.send_private_msg(
|
await bot.send_private_msg(
|
||||||
user_id=coffee,
|
user_id=coffee,
|
||||||
message=f"****呜..一份踢出报告****\n"
|
message=f"****呜..一份踢出报告****\n"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user