Skip to content

获取设备属性值 (GET)

更新时间:

该接口用于读取设备属性值。

与设备端进行调试时,存在以下情况:

  • 设备端未在线,响应参数 500,提示设备已离线(client_offline)。

  • 设备端已连接收到平台下发消息未回复,响应参数 500,提示超时(time_out)。

  • 设备端已连接收到平台下发消息后回复,获得设备属性值。

设备端回复Topic如下:

Topic: /{productId}/{deviceId}/properties/read/reply

请求接口

GET /api/device/standard/{deviceId}/property/{property}

TIP

访问权限:需要登录超级设备管理平台获取token,并校验token

请求参数

名称位置类型必选说明
X-Access-Tokenheaderstringtrue平台 token
deviceIdpathstringtrue设备ID
propertypathstringtrue属性标识

响应参数

以200 Response为例,响应参数如下:

名称类型必选约束说明
» messagestringtruenone返回信息
» resultobjecttruenone返回结果
»» 属性id-falsenone属性id:属性值
» statusintegertruenone响应状态码
» timestampintegertruenone时间戳

响应状态码

状态码状态码含义说明
200OK成功
401Unauthorized登录状态已过期,token不能为空
500Internal Server Error服务器内部异常

使用示例

  1. 平台下发读取设备属性值消息。

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。

  1. 设备端读取属性值后,回复消息。

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
}