OneNET物联网平台03 MQTT产品设备上传数据点
订阅上传结果通知设备可以订阅系统 topic 获取上传数据点结果消息打开MQTT.fx,连接设备,选择Subscribe项,输入订阅topic名称topic 命名规则如下:$sys/{pid}/{device-name}/dp/post/json/+就比如我的是$sys/480701/yuyun-test/dp/post/json/+下图中的两个命令都能获取平台下发到设备的命令设备数据点上传选择P
·
系统topic | 用途 |
---|---|
$sys/{pid}/{device-name}/dp/post/json | 设备上传数据点 |
$sys/{pid}/{device-name}/dp/post/json/accepted | 系统通知"设备上传数据点成功" |
$sys/{pid}/{device-name}/dp/post/json/rejected | 系统通知"设备上传数据点失败" |
订阅上传结果通知
设备可以订阅系统 topic 获取上传数据点结果消息
打开MQTT.fx
,连接设备,选择Subscribe项,输入订阅topic名称
-
topic 命名规则如下(
+
是通配符):$sys/{pid}/{device-name}/dp/post/json/+
就比如我的是$sys/480701/yuyun-test/dp/post/json/+
,可以接收到平台传回的通知
下图中的两个命令都能获取平台下发到设备的命令:
设备数据点上传
选择Publish项,输入发布 topic ,命名规则如下:
$sys/{pid}/{device-name}/dp/post/json
数据内容如下:
{
"id": 123,
"dp": {
"temperatrue": [{
"v": 30,
"t": 1552289676
}],
"power": [{
"v": 4.5,
"t": 1552289676
}],
"status": [{
"v": {
"color": "blue"
},
"t": 1552289677
},
{
"v": {
"color": "red"
},
"t": 1552289678
}
]
}
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
id | int | 是 | 消息ID,大于0的整数,数值范围为,4字节有符号数取值范围 |
dp | object | 是 | 数据点内容,key-value格式,key为数据流名称,value为list格式的一个或者多个数据点值 上例中向temperatrue、power、status三个数据流中上传带时间戳的数据 |
v | - | 是 | 数据点值,可以为int/float/string/object多种格式 |
t | init | 否 | 数据点时间戳,unix时间,单位为秒,若不携带,则系统将以数据到达平台时间作为其数据时间 |
点击Publish后上传数据点到平台,在Subscribe可以看到平台返回的信息
控制台查看数据
进入onenet的控制台查看设备数据流,如下图:就是用MQTT.fx
模拟的设备上传的数据
多上传几次数据,然后点开控制台的数据流,就可以看到该数据流的历史数据
也可以实时刷新(如果设备一直在上传数据,那这里就可以实时显示数据)
更多推荐
已为社区贡献1条内容
所有评论(0)