
起因:闹钟没响迟到了。
当时为啥没响还是响了没听见不重要了,如何想个办法,防范这种问题再出现?
比如 openwrt 上写个 crontab 定时去 ping 一个 ip 是否在线。在线说明还没出门,触发一个通知之类的。
但是 dhcp 可能换别的 ip ,那么问题又是如何根据 hostname 去找到对应的 ip ?
大家有更好的办法吗?
1 gainsurier 2 天前 via iPhone 说明你的闹钟没有做主备冗余哈哈 |
2 x86 2 天前 既然是家里,你给你设备分配一个静态 IP 不就行了 |
3 cwxiaos 2 天前 via iPhone Openwrt 可以分配静态 ip, ios 用 bark call, android 应该也有类似的 另外手机在设置 dhcp 那里,可以设置固定 ip 最稳妥的还是搞个闹钟,ios 那个问题真不好说,订阅错日历了,不小心没充电,都容易出事 |
4 jaysonmac 2 天前 闹钟持续响铃听不见,几秒钟的通知音就能听见? 怕自己错过闹钟,就多设置几个。 |
5 est OP @gainsurier 这不现在就在想办法冗余么。 @x86 @cwxiaos 呃,也算是个办法。但是总感觉不太通用 @cwxiaos 你真准。。一下子就猜到 iOS 了。。。 @jaysonmac 这个通知只是个 demo ,真要搞感觉可以联动一下其他设备。 |
6 hefish 2 天前 可以给 hostapd 开个日志吧,然后定时监控 hostapd 的日志,这样来看某个固定 mac 的设备连上来了,就触发某个操作。 |
7 busier 2 天前 via Android 不是有 mdns 吗 |
8 est OP |
10 lloovve 2 天前 via iPhone 研究过,wifi mac 地址会变,ip 地址也会变,最好的方法就是蓝牙广播了 |
12 pingdog 2 天前 iOS 用 shortcuts 取得 wifi 名放音乐就够,在加个 Automation ,自己也可以搓个调休的 api 写个判断今天放不放歌 简单写个 wifi 的 https://www.icloud.com/shortcuts/7901bf5ac2f747ec8d213ff057f9860b |
14 guiys 2 天前 via Android 物理闹钟。 智能开关接收音机。 |
15 heybwei 1 天前 米家 APP 创建自动化,触发条件是你手机,离开/连接 wifi ? 感觉还是多冗余几个闹钟方便,手机+手表 |
16 villivateur 1 天前 我觉得倒不如搞个人体传感器,早上发现你还在床上就报警。或者监控电子门锁的开关记录,早上没开门就报警。 |
17 opengps 1 天前 旧手机让家里当备份闹钟 |
18 szdosar 1 天前 有必要这么麻烦吗?订个物理闹钟,闹钟离床头有 2 米,人必须起来才能关掉闹钟。 |
19 pagxir 1 天前 via Android 一般 Mac 地址不会变,openwrt 可以通过 Mac 查询 IP |
20 bfdh 1 天前 这功能我们之前还真做过。 先说随机 mac 的问题,默认情况下不少设备在 SSID 不变,且没有执行“忘记网络”然后重新“加入网络”操作的情况下,mac 地址是不会变的(不确定现在情况是否有变化),不过一般的手机、笔记本都可以设置是否使用随机 mac 。所以靠 mac 唯一确定设备也算基本可行。 wifi 连接由于稳定性、低功耗、漫游等原因,随时都可能会自动断开,然后过一段时间又重连,于是你就会收到大量的“离开”、“加入”事件。为了处理这种情况,就不得不加入延时,一段时间之后没有新的事件产生才推送最后一个事件,但是一段时间到底取多长,又是一个新的问题,短了效果不好,长了实时性太差。 再说“离开”这个事件,大多数“离开”是设备逐渐远离路由器,信号逐渐变弱,直到最后没法通信,因此路由器根本无法从通信协议层面感知“离开”这个事情,只能等超时,这个超时一般是 5 分钟(好像是 wifi 规范规定的?),甚至有的 wifi 驱动有 bug ,设备离开之后会永远在线。 至于用 ping 的话,也有不靠谱的地方,笔记本可能防火墙禁 ping (这个倒是可以自己设置); iOS 设备熄屏期间也不能 ping 通(这个没看到设置的地方,不过我也没专门去找过)。 |
21 fadaixiaohai 1 天前 太折腾了,几十块钱搞一个小米音箱或者天猫精灵 强制起床 |
22 duanxianze 1 天前 手机是支持这个功能的,还有车可以检测地理位置,别的应该不太行 |
23 gdfsjunjun 1 天前 米家不是已经有吗?设置自动化 触发条件 个人设备 到达离开某地、连接断开 WiFi 都可以设置啊 |
24 est OP @szdosar 物理闹钟没法跳过节假日 @heybwei @gdfsjunjun @duanxianze 米家我试了。。我觉得差一点就成功了 触发条件 1: 起床时间+法定工作日 触发条件 2:小米路由器 -> 指定设备连接 执行动作:唤醒小爱音响+自定义指令+指令上一个闹钟马上响 现在唯一的问题就是 触发条件 1 和 2 是 OR 关系。不是 AND 关系。 而且 指定设备连接 貌似是 刚连上 这一个事件,不是 当前一直连上 这个状态持续检查。 还是行不通。。 话说米家能不能自定义事件? |
25 Kirkcong 1 天前 @est #11 可以设置统一 wifi 下使用相同的 mac,之后就可以 arp 看设备了。不过有个问题哦,有看过 ios 的休眠策略么?并不一定时时刻刻都在连接着设备吧?这样会导致经常误判的。 |
28 duanxianze 1 天前 @est #24 那你只能通过 home assistant 写脚本了 |
30 yinmin 1 天前 via iPhone @est 晕。iphone 手机上可以直接设置 ip 地址的。 ios 设置 - 无线局域网 - 点击自家 wifi 等信息图标 - ipv4 配置 ip/配置 dns 你在 dhcp 服务器的动态 ip 地址段里,留出一段给手动 ip 地址,例如:dhcp 配置动态 ip 地址段为 192.168.1.100-192.168.1.249 ,然后 192.168.1.2-192.168.1.99 都可以用做手动 ip |
31 Linho1219 1 天前 via Android 我用的接入米家的 Ainice 电子围栏,可以走 WiFi/蓝牙连接/蓝牙广播探测设备,支持设置离线时长判定阈值,支持多围栏组网,最多追踪 14 个设备,可以定义一个设备群(群内任意设备在线则判定为群在线)。玩法很多,毕竟米家还能接 HA ,我 85 入的感觉不亏。楼主这场景配这个电子围栏,一个米家自动化就解决了。 另:DHCP 在路由器端可以配置一直给同一个设备分配同一个 IP 的 |
32 Linho1219 1 天前 via Android @est 米家虚拟事件我知道的是小米中枢网关有,300 ,其他中枢有没有下放我就不懂了。可以走米家自动化、米家自动化极客版,或者从 HA 触发 |
34 JiMuChan 1 天前 感觉。。。会不会有点简单的事情复杂化,直接买个物理闹钟放里床 2 米外。。。。 |
35 linguoan33333 1 天前 我都是设置定时开启灯光和闹钟的,买个小爱同学音响 |
36 est OP |
37 Greenm 1 天前 我自己的路由是 UBNT ,官方有接口,可以通过接口获取在线的设备,然后通过脚本定时执行并发送通知到手机上解决,还可以顺便做了其他的自动化联动等。 IP 地址随机化的问题是通过关掉 MAC 随机化固定 IP 地址解决的。 不过我的原始需求是防陌生人入侵和防蹭网的,警报的频率很低,只有陌生设备第一次接入才触发,跟你的需求可能不太一致。 |
38 kenpuluma 1 天前 Nmap 比较适合做这个事。不过感觉有点简单问题复杂化,多定几个闹钟就是了。 |
39 pulutom40 1 天前 |