惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
Martin Fowler
Martin Fowler
I
InfoQ
腾讯CDC
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
爱范儿
爱范儿
Microsoft Security Blog
Microsoft Security Blog
Google DeepMind News
Google DeepMind News
D
DataBreaches.Net
云风的 BLOG
云风的 BLOG
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
博客园 - 聂微东
Microsoft Azure Blog
Microsoft Azure Blog
D
Docker
博客园 - 三生石上(FineUI控件)
Y
Y Combinator Blog
博客园 - Franky
Engineering at Meta
Engineering at Meta
B
Blog
罗磊的独立博客
Apple Machine Learning Research
Apple Machine Learning Research
Jina AI
Jina AI
V
Visual Studio Blog

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
用 Homeassist 实现手机端无需任何设置的 NFC智能家居控制方...
2022-06-10 · via 少数派

之前在少数派看到利用IOS快捷指令+NFC标签实现“碰一碰”控制智能家居的文章:

这篇文章仅适用于IOS手机+HomeKit的组合。于是自己就在想,是否可以用更通用的解决方案来实现同样的效果,经过一番摸索和尝试,终于找到一个基本上只要是带NFC功能的智能手机都能支持的方案。

需要用到的工具

  1. 一台能装跑Homeassist的设备,可以是nas、软路由、XX派甚至旧手机都行。
  2. NFC标签。

工作原理

Homeassist支持webhook触发自动化,只要创建好对应的自动化,触发条件选择webhook并设置一个webhook id 之后给安装Homeassist的设备发送post请求到http://【设备IP】:【端口号】/api/webhook/【webhook ID】就能触发自定义任务了。Homeassist只能接受post请求,而不支持get请求,所以只要再安装个nginx把post请求转化成get请求,就可以直接用浏览器访URL的形式触发webhook了(手机浏览器访问URL本身就是个get请求)。这样只需要在NFC标签中写入URL地址,手机触碰后访问对应URL就可以触发自动化,而现在支持NFC的智能手机,不可能浏览器都开不了吧。

原理图:

操作步骤

第一步:部署Homeassistant 并添加智能家居(这一步本文就不再赘述了)

第二步:安装、配置 nginx(但凡能装Homeassistant的设备装nginx都不成问题)

如果是debian、ubuntu 环境下,没特殊要求只需要一条命令就够了

sudo apt install nginx

然后找到nginx的配置文件,默认配置文件一般是 /etc/nginx/conf.d/default.conf

里面加入:

server {
    listen 8080;
    location / {
    proxy_method POST;
    proxy_pass http://10.0.0.1:8123;
    }
}

然后让nginx重载配置

nginx -s reload 

这样,所有访问装有nginx设备8080端口的get请求就会转换成post请求发送到http://10.0.0.1:8123   只要把自己安装homeassistant的设备IP对应改上去就行。

android平台上有个app叫做 ksweb ,自带了 nginx 等一系列建站工具。

第三步:配置自动化和nfc标签

范例:

请求地址:

http://[Home Assistant的ip地址]:[部署Home Assistant的端口号]/api/webhook/[webhook ID]

假设我安装Homeassistant和nginx的设备ip是192.168.1.1,端口号是8123,那么只需要发送post请求到http://192.168.1.1:8123/api/webhook/chuangtoudeng 或者浏览器访问http://192.168.1.1:8080/api/webhook/chuangtoudeng 就可以触发这个自动任务。

之后把这个url写到nfc标签即可。效果展示:

我这里只是读取nfc标签访问homeassistant的主页,如果是配置了webhook的地址就会直接触发自动化任务,浏览器看到的就是个空白页。

优缺点

优点:

通用性高,乎所有支持nfc的智能手机都支持,只要能接入homeassist的智能家居都能兼容。(其实NFC标签都能用打印、扫描二维码的方式替代,有摄像头就能用。。。。)

手机端无需任何配置,只要打开NFC就行。

缺点:

服务端部署比较麻烦,还要设一条一条设置自动化任务

使用的时候必须得解锁状态,NFC标签读取后还要手动点一下通知才触发,触发过后还会打开一次浏览器,看上去比较呆

总结

其实也没啥好总结了,就是突然想到的一个方案。

个人使用的场景其实是配合接入homeassistant的红外万能遥控器用的,有些家电要用到的功能非常单一,每次要用还要去找遥控器,用完遥控器不放好,下次有得找,有时候半年不用,到要用的时候发现里面电池都漏液。索性都配置到万能遥控器,然后配置好后端,机器上贴个NFC标签,一碰就能用(其实也是可以手机端直接控制万能遥控器的,但是我们操作起来没难度,父母年纪大了根本玩不明白)。