玩转智能家居 篇三:Home Assistant如何准确的判断某人在家(离家)

2023-11-21 15:20:12 13点赞 96收藏 11评论

前言

当在智能家居联动配置的时候,触发条件往往是家居联动的一个瓶颈,如果没有办法根据自身需求来触发自动化,那么后面自动化执行也失去了意义。 Home Aisstant中触发条件有很多,包括日期、时间、设备的状态、webhook、MQTT等等,但是在实际生活中,基于位置的自动化是用得比较多的,比如快到家了,自动洗澡水等

HomeAssistant自带方案

通过【我的家】圈出来的范围,可以作为触发条件。

可以在【配置】->【区域和地点】->【地点】中进行【我的家】配置

Home Assistant如何准确的判断某人在家(离家)

点击右侧的【小齿轮】按钮,可以对海拔、时区、单位等进行设置

Home Assistant如何准确的判断某人在家(离家)

也可以在【地点】的右下角点击【添加地点】按钮添加新的地点,添加的时候可以设置经纬度和半径

Home Assistant如何准确的判断某人在家(离家)

如果需要小范围更改地点的位置,可以按住圆圈不动,当鼠标变为【+】号的时候,拖动进行调整

Home Assistant如何准确的判断某人在家(离家)

这样有了多个地点信息,当创建自动化的时候,就可以设置以【地点】作为触发条件

Home Assistant如何准确的判断某人在家(离家)

触发条件可以设置为进入(离开)家的范围。下图的位置追踪设备就是你的手机,Home Assistant是根据手机位置信息来进行追踪判断的,所以手机上也要安装Home Assistant客户端,并且要保持Home Assistant始终允许位置信息。在IPhone上设置始终允许位置是没有任何问题的,但是在安卓上,各自的手机厂商一旦把后台任务停了,就没办法实时获取位置信息了

Home Assistant如何准确的判断某人在家(离家)

社区方案

接下来介绍的方法是我使用了几年来最稳定、最简单的判定是否在家(离家)的方案,这里说的在家(离家)就不是前面介绍的一个大概位置,而是根据手机是否连上你家的WIFI来判断的。

点开【HACS】->【集成】,如果没有这个菜单,请看我前面的文章

Home Assistant如何准确的判断某人在家(离家)

选择右下角的【浏览并下载存储库】按钮,安装【iPhone Device Tracker】集成

Home Assistant如何准确的判断某人在家(离家)

安装完毕会提示重启,这里先不进行重启,等配置完成再重启

Home Assistant如何准确的判断某人在家(离家)

按照集成的文档,追踪的手机必须要使用静态IP,也就是说每次手机连上WIFI,手机的IP地址是不变的。 每种路由器的配置方法是不同的,下面以openwrt为例,找到【网络】下的【DHCP/DNS】

Home Assistant如何准确的判断某人在家(离家)

【静态地址分配】下添加一个新的记录。先去手机查看连接WIFI的IP地址,iPhone点击【设置】->【无线局域网】中的WIFI,就可以看到MAC地址和IP地址了。再回到刚刚添加的新纪录,根据IP选择好设备,并设置一个主机名,把IPv4地址设置为一个特定的IP,把租期改为永久,这样就把手机的MAC地址和IP绑定起来了。后面当你手机连接路由器时,永远都是这个IP,也就是静态IP了

Home Assistant如何准确的判断某人在家(离家)

如果家里的智能设备比较多,设备的租期到了,路由器又回重新给设备分配不同的IP,不方便管理设备。我们可以在DHCP服务器选项中,把起始分配地址改为100,这样后面有新设备连接到WIFI的时候,就会从192.168.1.100开始分配(如果你家的路由器是192.168.1.1)

Home Assistant如何准确的判断某人在家(离家)

回到群晖的【File Station】,找到Home Assistant的configuration.yaml文件。如果你的Home Assistant不是使用Docker安装,直接找到configuration.yaml文件即可

Home Assistant如何准确的判断某人在家(离家)

修改配置文件,添加下面几行。hosts下面的ning可以随便改,192.168.2.14更改为刚刚在路由器上设置的静态IP地址,yaml文件要特别注意缩进,: 后面是有一个空格的,修改完毕后保存

device_tracker:

- platform: iphonedetect

consider_home: 30

scan_interval: 3

new_device_defaults:

