mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-09-29 08:39:59 +08:00
bugfix:更换数据库初始化超时路径以修复连接超时问题 (#2137)
* bugfix:更换数据库初始化超时路径以修复连接超时问题 * 移除部分观测链路 * 细节修改 * 权限检查细节修改2 * bugfix:修复金币懒加载造成插件金币消耗不了的问题 * bugfix:整理鉴权逻辑 * 完善缓存系统 * 优化官端使用 * bugfix:增加官机和频道的前导统一剥离,新增获取群列表自愈 * bugfix:修复导入问题
This commit is contained in:
@@ -23,29 +23,31 @@ class CommonUtils:
|
||||
async def task_is_block(
|
||||
cls, session: Uninfo | Bot, module: str, group_id: str | None = None
|
||||
) -> bool:
|
||||
"""判断被动技能是否可以发送
|
||||
"""判断被动技能是否被阻断。
|
||||
|
||||
运行真源固定为 TaskInfo.status/load_status、BotConsole.block_tasks、
|
||||
GroupConsole.block_task/superuser_block_task,以及 bot/group ban 状态。
|
||||
BotConsole.available_tasks 只用于管理展示,不作为运行白名单。
|
||||
|
||||
参数:
|
||||
module: 被动技能模块名
|
||||
group_id: 群组id
|
||||
|
||||
返回:
|
||||
bool: 是否可以发送
|
||||
bool: True 表示被动技能应被阻断,False 表示允许继续执行
|
||||
"""
|
||||
if isinstance(session, Bot):
|
||||
if interface := get_interface(session):
|
||||
info = interface.basic_info()
|
||||
if info["scope"] == SupportScope.qq_api:
|
||||
logger.info("q官bot放弃所有被动技能发言...")
|
||||
"""q官bot放弃所有被动技能发言"""
|
||||
return False
|
||||
if session.scene == SupportScope.qq_api:
|
||||
"""q官bot放弃所有被动技能发言"""
|
||||
logger.info("q官bot放弃所有被动技能发言...")
|
||||
return False
|
||||
logger.debug("q官bot放弃所有被动技能发言...")
|
||||
return True
|
||||
if isinstance(session, Session) and session.scope == SupportScope.qq_api:
|
||||
logger.debug("q官bot放弃所有被动技能发言...")
|
||||
return True
|
||||
if not group_id and isinstance(session, Session):
|
||||
group_id = session.group.id if session.group else None
|
||||
if await TaskInfoMemoryCache.is_disabled(module):
|
||||
if await TaskInfoMemoryCache.is_runtime_disabled(module):
|
||||
"""被动全局状态"""
|
||||
return True
|
||||
bot_snapshot = await BotMemoryCache.get(session.self_id)
|
||||
|
||||
Reference in New Issue
Block a user