OneNET文档中心

发送命令

--- 请求方式:**POST** URL:http(s)://api.heclouds.com/cmds #### URL参数 参数名称 | 格式 | 是否必须 | 说明 :- | :- | :- | :- device_id | string | 是 | 接收该数据的设备ID qos | int | 否 | 是否需要设备应答,默认为0。
0:最多发送一次,不关心设备是否响应
1:至少发送一次,如果设备收到命令后没有应答,则会在下一次设备登陆时若命令在有效期内(有效期定义参见timeout参数)则会重发该命令 timeout | int | 否 | 命令有效时间,默认0。
0:在线命令,若设备在线,下发给设备,若设备离线,直接丢弃
>0: 离线命令,若设备在线,下发给设备,若设备离线,在当前时间加timeout时间内为有效期,有效期内,若设备上线,则下发给设备
单位:秒
有效范围:0~2678400 #### HTTP头部 参数名称 | 格式 | 是否必须 | 说明 :- | :- | :- | :- api-key | string | 是 | 必须为masterkey或者具备该设备访问权限的apikey #### http请求内容 > 用户自定义数据:json、string、二进制数据(小于64K) #### http请求返回参数 参数名称 | 格式 | 说明 :- | :- | :- | :- errno | int | 调用错误码,为0表示调用成功 error | string | 错误描述,为"succ"表示调用成功 data | json | 接口调用成功之后返回的设备相关信息,见data描述表 ##### data描述表 参数名称 | 格式 | 说明 :- | :- | :- | :- cmd_uuid | string | 命令id,平台范围内唯一 #### 请求示例1 ```text POST http://api.heclouds.com/cmds?device_id=8029377 HTTP/1.1 api-key: l2aH*************BRtAo= Host: api.heclouds.com Content-Length: 19 ``` #### 返回示例1:成功创建命令 ```json { "errno": 0, "error": "succ", "data": { "cmd_uuid": "81572aae-fc34-5deb-8f06-ab45d73cb12b" } } ``` #### 返回示例2:设备不在线 ```json { "errno": 10, "error": "device not online: 8029377" } ``` #### 请求示例2:发送离线命令且需要设备应答 ```text POST http://api.heclouds.com/cmds?device_id=8029377&qos=1&timeout=3600 HTTP/1.1 api-key: l2aH*************BRtAo= Host: api.heclouds.com Content-Length: 19 ``` #### 返回示例 ```json { "errno": 0, "error": "succ", "data": { "cmd_uuid": "81572aae-fc34-5deb-8f06-ab45d73cb12b" } } ```