mirror of
https://github.com/natekspencer/hacs-oasis_mini.git
synced 2025-12-06 18:44:14 -05:00
Pass config entry to coordinator
This commit is contained in:
@@ -110,7 +110,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: OasisDeviceConfigEntry)
|
|||||||
raise
|
raise
|
||||||
|
|
||||||
mqtt_client = OasisMqttClient()
|
mqtt_client = OasisMqttClient()
|
||||||
coordinator = OasisDeviceCoordinator(hass, cloud_client, mqtt_client)
|
coordinator = OasisDeviceCoordinator(hass, entry, cloud_client, mqtt_client)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
mqtt_client.start()
|
mqtt_client.start()
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ from __future__ import annotations
|
|||||||
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
import logging
|
import logging
|
||||||
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
import async_timeout
|
import async_timeout
|
||||||
|
|
||||||
@@ -15,6 +16,9 @@ import homeassistant.util.dt as dt_util
|
|||||||
from .const import DOMAIN
|
from .const import DOMAIN
|
||||||
from .pyoasiscontrol import OasisCloudClient, OasisDevice, OasisMqttClient
|
from .pyoasiscontrol import OasisCloudClient, OasisDevice, OasisMqttClient
|
||||||
|
|
||||||
|
if TYPE_CHECKING:
|
||||||
|
from . import OasisDeviceConfigEntry
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@@ -27,6 +31,7 @@ class OasisDeviceCoordinator(DataUpdateCoordinator[list[OasisDevice]]):
|
|||||||
def __init__(
|
def __init__(
|
||||||
self,
|
self,
|
||||||
hass: HomeAssistant,
|
hass: HomeAssistant,
|
||||||
|
config_entry: OasisDeviceConfigEntry,
|
||||||
cloud_client: OasisCloudClient,
|
cloud_client: OasisCloudClient,
|
||||||
mqtt_client: OasisMqttClient,
|
mqtt_client: OasisMqttClient,
|
||||||
) -> None:
|
) -> None:
|
||||||
@@ -34,12 +39,14 @@ class OasisDeviceCoordinator(DataUpdateCoordinator[list[OasisDevice]]):
|
|||||||
Create an OasisDeviceCoordinator that manages OasisDevice discovery and updates using cloud and MQTT clients.
|
Create an OasisDeviceCoordinator that manages OasisDevice discovery and updates using cloud and MQTT clients.
|
||||||
|
|
||||||
Parameters:
|
Parameters:
|
||||||
|
config_entry (OasisDeviceConfigEntry): The config entry whose runtime data contains device serial numbers.
|
||||||
cloud_client (OasisCloudClient): Client for communicating with the Oasis cloud API and fetching device data.
|
cloud_client (OasisCloudClient): Client for communicating with the Oasis cloud API and fetching device data.
|
||||||
mqtt_client (OasisMqttClient): Client for registering devices and coordinating MQTT-based readiness/status.
|
mqtt_client (OasisMqttClient): Client for registering devices and coordinating MQTT-based readiness/status.
|
||||||
"""
|
"""
|
||||||
super().__init__(
|
super().__init__(
|
||||||
hass,
|
hass,
|
||||||
_LOGGER,
|
_LOGGER,
|
||||||
|
config_entry=config_entry,
|
||||||
name=DOMAIN,
|
name=DOMAIN,
|
||||||
update_interval=timedelta(minutes=10),
|
update_interval=timedelta(minutes=10),
|
||||||
always_update=False,
|
always_update=False,
|
||||||
|
|||||||
Reference in New Issue
Block a user