mirror of
https://github.com/home-assistant/developers.home-assistant.git
synced 2025-07-13 12:26:29 +00:00
Add entity architecture
This commit is contained in:
parent
53badfcda3
commit
472a76c146
37
docs/architecture_entities.md
Normal file
37
docs/architecture_entities.md
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
title: "Entity Architecture"
|
||||||
|
sidebar_label: Entity
|
||||||
|
---
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Configuration is provided by the configuration.yaml file or by a Config Entry from the Config Manager.
|
||||||
|
|
||||||
|
## Component
|
||||||
|
|
||||||
|
Examples of components: `light`, `switch`.
|
||||||
|
|
||||||
|
The component is responsible for defining the Abstract Entity Class and services to control the entities.
|
||||||
|
|
||||||
|
## Entity Component
|
||||||
|
|
||||||
|
The Entity Component is responsible for:
|
||||||
|
|
||||||
|
- Distributing the configuration to the platforms
|
||||||
|
- Forward config entries and discoveries
|
||||||
|
- Collect entities for service calls
|
||||||
|
- Optionally maintain a group of all entities
|
||||||
|
|
||||||
|
## Entity Platform
|
||||||
|
|
||||||
|
The Entity Platform manages all entities for the platform and polls them for updates if necessary.
|
||||||
|
|
||||||
|
When adding entities, the Entity Platform will query the Entity Registry to make sure that the entities to be added have the correct entity IDs.
|
||||||
|
|
||||||
|
## Platform
|
||||||
|
|
||||||
|
Examples of platforms: `light.hue`, `switch.wemo`.
|
||||||
|
|
||||||
|
Platform uses configuration to query the external device/service and add entities to the entity platform.
|
@ -3,7 +3,7 @@ title: "Hass.io Architecture"
|
|||||||
sidebar_label: Hass.io
|
sidebar_label: Hass.io
|
||||||
---
|
---
|
||||||
|
|
||||||
<img src='/img/en/architecture/hassio.png' alt='Architecture overview of Hass.io'>
|

|
||||||
|
|
||||||
## Host Control (HC)
|
## Host Control (HC)
|
||||||
|
|
||||||
|
@ -6,6 +6,8 @@
|
|||||||
"tagline": "All you need to start developing for Home Assistant",
|
"tagline": "All you need to start developing for Home Assistant",
|
||||||
"architecture_components": "Components Architecture",
|
"architecture_components": "Components Architecture",
|
||||||
"Components": "Components",
|
"Components": "Components",
|
||||||
|
"architecture_entities": "Entity Architecture",
|
||||||
|
"Entity": "Entity",
|
||||||
"architecture_hassio": "Hass.io Architecture",
|
"architecture_hassio": "Hass.io Architecture",
|
||||||
"Hass.io": "Hass.io",
|
"Hass.io": "Hass.io",
|
||||||
"architecture_index": "Architecture",
|
"architecture_index": "Architecture",
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
"Architecture": [
|
"Architecture": [
|
||||||
"architecture_index",
|
"architecture_index",
|
||||||
"architecture_components",
|
"architecture_components",
|
||||||
|
"architecture_entities",
|
||||||
"architecture_hassio"
|
"architecture_hassio"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 140 KiB |
Loading…
x
Reference in New Issue
Block a user