设备消息状态变更通知
功能介绍
应用服务器在调用物联网平台的创建规则触发条件(Resource:device.message.status,Event:update)、创建规则动作、修改规则触发条件接口配置并激活规则后,当设备消息状态变更时,物联网平台会向应用服务器推送通知消息。
URI
POST /由应用服务器创建设备消息状态变更通知规则的转发目标决定
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
resource |
是 |
String |
参数说明:订阅的资源名称,取值为device.message.status。 |
event |
是 |
String |
参数说明:订阅的资源事件,取值为update。 |
event_time |
是 |
String |
参数说明:资源事件生成时间,格式:yyyyMMdd'T'HHmmss'Z' UTC字符串,如:20151212T121212Z。若需要显示本地时区,您需要自己进行时间转换。 |
event_time_ms |
否 |
String |
参数说明:资源事件生成时间,格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z' UTC字符串,如:2015-12-12T12:12:12.000Z。若需要显示本地时区,您需要自己进行时间转换。 |
request_id |
否 |
String |
参数说明:消息ID,由设备侧指定或平台生成,用于跟踪业务流程。 |
notify_data |
是 |
参数说明:推送消息。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
header |
是 |
NotifyDataHeader object |
参数说明:推送消息header。 |
body |
是 |
DeviceMessageStatusUpdate object |
参数说明:推送消息body。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
app_id |
否 |
String |
参数说明:应用ID。 最大长度:256 |
device_id |
否 |
String |
参数说明:设备ID,用于唯一标识一个设备,在注册设备时由物联网平台分配获得。 最大长度:256 |
node_id |
否 |
String |
参数说明:设备标识码,通常使用IMEI、MAC地址或Serial No作为nodeId。 最大长度:256 |
product_id |
否 |
String |
参数说明:产品ID,用于唯一标识一个产品,在注册产品时由物联网平台分配获得。 最大长度:256 |
gateway_id |
否 |
String |
参数说明:网关ID,用于标识一个网关设备。当设备是直连设备时,gatewayId与设备的deviceId一致。当设备是非直连设备时,gatewayId为设备所关联的直连设备(即网关)的deviceId。 最大长度:256 |
tags |
否 |
Array of TagV5DTO objects |
参数说明:要绑定到指定资源的标签列表,标签列表中各项标签键值之间不允许重复,一个资源最多可以绑定10个标签。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
tag_key |
是 |
String |
参数说明:标签键,在同一资源下标签键唯一。绑定资源时,如果设置的键已存在,则将覆盖之前的标签值。如果设置的键值不存在,则新增标签。 |
tag_value |
否 |
String |
参数说明:标签值。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
topic |
否 |
String |
参数说明:消息上报使用的mqtt topic。 |
message_id |
是 |
String |
参数说明:消息的序列号,唯一标识一条消息。 |
name |
否 |
String |
参数说明:消息名称。 |
status |
否 |
String |
参数说明:设备消息状态,包含:PENDING,DELIVERED,TIMEOUT,FAILED。 |
error_info |
否 |
ErrorInfoDTO object |
参数说明:消息下发失败信息。 |
timestamp |
否 |
String |
参数说明:消息更新时间,格式:yyyyMMdd'T'HHmmss'Z' UTC字符串,如:20151212T121212Z。 |
响应参数
无
请求示例
设备消息状态变更通知示例:
设备消息状态变更通知 { "resource" : "device.message.status", "event" : "update", "event_time" : "20151212T121212Z", "event_time_ms" : "2015-12-12T12:12:12.000Z", "request_id" : "3fe58d5e-8697-4849-a165-7db128f7e776", "notify_data" : { "header" : { "device_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f", "product_id" : "ABC123456789", "app_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f", "gateway_id" : "d4922d8a-6c8e-4396-852c-164aefa6638f", "node_id" : "ABC123456789", "tags" : [ { "tag_value" : "testTagValue", "tag_key" : "testTagName" } ] } }, "body" : { "error_info" : { "error_msg" : "Send to device failed, device not subscribe topic.", "error_code" : "IOTDA.014112" }, "name" : "name", "topic" : "topic", "message_id" : "1235", "status" : "DELIVERED", "timestamp" : "20151212T121212Z" } }
响应示例
无
状态码
状态码 |
描述 |
---|---|
200 |
OK |
错误码
请参见错误码。