V2.4 Modify Device Status


修改设备状态。

支持修改状态为 未激活 和 离线 的设备。设备的状态应以 EnOS 实际连接状态为准,例如,使用此 API 修改一个 离线 状态的设备为 在线,将导致该设备在页面显示状态为 在线,而实际处于离线状态,此时可以通过此 API 修改该设备状态。


使用此 API 前,确保已安装 EnOS 2.4.4 及以上版本。

操作权限


确保已获取调用该 API 的权限。更多信息,参见 获取 API 调用权限。

前提条件


  • 确保已创建所需设备。

  • 确保已阅读设备相关的 使用限制。

请求格式


POST https://{apigw-address}/connect-service/v2.4/devices?action=modifyDeviceStatus

请求参数(URI)


名称

位置(Path/Query)

必需/可选

数据类型

描述

orgId

Query

必需

String

设备所属的 OU ID。如何获取 orgId 信息>>

请求参数(Body)


备注

以下非必需字段中,必须提供 assetId,或提供 productKey 和 deviceKey 的组合,用于指定设备。


名称

必需/可选

数据类型

描述

status

必需

Enum

设备的状态。有效取值为:inactive、online、offline。

assetId

可选

String

设备的 asset ID。如何获取 assetId 信息>>

productKey

可选

String

设备的 Product Key。需要与 deviceKey 一起使用。如何获取设备的 productKey 信息>>

deviceKey

可选

String

设备的 Device Key。需要与 productKey 一起使用。如何获取设备的 deviceKey 信息>>

错误码


代码

错误信息

描述

11404

Device cannot be found

该设备不存在。

99400

Invalid arguments: Device information is invalid.

请求参数中的设备信息不符合规范。需提供 assetId,或提供 productKey + deviceKey。

99400

Invalid arguments: Status {status} is not allowed to be modified.

不支持修改为请求中设置的状态。

99400

Invalid arguments: Unable to modify status as the device is currently connected to EnOS.

设备此时已连接至 EnOS,无法修改状态。如有需要,可以先关闭设备连接。

99400

Invalid arguments: Unable to modify status for disabled devices.

无法修改禁用状态的设备。

99400

Invalid arguments

参数错误,例如 assetId 不存在,或 productKey + deviceKey 不存在。

示例

请求示例


url:https://{apigw-address}/connect-service/v2.4/devices?action=modifyDeviceStatus&orgId=yourordId
method: POST
requestBody:
{
    "assetId":"yourassetId",
    "status":"offline"
}

返回示例


{
    "code":0,
    "msg":"OK",
    "requestId":"fd79d0f5-69c5-4fa8-add4-69f5ca1b635f",
    "data":null
}

SDK 示例


你可以在 Github 上获取接入服务的 SDK 示例: