更新时间:2023-04-13 GMT+08:00
分享

批量设备数据变化通知

典型场景

第三方应用在物联网平台订阅了设备数据批量变化通知后(订阅的通知类型为deviceDatasChanged),当设备同时上报多个服务属性数据时,平台会向第三方应用推送通知消息。

接口功能

支持物联网平台向订阅了设备数据批量变化通知的第三方应用推送通知消息。

注意事项

  1. 应用在订阅平台业务数据时需要订阅接口描述中的指定回调地址,回调地址中的server与port为应用服务器公网地址与服务器配置中指定的端口。
  2. 应用通过PushMessageReceiver类并重写回调接口接收推送消息的内容。
  3. 如果回调地址不是应用服务器本身的地址,则第三方应用需要自己实现原始回调接口,接口内容请参考物联网平台API参考中的消息推送章节。

接口描述

回调地址

https://server:port/v1.0.0/messageReceiver

回调接口

def handleDeviceDatasChanged(self)

接口所属类

PushMessageReceiver

参数说明

入参是request.json

参数

必选/可选

类型

位置

描述

nddscDTO

必选

NotifyDeviceDatasChangedDTO

body

见下表NotifyDeviceDatasChangedDTO的描述。

NotifyDeviceDatasChangedDTO

参数

必选/可选

类型

位置

描述

notifyType

必选

String

body

通知类型,取值:“deviceDatasChanged”

requestId

必选

String

body

消息的序列号,唯一标识该消息。

deviceId

必选

String

body

设备ID,用于唯一标识一个设备。

gatewayId

必选

String

body

网关ID,用于唯一标识一个网关设备。

services

必选

List<DeviceService>

body

服务列表信息,具体参见DeviceService结构体说明。

DeviceService结构体说明:

参数

必选/可选

类型

位置

描述

serviceId

必选

String

body

服务ID。

serviceType

必选

String

body

服务类型。

data

必选

ObjectNode

body

服务数据信息。

eventTime

必选

String

body

事件上报时间,时间格式:yyyymmddThhmmssZ,例如“20151212T121212Z”

响应参数

Status Code: 200 OK

请求示例

Method: POST
request: {callbackUrl}
Header:
Content-Type:application/json
Body:
{
    "notifyType":"deviceDatasChanged",
    "requestId":"*************",
    "deviceId":"********************************",
    "gatewayId":"*************",
    "service":[
        {
            "serviceId":"Brightness",
            "serviceType":"Brightness",
            "data":{
                "brightness":80
            },
            "eventTime":"20170311T163657Z"
        },
        {
            "serviceId":"Color",
            "serviceType":"Color",
            "data":{
                "value":"red"
            },
            "eventTime":"20170311T163657Z"
        }
    ]
}

正常响应示例

response:
Status Code: 200 OK

相关文档