米家/小爱同学通过 Home Assistant 控制第三方设备

通过米家或小爱同学控制接入到Home Assistant的第三方设备,实现语音控制或自动化。

实现流程
小爱同学/手动触发 → 中枢网关 → 产生虚拟事件 → Xiaomi Home(Home Assistant) → NodeRed(解析虚拟事件) → 控制设备(如打开空调)

必备条件
中枢网关
小爱音箱(可选,用于语音控制)
Home Assistant
Xiaomi Home 插件
NodeRed (可选,用于复杂控制流程)
Midea AC LAN 插件(适用于美的或Colmo设备)
实例:通过小爱同学控制打开Colmo的中央空调
前置条件
已经安装【必备条件】中的设备和插件,并且中枢网关、NodeRed、Colmo中央空调已经接入到 Home Assistant。
操作步骤
一、米家 - 产生虚拟事件
智能
右上角⊕
手动控制
输入个名称:【打开主卧空调】
将设备调整到:
添加执行动作
家居设备
选择 中枢网关
产生虚拟事件:【打开主卧空调】
保存
重新进入刚才创建的【打开主卧空调】
右上角 ⋮
小爱语音控制
在自定义指令中可以添加其他命令,比如【打开主卧中央空调】等
按照以上步骤,可以添加【关闭主卧空调】等操作。
二、NodeRed - 接收和处理虚拟事件
新建一个流程,命名为 【中央空调】
拖一个 home assistant 分类下的 events: state 到 画布
Name:中枢网关-虚拟事件发生
Entity:选择 【中枢网关 虚拟服务 虚拟事件发生】
If State:is not 后面的文本框留空
State Type:string
输出属性
data: event data
payload: 表达式 data.new_state.attributes.事件名称
拖一个 功能 下的 switch 节点到画布
名称:打开主卧空调
属性:payload
输入值匹配符号:==
匹配值,也就是虚拟事件名称:打开主卧空调
鼠标左键按住 中枢网关-虚拟事件发生 右边的连接点,并移动鼠标到 打开主卧空调 对象的左边连接点,完成连接
拖一个 home assistant 分类下的 action 到 画布
Name:打开主卧空调
Action:climate.turn_on
Entity:选择 【主卧中央空调】
连接两个 打开主卧空调
根据以上流程可以添加 关闭主卧空调
后续还可以查询空调运行状态,并语音播报
huan

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: