在平台开放的所有接口中,向设备下发命令是最核心、也是最常用的命令。
初次接入设备时,也建议先实现 “向设备下发命令” ,再通过其他接口实现另外的功能。

在向设备下发命令前,请先确定设备已连接网络,并在控制台显示在线。
准备工作
在开始编写代码前,请做好以下准备工作:
1 已注册、并登录平台,并安装“物联网控制台”模块
2 设备已通电,上线,并在控制台可以控制
3 下载 / 安装一个类似Postman的接口请求工具(如无)

4.1 下发命令接口

接口地址:
https://api.yoyoiot.cn/{AppID}/device/control/?sign={sign}&ts={ts}
{AppID} 为您的应用ID(由平台生成)请按准备工作的引导进入控制台,在开发设置页面查看。
{sign} 和 {ts} 的算法,请查看上一节中的描述

参数较长时建议使用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 请见“全局错误代码”

4.2 产品支持命令

命令 名称 内容 说明
音量
volume
0 {"volume":"0"}
1 {"volume":"1"}
2 {"volume":"2"}
3 {"volume":"3"}
4 {"volume":"4"}
5 {"volume":"5"}
6 {"volume":"6"}
7 {"volume":"7"}
8 {"volume":"8"}
9 {"volume":"9"}
音色
voice
女声 {"voice":"0"}
男声 {"voice":"1"}
语速
speed
0 {"speed":"0"}
1 {"speed":"1"}
2 {"speed":"2"}
3 {"speed":"3"}
4 {"speed":"4"}
5 {"speed":"5"}
6 {"speed":"6"}
7 {"speed":"7"}
8 {"speed":"8"}
9 {"speed":"9"}
语调
tone
0 {"tone":"0"}
1 {"tone":"1"}
2 {"tone":"2"}
3 {"tone":"3"}
4 {"tone":"4"}
5 {"tone":"5"}
6 {"tone":"6"}
7 {"tone":"7"}
8 {"tone":"8"}
9 {"tone":"9"}
播报
play:gbk:16
到账提醒 {"play:gbk:16":"支付宝到账200元"}
业务提醒 {"play:gbk:16":"你好,小程序上有新的业务线索:河北的刘先生要定制一款小程序,请及时处理"}
工作通知(男声) {"play:gbk:16":"[m1]小王,请你到一下张总的办公室"}
长文本 {"play:gbk:16":"今天天气非常晴朗,暖暖的太阳照在人身上真舒服。我不禁的感叹:这真是美好的一天。最长不要超过50个字符,如果超过50个,可分多条连续下发命令。"}
提示音+文字 {"play:gbk:16":"[message_3]欢迎光临"}
数字 {"play:gbk:16":"ID为[n1]888,手机号码为[n3]18500860080的客户,共消费[n2]1888元,优惠100元。"}
多音字 {"play:gbk:16":"请把空调调[=diao4]转一下角度"}
停顿 {"play:gbk:16":"你[w0]好,你好"}
铃声
ring
1 {"ring":"1"}
2 {"ring":"2"}
3 {"ring":"3"}
4 {"ring":"4"}
5 {"ring":"5"}
提示音
message
1 {"message":"1"}
2 {"message":"2"}
3 {"message":"3"}
4 {"message":"4"}
5 {"message":"5"}
警示音
alert
1 {"alert":"1"}
2 {"alert":"2"}
3 {"alert":"3"}
4 {"alert":"4"}
5 {"alert":"5"}
停止
stop
停止当前 {"stop":"0"}
全部停止 {"stop":"1"}

4.3 调用代码示例

编程方式: