更新时间:2022-02-24 GMT+08:00

绑定设备通知

典型场景

第三方应用在物联网平台订阅了绑定设备通知后(订阅的通知类型为bindDevice),当直连设备接入并绑定物联网平台时,平台会向第三方应用推送通知消息。

接口功能

支持物联网平台向订阅了绑定设备通知的第三方应用推送通知消息。

注意事项

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

接口描述

回调地址

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

回调接口

def handleBindDevice(self)

接口所属类

PushMessageReceiver

参数说明

入参是request.json

参数

必选/可选

类型

位置

描述

nbdDTO

必选

NotifyBindDeviceDTO

body

见下表NotifyBindDeviceDTO的描述。

NotifyBindDeviceDTO

参数

必选/可选

类型

位置

描述

notifyType

必选

String

body

通知类型,取值:“bindDevice”

deviceId

必选

String

body

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

resultCode

必选

String

body

绑定结果,取值:“expired/succeeded”

deviceInfo

可选

DeviceInfo

body

设备信息,具体参见DeviceInfo结构体。

DeviceInfo结构体说明:

参数

必选/可选

类型

位置

描述

nodeId

必选

String(256)

body

标识设备的唯一ID。

name

可选

String(256)

body

设备名称。

description

可选

String(2048)

body

设备的描述信息。

manufacturerId

可选

String(256)

body

厂商ID,唯一标识一个厂商。

manufacturerName

可选

String(256)

body

厂商名称。

mac

可选

String(256)

body

设备的MAC地址。

location

可选

String(2048)

body

设备的位置信息。

deviceType

可选

String(256)

body

设备类型,大驼峰命名方式,如MultiSensor、ContactSensor、CameraGateway。

model

可选

String(256)

body

设备的型号。

swVersion

可选

String(256)

body

设备的软件版本。

Z-Wave:主版本号.次版本号,如:1.1。

fwVersion

可选

String(256)

body

设备的固件版本。

hwVersion

可选

String(256)

body

设备的硬件版本。

protocolType

可选

String(256)

body

设备使用的协议类型: Z-Wave,ZigBee,WPS。

bridgeId

可选

String(256)

body

Bridge标识,表示设备通过哪个Bridge接入物联网平台。

status

可选

String

body

设备的状态,表示设备是否在线,取值范围:“ONLINE”“OFFLINE”“INBOX”“ABNORMAL”

statusDetail

可选

String(256)

body

设备的状态详情,status条件取值,取值查看status和statusDetail

mute

可选

String

body

表示设备是否处于冻结状态,即设备上报数据时,平台是否会管理和保存。

  • “TRUE”:冻结状态
  • “FALSE”:非冻结状态

supportedSecurity

可选

String

body

表示设备是否支持安全模式。

  • “TRUE”:支持安全模式
  • “FALSE”:不支持安全模式

isSecurity

可选

String

body

表示设备当前是否启用安全模式。

  • “TRUE”:启用
  • “FALSE”:未启用

signalStrength

可选

String(256)

body

设备的信号强度。

sigVersion

可选

String(256)

body

设备的sig版本。

serialNumber

可选

String(256)

body

设备的序列号。

batteryLevel

可选

String(256)

body

设备的电池电量。

status和statusDetail:

status

statusDetail

OFFLINE

NONE CONFIGURATION_PENDING

ONLINE

NONE COMMUNICATION_ERROR CONFIGURATION_ERROR BRIDGE_OFFLINE FIRMWARE_UPDATING DUTY_CYCLE NOT_ACTIVE

说明:

设备向物联网平台上报设备状态时需要status、statusDetail成对上报。statusDetail建议仅用作显示,不建议用于逻辑判断。

响应参数

Status Code: 200 OK

请求示例

Method: POST
request: {callbackUrl}
Header:
Content-Type:application/json
Body:
{
    "notifyType":"bindDevice",
    "deviceId":"*****",
    "resultCode":"succeeded",
    "deviceInfo":{
        "name":"Sensor_12",
        "manufacturer":"wulian",
        "deviceType":90,
        "model":"90",
        "mac":"****************",
        "swVersion":"…",
        "fwVersion":"…",
        "hwVersion":"…",
        "protocolType":"zigbee",
        "description":"smockdetector",
        "nodeType":"GATEWAY"
    }
}

响应示例

response:
Status Code: 200 OK