Home Assistant Unofficial Reference
2024.12.1
entity.py
Go to the documentation of this file.
1
"""The Control4 integration."""
2
3
from
__future__
import
annotations
4
5
from
typing
import
Any
6
7
from
homeassistant.helpers.device_registry
import
DeviceInfo
8
from
homeassistant.helpers.update_coordinator
import
(
9
CoordinatorEntity,
10
DataUpdateCoordinator,
11
)
12
13
from
.const
import
CONF_CONTROLLER_UNIQUE_ID, DOMAIN
14
15
16
class
Control4Entity
(
CoordinatorEntity
[Any]):
17
"""Base entity for Control4."""
18
19
def
__init__
(
20
self,
21
entry_data: dict,
22
coordinator: DataUpdateCoordinator[Any],
23
name: str |
None
,
24
idx: int,
25
device_name: str |
None
,
26
device_manufacturer: str |
None
,
27
device_model: str |
None
,
28
device_id: int,
29
) ->
None
:
30
"""Initialize a Control4 entity."""
31
super().
__init__
(coordinator)
32
self.
entry_data
entry_data = entry_data
33
self.
_attr_name
_attr_name = name
34
self.
_attr_unique_id
_attr_unique_id =
str
(idx)
35
self.
_idx
_idx = idx
36
self.
_controller_unique_id
_controller_unique_id = entry_data[CONF_CONTROLLER_UNIQUE_ID]
37
self.
_device_name
_device_name = device_name
38
self.
_device_manufacturer
_device_manufacturer = device_manufacturer
39
self.
_device_model
_device_model = device_model
40
self.
_device_id
_device_id = device_id
41
42
@property
43
def
device_info
(self) -> DeviceInfo:
44
"""Return info of parent Control4 device of entity."""
45
return
DeviceInfo
(
46
identifiers={(DOMAIN,
str
(self.
_device_id
_device_id))},
47
manufacturer=self.
_device_manufacturer
_device_manufacturer,
48
model=self.
_device_model
_device_model,
49
name=self.
_device_name
_device_name,
50
via_device=(DOMAIN, self.
_controller_unique_id
_controller_unique_id),
51
)
homeassistant.components.control4.entity.Control4Entity
Definition:
entity.py:16
homeassistant.components.control4.entity.Control4Entity._attr_unique_id
_attr_unique_id
Definition:
entity.py:34
homeassistant.components.control4.entity.Control4Entity.entry_data
entry_data
Definition:
entity.py:32
homeassistant.components.control4.entity.Control4Entity.device_info
DeviceInfo device_info(self)
Definition:
entity.py:43
homeassistant.components.control4.entity.Control4Entity._device_model
_device_model
Definition:
entity.py:39
homeassistant.components.control4.entity.Control4Entity._device_manufacturer
_device_manufacturer
Definition:
entity.py:38
homeassistant.components.control4.entity.Control4Entity._controller_unique_id
_controller_unique_id
Definition:
entity.py:36
homeassistant.components.control4.entity.Control4Entity._device_name
_device_name
Definition:
entity.py:37
homeassistant.components.control4.entity.Control4Entity.__init__
None __init__(self, dict entry_data, DataUpdateCoordinator[Any] coordinator, str|None name, int idx, str|None device_name, str|None device_manufacturer, str|None device_model, int device_id)
Definition:
entity.py:29
homeassistant.components.control4.entity.Control4Entity._attr_name
_attr_name
Definition:
entity.py:33
homeassistant.components.control4.entity.Control4Entity._device_id
_device_id
Definition:
entity.py:40
homeassistant.components.control4.entity.Control4Entity._idx
_idx
Definition:
entity.py:35
homeassistant.helpers.device_registry.DeviceInfo
Definition:
device_registry.py:98
homeassistant.helpers.update_coordinator.CoordinatorEntity
Definition:
update_coordinator.py:568
homeassistant.components.bond.const.str
str
Definition:
const.py:7
homeassistant.helpers.device_registry
Definition:
device_registry.py:1
homeassistant.helpers.update_coordinator
Definition:
update_coordinator.py:1
core
homeassistant
components
control4
entity.py
Generated by
1.9.1