什么是规则链?
在 ThingsBoard 中,规则链(Rule Chain)是用于定义消息处理逻辑的核心机制。 它由多个规则节点(Rule Nodes)组成,每个节点执行特定操作(如过滤、转换、动作等),并通过连接线构成数据流图。
规则链使得开发者无需编写复杂代码,即可实现设备数据的路由、告警触发、外部系统集成等功能。
规则链的基本结构
- 根规则链(Root Rule Chain):默认入口,所有设备消息首先进入此链。
- 子规则链(Sub Rule Chains):可被其他规则链调用,实现逻辑复用。
- 规则节点(Rule Nodes):执行具体任务,如:
- 过滤器节点(Filter)
- 转换器节点(Transformer)
- 动作节点(Action)
- 外部调用节点(External Call)
典型应用场景
- 设备数据清洗:丢弃无效或异常数据。
- 告警生成:当温度超过阈值时发送通知。
- 数据转发:将消息推送至 Kafka、MQTT 或 REST API。
- 设备联动:一个设备状态变化触发另一个设备动作。
简单示例:温度告警规则链
流程如下:
设备上报 → [过滤:是否为温度数据?] → 是 → [判断:temp > 30?] → 是 → [发送邮件告警]
↓否 ↓否
继续处理 忽略
在 ThingsBoard 界面中,可通过拖拽节点并配置条件轻松实现上述逻辑。