示例
熔炉(furnace) 数据源包含 3 个字段,我们需要根据温度阈值对消息进行路由:
- 若 温度(temp)> 85 → 路由至 输出 1(Output 1)
- 若 温度(temp)≤ 85 → 路由至 输出 2(Output 2)
{
"furnace": {
"temp": 86,
"humidity": 64,
"pressure": 80
}
}
需使用的节点
本示例中,我们使用 switch 节点根据条件对消息进行路由。
| 参数(Parameter) | 说明(Description) |
|---|---|
| 属性(Property) | 需评估的属性路径。常用 |
| 规则(Rules) | 一组评估规则,每条规则对应一个输出端口。 |
| 类型(Type) | 比较的数据类型:数字(number)、字符串(string)、布尔值(boolean)、JSONata 等。 信息 确保数值比较不会被当作字符串比较处理。 |
| 值(Value) | 比较的目标值来源:常量值(如 85)、
|
| 检查所有规则(checking all rules) | 按顺序评估所有规则。若消息匹配多条规则,会发送至多个输出端口。 |
| 找到第一个匹配后停止(Stop after first match) | 找到第一个匹配规则后停止评估,消息仅发送至一个输出端口。 |
| 重建消息序列(recreate message sequences) | 启用后,保留并重建消息序列元数据(msg.parts)——通常由拆分(split)节点生成—— 确保消息序列在分支后仍能保持完整。 |
如何筛选数据?
- 在 事件流程 中添加一个
mqtt in节点,获取平台中的数据。 - 拖拽一个
switch节点并配置其属性。
- 在
switch节点的每个输出端口分别连接一个debug节点。 - 触发流程并查看结果。
