一、准备环境:
小米小爱/小爱音箱pro/任意小米语音输入设备
小米中枢网关
Home assistant(HA)
二、方案简介
以往的小爱音箱控制第三方设备需要使用巴法云等MQTT协议平台,进行跨平台通讯存在依赖网络平台,不稳定等问题,使用体验不佳配置过程繁琐
得益于小米中枢网关虚拟事件功能与近期官方开放Home assistant插件,解决了跨平台通讯问题,使接入HA的第三方设备、DIY设备拥有更方便稳定的语音控制方案
本文以HA-WOL插件为例,演示小爱语音跨平台通讯能力
基本流程如下:
三、配置过程
1.小米设备配置
小爱音箱-插电联网-绑定小米账号
小米中枢网关-插电联网-绑定小米账号
米家APP-智能-添加手动控制
-控制名称为“打开电脑”(此为语音指令,唤醒音箱后说出指令触发流程,可自定义编辑)
-添加执行动作-家居设备-中枢网关-产生虚拟事件-虚拟事件命名为“打开电脑”
-添加延时10秒
-添加执行动作-家居设备-中枢网关-产生虚拟事件-虚拟事件命名为“复位”(小米中枢的虚拟事件貌似是一个状态,不变更会一直持续,无法重复触发,所以这里添加自动复位功能,可根据个人需要添加)
按照此方法再添加一个关闭电脑的虚拟事件
2.PC配置
PC有线连接网络-设置固定ip-开启BIOS/EFI网络唤醒(除了远古主板基本都支持)-网卡驱动中开启网络唤醒,幻数据包接收
PC安装Airytec Switch Off软件,打开开机自启、网页访问(关闭身份验证),用于触发关机
此方法存在一定安全问题,可选使用SSH方式关机,但配置过程繁琐可参考微软官方文档进行SSH证书配置,实现免密远程登录执行shell关机命令及更多电脑自动化控制功能
3.HA安装
HA系统分为HAOS版、core版等多个版本,功能略有不同(仅OS版具有加载项菜单)
HA建议使用物理设备,成品盒子(TB200左右)树莓派或虚拟机自行刷写固件,因物理设备多为OS版,可减少后续诸多麻烦,例如NODE-red安装
本次使用istoreOS中的docker版,采用官方最新稳定镜像,docker版为core版,无加载项菜单
注意:使用docker版需解决科学上网问题,近期dockerhub国内无法直联,国内镜像源也基本无法使用逐步封锁中
本文不提供具体安装教程(网上一搜一大把)仅提供配置方案
4.HA插件安装
安装HACS-下载xiaomi home官方插件-下载Wake on lan(WOL)插件-设备集成添加xiaomi home插件(登录小米账号,如登录后无法跳回HA尝试修改浏览器的中的地址为HAip地址)-设备集成添加Wake on lan插件-重启HA
此时已可HA获取中枢网关虚拟事件实体
5.配置WOL插件功能
找到HA配置文件configuration.yaml(通常在config目录下),文件末尾添加
```Plain Text switch:
platform: wakeonlan name: "PC" # 定义HA中实体的名称,可任意命名 mac: "XX:XX:XX:XX:XX:XX" # 主机(电脑)的MAC地址 host: "XXX.XXX.XXX.XXX" # 主机(电脑)地址,可省略(在线监测) broadcastaddress: "192.168.1.255" # 广播地址.不可省略.此处假设路由器地址为192.168.1.1,如为其他网段需要修改 broadcastport: 9 # 止定wol端口,可省略 turnoff: service: shellcommand.Shutdown_PC
shellcommand: ShutdownPC: "curl http://XXX.XXX.XXX.XXX:XXXX/?action=System.Shutdown" #打开Airytec Switch Off网页-右键关机按钮-复制链接,获取关机地址 ```
6.配置HA自动化
设置-自动化与场景-新建自动化-创建新的自动化
-设置触发条件-Xiaomi 中枢网关 虚拟服务 虚拟事件发生-选择属性(注意是选择不能输入文本)-事件名称-变为-打开电脑
-设置执行动作-开关-打开开关-选择WOL实体(PC)
保存自动化,按此方法再设置一条关闭电脑
四、功能使用
至此整体配置完成,对小爱音箱喊出“小爱同学,打开电脑”“小爱同学,关闭电脑”即可进行语音开关机控制
由于我家用使用的是笔记本外接显示器,无法安装开机卡,需要一种便捷的开关机控制方式,才有的这套方案,其最大的进步就是解决了语音指令跨平台控制,NOED-red也可直接获取音箱语音指令,但对比起来配置过程复杂了不止一个量级,且有轮询、网络问题
本方案可套用在任何小爱音箱&HA三方设备中,结合米家自动化、小米中枢流程、HA自动化、NOED-red流程实现已更加简便的方式配置更复杂的智能联动逻辑,且有小米官方接入支持极大地简化了跨平台联动方式,快动手试试吧