home-assistant.io/source/developers/architecture.markdown
2016-04-16 15:06:08 -07:00

1.8 KiB

layout, title, description, date, sidebar, comments, sharing, footer
layout title description date sidebar comments sharing footer
page Architecture Overview of the Home Assistant architecture. 2014-12-18 21:49 true false true true

Before we dive into the Home Assistant architecture, it is important to get a clear overview of the home automation landscape as a whole. This will allow us to show how the different parts of Home Assistant fit in the picture. For a more lengthy discussion about what each part in this overview is responsible for, check out our blog. A tl;dr version of the blog:

  • Home Control is responsible for collecting information on- and controlling devices.
  • Home Automation triggers commands based on user configurations.
  • Smart Home triggers commands based on previous behavior.

Home Automation landscape Overview of the home automation landscape.

The Home Assistant core is responsible for Home Control. It has four parts to make this possible:

  • The Event Bus facilitates the firing and listening of events. This is the beating heart of Home Assistant.
  • The State Machine keeps track of the states of things. Fires a state_changed event when a state has been changed.
  • The Service Registry listens on the event bus for call_service events and allows other code to register services.
  • The Timer will send a time_changed event every 1 second on the event bus.

Overview of the Home Assistant core architecture