实例8-数据实时转发到指定API
# 实例简介
本例通过IoT提供的数据实时转发功能,将关联设备的数据实时发送到指定的接口中。
# 预期效果
- 设备数据实时转发到指定的API。
- 支持四种数据内容转发:设备上下线消息、报警消息、关键数据、原始数据。
# 创建转发规则
# 规则列表
点击“搜索引擎”导航,点击数据转发规则,进入到规则列表页面,点击创建按钮。
输入数据接收的API名称,URL,备注,选择要转发的数据内容。
保存后,生成一条转发规则,后期可以点击编辑进行修订。
# 关联产品
选择此规则适用的产品,可以支持产品多选,选中某个产品后,这个产品的设备都会执行此规则。
# 关联项目
选择此规则适用的项目,可以支持项目多选,选中某个项目后,这个项目里的设备都会执行此规则。
# API收取数据
开启API服务,设备上报数据后,API可立即收取数据
客户自行启动API服务,本例中仅打印收到的数据。
# 数据格式说明
# 1、设备状态数据
- 上线:{"CMD":"ONLINE","MAC":"63121072126001","payload":"1"}
- 下线:{"CMD":"ONLINE","MAC":"63121072126001","payload":"0"}
# 2、设备报警数据
- 报警:{"CMD":"ALARM","MAC":"63121072126001","payload":"温度过高 120度"}
# 3、设备关键数据
- 关键数据:{"CMD":"KEY","MAC":"63121072126001","payload":"{"update_id":1739177865,"pick_time":"2025-02-10 16:57:45","data":[["0_0x0003","温度",120,120]]}"}
说明:只有设定了产品的关键数据后才会转发关键数据,设置方法参见:关键数据 (opens new window)
关键数据在payload.data中。
# 4、设备原始数据
如果设备使用TCP或者MQTT协议上报,转发命令字为:"CMD":"RAW",如果设备使用HTTP协议上报,转发命令字为:"CMD":"HTTP_RAW"。
如果设备上报的数据是HEX,需要对paylaod做base64解码后获取原始HEX数据。
- TCP/MQTT发送HEX数据:{"CMD":"RAW","MAC":"63121072126001","payload":"ABEieA=="}
- HTTP发送字符串数据:{"CMD":"HTTP_RAW","MAC":"63121072126001","payload":"{"key1":"this is a test"}"}