路由类型
在 Monoceros 里,命令系统本身不直接写业务逻辑。命中某个节点之后,会通过 route 把执行权交给真正的目标。
当前支持的三种路由
| 路由类型 | 说明 | 适合场景 |
|---|---|---|
script | 路由到 Fluxon 脚本 | 大部分服主自定义逻辑 |
action / workflow | 路由到动作工作流 | 需要多步骤编排、延迟、分支时 |
handler | 路由到强类型处理器 | 复杂或高性能的内建逻辑 |
script 路由
route:
type: script
value: command.example.reload
这是最常见的写法。命令命中后,直接调用对应脚本 ID。
workflow 路由
route:
type: workflow
value: command.example.startup
如果你希望命令不是单步执行,而是进入一个动作工作流,就用这类路由。
action 和 workflow 在实际使用里都可以理解为“路由到动作工作流”。
handler 路由
route:
type: handler
value: builtin.admin.reload
这种写法更偏高级用法。它会把命令交给一个已注册的强类型处理器执行。
什么时候该选哪种路由
优先选 script
如果你只是想:
- 读参数
- 调一个脚本
- 返回结果
那就优先用 script,维护成本最低。
需要流程编排时选 workflow
如果你要做:
- 先判断,再执行
- 延迟继续执行
- 分支跳转
- 多步动作复用
那就选 workflow。
只有内建逻辑才考虑 handler
handler 更适合框架内置能力或你已经注册好的扩展处理器。对于纯服主配置场景,一般不需要优先考虑它。
路由模型的统一性
Monoceros 不只是命令系统在用这套路由模型。分发器、调度、数据包系统也都采用了类似设计。
这意味着你可以把同一套脚本或工作流复用到不同入口里:
- 命令触发
- 事件触发
- 定时触发
- 数据包触发
如果你习惯了这套路由方式,整套框架会非常顺手。