Skip to content

Commit e4c83d3

Browse files
committed
feat:修复白名单问题
1 parent 1f262f3 commit e4c83d3

2 files changed

Lines changed: 17 additions & 11 deletions

File tree

nonebot_plugin_maibot_adapters/bot.py

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from nonebot import get_plugin_config, logger
1+
from nonebot import get_plugin_config, logger
22
from nonebot.adapters.onebot.v11 import (
33
Bot,
44
MessageEvent,
@@ -24,6 +24,11 @@
2424

2525
config = get_plugin_config(Config)
2626

27+
def is_group_allowed(group_id) -> bool:
28+
if len(config.allow_group_list) == 0:
29+
return True
30+
return str(group_id) in {str(item) for item in config.allow_group_list}
31+
2732
# 定义日志配置
2833

2934
class ChatBot:
@@ -72,7 +77,7 @@ async def handle_message(self, event: MessageEvent, bot: Bot) -> None:
7277
else:
7378
#白名单处理逻辑
7479
if len(config.allow_group_list) != 0 :
75-
if event.group_id not in config.allow_group_list:
80+
if not is_group_allowed(event.group_id):
7681
return
7782

7883
user_info = UserInfo(
@@ -135,7 +140,7 @@ async def handle_group_announcement(self, event: MessageEvent, bot: Bot) -> None
135140
self.bot = bot # 更新 bot 实例
136141
#白名单处理逻辑
137142
if len(config.allow_group_list) != 0 :
138-
if event.group_id not in config.allow_group_list:
143+
if not is_group_allowed(event.group_id):
139144
return
140145

141146
message_content = ""
@@ -195,7 +200,7 @@ async def handle_notice(self, event: NoticeEvent, bot: Bot) -> None:
195200

196201
#白名单处理逻辑
197202
if len(config.allow_group_list) != 0 :
198-
if event.group_id not in config.allow_group_list:
203+
if not is_group_allowed(event.group_id):
199204
return
200205

201206
nickname = (await bot.get_login_info())["nickname"]
@@ -266,7 +271,7 @@ async def handle_image_message(self, event: MessageEvent, bot: Bot) -> None:
266271

267272
#白名单处理逻辑
268273
if len(config.allow_group_list) != 0 :
269-
if event.group_id not in config.allow_group_list:
274+
if not is_group_allowed(event.group_id):
270275
return
271276

272277

@@ -374,7 +379,7 @@ async def handle_reply_message(self, event: MessageEvent, bot: Bot) -> None:
374379
else:
375380
#白名单处理逻辑
376381
if len(config.allow_group_list) != 0 :
377-
if event.group_id not in config.allow_group_list:
382+
if not is_group_allowed(event.group_id):
378383
return
379384

380385
user_info = UserInfo(
@@ -417,7 +422,7 @@ async def handle_forward_message(self, event: MessageEvent, bot: Bot) -> None:
417422

418423
#白名单处理逻辑
419424
if len(config.allow_group_list) != 0 :
420-
if event.group_id not in config.allow_group_list:
425+
if not is_group_allowed(event.group_id):
421426
return
422427

423428

nonebot_plugin_maibot_adapters/config.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33

44
class Config(BaseModel):
55
"""Plugin Config Here"""
6-
url : str = "ws://127.0.0.1:8090/ws" # MaiBot Additional API Server Socket.IO 地址
7-
api_key : str = "nonebot-adapter" # 需要与 MaiBot api_server_allowed_api_keys 匹配
8-
platfrom :str = "nonebot-qq" #如果你不知道这是什么那你就不要动它
9-
allow_group_list :list[str] = [] #留空则为不启动QQ端白名单
6+
7+
url: str = "ws://127.0.0.1:8090/ws" # MaiBot Additional API Server Socket.IO 地址
8+
api_key: str = "nonebot-adapter" # 需要与 MaiBot api_server_allowed_api_keys 匹配
9+
platfrom: str = "nonebot-qq" # 历史字段名,保持兼容
10+
allow_group_list: list[str | int] = [] # 留空则不启用 QQ 端白名单

0 commit comments

Comments
 (0)