You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/developers/architecture.markdown
+3-3
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@ Before we dive into the Home Assistant architecture, let's get a clear overview
14
14
For more information about each part in this overview, <ahref='/blog/2014/12/26/home-control-home-automation-and-the-smart-home/'>check out our blog</a>. Here's the tl;dr version of the blog:
15
15
16
16
* Home Control is responsible for collecting information and controlling devices.
17
-
* Home Automation triggers command based on user configurations.
17
+
* Home Automation triggers commands based on user configurations.
18
18
* Smart Home triggers commands based on previous behaviour.
19
19
20
20
<pclass='img'>
@@ -25,9 +25,9 @@ For more information about each part in this overview, <a href='/blog/2014/12/26
25
25
Overview of the home automation landscape
26
26
</p>
27
27
28
-
The Home Assistant core is responsible for Home Control. Home Assistant has four parts to make this possible:
28
+
The Home Assistant core is responsible for Home Control. Home Assistant contains four parts which make this possible:
29
29
30
-
***Event Bus**: facilitates the firing and listening of events--the beating heart of Home Assistant.
30
+
***Event Bus**: facilitates the firing and listening of events -- the beating heart of Home Assistant.
31
31
***State Machine**: keeps track of the states of things and fires a `state_changed` event when a state has been changed.
32
32
***Service Registry**: listens on the event bus for `call_service` events and allows other code to register services.
33
33
***Timer**: sends a `time_changed` event every 1 second on the event bus.
Copy file name to clipboardExpand all lines: source/developers/architecture_components.markdown
+6-6
Original file line number
Diff line number
Diff line change
@@ -16,19 +16,19 @@ Home Assistant can be extended with **components**. Each component is responsibl
16
16
Diagram showing interaction between components and the Home Assistant core
17
17
</p>
18
18
19
-
There are two types of components within Home Assistant: components that interact with an Internet-of-Things domain, and components that respond to events that happen within Home Assistant. Read on to learn about each type!
19
+
There are two types of components within Home Assistant: components that interact with an Internet of Things domain, and components that respond to events that happen within Home Assistant. Read on to learn about each type!
20
20
21
21
#### {% linkable_title Components that interact with an Internet-of-Things domain %}
22
22
23
23
These components track devices within a specific domain and consist of a core part and platform-specific logic. These components make their information available via the State Machine and the Event Bus. The components also register services in the Service Registry to expose control of the devices.
24
24
25
-
For example, the built-in [`switch` component](/components/switch/) is responsible for interaction with different types of switches. A platform provides support for a particular kind or brand of device. For example, a switch could use a WeMo or Orvibo platform, and a light component might interact with the Hue or LiFX platform.
25
+
For example, the built-in [`switch` component](/components/switch/) is responsible for interaction with different types of switches. A platform provides support for a particular kind or brand of device. For example, a switch could use a WeMo or Orvibo platform and a light component might interact with the Hue or LIFX platform.
26
26
27
27
If you want to add support for a new platform, check out the [add new platform section](/developers/add_new_platform/).
28
28
29
29
#### {% linkable_title Components that respond to events that happen within Home Assistant %}
30
30
31
-
These components provide small pieces of home automation logic or services that do common tasks within your house.
31
+
These components provide small pieces of home automation logic or involve services that do common tasks within your house.
32
32
33
33
For example, the [`device_sun_light_trigger` component](/components/device_sun_light_trigger/) tracks the state of devices and the sun to make sure that the lights are turned on when it gets dark and people are home. The component uses logic like this:
34
34
@@ -50,11 +50,11 @@ For example, the [`device_sun_light_trigger` component](/components/device_sun_l
50
50
Turn on the lights
51
51
```
52
52
53
-
Look [here](https://github.com/home-assistant/home-assistant/blob/master/config/custom_components/example.py) for an extended example of a home automation component.
53
+
Look [here](https://github.com/home-assistant/home-assistant/blob/master/config/custom_components/example.py) for a comprehensive example of a home automation component.
54
54
55
55
### {% linkable_title The full picture %}
56
56
57
-
When we put all the different pieces of Home Assistant together, it's a close match for the initial home automation overview sketch. The smart home AI is not implemented yet, so it's not included in this picture.
57
+
When we put all the different pieces of Home Assistant together, it's a close match for the initial home automation overview sketch. The smart home AI has not been implemented yet, so it's not included in this picture.
@@ -63,4 +63,4 @@ When we put all the different pieces of Home Assistant together, it's a close ma
63
63
Overview of the full Home Assistant architecture with a couple of loaded components and platforms
64
64
</p>
65
65
66
-
The platform logic for components uses third-party Python libraries to communicate with the devices so we can leverage the great device libraries in the Python community.
66
+
The platform logic for components uses third-party Python libraries to communicate with the devices. Through this, we can leverage some of the best libraries in the Python community.
0 commit comments