banner
远浅

远浅

今宵绝胜无人共,卧看星河尽意明。

技艺 | 如何让小爱同学联动小程序门禁

事情是这样的,我经常打游戏打着打着需要开楼下门禁让外卖小哥把投食放门口,但是经常需要切换出去打开小程序,点击开门。

这个时间足够我完成一次精彩的五杀了。

这能让一个懒狗程序员忍的下?不能的!于是闲暇时间写了个开门服务部署在我的 k8s 上。

至今已安全运行超过两个月了。

抓包#

破坏计算机信息系统罪预警

最简单的方式是在电脑端打开小程序获取小程序的请求参数和地址。

小程序门禁为了不频繁登录开门的用户 token 是不变的...

具体怎么抓包,本文不进行展开。

米家第三方平台#

经过本人主观调研 巴法云 是目前最适合的云平台。

大致流程图如下:
image.png

具体的巴法云服务调用流程可以去官网查询详细的文档。

这里以开门为例。

新建一个 MQTT 设备云 名称叫 FBIOPENTHERDOOR001 , 这里的设备名称尾号的数值代表设备的类型,001 则代表着开关类型。

然后去米家 APP -> 我的 -> 其他平台设备 -> 添加 -> 输入你的巴法云平台账号并且同步一下设备。

这个时候当你和小爱同学说开门时,订阅端会收到一个 on 的字符串,这个时候去调用你的门禁 API 就可以实现语音开门的效果了。

注意事项#

  • 请注意 MQTT 重连的时候需要你重新订阅主题。
  • 可以加入 API 的重试机制防止某些特殊情况导致门禁 API 调用失败。
  • 加入服务重启机制,如果有 k8s 当我没说,某些情况下 MQTT 连接不稳定会断开,需要重启。
  • 可以制作一个自己的门禁 API,通过 SmsForwarder 转发未接来电实现开门,防止点夜宵睡过头。( 🤡是谁睡过头了我不说

参考链接#

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。