注册一个支持 `shell_like` 解析参数的命令消息事件响应器。 与普通的 `on_command` 不同的是,在添加 `parser` 参数时, 响应器会自动处理消息。 可以通过 {ref}`nonebot.params.ShellCommandArgv` 获取原始参数列表, 通过 {ref}`nonebot.params.ShellCommandArgs` 获取解析后的参数字典。 参数: cmd: 指定命令内容 aliases: 命令别名 pa
(
self,
cmd: str | tuple[str, ...],
aliases: set[str | tuple[str, ...]] | None = None,
parser: ArgumentParser | None = None,
**kwargs,
)
| 750 | return matcher |
| 751 | |
| 752 | def on_shell_command( |
| 753 | self, |
| 754 | cmd: str | tuple[str, ...], |
| 755 | aliases: set[str | tuple[str, ...]] | None = None, |
| 756 | parser: ArgumentParser | None = None, |
| 757 | **kwargs, |
| 758 | ) -> type[Matcher]: |
| 759 | """注册一个支持 `shell_like` 解析参数的命令消息事件响应器。 |
| 760 | |
| 761 | 与普通的 `on_command` 不同的是,在添加 `parser` 参数时, 响应器会自动处理消息。 |
| 762 | |
| 763 | 可以通过 {ref}`nonebot.params.ShellCommandArgv` 获取原始参数列表, |
| 764 | 通过 {ref}`nonebot.params.ShellCommandArgs` 获取解析后的参数字典。 |
| 765 | |
| 766 | 参数: |
| 767 | cmd: 指定命令内容 |
| 768 | aliases: 命令别名 |
| 769 | parser: `nonebot.rule.ArgumentParser` 对象 |
| 770 | rule: 事件响应规则 |
| 771 | permission: 事件响应权限 |
| 772 | handlers: 事件处理函数列表 |
| 773 | temp: 是否为临时事件响应器(仅执行一次) |
| 774 | expire_time: 事件响应器最终有效时间点,过时即被删除 |
| 775 | priority: 事件响应器优先级 |
| 776 | block: 是否阻止事件向更低优先级传递 |
| 777 | state: 默认 state |
| 778 | """ |
| 779 | final_kwargs = self._get_final_kwargs(kwargs, exclude={"type"}) |
| 780 | matcher = on_shell_command(cmd, aliases=aliases, parser=parser, **final_kwargs) |
| 781 | self.matchers.append(matcher) |
| 782 | return matcher |
| 783 | |
| 784 | def on_regex( |
| 785 | self, pattern: str, flags: int | re.RegexFlag = 0, **kwargs |
no test coverage detected