接入小米温湿度计2
参考: blog.csdn.net/weixin_4496… www.home-assistant.io/integration…
获取MAC地址
MAC地址是网卡厂商决定的,不会变,所以可以先接入米家查看MAC地址,同一时间只能轮询一个BLE设备
编辑configuration.yaml
每个选项有点fuzz的意思 timeout integer (optional, default: 10) Define the timeout value in seconds when polling. Define the number of retries when polling. polling发生在什么时候
sensor:
- platform: mitemp_bt
mac: "xx:xx:xx:xx:xx:xx"#A4:C1:38:B4:C3:85
name: Kids Room Temp #HA中的名称
force_update: true
median: 1 #峰值问题
monitored_conditions:
- temperature
- humidity
- battery
添加Integration
坑:官方Integration里Mijia BLE温湿度计是单独一项,但是HA搜不到
去看Xiaomi Gateway(Aqara)的详细描述,温湿度传感器是包含在这个Integration里,发现大部分小米设备都在里面 Integration的描述: The xiaomi_aqara integration allows you to integrate Xiaomi Aqara-compatible devices into Home Assistant.
一旦开启了局域网控制,不需要密码,HA就能在网络中发现并控制它
TAP规则example1
在白天,如果小米灯被关闭,就用语音播报一下
1.TAP在配置的自动化里
2.配置 如果小米灯被关闭
3.配置 在白天
4.配置 就用语音播报一下
5.触发对应一个时间点(刚回家、每隔一小时),条件对应一个时间段(在家的时候,灯持续开着) 当日出一瞬间,如果小米灯是关着的,和在白天,如果小米灯被关闭,就用语音播报一下作区分
TAP规则example2
在小米灯关后的一分钟,语音播报关灯了
1.触发 小米灯从关到开 条件 无 动作 延迟一分钟 调用关灯服务
2.模式选择
引入模式,解决正在执行过程中的规则又一次被触发的问题
本例子适合restart
其它规则创建方法
自然语言
配置->自动化界面右下角添加自动化
Blueprint 官方提供的模板,填入设备即可
与Home Assistant交互的那些平台
Homekit、ESPHome、NodeRed、AppDeamon
ESP HOME
开发平台是自己写程序DIY,配置平台是只需要配置就可DIY
Home Assistant中的Add-on可下载Home Assistant
ESP HOME配置TAP规则
这种本地的TAP,不连接网络或者Home Assistant也能自动运行 当NFC靠近读卡器,闪烁板上的灯
Node Red
消息发邮箱和语音播报的实现
自动化中的事件
适用场景
如on这个操作,可能是双击,可能是长按,光一个on不好表示,用事件更好表示
事件类型
state_change 如温度改变 service_registered 如新加了设备 call_service 调用服务
事件数据
state_change 哪个实体的状态变了,状态变化前和后的值 call_service 调用的是哪个服务,参数是什么
如何查看事件日志
在开发者工具中 或者 日志中
事件位于开发者工具中
自动化中的服务
在开发者工具中
如开灯服务,调用该服务就开灯
调用服务时传递数据
例子 当太阳下山,打开小夜灯,当太阳升起,关闭
自动化中的设备
实体与设备的关系,设备是物理上存在的装置,一个设备包含一个或多个实体,如电池设备包含电池种类、电量等实体 不属于设备的实体 如太阳、用户 例子 如果人体感应器的电量低于10%,就打开小米网关灯
自动化中的场景
在配置,场景中 如场景“日常”,进入后调灯光和音量 打开场景
场景无turn off,动作,要达到关闭效果就切换场景或调整设备
自动化中的脚本
官方文档 www.home-assistant.io/docs/script… 脚本像规则,打开脚本可能并不是立即执行,而是等有了相应触发才执行
脚本的运行模式
例子 小米灯打开五次,就播报消息
1.设置5次循环
2.触发里添加动作 每次循环等待灯被打开(等待触发)
3.动作里设置语音消息
4.前端会多一个脚本图标,可以通过图标来执行
5.也可以通过调用服务
自动化中的模板
之前都是静态的,如朗读预先设定的文字,如果要播报当前的动态的温度,用模板构建动态内容
在开发者工具中
自动化中的trigger变量
例子 灯的状态变化时,前端显示一条通知消息
1.触发里设置灯的状态变化,属性那些都不用写
2.动作里调用服务,服务里有模板,模板里有trigger变量
自动化中的辅助元素
IFTTT与HA的集成
HA中触发IFTTT的this条件
在HA中执行脚本,触发IFTTT点亮YeeLight智能灯
1.IFTTT平台配置IFTTT规则(this=webhook意思是外部web调用,receive a web request,that=YeeLight)
2.配置HA中脚本
IFTTT的that动作触发HA中的事件
关注点在触发HA中事件吧,比较有共性
前提是公网能访问HA
IFTTT平台的that选webhook,url填HA生成的,POST方式,JSON格式