架构
在深入研究 Home Assistant 架构之前,让我们先全面了解一下家庭自动化领域的整体情况。这样,我们就能展示 Home Assistant 的不同部分是如何融入其中的。
家庭控制负责收集信息和控制设备。
家庭自动化根据用户配置触发命令。
智能家居根据先前的行为触发命令。
Home Assistant 核心负责家庭控制。Home Assistant 包含四个使其成为可能的部分:
事件总线:便于事件的触发和监听 —— 这是 Home Assistant 的核心。
状态机:跟踪事物的状态,并在状态发生变化时触发 “state_changed” 事件。
服务注册表:在事件总线上监听 “call_service” 事件,并允许其他代码注册服务。
定时器:每秒在事件总线上发送一次 “time_changed” 事件。