控制设备,向设备下发指令
HTTP请求地址: http(s)://api.yoyoiot.cn/{AppID}/device/control/?sign={sign}&ts={ts}
关于sign和ts的定义
或
MQTT发布主题: api/{AppID}/device/control
接收返回结果亦在同一主题
请求参数
参数较长时建议使用POST方式
| 名称 | 必填 | 类型 | 说明 |
|---|---|---|---|
| device | 是 | string | 设备ID,设备唯一ID(在设备壳体上、控制台均可以找到)
指定多台设备时请用间隔符(,或|)连接
指定多个设备时,不要这些设备属于同一类产品,但必须有相同的指令 |
| order | 是 | string | 命令,可传JSON字符串(推荐)或直接传参
简单命令:可直接GET或POST:设备的属性名称=属性值
复杂或较长的命令:请POST {"order":{命令内容}}
-----------------------------------------------------------------------
在一些业务场景,需要在命令里携带一些特征信息:如订单号等
可在order中增加一个字段extra,如{"power":1,"extra":"T25030700001"}
在本条命令对应的异步消息推送中,会原样返回此特征信息。
extra只支持32位以内的大小写英文字母和数字(a-zA-Z0-9) |
返回示例
返回结果
需要注意的是,200仅代表平台接收到了合规的设备ID与参数名称,并成功向设备下发命令。
而设备可能已离线,或命令内容 / 参数有误,在设备上并没有看到预期效果。
在一些必须要求反馈的场景,请接收云端的消息推送,通过异步消息来标记设备是否成功执行命令。
| 名称 | 类型 | 说明 |
|---|---|---|
| code | int | 200 命令下发成功。
501 未指定设备ID,设备ID为一个整型数字,或由“|”或“,"连接的多个数字。设备列表接口中输出了此ID,在本控制台的设备列表中也可以查看。
502 设备不存在或没有可用设备,传入设备ID均不存在。请检查设备ID是否正确,设备是否删除。
503 指定了过多设备,一次最多指定100台设备ID
504 一次指定了多个设备ID,但其中有一些并不可用(不存在、无权限或已删除)
50xx 请见“全局错误代码” |
返回示例