track_new_devices: true

hosts:

ning: 192.168.2.14

Home Assistant如何准确的判断某人在家(离家)

回到Home Assistant中,点击【开发者工具】->【yaml配置】,点击下面的【检查配置】,出现如图所示的绿字,则表示上面修改的配置文件格式是正确的

Home Assistant如何准确的判断某人在家(离家)

重新启动Home Assistant。再进到【开发者工具】->【状态】中,全局搜索device_tracker找到device_tracker.ning,后面的ning就是前面配置文件中hosts下设置的名称

Home Assistant如何准确的判断某人在家(离家)

当手机断开WIFI的时候,状态就会变为no_home。这样只有回家时会才会自动连接WIFI,离开家时WIFI就会断开

Home Assistant如何准确的判断某人在家(离家)

注意

  • 如果重启Home Assistant还没有找到你的设备,那么需要把手机WIFI断开再重新连接

  • 安卓设备也可以使用同样的方法进行绑定。需要注意是,有的手机系统会在连接WIFI时,会随机生成MAC地址,这样就做不到静态IP绑定了,需要把随机MAC关闭

补充

来说说状态如何作为触发条件。在【自动化与场景】中添加新的自动化,选择【状态】为触发条件

Home Assistant如何准确的判断某人在家(离家)

实体选择刚刚的device_tracker.ning

Home Assistant如何准确的判断某人在家(离家)

在下拉选项中选择从在家变为离家。简单来说就是你的手机从家里连着WIFI,一直到出门WIFI断开的瞬间(集成判WIFI断开是有延时的,这里为了理解说成断开的瞬间)作为触发条件

Home Assistant如何准确的判断某人在家(离家)

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

乐天派 人体存在传感器居基础感应控制Matter双生态多平台Mijia IOS Homekit六种数据探测 传感器

乐天派 人体存在传感器居基础感应控制Matter双生态多平台Mijia IOS Homekit六种数据探测 传感器

294元起

Xiaomi 小米 米家智能插座3

Xiaomi 小米 米家智能插座3

49元起

Xiaomi 小米 DMWG03LM 智能多模网关2 白色

Xiaomi 小米 DMWG03LM 智能多模网关2 白色

181.8元起

Xiaomi 小米 ZSWG01CM 智能中枢网关 黑色

Xiaomi 小米 ZSWG01CM 智能中枢网关 黑色

191.79元起

京东京造 TH1 时钟温湿度计 白色

京东京造 TH1 时钟温湿度计 白色

28元起

MIJIA 米家 MJYDOAYL 自动感应夜灯 白色

MIJIA 米家 MJYDOAYL 自动感应夜灯 白色

16.9元起

HUAWEI 华为 智能门锁 Plus AI 3D人脸解锁快准稳 AI指纹锁

HUAWEI 华为 智能门锁 Plus AI 3D人脸解锁快准稳 AI指纹锁

2899元起

MIJIA 米家 1S 增强版 智能台灯 白色

MIJIA 米家 1S 增强版 智能台灯 白色

156元起

Xiaomi 小米 无线开关 蓝牙版

Xiaomi 小米 无线开关 蓝牙版

32.9元起

Xiaomi 小米 MCCG02HL 小米门窗传感器 2 米家

Xiaomi 小米 MCCG02HL 小米门窗传感器 2 米家

37.8元起

Xiaomi 小米 SJWS01LM 水浸卫士 白色

Xiaomi 小米 SJWS01LM 水浸卫士 白色

55元起

linptech 领普 智能无线开关KS1Pro屏显温湿度传感器智能联动免布线遥控开关

linptech 领普 智能无线开关KS1Pro屏显温湿度传感器智能联动免布线遥控开关

50.9元起

玺加 智能窗帘宝X3 光能充电窗帘伴侣

玺加 智能窗帘宝X3 光能充电窗帘伴侣

暂无报价

MIJIA 米家 空调伴侣2 智能插座 白色

MIJIA 米家 空调伴侣2 智能插座 白色

65.49元起

MIJIA 米家 人体传感器2S 居 智能监测联动

MIJIA 米家 人体传感器2S 居 智能监测联动

61.99元起

Aqara 绿米联创 烟雾报警器

Aqara 绿米联创 烟雾报警器

229元起

文中相关商品

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)
11评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
96
扫一下,分享更方便,购买更轻松