该接口用于读取设备属性值。
与设备端进行调试时,存在以下情况:
设备端未在线,响应参数 500,提示设备已离线(client_offline)。
设备端已连接收到平台下发消息未回复,响应参数 500,提示超时(time_out)。
设备端已连接收到平台下发消息后回复,获得设备属性值。
设备端回复Topic如下:
Topic: /{productId}/{deviceId}/properties/read/reply
请求接口
GET /api/device/standard/{deviceId}/property/{property}
请求参数
名称 | 位置 | 类型 | 必选 | 说明 |
---|---|---|---|---|
X-Access-Token | header | string | true | 平台 token |
deviceId | path | string | true | 设备ID |
property | path | string | true | 属性标识 |
响应参数
以200 Response为例,响应参数如下:
名称 | 类型 | 必选 | 约束 | 说明 |
---|---|---|---|---|
» message | string | true | none | 返回信息 |
» result | object | true | none | 返回结果 |
»» 属性id | - | false | none | 属性id:属性值 |
» status | integer | true | none | 响应状态码 |
» timestamp | integer | true | none | 时间戳 |
响应状态码
状态码 | 状态码含义 | 说明 |
---|---|---|
200 | OK | 成功 |
401 | Unauthorized | 登录状态已过期,token不能为空 |
500 | Internal Server Error | 服务器内部异常 |
使用示例
- 平台下发读取设备属性值消息。
Topic: /testMQTT/one/properties/read
方向:下行
json
{
"headers": {
"deviceName":"one",
"productName":"testMQTT",
"productId":"testMQTT",
"_uid":"OIm04h_zw2t7HQTq2BpkKQyPRm6R_bW4",
"creatorId":"1199596756811550720",
"traceparent":"00-97735a1f21d8f77ce96cdd7153fa0802-999fad4636de9896-01"
},
"messageId":"1686621455345332225",
"deviceId":"one",
"timestamp":1690956865522,
"properties":["real_state_net"],
"messageType":"READ_PROPERTY"
}
{
"headers": {
"deviceName":"one",
"productName":"testMQTT",
"productId":"testMQTT",
"_uid":"OIm04h_zw2t7HQTq2BpkKQyPRm6R_bW4",
"creatorId":"1199596756811550720",
"traceparent":"00-97735a1f21d8f77ce96cdd7153fa0802-999fad4636de9896-01"
},
"messageId":"1686621455345332225",
"deviceId":"one",
"timestamp":1690956865522,
"properties":["real_state_net"],
"messageType":"READ_PROPERTY"
}
以上消息中,deviceId为one,要读取的属性为real_state_net。
- 设备端读取属性值后,回复消息。
Topic: /testMQTT/one/properties/read/reply
方向:上行
json
{
"messageId":"1686339679198232577",
"deviceId":"one",
"properties":{
"real_state_net":"1"
},
"success":true
}
{
"messageId":"1686339679198232577",
"deviceId":"one",
"properties":{
"real_state_net":"1"
},
"success":true
}
返回示例
- 200 Response
json
{
"message": "success",
"result": {
"real_state_ram_usage_rate": "1"
},
"status": 200,
"timestamp": 1690889692447
}
{
"message": "success",
"result": {
"real_state_ram_usage_rate": "1"
},
"status": 200,
"timestamp": 1690889692447
}
- 500 Response(设备端超时未响应)
json
{
"message":"超时",
"status":500,
"code":"time_out",
"timestamp":1690956875525
}
{
"message":"超时",
"status":500,
"code":"time_out",
"timestamp":1690956875525
}
- 500 Response(设备已离线)
json
{
"message": "设备已离线",
"status": 500,
"code": "client_offline",
"timestamp": 1690956855460
}
{
"message": "设备已离线",
"status": 500,
"code": "client_offline",
"timestamp": 1690956855460
}