mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-15 06:12:53 +08:00
🐛 修复超级用户id获取问题
This commit is contained in:
parent
e4a92ea34b
commit
4e42d1dda1
@ -105,7 +105,7 @@ add_group = on_request(priority=1, block=False)
|
||||
|
||||
@group_increase_handle.handle()
|
||||
async def _(bot: Bot, event: GroupIncreaseNoticeEvent | GroupMemberIncreaseEvent):
|
||||
superuser = BotConfig.get_superuser("qq")
|
||||
superusers = BotConfig.get_superuser("qq")
|
||||
user_id = str(event.user_id)
|
||||
group_id = str(event.group_id)
|
||||
if user_id == bot.self_id:
|
||||
@ -123,10 +123,11 @@ async def _(bot: Bot, event: GroupIncreaseNoticeEvent | GroupMemberIncreaseEvent
|
||||
group_id=event.group_id, message=result_msg
|
||||
)
|
||||
await bot.set_group_leave(group_id=event.group_id)
|
||||
await bot.send_private_msg(
|
||||
user_id=int(superuser),
|
||||
message=f"触发强制入群保护,已成功退出群聊 {group_id}...",
|
||||
)
|
||||
if superusers:
|
||||
await bot.send_private_msg(
|
||||
user_id=int(superusers[0]),
|
||||
message=f"触发强制入群保护,已成功退出群聊 {group_id}...",
|
||||
)
|
||||
logger.info(
|
||||
"强制拉群或未有群信息,退出群聊成功",
|
||||
"入群检测",
|
||||
@ -144,10 +145,12 @@ async def _(bot: Bot, event: GroupIncreaseNoticeEvent | GroupMemberIncreaseEvent
|
||||
group_id=event.group_id,
|
||||
e=e,
|
||||
)
|
||||
await bot.send_private_msg(
|
||||
user_id=int(superuser),
|
||||
message=f"触发强制入群保护,退出群聊 {event.group_id} 失败...",
|
||||
)
|
||||
if superusers:
|
||||
await bot.send_private_msg(
|
||||
user_id=int(superusers[0]),
|
||||
message="触发强制入群保护,"
|
||||
f"退出群聊 {event.group_id} 失败...",
|
||||
)
|
||||
await GroupConsole.filter(group_id=group_id).delete()
|
||||
else:
|
||||
"""允许群组并设置群认证,默认群功能开关"""
|
||||
@ -274,8 +277,8 @@ async def _(bot: Bot, event: GroupDecreaseNoticeEvent | GroupMemberDecreaseEvent
|
||||
operator_name = "None"
|
||||
group = await GroupConsole.filter(group_id=str(group_id)).first()
|
||||
group_name = group.group_name if group else ""
|
||||
if superuser := BotConfig.get_superuser("qq"):
|
||||
coffee = int(superuser)
|
||||
if superusers := BotConfig.get_superuser("qq"):
|
||||
coffee = int(superusers[0])
|
||||
await bot.send_private_msg(
|
||||
user_id=coffee,
|
||||
message=f"****呜..一份踢出报告****\n"
|
||||
|
||||
@ -68,7 +68,6 @@ _t = on_message(priority=999, block=False, rule=lambda: False)
|
||||
|
||||
@friend_req.handle()
|
||||
async def _(bot: v12Bot | v11Bot, event: FriendRequestEvent, session: EventSession):
|
||||
superuser = BotConfig.get_superuser("qq")
|
||||
if event.user_id and Timer.check(event.user_id):
|
||||
logger.debug("收录好友请求...", "好友请求", target=event.user_id)
|
||||
user = await bot.get_stranger_info(user_id=event.user_id)
|
||||
@ -102,16 +101,15 @@ async def _(bot: v12Bot | v11Bot, event: FriendRequestEvent, session: EventSessi
|
||||
nickname=nickname,
|
||||
comment=comment,
|
||||
)
|
||||
if superuser:
|
||||
await PlatformUtils.send_superuser(
|
||||
bot,
|
||||
f"*****一份好友申请*****\n"
|
||||
f"ID: {f.id}"
|
||||
f"昵称:{nickname}({event.user_id})\n"
|
||||
f"自动同意:{'√' if base_config.get('AUTO_ADD_FRIEND') else '×'}\n"
|
||||
f"日期:{str(datetime.now()).split('.')[0]}\n"
|
||||
f"备注:{event.comment}",
|
||||
)
|
||||
await PlatformUtils.send_superuser(
|
||||
bot,
|
||||
f"*****一份好友申请*****\n"
|
||||
f"ID: {f.id}"
|
||||
f"昵称:{nickname}({event.user_id})\n"
|
||||
f"自动同意:{'√' if base_config.get('AUTO_ADD_FRIEND') else '×'}\n"
|
||||
f"日期:{str(datetime.now()).split('.')[0]}\n"
|
||||
f"备注:{event.comment}",
|
||||
)
|
||||
else:
|
||||
logger.debug("好友请求五分钟内重复, 已忽略", "好友请求", target=event.user_id)
|
||||
|
||||
|
||||
@ -1,4 +1,3 @@
|
||||
import random
|
||||
from pathlib import Path
|
||||
|
||||
import nonebot
|
||||
@ -8,7 +7,6 @@ from .utils import ConfigsManager
|
||||
|
||||
|
||||
class BotSetting(BaseModel):
|
||||
|
||||
self_nickname: str = ""
|
||||
"""回复时NICKNAME"""
|
||||
system_proxy: str | None = None
|
||||
@ -18,19 +16,18 @@ class BotSetting(BaseModel):
|
||||
platform_superusers: dict[str, list[str]] = {}
|
||||
"""平台超级用户"""
|
||||
|
||||
def get_superuser(self, platform: str) -> str:
|
||||
def get_superuser(self, platform: str) -> list[str]:
|
||||
"""获取超级用户
|
||||
|
||||
参数:
|
||||
platform: 对应平台
|
||||
|
||||
返回:
|
||||
str | None: 超级用户id
|
||||
list[str]: 超级用户id
|
||||
"""
|
||||
if self.platform_superusers:
|
||||
if platform_superuser := self.platform_superusers.get(platform):
|
||||
return random.choice(platform_superuser)
|
||||
return ""
|
||||
return self.platform_superusers.get(platform, [])
|
||||
return []
|
||||
|
||||
def get_sql_type(self) -> str:
|
||||
"""获取数据库类型
|
||||
|
||||
@ -1,29 +1,28 @@
|
||||
import random
|
||||
from collections.abc import Awaitable, Callable
|
||||
from typing import Literal
|
||||
from collections.abc import Callable, Awaitable
|
||||
|
||||
import httpx
|
||||
import nonebot
|
||||
from pydantic import BaseModel
|
||||
from nonebot.adapters import Bot
|
||||
from nonebot.adapters.discord import Bot as DiscordBot
|
||||
from nonebot.utils import is_coroutine_callable
|
||||
from nonebot.adapters.dodo import Bot as DodoBot
|
||||
from nonebot.adapters.kaiheila import Bot as KaiheilaBot
|
||||
from nonebot.adapters.onebot.v11 import Bot as v11Bot
|
||||
from nonebot.adapters.onebot.v12 import Bot as v12Bot
|
||||
from nonebot.utils import is_coroutine_callable
|
||||
from nonebot_plugin_alconna.uniseg import Receipt, Target, UniMessage
|
||||
from pydantic import BaseModel
|
||||
from nonebot.adapters.discord import Bot as DiscordBot
|
||||
from nonebot.adapters.kaiheila import Bot as KaiheilaBot
|
||||
from nonebot_plugin_alconna.uniseg import Target, Receipt, UniMessage
|
||||
|
||||
from zhenxun.configs.config import BotConfig
|
||||
from zhenxun.models.friend_user import FriendUser
|
||||
from zhenxun.models.group_console import GroupConsole
|
||||
from zhenxun.services.log import logger
|
||||
from zhenxun.utils.exception import NotFindSuperuser
|
||||
from zhenxun.configs.config import BotConfig
|
||||
from zhenxun.utils.message import MessageUtils
|
||||
from zhenxun.models.friend_user import FriendUser
|
||||
from zhenxun.utils.exception import NotFindSuperuser
|
||||
from zhenxun.models.group_console import GroupConsole
|
||||
|
||||
|
||||
class UserData(BaseModel):
|
||||
|
||||
name: str
|
||||
"""昵称"""
|
||||
card: str | None = None
|
||||
@ -41,7 +40,6 @@ class UserData(BaseModel):
|
||||
|
||||
|
||||
class PlatformUtils:
|
||||
|
||||
@classmethod
|
||||
async def ban_user(cls, bot: Bot, user_id: str, group_id: str, duration: int):
|
||||
"""禁言
|
||||
|
||||
Loading…
Reference in New Issue
Block a user