设备 - 属性 - 属性上报

大约 4 分钟

设备 - 属性 - 属性上报

属性上报

sys/{product_id}/{device_id}/thing/properties/up

说明:

设备端用于上报当前属性

示例:

{
  "id": "123",
  "version": "1.0",
  "sys":{
      "ack":0
  },
  "params": {
    "Power": {
      "value": "on",
      "time": 1524448722000
    },
    "WF": {
      "value": 23.6,
      "time": 1524448722000
    }
  },
  "method": "thing.properties.up"
}

字段说明:

参数类型说明
idString消息ID,用于标识每一条Payload,每个消息ID在当前设备中具有唯一性
versionString协议版本号,目前协议版本号唯一取值为1.0。
sysObject扩展功能的参数,其下包含各功能字段。
说明 使用设备端SDK开发时,如果未设置扩展功能,则无此参数,相关功能保持默认配置。
ackIntegersys下的扩展功能字段,表示是否返回响应数据。
  • 1:云端返回响应数据。
  • 0:云端不返回响应数据。
methodString请求方法。例如:thing.properties.up
paramsObject请求参数。如以上示例中,设备上报了的两个属性Power(电源)和WF(工作电流)的信息。具体属性信息,包含属性上报时间(time)和上报的属性值(value)。

若仅传入属性值,无需上传字段timevalueparams示例如下:

"params": {
    "Power": "on",
    "WF": 23.6
}

如果是自定义模块属性,属性标识符格式为${模块标识符}:${属性标识符}(中间为英文冒号)。例如:

"test:Power": {
    "value": "on",
    "time": 1524448722000
}
timeLong属性上报时间戳,类型为UTC毫秒级时间。

该参数为可选字段。根据您的业务场景决定消息中是否带时间戳。如果消息频繁,需根据时间戳判断消息顺序,建议消息中带有时间戳。

  • 若上传time,物联网平台的云端保存上传的时间作为属性上报时间。
  • 若不上传time,物联网平台的云端自动生成属性上报时间并保存。
valueObject上报的属性值。

若不上传time,可不上传value,直接上传参数值即可。

属性上报回复

sys/{product_id}/{device_id}/thing/properties/up/response

成功返回示例:

{
    "code": 200,
    "data": {},
    "id": "123",
    "message": "success",
    "method": "thing.properties.up",
    "version": "1.0"
}

失败返回示例:

{
    "code": 460,
    "data": {},
    "id": "123",
    "message": "request parameter error!",
    "method": "thing.properties.up",
    "version": "1.0"
}

说明

服务端响应属性上报结果

字段说明:

参数类型说明
idString消息ID号,String类型的数字,取值范围0~4294967295,且每个消息ID在当前设备中具有唯一性。
codeInteger结果状态码。 具体参考设备端通用code
说明 物联网平台会对设备上报的属性做校验。通过产品的TSL描述判断上报的属性是否符合定义的属性格式。不合格的属性会直接被过滤掉,并返回失败的错误码。
dataObject请求成功时,返回的数据固定为空。
messageString返回结果信息。请求成功时,返回success。
methodString响应数据对应的请求方法,与请求参数中method相同。
versionString协议版本号,与请求参数中version相同。