注册一个消息事件响应器,并且当消息以指定命令开头时响应。 命令匹配规则参考: `命令形式匹配 `_ 参数: cmd: 指定命令内容 rule: 事件响应规则 aliases: 命令别名 force_whitespace: 是否强制命令后必须有指定空白符 permission: 事件响应权限 handlers: 事件处理函数列表 temp: 是否为临时事件响应器(仅执行一次) expire_time:
(
cmd: str | tuple[str, ...],
rule: Rule | T_RuleChecker | None = None,
aliases: set[str | tuple[str, ...]] | None = None,
force_whitespace: str | bool | None = None,
_depth: int = 0,
**kwargs,
)
| 313 | |
| 314 | |
| 315 | def on_command( |
| 316 | cmd: str | tuple[str, ...], |
| 317 | rule: Rule | T_RuleChecker | None = None, |
| 318 | aliases: set[str | tuple[str, ...]] | None = None, |
| 319 | force_whitespace: str | bool | None = None, |
| 320 | _depth: int = 0, |
| 321 | **kwargs, |
| 322 | ) -> type[Matcher]: |
| 323 | """注册一个消息事件响应器,并且当消息以指定命令开头时响应。 |
| 324 | |
| 325 | 命令匹配规则参考: `命令形式匹配 <rule.md#command-command>`_ |
| 326 | |
| 327 | 参数: |
| 328 | cmd: 指定命令内容 |
| 329 | rule: 事件响应规则 |
| 330 | aliases: 命令别名 |
| 331 | force_whitespace: 是否强制命令后必须有指定空白符 |
| 332 | permission: 事件响应权限 |
| 333 | handlers: 事件处理函数列表 |
| 334 | temp: 是否为临时事件响应器(仅执行一次) |
| 335 | expire_time: 事件响应器最终有效时间点,过时即被删除 |
| 336 | priority: 事件响应器优先级 |
| 337 | block: 是否阻止事件向更低优先级传递 |
| 338 | state: 默认 state |
| 339 | """ |
| 340 | |
| 341 | commands = {cmd} | (aliases or set()) |
| 342 | kwargs.setdefault("block", False) |
| 343 | return on_message( |
| 344 | command(*commands, force_whitespace=force_whitespace) & rule, |
| 345 | **kwargs, |
| 346 | _depth=_depth + 1, |
| 347 | ) |
| 348 | |
| 349 | |
| 350 | def on_shell_command( |
no test coverage detected