更新时间:2024-02-28 GMT+08:00
分享

产品添加通知

接口说明

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

注意事项

应用服务器收到推送消息时,请务必返回响应码。

URI

请求方法

POST

URI

应用服务器创建产品添加通知规则时的Url决定(HTTP),AMQP通道不需要url

传输协议

HTTPS

请求参数

名称

必选/可选

类型

位置

说明

resource

必选

String

Body

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

event

必选

String

Body

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

event_time

必选

String

Body

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

event_time_ms

可选

String

Body

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

request_id

可选

String

Body

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

notify_data

必选

ProductUpdateNotifyData Object

Body

参数说明:推送消息。

表1 ProductUpdateNotifyData

名称

必选/可选

类型

说明

body

必选

Product Object

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

表2 Product

名称

必选/可选

类型

说明

app_id

可选

String

参数说明:资源空间ID。

app_name

可选

String

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

product_id

可选

String

参数说明:产品ID,用于唯一标识一个产品,在物联网平台创建产品后由平台分配获得。

name

可选

String

参数说明:产品名称。

device_type

可选

String

参数说明:设备类型。

protocol_type

可选

String

参数说明:设备使用的协议类型。取值范围:MQTT,CoAP,HTTP,HTTPS,Modbus,ONVIF。

data_format

可选

String

参数说明:设备上报数据的格式,取值范围:json,binary。

manufacturer_name

可选

String

参数说明:厂商名称。

industry

可选

String

参数说明:设备所属行业。

description

可选

String

参数说明:产品的描述信息。

service_capabilities

可选

List<ServiceCapability>

参数说明:设备的服务能力列表。

create_time

可选

String

参数说明:在物联网平台创建产品的时间,格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。

表3 ServiceCapability

名称

必选/可选

类型

说明

service_id

必选

String

参数说明:设备的服务ID。

service_type

必选

String

参数说明:设备的服务类型。

properties

可选

List<ServiceProperty>

参数说明:设备服务支持的属性列表。

commands

可选

List<ServiceCommand>

参数说明:设备服务支持的命令列表。

events

可选

List<ServiceEvent>

参数说明:设备服务支持的事件列表。

description

可选

String

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

option

可选

String

参数说明:指定设备服务是否必选。Master(主服务), Mandatory(必选服务), Optional(可选服务),目前本字段为非功能性字段,仅起到标识作用。默认为Optional(可选服务)。

表4 ServiceProperty

名称

必选/可选

类型

说明

property_name

必选

String

参数说明:设备属性名称。

required

可选

Boolean

参数说明:设备属性是否必选。默认为false。

data_type

必选

String

参数说明:设备属性的数据类型。取值范围:int,long,decimal,string,DateTime,jsonObject,enum,boolean,string list。

enum_list

可选

List<String>

参数说明:设备属性的枚举值列表。

min

可选

String

参数说明:设备属性的最小值。

max

可选

String

参数说明:设备属性的最大值。

max_length

可选

Integer

参数说明:设备属性的最大长度。

step

可选

Double

参数说明:设备属性的步长。

unit

可选

String

参数说明:设备属性的单位。

method

必选

String

参数说明:设备属性的访问模式。取值范围:RWE,RW,RE,WE,E,W,R。

  • R:属性值可读
  • W:属性值可写
  • E:属性值可订阅,即属性值变化时上报事件。

description

可选

String

参数说明:设备属性的描述。

default_value

可选

Object

参数说明:设备属性的默认值。如果设置了默认值,使用该产品创建设备时,会将该属性的默认值写入到该设备的设备影子预期数据中,待设备上线时将该属性默认值下发给设备。

表5 ServiceCommand

名称

必选/可选

类型

说明

command_name

必选

String

参数说明:设备命令名称。

paras

可选

List<ServiceCommandPara>

参数说明:设备命令的参数列表。

responses

可选

List<ServiceCommandResponse>

