v11.utils¶
v11 检查(验证)器¶
- class melobot.protocols.onebot.v11.utils.abc.Checker[源代码]¶
基类:
BetterABC
,Cloneable
检查器基类
- class melobot.protocols.onebot.v11.utils.abc.WrappedChecker[源代码]¶
基类:
Checker
合并检查器
在两个
Checker
对象间使用 | & ^ ~ 运算符即可返回合并检查器。- set_fail_cb(fail_cb: AsyncCallable[(), None] | None) None [源代码]¶
- 参数:
fail_cb (AsyncCallable[(), None] | None)
- 返回类型:
None
- class melobot.protocols.onebot.v11.utils.LevelRole[源代码]¶
-
用户权限等级枚举
- OWNER = 16¶
- SU = 8¶
- WHITE = 4¶
- NORMAL = 2¶
- BLACK = 1¶
- class melobot.protocols.onebot.v11.utils.MsgChecker[源代码]¶
基类:
Checker
消息事件分级权限检查器
主要分 主人、超级用户、白名单用户、普通用户、黑名单用户 五级
- class melobot.protocols.onebot.v11.utils.GroupMsgChecker[源代码]¶
基类:
MsgChecker
群聊消息事件分级权限检查器
基本功能与
MsgChecker
一致。但增加了白名单机制, 不提供 white_groups 参数默认拒绝所有群聊消息事件。对所有私聊消息事件校验不通过。
- __init__(role: LevelRole | GroupRole, owner: int | None = None, super_users: list[int] | None = None, white_users: list[int] | None = None, black_users: list[int] | None = None, white_groups: list[int] | None = None, fail_cb: AsyncCallable[(), None] | None = None) None [源代码]¶
初始化一个群聊消息事件分级权限检查器
- 参数:
owner (int | None) -- 主人的 qq 号
fail_cb (AsyncCallable[(), None] | None) -- 检查不通过的回调
- 返回类型:
None
- class melobot.protocols.onebot.v11.utils.PrivateMsgChecker[源代码]¶
基类:
MsgChecker
私聊消息事件分级权限检查器
基本功能与
MsgChecker
一致。对所有群聊消息事件校验不通过。
- class melobot.protocols.onebot.v11.utils.MsgCheckerFactory[源代码]¶
基类:
object
消息事件分级权限检查器的工厂
预先存储检查依据(各等级数据),指定检查等级后,可返回一个
MsgChecker
类的对象- __init__(owner: int | None = None, super_users: list[int] | None = None, white_users: list[int] | None = None, black_users: list[int] | None = None, white_groups: list[int] | None = None, fail_cb: AsyncCallable[(), None] | None = None) None [源代码]¶
初始化一个消息事件分级权限检查器的工厂
- 参数:
- 返回类型:
None
- get_base(role: LevelRole | GroupRole, fail_cb: AsyncCallable[(), None] | None = None) MsgChecker [源代码]¶
根据内部依据和给定等级,生成一个
MsgChecker
对象- 参数:
fail_cb (AsyncCallable[(), None] | None) -- 检查不通过的回调
- 返回:
消息事件分级权限检查器
- 返回类型:
- get_group(role: LevelRole | GroupRole, fail_cb: AsyncCallable[(), None] | None = None) GroupMsgChecker [源代码]¶
根据内部依据和给定等级,生成一个
GroupMsgChecker
对象- 参数:
fail_cb (AsyncCallable[(), None] | None) -- 检查不通过的回调
- 返回:
群聊消息事件分级权限检查器
- 返回类型:
- get_private(role: LevelRole, fail_cb: AsyncCallable[(), None] | None = None) PrivateMsgChecker [源代码]¶
根据内部依据和给定等级,生成一个
PrivateMsgChecker
对象- 参数:
role (LevelRole) -- 允许的等级(>= 此等级才能通过校验)
fail_cb (AsyncCallable[(), None] | None) -- 检查不通过的回调
- 返回:
私聊消息事件分级权限检查器
- 返回类型:
- class melobot.protocols.onebot.v11.utils.AtMsgChecker[源代码]¶
基类:
Checker
艾特消息事件检查器
v11 匹配器¶
- class melobot.protocols.onebot.v11.utils.abc.WrappedMatcher[源代码]¶
基类:
Matcher
合并匹配器
在两个
Matcher
对象间使用 | & ^ ~ 运算符即可返回合并匹配器
- class melobot.protocols.onebot.v11.utils.StartMatcher[源代码]¶
基类:
Matcher
字符串起始匹配器
- class melobot.protocols.onebot.v11.utils.ContainMatcher[源代码]¶
基类:
Matcher
字符串包含匹配器
- class melobot.protocols.onebot.v11.utils.EndMatcher[源代码]¶
基类:
Matcher
字符串结尾匹配器
- class melobot.protocols.onebot.v11.utils.FullMatcher[源代码]¶
基类:
Matcher
字符串全匹配器
v11 解析器¶
- class melobot.protocols.onebot.v11.utils.CmdParser[源代码]¶
基类:
Parser
命令解析器
通过解析命令名和命令参数的形式,解析字符串。
- class melobot.protocols.onebot.v11.utils.CmdArgFormatter[源代码]¶
基类:
object
命令参数格式化器
用于格式化命令解析器解析出的命令参数。搭配命令解析器
CmdParser
使用- __init__(convert: ~typing.Callable[[str], ~typing_extensions.Any] | None = None, validate: ~typing.Callable[[~typing_extensions.Any], bool] | None = None, src_desc: str | None = None, src_expect: str | None = None, default: ~typing_extensions.Any = VoidType.VOID, default_replace_flag: str | None = None, convert_fail: ~melobot.typ.AsyncCallable[(<class 'melobot.protocols.onebot.v11.utils.parse.FormatInfo'>,), None] | None = None, validate_fail: ~melobot.typ.AsyncCallable[(<class 'melobot.protocols.onebot.v11.utils.parse.FormatInfo'>,), None] | None = None, arg_lack: ~melobot.typ.AsyncCallable[(<class 'melobot.protocols.onebot.v11.utils.parse.FormatInfo'>,), None] | None = None) None [源代码]¶
初始化一个命令参数格式化器
- 参数:
src_desc (str | None) -- 命令参数值的功能描述
src_expect (str | None) -- 命令参数值的值期待描述
default (Any) -- 命令参数值的默认值(默认值
Void
表示无值,而不是None
表达的空值)default_replace_flag (str | None) -- 命令参数使用默认值的标志
convert_fail (AsyncCallable[(<class 'melobot.protocols.onebot.v11.utils.parse.FormatInfo'>,), None] | None) -- 类型转换失败的回调,为空则使用默认回调
validate_fail (AsyncCallable[(<class 'melobot.protocols.onebot.v11.utils.parse.FormatInfo'>,), None] | None) -- 值验证失败的回调,为空则使用默认回调
arg_lack (AsyncCallable[(<class 'melobot.protocols.onebot.v11.utils.parse.FormatInfo'>,), None] | None) -- 参数缺失的回调,为空则执行默认规则
- 返回类型:
None
- class melobot.protocols.onebot.v11.utils.FormatInfo[源代码]¶
基类:
object
命令参数格式化信息对象
用于在命令参数格式化异常时传递信息。
- exc_tb: TracebackType | None¶
命令参数格式化异常时的调用栈信息