CATALOG

芯步的开放接口对接吸顶雷达探测器,核心思路是“雷达主动上报,平台HTTP推送,你方服务器接收”。下面直接说人话,讲清楚整个流程。

一、 核心逻辑:你不用“问”,它主动“说”

首先,我们要理清一个思路。对于存在感应这类数据(比如人来灯亮、人走灯灭),不需要你的服务器不停地去问设备“屋里有人吗?”

正确的做法是订阅“主动上报”吸顶雷达一旦检测到有人(或从有人变无人),会立刻把状态推给芯步的云平台,云平台再实时转发给你的服务器。你的服务器只管等着收消息就行。

二、 准备工作:找到你的“钥匙”

在开始写代码对接前,需要先拿到三样东西,这些在你的芯步控制台里都能找到:

  1. AppID:你的应用ID,相当于你在芯步的“账号名”。

  2. AppSecret:你的应用密钥,相当于“密码”。注意:这个要保密,不能写在网页代码里。

  3. 设备ID:那个吸顶雷达的唯一身份证。

三、 对接第一步:让雷达“活”起来(开启上报功能)

刚拿到的雷达可能默认是“哑巴”,不会说话。你需要通过API下发一次命令,把它的雷达探测功能打开。这个过程只需要做一次,或者设备重启时做。

你需要调用的接口(下发命令):

  • 请求地址http(s)://api.thingboot.com/{你的AppId}/device/control/

  • 签名方法:文档里叫sign,其实就是 md5( md5(AppSecret) + 当前时间戳 )。说白了就是把你的密钥加密一下,再混上当前时间,防止别人盗用你的链接

  • 下发的内容(JSON格式)针对吸顶雷达,你想让它开始探测,就发:

    如果还想顺便把关联的灯也打开,可以加一句 "power": 1

发完这个指令,雷达就开始干活了。

四、 对接第二步:等着收数据(这才是重点)

这是最关键的一步。你需要在你的服务器上准备一个公网可以访问的HTTP地址(比如 https://你的域名/api/radar/callback),然后去芯步控制台把这个地址填到“消息推送”的设置里。

数据是怎么到你手里的:

  1. 你走进房间,吸顶雷达通过24GHz微波检测到你的呼吸和微动

  2. 雷达将这个变化上报给芯步云平台。

  3. 云平台立马给你的服务器地址发送一个HTTP POST请求。

你需要解析的数据格式:

当你的服务器收到回调时,收到的内容大概是下面这个样子:

你的代码只需要做三件事:

  1. 接收:写代码接收这个POST请求。

  2. 验签:为了防止假数据,最好也验证一下这个回调是不是芯步平台发的(通常header里会有签名)。

  3. 逻辑处理:如果 radar_status 是 1,你就去开灯、开空调;如果是 0,你就等等,为了体验好一点,通常延迟2-5分钟再关灯

五、 进阶玩法:雷达里面藏了什么秘密?

虽然最简单直接用“有人/无人”状态就够了,但你对接的雷达其实很强大,它不止能告诉你有没人,还能告诉你那个人离雷达有多远

如果你不满足于简单的开关,想实现比如“人走近了才亮灯”或者“走到哪亮到哪”,可以看下上报数据里的距离字段(具体字段名看雷达的具体型号,通常是类似 distance 的参数)

如果只是做基础的办公或者家居联动,直接用状态位就够了。

六、 避坑指南(常见报错处理)

在对接过程中,有些小坑可以提前避开:

  1. 签名错误(bad sign)

    • 原因:时间戳(ts)不对,或者MD5计算顺序错了。

    • 解决:注意时间戳是(10位),不是毫秒(13位)。签名计算是 md5(md5(密钥) + 时间戳),别搞反了

  2. 数据收不到

    • 原因:雷达的 radar_enable 没开,或者你的回调地址在外网访问不通。

    • 解决:先拿postman测试一下你的接收地址是否能被外网访问到(如果是本地开发可以用内网穿透工具)。

  3. 人静止站着或坐着不动,灯灭了

    • 原因:这是很多廉价红外传感器的通病,但微波雷达一般不会。如果你的雷达有这个问题,检查一下雷达的灵敏度设置或者上报频率

    • 解决:可以通过API下发 order 里的参数(如 sensitivity)调高检测灵敏度,或者延长“无人上报时间”

总结一下流程

  1. 拿参数:记下AppID、Secret、设备ID。

  2. 开雷达:调用接口发指令 {"radar_enable": 1}

  3. 设地址:在芯步后台配置你的回调URL。

  4. 写代码:写一个接口等着收 radar_status 字段,根据这个值去控制灯或其它设备。

这个对接过程不复杂,就是“平台推给你,你收下用”。