Updated on 2023-02-16 GMT+08:00

Platform Responding to a Request for Adding Child Devices

Function

This API is used by the platform to respond to a gateway's request for adding child devices. The response is returned within 30 seconds after the platform receives the request and includes a list of child devices that are added.

Topic

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

Parameters

Parameter

Mandatory or Optional

Type

Description

object_device_id

Optional

String

Identifies a gateway.

services

Optional

List<ServiceEvent>

Indicates a list of services that the event is about.

ServiceEvent structure

Parameter

Mandatory or Optional

Type

Description

service_id

Mandatory

String

The value is $sub_device_manager.

event_type

Mandatory

String

The value is add_sub_device_response.

event_time

Optional

String

Indicates the time when the event occurs.

event_id

Mandatory

String

Identifies a request event. The value is used to associate with the corresponding request event.

paras

Mandatory

Object

Indicates the event parameters in JSON format.

paras structure

Parameter

Mandatory or Optional

Type

Description

successful_devices

Mandatory

List<DeviceInfo>

Indicates the details about the child devices that are added.

failed_devices

Mandatory

List<Reason>

Indicates the cause for the failure to add child devices.

DeviceInfo structure

Parameter

Mandatory or Optional

Type

Description

parent_device_id

Mandatory

String

Identifies the parent device.

node_id

Mandatory

String

Indicates the node ID.

device_id

Mandatory

String

Identifies a device.

name

Optional

String

Indicates the device name.

description

Optional

String

Indicates the device description.

manufacturer_id

Optional

String

Identifies a manufacturer.

model

Optional

String

Indicates the device model.

product_id

Optional

String

Identifies a product.

fw_version

Optional

String

Indicates the firmware version.

sw_version

Optional

String

Indicates the software version.

status

Optional

String

Indicates the device status.

  • ONLINE: The device is online.
  • OFFLINE: The device is offline.
  • INACTIVE: The device is not activated.

extension_info

Optional

Object

Indicates the device extended information, which can be customized.

Reason structure

Parameter

Mandatory or Optional

Type

Description

node_id

Mandatory

String

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

product_id

Mandatory

String

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

error_code

Mandatory

String

Indicates the error code.

error_msg

Mandatory

String

Indicates the 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": "add_sub_device_response",
      "event_time": "20151212T121212Z",
      "event_id": "40cc9ab1-3579-488c-95c6-c18941c99eb4",
      "paras": {
          "successful_devices": [
          {
            "device_id": "c6b39067b0325db34663d3ef421a42f6_subdevice11",
            "name": "subdevice11",
            "node_id": "subdevice11",
            "product_id": "c6b39067b0325db34663d3ef421a42f6",
            "description": "subdevice11",
            "manufacturer_id": "ofo",
            "model": "twx2",
            "fw_version": null,
            "sw_version": null,
            "status": "ONLINE",
            "extension_info" : null,
            "parent_device_id" : null
          }
        ],
        "failed_devices": [
          {
            "node_id": "subdevice12",
            "product_id": "c6b39067b0325db34663d3ef421a42f6",
            "error_code": "XXX",
            "error_msg": "XXXX"
          }
        ]
 
      }
    }
  ]
}