跳到主要内容

路由类型

在 Monoceros 里,命令系统本身不直接写业务逻辑。命中某个节点之后,会通过 route 把执行权交给真正的目标。

当前支持的三种路由

路由类型说明适合场景
script路由到 Fluxon 脚本大部分服主自定义逻辑
action / workflow路由到动作工作流需要多步骤编排、延迟、分支时
handler路由到强类型处理器复杂或高性能的内建逻辑

script 路由

route:
type: script
value: command.example.reload

这是最常见的写法。命令命中后,直接调用对应脚本 ID。

workflow 路由

route:
type: workflow
value: command.example.startup

如果你希望命令不是单步执行,而是进入一个动作工作流,就用这类路由。

actionworkflow 在实际使用里都可以理解为“路由到动作工作流”。

handler 路由

route:
type: handler
value: builtin.admin.reload

这种写法更偏高级用法。它会把命令交给一个已注册的强类型处理器执行。

什么时候该选哪种路由

优先选 script

如果你只是想:

  • 读参数
  • 调一个脚本
  • 返回结果

那就优先用 script,维护成本最低。

需要流程编排时选 workflow

如果你要做:

  • 先判断,再执行
  • 延迟继续执行
  • 分支跳转
  • 多步动作复用

那就选 workflow

只有内建逻辑才考虑 handler

handler 更适合框架内置能力或你已经注册好的扩展处理器。对于纯服主配置场景,一般不需要优先考虑它。

路由模型的统一性

Monoceros 不只是命令系统在用这套路由模型。分发器、调度、数据包系统也都采用了类似设计。

这意味着你可以把同一套脚本或工作流复用到不同入口里:

  • 命令触发
  • 事件触发
  • 定时触发
  • 数据包触发

如果你习惯了这套路由方式,整套框架会非常顺手。