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

NB设备命令状态变化通知

典型场景

第三方应用通过物联网平台创建设备命令时,如果设置了callbackurl回调地址,当命令状态变化时(执行失败,执行成功,超时,发送,已送达),平台会向第三方应用推送通知消息。

接口功能

支持物联网平台在命令状态发生变化时向第三方应用推送通知消息。

注意事项

  1. 应用在创建设备命令需要设置回调地址为接口描述中的回调地址,回调地址中的server与port为应用服务器公网地址与服务器配置中指定的端口。
  2. 应用通过PushMessageReceiver类并重写回调接口接收推送消息的内容。
  3. 如果回调地址不是应用服务器本身的地址,则第三方应用需要自己实现原始回调接口。

接口描述

回调地址

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

回调接口

def handleNBCommandStateChanged(self)

接口所属类

PushMessageReceiver

参数说明

入参是request.json

参数

必选/可选

类型

位置

描述

nNBcscDTO

必选

NotifyNBCommandStatusChangedDTO

body

见下表NotifyNBCommandStatusChangedDTO的描述。

NotifyNBCommandStatusChangedDTO

参数

必选/可选

类型

位置

描述

deviceId

必选

String

body

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

commandId

必选

String

body

命令ID,在创建设备命令时由平台生成的。

result

必选

NBCommandResult

body

详见下表NBCommandResult结构说明

NBCommandResult结构说明

参数

必选/可选

类型

位置

描述

resultCode

必选

String

body

命令状态结果。

  • “SENT”,平台已下发给设备,但还未收到设备响应。
  • “DELIVERED”,平台收到设备响应,命令已到达设备。
  • “SUCCESS”,平台收到命令结果上报,且上报的结果是成功。
  • “FAIL”,平台收到命令结果上报,且上报的结果是失败。

resultDetail

必选

ObjectNode

body

设备上报命令结果上报时,携带的自定义字段。

响应参数

Status Code: 200 OK

请求示例

Method: POST
request: {callbackUrl}
Header:
Content-Type:application/json
Body:
{
    "deviceId":"*********",
    "commandId":"***********",
    "result":{
        "resultCode":"DELIVERED",
        "resultDetail":"None"
    }
}

正常响应示例

response:
Status Code: 200 OK

相关文档