利益相关声明:文中产品由厂商提供

事情是这样的,最近,珠三角连绵不断的高温和雨天,导致厨房里出现了一堆的小蟑螂。要说开心吧,至少不是美洲大蠊那种庞然大物,但显然糟心的事更多:小蟑螂更难杀,而且还有蔓延到厨房外的倾向。

为了解决这个问题,我们家在大扫除了一圈的同时,也买来了各种蟑螂药进行消杀。但现在的问题是,家里老有人忘记关厨房门,要是猫跑进去舔了一口蟑螂药,那可就出大事了 —— 毕竟,好奇心害死猫。

喵?

于是,我着手想着怎么来解决这个问题。

帮别人关一下是可以,但如果次次都是这样也不是个事。后来想到,家里已经改造了全屋智能,就想着要不弄个语音自动化:谁忘了关门,就直接让扬声器吼一声,贯彻全屋,然后再给每个人的手机发一条通知,让整个家里的人都知道有个坏家伙忘了关厨房门。

如何做条件判断?

看着这是个很直观的自动化,但如果根据需求来看,它其实也有很多判断条件。

如果只是用门窗传感器来进行判断,厨房门开着就吼人,那也不太对。毕竟我们家有人在厨房做饭的时候习惯开着门,可以把门外的冷气吹点进去,也方便和门外的人沟通。而且有时候,人只是出来厨房外的冰箱拿食材,一会就回去了,如果这个时候扬声器也出声了,也把人整挺尴尬的。

所以,这个自动化就显得复杂一些。我希望厨房没有人一段时间,同时还没关门的时候,才启动这个自动化。然后,最好这个语音会一直响,响到厨房门关闭为止。

上手设定

当然,第一步是先得有对应的设备。我家的智能家居生态平台大部分是 HomeKit,因此 Aqara 产品居多。我在厨房墙壁上安装了一个人体存在传感器 FP1,用来检测人是否在厨房,又在厨房门上粘了一个门窗传感器,用于判断门的状态。同时,它们连接在距离最近的起居室的 M3 网关上。

门上的人体存在传感器 FP1

然后,还得做点事前准备。其实,Aqara 许多网关都支持一个「自定义铃声」的功能。我提前用微软的 AI 将「厨房门忘记关啦!」这句话从文字转成语音,然后转码成 MP3 的格式,放进了 M3 中枢的铃声库里。(其实你自己录制也可以,但感觉这么做有点渗人就是……)这样,M3 中枢就可以在指定的情况下,「说出」这段文字了。

现在就是怎么做自动化的问题了。恰好,Aqara 在前不久推出了智能自动化 2.0 的内测,我也受邀参与了,于是我们一拍即合,「90%」完美地实现了我这个需求。开启自动化 2.0 之后,我就获得了完整的「当 - 且 - 就」这样的逻辑条件,用来处理更加复杂的自动化场景,无论是功能上还是条理上都比 1.0 要好上不少。

触发的条件就以人体存在传感器 FP1 开始。在「当」条件下,添加一个人体存在传感器 FP1 的动作:无人。接着,我想让无人的状态持续了 15 秒之后,这个自动化才往下执行,因此我就可以在右侧的更多选项中,选择持续时长,然后选择 15 秒。

如果你用的是更新的 FP1E 和 FP2 传感器,那么可以直接使用「无人且超过一定时长」这个条件,可以精确到秒。

接着是做厨房门的判断。在「且」下面,添加厨房门窗传感器,并把状态选择为「开着」即可。

这样,触发的条件就做完了,就能够实现「当厨房没有人超过 15 秒,且厨房门开着」的条件判断,执行对应的动作。

最后,在「就」这里,我添加了两个动作:一个是让 M3 网关以最大声播放《厨房门忘记关啦.mp3 😡》,并给手机推送通知。

做测试的时候手机收到的一堆通知...

为什么是「90%」

因为这个自动化实现了我 90% 的需求。还剩最后一点:没有「重复动作」相关的自动化指令。

试想,如果我也可以给 M3 网关的语音加上「重复」的条件,这个自动化就更完美了:如果人不在厨房又没关门,那么 M3 就可以「一直重复」地喊「厨房门忘记关啦!厨房门忘记关啦!厨房门忘记关啦!厨房门忘记关啦!……」,直到你关上为止。

感觉 Aqara 的工程师们可以再努力一下了,嘿嘿。

6
2