这是一篇面向开发者和项目集成者的解决方案。我假设你已经有了一定的编程基础(比如能发个HTTP请求),但可能不想看太晦涩的官方文档。
我会尽量写得大白话一些,侧重于“怎么把它跑起来”以及“怎么跟人体感应结合玩出花来”。
一、这东西能干啥?
简单来说,这款音箱(芯步的10W壁挂版)不是普通的蓝牙音箱。它连网(WiFi/网线),你给它发一个HTTP请求,它就能说话。
它的亮点在于:
自带人体感应:它肚子里有个感应器,人一走一过就能检测到,不需要外接线。
不用录音:很多传统语音芯片需要你先把声音录进TF卡。这个不用,你直接发文字给它,它就用AI语音读出来。
接口开放:只要是能发HTTP请求的系统(Java、Python、PHP、前端JS、甚至Excel宏),都能控制它。
它能用来做什么?
迎宾:客人进门,自动说“欢迎光临xxx”。
防盗/提醒:有人靠近贵重物品,自动播报“贵重物品请看管好”。
订单提醒:你门店的后台系统收到新订单,让音箱吼一嗓子“厨房,来新单了!”
二、准备工作:拿到钥匙
在写代码前,你需要去芯步的开发者后台做两件事,大概花3分钟:
注册&创建应用:登录开放平台,创建一个“应用”。系统会给你生成两串字符串:AppID(像是用户名)和 AppSecret(像是密码),这个很重要,千万别泄露。
配网&获取设备ID
给音箱插电。它会发出一个热点,你用手机连上去,告诉它你店里的WiFi密码。
连上网后,在后台的设备列表里,你会看到一串数字,这就是 Device ID(设备身份证)。
好了,现在你手里有了三个东西:AppID、AppSecret、DeviceID。开工!
三、核心玩法:让它开口说话
这个音箱的接口非常直接,核心就是计算一个签名(Sign)。稍微有点绕,但理解了其实就是一个“暗号”生成的过程。
1. 签名算法(PHP伪代码版)
芯步的签名规则是:Sign = md5( md5(AppSecret) + Ts )。
注意:任何编程语言只要遵循这个逻辑,算出来的 Sign 就是对的。
2. 下发“说话”指令
拿到签名后,就可以组装请求了。
请求地址
https://api.thingboot.com/{你的AppID}/device/control/?sign={你算出来的sign}&ts={当前时间戳}请求方式:POST
请求体 (Body)
如果看不懂JSON?没关系,其实就是告诉音箱:
“嘿,
Device 12345,请立刻用GBK编码格式,播报后面这句话。”
只要你的网络通,音箱立马就响!不用像以前那样烧录芯片、存MP3文件,是不是很爽?
四、进阶玩法:玩转人体感应
这里才是这个方案的精髓。这款音箱内置了红外人体感应模块,有两种利用思路:
方案A:云端联动(笨办法,适合新手)
逻辑非常简单粗暴:
有人经过 -> 音箱感应到 -> 触发上报 -> 你的服务器收到通知 -> 下发语音指令。
这种方式的延迟取决于网络环境。
方案B:设备端联动(聪明办法,推荐)
这款音箱支持本地逻辑。你可以通过指令设置:“当红外触发时,直接播报下面这段话,不要经过服务器中转”。
设置指令示例:
设置一次,永久生效。即使断网了,只要感应到人,它依然会喊“欢迎光临”(断网时只能播放本地存好的,复杂的AI语音需要联网)。
实战场景:不同时段说不同的话
这就是纯代码逻辑了。假设你是开餐馆的,想中午说“午市套餐优惠”,晚上说“夜宵打折”。
你的后端代码逻辑可以这样写:
核心思维:人体感应负责“触发”这个动作(有人来了),你的业务系统负责“决策”这个内容(说什么好)。两者解耦,非常灵活。
五、避坑指南:这些坑我都替你踩过了
在实际开发中,有几个小细节值得留意一下:
关于签名失败
99%的原因是时间戳(Ts)对不上。你的服务器时间如果和标准时间相差太大(超过5分钟),就会报错。记得同步系统时间。
另外,
AppSecret用的是 MD5 的小写32位,注意大小写和算法类型。
关于文字乱码
命令里写的是
"play:gbk:16",说明它期望的是 GBK 编码。如果你的程序是UTF-8编码,记得转码,不然中文会变成乱码或者不读。
关于人体感应距离
这款的探测距离大概是 4米 左右,角度是120度。安装的时候不要装太高(2-2.5米),正对着门口或者过道效果最好。
关于“10W”
10W指的是功率,在门店里够用了,大概相当于一个大号的吸顶喇叭的音量,甚至比普通家用的蓝牙音箱声音要大。
六、总结
把这款音箱接入你的项目,其实就是在做两件事:算签名和发请求。
如果你想做迎宾:不需要写太多代码,配好网,给它发一条设置红外指令,插上电就不用管了。
如果你想做智能通知:只要在你自己的业务代码(比如下单成功、会员注册成功的逻辑后面)加上几行调用这个API的代码就行了。
这东西最大的好处就是省事,不需要懂硬件电路,一根网线/一个WiFi,全搞定。赶紧去试试吧!