芯步的3路智能开关通过HTTP接口对接,核心就是调用/device/control接口,用power1/power2/power3分别控制三路照明。下面从硬件准备到代码实现,一步步说清楚。
一、 我们有什么硬件?
我们手头这款“智能触摸墙壁开关3路”有几个特点
86型标准底盒:可以直接替换家里的老开关,不用改线。
3路独立控制:上面有三个触摸片,可以分别控制三盏灯(或者一路灯、一路排气扇、一路插座)。
WiFi联网:连上家里的2.4G WiFi就能上网。
开放接口:这也是咱们要用的核心功能,芯步给设备开了HTTP接口,我们可以直接通过网址调用来开关灯。
二、 我们要做什么软件对接?
简单来说,就是用代码去“点”那个开关。我们需要拿到设备的控制权,在我们的软件里(无论是网页、App还是小程序)做一个按钮,按下去,灯就亮。
核心逻辑:你的软件 --(HTTP请求)--> 芯步云平台 --(WiFi指令)--> 你出租屋里的开关 --> 灯亮了。
三、 实操步骤
第一步:准备工作
在芯步的开发者后台,你得先拿到两把“钥匙”:
AppID:识别你是哪个开发者的。
AppSecret:你的密码,别泄露出去。
设备ID:就是那个3路开关的编号,类似
10086。
第二步:看懂怎么“发命令”
芯步的接口地址格式一般是这样的POST https://api.thingboot.com/{你的AppID}/device/control/?sign={签名}&ts={时间戳}
稍微解释一下这个网址
sign:为了防止别人乱发指令搞破坏,需要把密码和时间戳混在一起加密一下,生成一个签名。ts:当前时间戳,主要是为了防止有人在很远的将来重放你的请求。
第三步:组装命令(最关键)
既然是3路开关,我们的order参数里就要指定控制哪一路,以及让它开还是关。
根据芯步的文档,3路开关的控制指令如下
| 操作动作 | 参数内容 (order) | 说明 |
|---|---|---|
| 打开第1路 | {"power1":"1"} | 客厅灯亮 |
| 关闭第1路 | {"power1":"0"} | 客厅灯灭 |
| 打开第2路 | {"power2":"1"} | 卧室灯亮 |
| 关闭第2路 | {"power2":"0"} | 卧室灯灭 |
| 打开第3路 | {"power3":"1"} | 卫生间灯亮 |
| 关闭第3路 | {"power3":"0"} | 卫生间灯灭 |
| 全关 | {"power1":"0","power2":"0","power3":"0"} | 一次性全关了 |
第四步:写几行代码试试
这里用最常见的 Python 语言举个例子,假设我们现在想把第一路(卧室灯)打开。
如果代码没问题,你会在日志里看到成功的信息,然后抬头看看灯,应该就亮了。
第五步:获取设备状态
万一房客用手把灯关了,你的软件上还不知道,怎么办?这就需要同步状态。我们可以调用“获取设备详情”接口,看看现在的灯是开还是关。
接口:GET https://api.thingboot.com/{AppID}/device/info/?sign={sign}&ts={ts}&device={设备ID}
返回的数据里会有一个 state 字段:
拿到这个数据,刷新一下你软件界面的开关图标就行了。
四、 进阶玩法(让租房管理更智能)
只做简单的开关可能有点单调,芯步的接口还支持一些高级参数,很适合出租屋管理