Home Assistant Unofficial Reference
2024.12.1
coordinator.py
Go to the documentation of this file.
1
"""DataUpdateCoordinator for the airtouch integration."""
2
3
import
logging
4
5
from
airtouch4pyapi.airtouch
import
AirTouchStatus
6
7
from
homeassistant.components.climate
import
SCAN_INTERVAL
8
from
homeassistant.helpers.update_coordinator
import
DataUpdateCoordinator, UpdateFailed
9
10
from
.const
import
DOMAIN
11
12
_LOGGER = logging.getLogger(__name__)
13
14
15
class
AirtouchDataUpdateCoordinator
(
DataUpdateCoordinator
):
16
"""Class to manage fetching Airtouch data."""
17
18
def
__init__
(self, hass, airtouch):
19
"""Initialize global Airtouch data updater."""
20
self.
airtouch
airtouch = airtouch
21
22
super().
__init__
(
23
hass,
24
_LOGGER,
25
name=DOMAIN,
26
update_interval=SCAN_INTERVAL,
27
)
28
29
async
def
_async_update_data
(self):
30
"""Fetch data from Airtouch."""
31
await self.
airtouch
airtouch.UpdateInfo()
32
if
self.
airtouch
airtouch.Status != AirTouchStatus.OK:
33
raise
UpdateFailed
(
"Airtouch connection issue"
)
34
return
{
35
"acs"
: [
36
{
"ac_number"
: ac.AcNumber,
"is_on"
: ac.IsOn}
37
for
ac
in
self.
airtouch
airtouch.GetAcs()
38
],
39
"groups"
: [
40
{
41
"group_number"
: group.GroupNumber,
42
"group_name"
: group.GroupName,
43
"is_on"
: group.IsOn,
44
}
45
for
group
in
self.
airtouch
airtouch.GetGroups()
46
],
47
}
homeassistant.components.airtouch4.coordinator.AirtouchDataUpdateCoordinator
Definition:
coordinator.py:15
homeassistant.components.airtouch4.coordinator.AirtouchDataUpdateCoordinator.__init__
def __init__(self, hass, airtouch)
Definition:
coordinator.py:18
homeassistant.components.airtouch4.coordinator.AirtouchDataUpdateCoordinator.airtouch
airtouch
Definition:
coordinator.py:20
homeassistant.components.airtouch4.coordinator.AirtouchDataUpdateCoordinator._async_update_data
def _async_update_data(self)
Definition:
coordinator.py:29
homeassistant.helpers.update_coordinator.DataUpdateCoordinator
Definition:
update_coordinator.py:61
homeassistant.helpers.update_coordinator.UpdateFailed
Definition:
update_coordinator.py:47
homeassistant.components.climate
Definition:
__init__.py:1
homeassistant.helpers.update_coordinator
Definition:
update_coordinator.py:1
core
homeassistant
components
airtouch4
coordinator.py
Generated by
1.9.1