SuperAPI AI 工具集

Node-RED

通用与其它

查看项目

更新于 10-16 01:09

技能介绍

用途:在 Home Assistant 中用 Node-RED 构建可视化自动化流程,使用 node-red-contrib-home-assistant-websocket 节点(v0.80+)。要求 Node-RED 4.x(Node.js 18+)与 Home Assistant 2024.3.0+。

主要能力:按触发类型选择节点——时间类用 inject 或 trigger-state(cron),状态变化用 trigger-state 或 events:state,事件用 events:all(按 event_type 过滤),外部输入用 http in 或 mqtt in;随后加过滤/条件(current-state、switch、template),再选动作节点(call-service 调用 HA 服务、http request 发送 HTTP、notify.* 通知)。支持上下文存储三作用域:节点 context、流程 flow、全局 global,可在 settings.js 配置 localfilesystem 持久化。错误处理用 catch 节点限定作用域,msg.error 含 message 与 source.id/type;重试可用 delay 节点的 delayv。

必要用法:节点名称已变更,须用当前名称——trigger-state(旧 server-state-changed)、api-call-service(旧 call-service)。entityIdType 仅支持 exact、substring、regex,没有 list,多实体用正则。api-current-state 只查单个实体,多实体需用 function 节点读取 global.get("homeassistant").homeAssistant.states。服务调用可静态配置 domain/service/entityId 或通过 msg 动态传 payload;传动态数据用 dataType 的 msg,而非 jsonata。定时器用 trigger 节点的 extend: true,不要另设重置/启动节点。HTTP 请求用内置 http request 节点,避免 global.get('axios')(需改 settings.js)。异步函数用 node.send() 与 node.done() 并 return null。导出流程 JSON 不要包含 server 配置节点,保留 server 字段为空由用户选择,实体 ID 用占位符并加注释说明。使用 ha-entity 等实体节点需额外安装 hass-node-red 集成。v0.71.0+ 的 number、select、text、time-entity 已稳定;v0.79-v0.80 状态类型配置被弃用,日历日期改用带时区偏移的 ISO 8601。

适用场景:智能家居状态联动、服务调用、定时与 Webhook 触发、Node-RED 内建仪表盘(Dashboard 2.0)。限制:以上为资料明确内容,其他平台、收费与效果信息暂未提供。