在小米的智能家居设备中,有些智能家居设备只有开或者关功能比如一些灯具、和红外设备,而插座基本上都实现了开/关的逻辑。如果要用单个按键事件去触发空调的开/关,就要用到本次介绍单键多态用法。
下面我们以绿米双键插座为例,为按键事件添加两个单击智能,一个对应开空调,一个对应关空调。
开空调智能逻辑是:
1、首次按下开空调智能后,禁用单击开空调智能。
2、调用小爱音箱播放文本:空调开啦。
3、启用单击关空调智能。
关空调智能只要反过来即可,这样就实现了用单键让原本不支持开/关逻辑的设备来支持状态反转。但这里也有一个缺陷,因为如果直接用小爱音箱操作了空调开/关,会导致该单键多态的智能状态不一致。因此需要再创建两条批量控制,分别用于打开和关闭空调并内行智能启停逻辑,并在小爱训练中将开关空调的语音指令调用对应的批量控制,这样就实现了完整的逻辑闭环。
因此为保证状态的一致性,对设备开关的所有途径都要做状态同步,其中可能涉及的环节:
1、自动化智能开关时同步状态。
2、小爱音箱的语音开关时同步状态。
3、APP不要单独控制开关,而使用对应的批量控制同步状态。
4、其他途径控制了开关时同步状态。(比如无线按键、墙壁开关都可以控制同一设备时)
进一步使用单键多态,还可以把支持开/关逻辑和只有单开单关的灯具组队控制,同时让无线按键跟墙壁开关实现开/关状态同步。当然智能写起来就更复杂一些。但核心还是单键多条智能切换,小爱训练拦截语音指令调用批量控制并切换智能状态。