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

设备消息确认通知

典型场景

应用服务器在物联网平台订阅了设备消息确认通知后(订阅的通知类型为messageConfirm),当平台向设备下发命令,并收到设备返回的命令确认消息(如命令已送达、已执行等)时,平台会向应用服务器推送通知消息。

仅适用于使用MQTT协议接入的设备,例如集成了AgentLite SDK的设备。

接口功能

支持物联网平台向订阅了设备消息确认通知的应用服务器推送通知消息。

注意事项

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

接口原型

请求方法

POST

请求地址

由应用服务器订阅请求消息中的callbackurl决定。

传输协议

HTTPS/HTTP

请求参数

参数

必选/可选

类型

位置

描述

notifyType

必选

String

body

通知类型,取值:messageConfirm。

header

必选

Header

body

具体参见Header字段

body

必选

ObjectNode

body

根据业务具体定义,确认消息可以携带的状态变化等消息。

Header字段说明:

参数

必选/可选

类型

位置

描述

requestId

必选

String(1-128)

body

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

from

必选

String(1-128)

body

表示消息发布者的地址。

  • 设备发起的请求:/devices/{deviceId}
  • 设备服务发起的请求:/devices/{deviceId}/services/{serviceId}

to

必选

String(1-128)

body

表示消息接收者的地址,To就是订阅请求中的From,如应用服务器的userId。

status

必选

String(1-32)

body

命令状态。

  • sent:已发送
  • delivered:已送达
  • executed:已执行

timestamp

必选

String(1-32)

body

时间戳,时间格式:yyyyMMdd'T'HHmmss'Z',如:20151212T121212Z。

响应参数

Status Code: 200 OK

请求示例

Method: POST
request: {callbackUrl}
Header:
Content-Type: application/json
Body:
{
  "notifyType": "messageConfirm",
  "header": {
    "requestId": "***********",
    "from": "***********",
    "to": "***********",
    "status": "delivered",
    "timestamp": "20151212T121212Z"
  },
  "body": {

  }
}

响应示例

response:
Status Code: 200 OK