规则动作总览
一条消息规则由两部分组成:触发条件(规则类型 + 过滤条件)和动作。当设备消息满足触发条件时,平台依次执行规则中配置的动作,实现数据处理与设备联动。
在规则详情页点击「添加操作」,从与规则类型匹配的动作列表中选择:

规则类型与可选动作
平台共提供 6 类规则、29 种动作,各规则类型支持的动作如下。
属性上报预处理
在设备属性上报入库前执行,可修改或补充上报的属性值。选择规则类型时可参考:

| 动作 | 说明 |
|---|---|
| 预处理函数 | 对属性上报后进行自定义预处理,比如将某些属性转化为更适合可视化图表的属性值。 |
| GPS 位置坐标系转换 | 将 GPS 的 WGS84 原始坐标位置,转换成国内地图服务商支持的坐标体系,支持百度地图、高德地图、腾讯地图、搜狗地图等。 |
| GPS 位置电子围栏检查(圆形) | 检查 GPS 位置是否处于电子围栏中,支持圆形围栏。 |
| GPS 位置电子围栏检查(多边形) | 检查 GPS 位置是否处于电子围栏中,支持多边形围栏。 |
| 计算抄表周期累计值 | 通过电表/水表上报的总累计值,实时生成当日、当月的周期累计值。 |
属性上报
在设备属性上报完成后执行,用于属性驱动的联动控制与数据转发。
| 动作 | 说明 |
|---|---|
| 向指定设备下发属性 | 向项目中的指定设备下发属性值,实现便捷的设备联动控制。 |
| 向当前设备下发属性 | 属性上报触发云平台向当前设备下发属性,属性内容可通过云函数动态构造。 |
| 向指定设备更新云端属性 | 向项目中的指定设备更新云端属性值,不下发到设备。 |
| 向当前设备更新云端属性 | 向当前设备更新云端属性,不下发到设备。 |
| 向指定设备下发命令 | 向项目中的指定设备下发命令,实现便捷的设备联动控制。 |
| 向当前设备下发命令 | 属性上报触发云平台向当前设备下发命令,命令内容可通过云函数动态构造。 |
| 向指定设备下发自定义数据 | 向项目中的指定设备下发自定义数据,使用自定义数据流,支持二进制、文本、JSON 等格式。 |
| 向当前设备下发自定义数据 | 属性上报触发自定义数据下发,数据内容可通过云函数动态构造,支持二进制、文本、JSON 等格式。 |
| 推送到外部 MQTT | 将设备上报的属性值转发到外部的 MQTT Broker,实现更多基于实时数据的应用。 |
| 推送到外部 URL | 将设备上报的属性值转发到外部的 URL,方便 Web 应用获取设备实时数据。 |
| 向当前网关上报子设备属性 | 将属性上报转换为网关子设备属性上报。 |
| 自定义云函数 | 编写基于 Javascript 的云函数,调用内置函数库实现各类操作。 |
属性下发预处理
在平台向设备下发属性之前执行。
| 动作 | 说明 |
|---|---|
| 预处理函数 | 对属性下发进行预处理,比如将属性值转换为硬件设备可读的格式。 |
属性下发
在平台向设备下发属性完成后执行。
| 动作 | 说明 |
|---|---|
| 自定义数据下发函数 | 执行自定义数据下发,可将属性值转换为自定义数据流支持的更多格式。 |
事件上报
在设备事件上报完成后执行,是 OTA 升级与设备联动的常用入口。详细配置见 事件上报规则。
| 动作 | 说明 |
|---|---|
| OTA 升级检查 | 通过设备事件来实现设备 OTA 升级检查,自动关联 OTA 版本库,将需要升级的固件信息下发给设备。 |
| 推送到外部 MQTT | 将设备上报的事件消息转发到外部的 MQTT Broker。 |
| 推送到外部 URL | 将设备上报的事件消息转发到外部的 URL,方便 Web 应用获取设备实时数据。 |
| 向其它设备下发属性 | 向项目中的其它设备下发属性值,实现便捷的设备联动控制。 |
| 向其它设备下发命令 | 向项目中的其它设备下发命令,实现便捷的设备联动控制。 |
| 云函数 | 自定义编写基于 Javascript 的云函数,调用内置函数库实现各类操作。 |
自定义上报
处理设备上报的自定义数据(自定义数据流),将其解析为设备属性或进行转换。相关配置见 自定义数据流。
| 动作 | 说明 |
|---|---|
| Modbus RTU 解析 | 通过可视化配置解析规则,实现对 Modbus RTU 数据上报进行解析,生成设备属性。 |
| 属性解析函数 | 编写 Javascript 云函数,解析自定义上报数据,生成设备的属性集合,实现属性上报。 |
| 网关解析函数 | 编写 Javascript 云函数,解析自定义上报数据,生成网关上报协议,实现云网关。 |
| 向当前设备下发自定义数据 | 通过云函数生成自定义数据,通过指定的自定义数据流下发到当前上报数据的设备。 |
动作的执行
- 一条规则可以添加多个动作,按配置顺序依次执行,每个动作可以单独编辑或删除。
- 动作执行结果记录在规则日志中,可在规则的「日志」页签查看每次执行的命中情况与动作结果。
- 「云函数」类动作使用 Javascript 编写,可调用平台内置函数库,适合复杂的数据处理与协议转换场景。
- 常见的设备联动建议优先使用「下发属性」「下发命令」类动作;需要把数据接入自有系统时优先使用「推送到外部 MQTT / URL」。
