芯步的智能语音台卡2开放了HTTP接口,控制逻辑其实就是向指定URL发送一条带签名的指令。下面这份方案会一步步拆解签名规则、音量调节的JSON格式,并提供本地和云端两种调用方式——你可以直接复制文中的Shell/Python代码跑通第一个“调音量”命令。
解决方案:基于芯步开放接口,二次开发实现智能语音台卡2远程音量调节
适用产品:智能语音台卡2 (型号:UNI-YY-TK2)开发难度:⭐☆☆☆☆ (只需要会发HTTP请求就行)核心优势:无需额外的网关,设备联网即用,接口完全开放。
一、 准备工作:先让设备“上网”并找到“钥匙”
在写代码之前,我们需要先把硬件准备好,并获取开发需要的密钥。这就好比你要发快递,得先知道收货地址和你的身份密码。
设备配网
给智能语音台卡2插上USB供电。
由于它不支持5G WiFi,请确保手机连接的是2.4G频段的WiFi。
微信搜索“芯步”小程序,或者登录官网控制台,将设备添加到家里的WiFi网络下。只要设备指示灯常亮(不闪烁),就代表联网成功了。
获取密钥 (AppID & AppSecret)
登录芯步官网,进入“工作台” -> “物联网控制台”。
找到左侧菜单的 “开发设置”。
这里有两串字符串非常重要:
AppID:相当于你的“用户名”,在请求地址里会用到。
AppSecret:相当于你的“密码”,千万不要泄露给别人,用来生成签名。
小技巧:如果是第一次测试,在开发设置里先打开 “调试模式” 。在这个模式下,你可以暂时忽略复杂的签名计算,直接发命令测试,等调通了再关掉也不迟。
二、 核心原理:其实就一句“口号”
要实现远程调节音量,本质上就是向芯步的云端服务器发一个HTTP请求,告诉它:“让ID为XXX的设备,把音量调到5。”
云端接口地址是:https://api.thingboot.com/{你的AppID}/device/control/
三、 关键一步:签名计算 (Sign)
在正式环境(关闭调试模式)下,为了安全,我们必须计算签名。公式稍微有点绕,但照着做就行:
签名生成公式Sign = MD5( MD5(AppSecret) + 当前时间戳 )
拆解步骤
把
AppSecret做一次MD5加密,得到一串32位的字符串(我们叫它Secret_MD5)。把当前的时间戳(秒级,例如:
1712456789)拼接到Secret_MD5的后面。把拼接好的新字符串再做一次MD5加密,最后得到的32位字符串就是
Sign。
四、 实战代码:Python 与 Shell 快速实现
下面的代码可以直接复制保存,只要换成你的真实信息,就能跑起来控制音量。
命令参数说明智能语音台卡2的音量范围是 0 ~ 9,9是最大声,0是静音。我们下发的JSON命令是:{"volume": "5"} (注意这里的5要用引号或者不引号,视接口版本而定,看官方文档,一般都是字符串格式)。
方案1:使用 Python 实现
方案2:Linux Shell (Curl) 实现
如果你是在树莓派或者服务器上调试,用 curl 也很方便:
五、 进阶玩法:本地局域网控制(无需外网)
如果担心外网断网,或者不想把数据经过云端,这款台卡还支持私有化部署和局域网控制。
一旦设备连上WiFi,它会有自己的局域网IP地址。你可以直接向这个IP发命令,完全不依赖外网。
在路由器后台找到台卡的IP地址(例如
192.168.1.50)。直接发送POST请求到:
http://192.168.1.50/controlBody里同样