产品更新通知
接口说明
应用服务器在调用物联网平台的创建规则触发条件(Resource:product,Event:update)、创建规则动作、修改规则触发条件接口配置并激活规则后,当物联网平台中的产品更新时,物联网平台会向应用服务器推送通知消息。
注意事项
应用服务器收到推送消息时,请务必返回响应码。
URI
| 请求方法 | POST |
|---|---|
| URI | 应用服务器创建产品更新通知规则时的Url决定(HTTP),AMQP通道不需要url |
| 传输协议 | HTTPS |
请求参数
| 名称 | 必选/可选 | 类型 | 位置 | 说明 |
|---|---|---|---|---|
| resource | 必选 | String | Body | 参数说明:订阅的资源名称,取值为product。 |
| event | 必选 | String | Body | 参数说明:订阅的资源事件,取值为update。 |
| event_time | 必选 | String | Body | 参数说明:资源事件生成时间,格式:yyyyMMdd'T'HHmmss'Z' UTC字符串,如:20151212T121212Z。 |
| notify_data | 必选 | ProductUpdateNotifyData Object | Body | 参数说明:推送消息。 |
| 名称 | 必选/可选 | 类型 | 说明 |
|---|---|---|---|
| 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。 |
| 名称 | 必选/可选 | 类型 | 说明 |
|---|---|---|---|
| service_id | 必选 | String | 参数说明:设备的服务ID。 |
| service_type | 必选 | String | 参数说明:设备的服务类型。 |
| properties | 可选 | List<ServiceProperty> | 参数说明:设备服务支持的属性列表。 |
| commands | 可选 | List<ServiceCommand> | 参数说明:设备服务支持的命令列表。 |
| events | 可选 | List<ServiceEvent> | 参数说明:设备服务支持的事件列表。 |
| description | 可选 | String | 参数说明:设备服务的描述信息。 |
| option | 可选 | String | 参数说明:指定设备服务是否必选。Master(主服务), Mandatory(必选服务), Optional(可选服务),目前本字段为非功能性字段,仅起到标识作用。默认为Optional(可选服务)。 |
| 名称 | 必选/可选 | 类型 | 说明 |
|---|---|---|---|
| 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。
|
| description | 可选 | String | 参数说明:设备属性的描述。 |
| default_value | 可选 | Object | 参数说明:设备属性的默认值。如果设置了默认值,使用该产品创建设备时,会将该属性的默认值写入到该设备的设备影子预期数据中,待设备上线时将该属性默认值下发给设备。 |
| 名称 | 必选/可选 | 类型 | 说明 |
|---|---|---|---|
| command_name | 必选 | String | 参数说明:设备命令名称。 |
| paras | 可选 | List<ServiceCommandPara> | 参数说明:设备命令的参数列表。 |
| responses | 可选 | List<ServiceCommandResponse> | 参数说明:设备命令的响应列表。 |
| 名称 | 必选/可选 | 类型 | 说明 |
|---|---|---|---|
| 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 | 参数说明:参数的描述。 |
| 名称 | 必选/可选 | 类型 | 说明 |
|---|---|---|---|
| paras | 可选 | List<ServiceCommandPara> | 参数说明:设备命令响应的参数列表。 |
| response_name | 必选 | String | 参数说明:设备命令响应名称。 |
| 名称 | 必选/可选 | 类型 | 说明 |
|---|---|---|---|
| event_type | 必选 | String | 参数说明:设备事件类型。 |
| paras | 可选 | List<ServiceCommandPara> | 参数说明:设备事件的参数列表。 |
请求示例
POST https://{Endpoint}应用服务器创建产品更新通知规则时的Url决定(HTTP),AMQP通道不需要url
Content-Type: application/json
{
"resource" : "product",
"event" : "update",
"event_time" : "20151212T121212Z",
"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
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.