Node-RED:本地版 IFTTT
约 424 字大约 1 分钟...
Node-RED 是本地版的 IFTTT,能与 Home Assistant 打通,实现本地化的互联。新手推荐 node-red 的入门教程集合。
- 部署 Node-RED 时,Node-RED 对存储文件夹的读写权限要求较高,Docker 部署的话需修改 data 的文件夹权限,为避免麻烦,我给了最高权限
chmod 777 /volume1/docker/nodered/data
。 - Node-RED 上安装 node-red-contrib-home-assistant-websocket。
- 选择「设置」>「节点管理」>「控制板」>「安装」,点击右侧刷新按钮,加载节点目录,第一次加载要比较长时间,不用关闭网页。
- 搜索并安装「node-red-contrib-home-assistant-websocket」。
- 选择「Home Assistant」>「HACS」>「集成」>「浏览并下载存储库」,下载 Node-RED Companion。
- 选择「Home Assistant」>「配置」>「设备与服务」>「集成」,添加集成 Node-RED Companion,然后重启 Home Assistant 容器。
- 进入 nodered 页面,配置 home assistant websocket,点击右上角的部署。[1]
常用节点
- inject: 定时启动,周期性触发执行。
- call service:改变智能设备状态,比如开灯。
- Domain:触发方式
- Service:触发命令
- Device:设备与服务
- Entity:设备执行模块
部署代码
推荐通过 Docker Compose 部署 Home Assistant,详情请见 Docker Compose 部署教程。以下是 Docker Compose 配置示例:
# https://nodered.org/docs/getting-started/docker#docker-stack--docker-compose
services:
node-red:
image: nodered/node-red:latest
container_name: nodered
environment:
- TZ=Asia/Shanghai
ports:
- "5710:1880"
volumes:
- /volume1/docker/nodered/data:/data
部署完成后,通过浏览器访问 http://<你的服务器IP或域名>:5710
即可使用 Node-RED。