Updated on 2024-12-02 GMT+08:00

Responding to a Request for Updating Child Device Statuses

Function

This API is used by the platform to respond to a gateway's request for updating child device status. The response is returned within 30 seconds after the platform receives the request and includes a list of updated statuses of child devices. For details about the relationship between a gateway and its child devices, see Gateway and Child Devices.

Topic

Downstream: $oc/devices/{device_id}/sys/events/down

Parameters

Parameter

Mandatory/Optional

Type

Description

object_device_id

Optional

String

Explanation:

The value is the same as that of device_id in the topic.

services

Optional

List<ServiceEvent>

Explanation:

List of services that an event is about.

ServiceEvent structure

Parameter

Mandatory/Optional

Type

Description

service_id

Mandatory

String

Explanation:

System field.

Value range:

Fixed at $sub_device_manager.

event_type

Mandatory

String

Explanation:

System field.

Value range:

Fixed at sub_device_update_status.

event_time

Optional

String

Explanation:

Event time. UTC time format: yyyyMMdd'T'HHmmss'Z'.

event_id

Mandatory

String

Explanation:

Event ID. The value is used to associate with the corresponding event.

paras

Mandatory

Object

Explanation:

Event parameters in JSON format.

paras structure

Parameter

Mandatory/Optional

Type

Description

successful_devices

Mandatory

List<DeviceStatus>

Explanation:

Details about the child devices that are updated.

failed_devices

Mandatory

List<Reason>

Explanation:

Cause of the failure to update the child device status.

DeviceStatus structure

Parameter

Mandatory/Optional

Type

Description

device_id

Mandatory

String

Explanation:

Device ID.

status

Optional

String

Explanation:

Indicates the device status update result.

Value range:

  • ONLINE: The device is online.
  • OFFLINE: The device is offline.

Reason structure

Parameter

Mandatory/Optional

Type

Description

device_id

Mandatory

String

Explanation:

The value is that of device_id of the corresponding device in the corresponding request.

error_code

Mandatory

String

Explanation:

Error code.

error_msg

Mandatory

String

Explanation:

Error description.

Example

Topic: $oc/devices/{device_id}/sys/events/down  
Data format:
{
   "object_device_id": "{object_device_id}",
   "services": [
    {
      "service_id": "$sub_device_manager",
      "event_type": "sub_device_update_status_response",
      "event_time": "20151212T121212Z",
      "event_id": "40cc9ab1-3579-488c-95c6-c18941c99eb4",
      "paras": {
          "successful_devices": [
          {
            "device_id": "c6b39067b0325db34663d3ef421a42f6_subdevice11",
            "status": "ONLINE"
          }
        ],
        "failed_devices": [
          {
            "device_id": "c6b39067b0325db34663d3ef421a42f6_subdevice11",
            "error_code": "XXX",
            "error_msg": "XXXX"
          }
        ]

      }
    }
  ]
}