参数说明:设备命令的响应列表。

表6 ServiceCommandPara

名称

必选/可选

类型

说明

para_name

必选

String

参数说明:参数的名称。

required

可选

Boolean

参数说明:参数是否必选。默认为false。

data_type

必选

String

参数说明:参数的数据类型。取值范围:int,long,decimal,string,DateTime,jsonObject,enum,boolean,string list。

enum_list

可选

List<String>

参数说明:参数的枚举值列表。

min

可选

String

参数说明:参数的最小值。

max

可选

String

参数说明:参数的最大值。

max_length

可选

Integer

参数说明:参数的最大长度。

step

可选

Double

参数说明:参数的步长。

unit

可选

String

参数说明:参数的单位。

description

可选

String

参数说明:参数的描述。

表7 ServiceCommandResponse

名称

必选/可选

类型

说明

paras

可选

List<ServiceCommandPara>

参数说明:设备命令响应的参数列表。

response_name

必选

String

参数说明:设备命令响应名称。

表8 ServiceEvent

名称

必选/可选

类型

说明

event_type

必选

String

参数说明:设备事件类型。

paras

可选

List<ServiceCommandPara>

参数说明:设备事件的参数列表。

请求示例

POST https://{Endpoint}应用服务器创建产品添加通知规则时的Url决定(HTTP),AMQP通道不需要url
Content-Type: application/json

{
  "resource" : "product",
  "event" : "create",
  "event_time" : "20151212T121212Z",
  "event_time_ms" : "2015-12-12T12:12:12.000Z",
  "request_id" : "3fe58d5e-8697-4849-a165-7db128f7e776",
  "notify_data" : {
    "body" : {
      "app_name" : "testAPP01",
      "protocol_type" : "CoAP",
      "data_format" : "binary",
      "service_capabilities" : [ {
        "service_type" : "temperature",
        "service_id" : "temperature",
        "description" : "temperature",
        "properties" : [ {
          "unit" : "centigrade",
          "min" : "1",
          "method" : "R",
          "max" : "100",
          "data_type" : "decimal",
          "description" : "force",
          "step" : 0.1,
          "default_value" : {
            "color" : "red",
            "size" : 1
          },
          "enum_list" : [ "string" ],
          "required" : true,
          "property_name" : "temperature",
          "max_length" : 100
        } ],
        "commands" : [ {
          "command_name" : "reboot",
          "responses" : [ {
            "response_name" : "ACK",
            "paras" : [ {
              "unit" : "km/h",
              "min" : "1",
              "max" : "100",
              "para_name" : "force",
              "data_type" : "string",
              "description" : "force",
              "step" : 0.1,
              "enum_list" : [ "string" ],
              "required" : false,
              "max_length" : 100
            } ]
          } ],
          "paras" : [ {
            "unit" : "km/h",
            "min" : "1",
            "max" : "100",
            "para_name" : "force",
            "data_type" : "string",
            "description" : "force",
            "step" : 0.1,
            "enum_list" : [ "string" ],
            "required" : false,
            "max_length" : 100
          } ]
        } ],
        "events" : [ {
          "event_type" : "reboot",
          "paras" : [ {
            "unit" : "km/h",
            "min" : "1",
            "max" : "100",
            "para_name" : "force",
            "data_type" : "string",
            "description" : "force",
            "step" : 0.1,
            "enum_list" : [ "string" ],
            "required" : false,
            "max_length" : 100
          } ]
        } ],
        "option" : "Mandatory"
      } ],
      "create_time" : "20190303T081011Z",
      "product_id" : "5ba24f5ebbe8f56f5a14f605",
      "name" : "Thermometer",
      "description" : "this is a thermometer produced by Huawei",
      "device_type" : "Thermometer",
      "industry" : "smartCity",
      "manufacturer_name" : "ABC",
      "app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka"
    }
  }
}

响应示例

Status Code: 200 OK

分享:

    相关文档

    相关产品