更新时间:2024-05-14 GMT+08:00

设备更新通知

功能介绍

应用服务器在调用物联网平台的创建规则触发条件(Resource:device,Event:update)、创建规则动作修改规则触发条件接口配置并激活规则后,当物联网平台中的设备更新时,物联网平台会向应用服务器推送通知消息。

URI

POST /由应用服务器创建设备更新通知规则的转发目标决定

请求参数

表1 请求Body参数

参数

是否必选

参数类型

描述

resource

String

参数说明:订阅的资源名称,取值为device。

event

String

参数说明:订阅的资源事件,取值为update。

event_time

String

参数说明:资源事件生成时间,格式:yyyyMMdd'T'HHmmss'Z' UTC字符串,如:20151212T121212Z。若需要显示本地时区,您需要自己进行时间转换。

event_time_ms

String

参数说明:资源事件生成时间,格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z' UTC字符串,如:2015-12-12T12:12:12.000Z。若需要显示本地时区,您需要自己进行时间转换。

request_id

String

参数说明:消息ID,由设备侧指定或平台生成,用于跟踪业务流程。

notify_data

DeviceCreateOrUpdateNotifyData object

参数说明:推送消息。

表2 DeviceCreateOrUpdateNotifyData

参数

是否必选

参数类型

描述

body

QueryDeviceBase object

参数说明:推送消息内容。

表3 QueryDeviceBase

参数

是否必选

参数类型

描述

app_id

String

参数说明:资源空间ID。

最大长度:36

app_name

String

参数说明:资源空间名称。

device_id

String

参数说明:设备ID,用于唯一标识一个设备。在注册设备时直接指定,或者由物联网平台分配获得。由物联网平台分配时,生成规则为"product_id" + "_" + "node_id"拼接而成。

最大长度:256

node_id

String

参数说明:设备标识码,通常使用IMEI、MAC地址或Serial No作为nodeId。

最大长度:64

gateway_id

String

参数说明:网关ID,用于标识设备所属的父设备,即父设备的设备ID。当设备是直连设备时,gateway_id与设备的device_id一致。当设备是非直连设备时,gateway_id为设备所关联的父设备的device_id。

最大长度:256

device_name

String

参数说明:设备名称。

最大长度:256

node_type

String

参数说明:设备节点类型。

  • ENDPOINT:非直连设备。

  • GATEWAY:直连设备或网关。

  • UNKNOWN:未知。

description

String

参数说明:设备的描述信息。

最大长度:2048

fw_version

String

参数说明:设备的固件版本。

最大长度:256

sw_version

String

参数说明:设备的软件版本。

最大长度:256

device_sdk_version

String

参数说明:设备的SDK版本。

最大长度:256

auth_info

AuthInfo object

参数说明:设备的接入认证信息。

product_id

String

参数说明:设备关联的产品ID,用于唯一标识一个产品模型。

product_name

String

参数说明:设备关联的产品名称。

status

String

参数说明:设备的状态。

  • ONLINE:设备在线。

  • OFFLINE:设备离线。

  • ABNORMAL:设备异常。

  • INACTIVE:设备未激活。

  • FREEZED:设备冻结。

create_time

String

参数说明:在物联网平台注册设备的时间。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

tags

Array of TagV5DTO objects

参数说明:设备的标签列表。

extension_info

Object

参数说明:设备扩展信息。用户可以自定义任何想要的扩展信息,如果在创建设备时为子设备指定该字段,将会通过MQTT接口“平台通知网关子设备新增“将该信息通知给网关。

表4 AuthInfo

参数

是否必选

参数类型

描述

auth_type

String

参数说明:鉴权类型。支持密钥认证接入(SECRET)和证书认证接入(CERTIFICATES)两种方式。使用密钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATES)填写fingerprint字段,不填写auth_type默认为密钥认证接入方式(SECRET)

secure_access

Boolean

参数说明:指设备是否通过安全协议方式接入,默认值为true。

  • true:通过安全协议方式接入。

  • false:通过非安全协议方式接入。

缺省值:true

timeout

Integer

参数说明:设备验证码的有效时间,单位:秒,默认值:0。若设备在有效时间内未接入物联网平台并激活,则平台会删除该设备的注册信息。若设置为“0”,则表示设备验证码不会失效(建议填写为“0”)。注意:只有注册设备接口或者修改设备接口修改timeout时返回该参数。

最小值:0

最大值:2147483647

缺省值:0

表5 TagV5DTO

参数

是否必选

参数类型

描述

tag_key

String

参数说明:标签键,在同一资源下标签键唯一。绑定资源时,如果设置的键已存在,则将覆盖之前的标签值。如果设置的键值不存在,则新增标签。

tag_value

String

参数说明:标签值。

响应参数

请求示例

设备更新通知示例:

设备更新通知

{
  "resource" : "device",
  "event" : "update",
  "event_time" : "20151212T121212Z",
  "event_time_ms" : "2015-12-12T12:12:12.000Z",
  "request_id" : "3fe58d5e-8697-4849-a165-7db128f7e776",
  "notify_data" : {
    "body" : {
      "device_sdk_version" : "C_v0.5.0",
      "device_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f",
      "create_time" : "20190303T081011Z",
      "description" : "watermeter device",
      "auth_info" : {
        "auth_type" : "SECRET",
        "secure_access" : true,
        "timeout" : 300
      },
      "product_name" : "Thermometer",
      "gateway_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f",
      "sw_version" : "1.1.0",
      "tags" : [ {
        "tag_value" : "testTagValue",
        "tag_key" : "testTagName"
      } ],
      "extension_info" : {
        "aaa" : "xxx",
        "bbb" : 0
      },
      "app_name" : "testAPP01",
      "device_name" : "dianadevice",
      "node_type" : "ENDPOINT",
      "product_id" : "b640f4c203b7910fc3cbd446ed437cbd",
      "app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka",
      "fw_version" : "1.1.0",
      "node_id" : "ABC123456789",
      "status" : "INACTIVE"
    }
  }
}

响应示例

状态码

状态码

描述

200

OK

错误码

请参见错误码