CATALOG

芯步这款壁挂式“双模”雷达烟雾报警器,开放性做得不错——走的是标准HTTP接口,这意味着你无论用什么语言写后端(Java、Python、PHP、Node.js),甚至是用纯前端(当然为了安全不推荐把密钥放前端),都能直接调通。

下面我以一个“快速跑通”的视角,手把手教你把它接入自己的项目。

一、 为什么选它?先看硬件本事

在写代码之前,咱们得清楚手里这个硬件能干嘛。既然是““双模””,它其实融合了两种探测能力,特别适合人走断电、人来预警这类节能和安全场景:

  • 雷达模块(人体存在):和普通的红外感应不同,雷达能探测到微动。哪怕你坐在工位上只动手指头,它也知道屋里有人。这解决了“人静坐在那,灯自动灭了”的尴尬

  • 烟感模块(烟雾报警):检测到烟雾浓度超标,立刻报警。

典型的节能场景:比如装在公司的厕所、会议室或机房。平时没人,排风扇和新风系统自动关闭(省电);一旦雷达检测到人来了,自动启动排风;如果不幸起烟雾了,甚至可以直接切断这一路的非消防电源。

二、 核心准备:拿到三把钥匙

在芯步的官方后台,你需要先获取三个关键信息,缺一不可:

  1. AppID:你的应用身份标识。

  2. AppSecret:你的应用密钥,千万别泄露给客户端,只在后台使用。

  3. 设备ID (Device ID):你那台报警器的唯一编号,通常在控制台设备列表里或设备外壳上能找到

三、 最头疼的一步:签名计算(其实很简单)

芯步的接口用了动态签名验证,这是为了防止接口被恶意篡改。很多新手卡在这里,其实逻辑就是“把钥匙和时间戳搅和在一起,做成一个临时密码”

签名公式Sign = md5( md5(AppSecret) + ts )

拆解一下步骤

  1. 把你拿到的 AppSecret 做一次MD5加密。

  2. 当前的时间戳(精确到秒)拼接到第一步得到的字符串后面。

  3. 把拼接后的新字符串再做一次MD5

举个例子(伪代码)假设你的 AppSecret = "abc123",当前时间戳 ts = 1714118400

  1. 第一次MD5:md5("abc123") = "e99a18c428cb38d5f22e03" (举例)

  2. 拼接:得到字符串 "e99a18c428cb38d5f22e031714118400"

  3. 第二次MD5:算出最终签名。

PS:时间戳(ts)前后端都要核对,一般允许5分钟内的误差,太大了会报错

四、 实战代码:让它“开口说话”和“行动”

既然是安全节能场景,我们主要做两件事:

  1. 读取状态:比如轮询或者接收推送,知道屋里有没有人、有没有烟。

  2. 下发命令:没人时关设备,有人时开设备,报警时拉闸。

1. 获取设备列表(确认设备在线)

刚接入时,先调这个接口,确认你的设备ID是对的,并且能看到它当前的在线状态online

请求地址https://api.thingboot.com/{你的AppID}/device/list/?sign={计算好的签名}&ts={当前时间戳}

2. 控制设备(核心)

假设我们要做“人走断电”:当雷达检测到无人持续一段时间,我们发送关闭继电器(或关灯/关排风)的指令。

由于这款设备是传感器,它本身可能不带继电器,但芯步的开放平台通常支持“联动控制”,即这个传感器触发后,你去控制同一项目里的另一个智能插座或断路器

如果不控制别的设备,只是想让报警器自己响(测试功能),可以利用它的蜂鸣器接口:

Python 示例(最接近口语化写法的代码)