给设备服务下发命令
接口说明
应用可调用此接口给设备下发命令,用于对设备进行控制。
URI
|
请求方法 |
POST |
|---|---|
|
URI |
/api/v3.0/devices/{deviceId}/commands |
|
传输协议 |
HTTPS |
请求参数
|
名称 |
必选/可选 |
类型 |
位置 |
说明 |
|---|---|---|---|---|
|
app_key |
必选 |
String |
Header |
已鉴权应用的appId。 |
|
Authorization |
必选 |
String |
Header |
请求的认证信息,值为“Bearer ******”,其中******为Auth鉴权接口返回的accessToken。 |
|
deviceId |
必选 |
String |
Path |
设备ID。 |
|
ownerAppId |
可选 |
String |
Query |
资源所属应用的appId,访问其他应用所持有的资源时需要填写。 |
|
serviceId |
必选 |
String |
Body |
服务ID。 |
|
method |
必选 |
String(32) |
Body |
命令名称。 |
|
expireTime |
可选 |
Integer(<=3600) |
Body |
下发命令的有效时间,单位为秒,表示设备命令在创建后expireTime秒内有效,超过这个时间范围后命令将不再下发 如果expireTime设置为0,则无论物联网平台上设置的命令下发模式是什么,该命令都会立即下发给设备(如果设备处于休眠状态或者链路已老化,则设备收不到命令,平台没收到设备的响应,该命令最终会超时)。 如果expireTime不为0,则在expireTime时间内命令缓存在平台(PENDING状态),仅当设备上线或向平台上报数据时,命令会下发给设备。 |
|
body |
可选 |
ObjectNode |
Body |
命令参数,jsonString格式,里面是一个个健值对,具体格式需要应用和设备约定。 |
响应参数
|
名称 |
类型 |
说明 |
|---|---|---|
|
commandId |
String(128) |
命令ID。 |
请求示例
POST https://{host}:{port}/api/v3.0/devices/{deviceId}/commands?ownerAppId={ownerAppId}
Content-Type: application/json
app_key: ********
Authorization: ********
{
"serviceId" : "Brightness",
"method" : "SET_DEVICE_LEVEL",
"expireTime" : 0,
"body" : {
"value" : "1"
}
}
响应示例
Status Code: 201 Created
Content-Type: application/json
{
"commandId" : "string"
}
错误码
|
HTTP状态码 |
HTTP状态码说明 |
错误码 |
错误码描述 |
|---|---|---|---|
|
200 |
OK |
100418 |
The deviceData is not existed. 处理建议:请检查设备是否存在。 |
|
100428 |
The device is not online. 处理建议:这个设备不在线,检查设备是否在线。 |
||
|
201 |
Created |
- |
- |
|
400 |
Bad Request |
00014105 |
Invalid parameter 'mode'. |
|
100022 |
The input is invalid. 处理建议:请检查参数是否符合要求 |
||
|
100223 |
Command counts has reached the upLimit. |
||
|
100409 |
The deviceId is invalid. 处理建议:检查并填写正确的deviceId。 |
||
|
100449 |
The device is freezed cant operate. |
||
|
401 |
Unauthorized |
100002 |
Invalid access token. 处理建议:获取token失败,重新登录获取token信息。 |
|
100209 |
The application is invalid. {"处理建议":"检查并填写正确的ownerAppId。"} |
||
|
403 |
Forbidden |
100203 |
The application is not existed. 处理建议:检查并填写正确的appId。 |
|
100450 |
The gateway is not online. 处理建议:这个网关不在线,检查网关是否在线。 |
||
|
500 |
Internal Server Error |
100023 |
The data in dataBase is abnomal. 处理建议:联系物联网平台维护人员。 |
|
100220 |
Get AppKey from header failed. 处理建议:联系物联网平台维护人员。 |
Did this article solve your problem?
Thank you for your score!Your feedback would help us improve the website.