mirror of
https://github.com/home-assistant/core.git
synced 2025-07-22 20:57:21 +00:00
Clean up accessing event helpers via hass (#72011)
This commit is contained in:
parent
993e76a44d
commit
8f4caf4141
@ -16,6 +16,7 @@ from homeassistant.const import (
|
||||
)
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.dispatcher import dispatcher_send
|
||||
from homeassistant.helpers.event import async_track_point_in_time
|
||||
from homeassistant.util import dt as dt_util
|
||||
|
||||
from .const import (
|
||||
@ -65,8 +66,8 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
|
||||
await hass.async_add_executor_job(controller.open, baud)
|
||||
except NoDeviceError:
|
||||
_LOGGER.debug("Failed to connect. Retrying in 5 seconds")
|
||||
hass.helpers.event.async_track_point_in_time(
|
||||
open_connection, dt_util.utcnow() + timedelta(seconds=5)
|
||||
async_track_point_in_time(
|
||||
hass, open_connection, dt_util.utcnow() + timedelta(seconds=5)
|
||||
)
|
||||
return
|
||||
_LOGGER.debug("Established a connection with the alarmdecoder")
|
||||
|
@ -12,6 +12,7 @@ import async_timeout
|
||||
from homeassistant.const import MATCH_ALL, STATE_ON
|
||||
from homeassistant.core import HomeAssistant, State, callback
|
||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||
from homeassistant.helpers.event import async_track_state_change
|
||||
from homeassistant.helpers.significant_change import create_checker
|
||||
import homeassistant.util.dt as dt_util
|
||||
|
||||
@ -102,9 +103,7 @@ async def async_enable_proactive_mode(hass, smart_home_config):
|
||||
hass, smart_home_config, alexa_changed_entity, alexa_properties
|
||||
)
|
||||
|
||||
return hass.helpers.event.async_track_state_change(
|
||||
MATCH_ALL, async_entity_state_listener
|
||||
)
|
||||
return async_track_state_change(hass, MATCH_ALL, async_entity_state_listener)
|
||||
|
||||
|
||||
async def async_send_changereport_message(
|
||||
|
@ -54,6 +54,7 @@ from homeassistant.helpers.config_validation import ( # noqa: F401
|
||||
)
|
||||
from homeassistant.helpers.entity import Entity, EntityDescription
|
||||
from homeassistant.helpers.entity_component import EntityComponent
|
||||
from homeassistant.helpers.event import async_track_time_interval
|
||||
from homeassistant.helpers.network import get_url
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
from homeassistant.loader import bind_hass
|
||||
@ -398,7 +399,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
entity.async_update_token()
|
||||
entity.async_write_ha_state()
|
||||
|
||||
hass.helpers.event.async_track_time_interval(update_tokens, TOKEN_CHANGE_INTERVAL)
|
||||
async_track_time_interval(hass, update_tokens, TOKEN_CHANGE_INTERVAL)
|
||||
|
||||
component.async_register_entity_service(
|
||||
SERVICE_ENABLE_MOTION, {}, "async_enable_motion_detection"
|
||||
|
@ -33,7 +33,7 @@ from homeassistant.helpers.dispatcher import (
|
||||
async_dispatcher_send,
|
||||
)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.helpers.event import async_call_later
|
||||
from homeassistant.helpers.event import async_call_later, async_track_time_interval
|
||||
from homeassistant.helpers.service import verify_domain_control
|
||||
from homeassistant.helpers.storage import Store
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
@ -259,8 +259,8 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
async_load_platform(hass, Platform.WATER_HEATER, DOMAIN, {}, config)
|
||||
)
|
||||
|
||||
hass.helpers.event.async_track_time_interval(
|
||||
broker.async_update, config[DOMAIN][CONF_SCAN_INTERVAL]
|
||||
async_track_time_interval(
|
||||
hass, broker.async_update, config[DOMAIN][CONF_SCAN_INTERVAL]
|
||||
)
|
||||
|
||||
setup_service_functions(hass, broker)
|
||||
|
@ -11,6 +11,7 @@ from homeassistant.const import CONF_ACCESS_TOKEN, CONF_SCAN_INTERVAL, CONF_URL
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.event import async_track_time_interval
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
@ -56,9 +57,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
"""Update the FreeDNS entry."""
|
||||
await _update_freedns(hass, session, url, auth_token)
|
||||
|
||||
hass.helpers.event.async_track_time_interval(
|
||||
update_domain_callback, update_interval
|
||||
)
|
||||
async_track_time_interval(hass, update_domain_callback, update_interval)
|
||||
|
||||
return True
|
||||
|
||||
|
@ -6,7 +6,7 @@ import logging
|
||||
|
||||
from homeassistant.const import MATCH_ALL
|
||||
from homeassistant.core import CALLBACK_TYPE, HassJob, HomeAssistant, callback
|
||||
from homeassistant.helpers.event import async_call_later
|
||||
from homeassistant.helpers.event import async_call_later, async_track_state_change
|
||||
from homeassistant.helpers.significant_change import create_checker
|
||||
|
||||
from .const import DOMAIN
|
||||
@ -136,9 +136,7 @@ def async_enable_report_state(hass: HomeAssistant, google_config: AbstractConfig
|
||||
|
||||
await google_config.async_report_state_all({"devices": {"states": entities}})
|
||||
|
||||
unsub = hass.helpers.event.async_track_state_change(
|
||||
MATCH_ALL, async_entity_state_listener
|
||||
)
|
||||
unsub = async_track_state_change(hass, MATCH_ALL, async_entity_state_listener)
|
||||
|
||||
unsub = async_call_later(hass, INITIAL_REPORT_DELAY, initial_report)
|
||||
|
||||
|
@ -11,6 +11,7 @@ from homeassistant.const import CONF_DOMAIN, CONF_PASSWORD, CONF_TIMEOUT, CONF_U
|
||||
from homeassistant.core import HomeAssistant
|
||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.event import async_track_time_interval
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
@ -56,7 +57,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
"""Update the Google Domains entry."""
|
||||
await _update_google_domains(hass, session, domain, user, password, timeout)
|
||||
|
||||
hass.helpers.event.async_track_time_interval(update_domain_interval, INTERVAL)
|
||||
async_track_time_interval(hass, update_domain_interval, INTERVAL)
|
||||
|
||||
return True
|
||||
|
||||
|
@ -41,6 +41,7 @@ from homeassistant.helpers.device_registry import (
|
||||
async_get_registry,
|
||||
)
|
||||
from homeassistant.helpers.entity import DeviceInfo
|
||||
from homeassistant.helpers.event import async_track_point_in_utc_time
|
||||
from homeassistant.helpers.storage import Store
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
|
||||
@ -638,8 +639,8 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa:
|
||||
except HassioAPIError as err:
|
||||
_LOGGER.warning("Can't read Supervisor data: %s", err)
|
||||
|
||||
hass.helpers.event.async_track_point_in_utc_time(
|
||||
update_info_data, utcnow() + HASSIO_UPDATE_INTERVAL
|
||||
async_track_point_in_utc_time(
|
||||
hass, update_info_data, utcnow() + HASSIO_UPDATE_INTERVAL
|
||||
)
|
||||
|
||||
# Fetch data
|
||||
|
@ -11,6 +11,7 @@ from pyhomematic.devicetypes.generic import HMGeneric
|
||||
from homeassistant.const import ATTR_NAME
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity, EntityDescription
|
||||
from homeassistant.helpers.event import track_time_interval
|
||||
|
||||
from .const import (
|
||||
ATTR_ADDRESS,
|
||||
@ -222,12 +223,10 @@ class HMHub(Entity):
|
||||
self._state = None
|
||||
|
||||
# Load data
|
||||
self.hass.helpers.event.track_time_interval(self._update_hub, SCAN_INTERVAL_HUB)
|
||||
track_time_interval(self.hass, self._update_hub, SCAN_INTERVAL_HUB)
|
||||
self.hass.add_job(self._update_hub, None)
|
||||
|
||||
self.hass.helpers.event.track_time_interval(
|
||||
self._update_variables, SCAN_INTERVAL_VARIABLES
|
||||
)
|
||||
track_time_interval(self.hass, self._update_variables, SCAN_INTERVAL_VARIABLES)
|
||||
self.hass.add_job(self._update_variables, None)
|
||||
|
||||
@property
|
||||
|
@ -16,6 +16,7 @@ from homeassistant.helpers.aiohttp_client import (
|
||||
async_get_clientsession,
|
||||
)
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.event import async_track_time_interval
|
||||
from homeassistant.helpers.typing import ConfigType
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
@ -76,7 +77,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
|
||||
"""Update the NO-IP entry."""
|
||||
await _update_no_ip(hass, session, domain, auth_str, timeout)
|
||||
|
||||
hass.helpers.event.async_track_time_interval(update_domain_interval, INTERVAL)
|
||||
async_track_time_interval(hass, update_domain_interval, INTERVAL)
|
||||
|
||||
return True
|
||||
|
||||
|
@ -79,7 +79,11 @@ from homeassistant.core import HomeAssistant, callback
|
||||
from homeassistant.exceptions import TemplateError
|
||||
from homeassistant.helpers import config_validation as cv
|
||||
from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
||||
from homeassistant.helpers.event import TrackTemplate, async_track_template_result
|
||||
from homeassistant.helpers.event import (
|
||||
TrackTemplate,
|
||||
async_track_state_change_event,
|
||||
async_track_template_result,
|
||||
)
|
||||
from homeassistant.helpers.reload import async_setup_reload_service
|
||||
from homeassistant.helpers.service import async_call_from_config
|
||||
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
|
||||
@ -202,8 +206,8 @@ class UniversalMediaPlayer(MediaPlayerEntity):
|
||||
depend.append(entity[0])
|
||||
|
||||
self.async_on_remove(
|
||||
self.hass.helpers.event.async_track_state_change_event(
|
||||
list(set(depend)), _async_on_dependency_update
|
||||
async_track_state_change_event(
|
||||
self.hass, list(set(depend)), _async_on_dependency_update
|
||||
)
|
||||
)
|
||||
|
||||
|
@ -15,6 +15,10 @@ from homeassistant import core
|
||||
from homeassistant.components.websocket_api.const import JSON_DUMP
|
||||
from homeassistant.const import EVENT_STATE_CHANGED
|
||||
from homeassistant.helpers.entityfilter import convert_include_exclude_filter
|
||||
from homeassistant.helpers.event import (
|
||||
async_track_state_change,
|
||||
async_track_state_change_event,
|
||||
)
|
||||
from homeassistant.helpers.json import JSONEncoder
|
||||
|
||||
# mypy: allow-untyped-calls, allow-untyped-defs, no-check-untyped-defs
|
||||
@ -134,9 +138,7 @@ async def state_changed_helper(hass):
|
||||
event.set()
|
||||
|
||||
for idx in range(1000):
|
||||
hass.helpers.event.async_track_state_change(
|
||||
f"{entity_id}{idx}", listener, "off", "on"
|
||||
)
|
||||
async_track_state_change(hass, f"{entity_id}{idx}", listener, "off", "on")
|
||||
event_data = {
|
||||
"entity_id": f"{entity_id}0",
|
||||
"old_state": core.State(entity_id, "off"),
|
||||
@ -166,8 +168,8 @@ async def state_changed_event_helper(hass):
|
||||
nonlocal count
|
||||
count += 1
|
||||
|
||||
hass.helpers.event.async_track_state_change_event(
|
||||
[f"{entity_id}{idx}" for idx in range(1000)], listener
|
||||
async_track_state_change_event(
|
||||
hass, [f"{entity_id}{idx}" for idx in range(1000)], listener
|
||||
)
|
||||
|
||||
event_data = {
|
||||
@ -201,8 +203,8 @@ async def state_changed_event_filter_helper(hass):
|
||||
nonlocal count
|
||||
count += 1
|
||||
|
||||
hass.helpers.event.async_track_state_change_event(
|
||||
[f"{entity_id}{idx}" for idx in range(1000)], listener
|
||||
async_track_state_change_event(
|
||||
hass, [f"{entity_id}{idx}" for idx in range(1000)], listener
|
||||
)
|
||||
|
||||
event_data = {
|
||||
|
@ -16,6 +16,7 @@ from homeassistant.const import (
|
||||
STATE_UNKNOWN,
|
||||
)
|
||||
from homeassistant.core import Context, callback
|
||||
from homeassistant.helpers.event import async_track_state_change_event
|
||||
from homeassistant.setup import async_setup_component
|
||||
|
||||
from tests.common import get_fixture_path
|
||||
@ -709,8 +710,8 @@ async def test_template_triggers(hass):
|
||||
assert hass.states.get("binary_sensor.test_binary").state == STATE_OFF
|
||||
|
||||
events = []
|
||||
hass.helpers.event.async_track_state_change_event(
|
||||
"binary_sensor.test_binary", callback(lambda event: events.append(event))
|
||||
async_track_state_change_event(
|
||||
hass, "binary_sensor.test_binary", callback(lambda event: events.append(event))
|
||||
)
|
||||
|
||||
context = Context()
|
||||
@ -748,8 +749,8 @@ async def test_state_triggers(hass):
|
||||
assert hass.states.get("binary_sensor.test_binary").state == STATE_OFF
|
||||
|
||||
events = []
|
||||
hass.helpers.event.async_track_state_change_event(
|
||||
"binary_sensor.test_binary", callback(lambda event: events.append(event))
|
||||
async_track_state_change_event(
|
||||
hass, "binary_sensor.test_binary", callback(lambda event: events.append(event))
|
||||
)
|
||||
|
||||
context = Context()
|
||||
|
@ -21,6 +21,7 @@ from homeassistant.const import (
|
||||
STATE_UNKNOWN,
|
||||
)
|
||||
from homeassistant.core import Context, callback
|
||||
from homeassistant.helpers.event import async_track_state_change_event
|
||||
from homeassistant.setup import async_setup_component
|
||||
|
||||
from tests.common import async_mock_service, get_fixture_path
|
||||
@ -1136,8 +1137,8 @@ async def test_master_state_with_template(hass):
|
||||
|
||||
events = []
|
||||
|
||||
hass.helpers.event.async_track_state_change_event(
|
||||
"media_player.tv", callback(lambda event: events.append(event))
|
||||
async_track_state_change_event(
|
||||
hass, "media_player.tv", callback(lambda event: events.append(event))
|
||||
)
|
||||
|
||||
context = Context()
|
||||
|
@ -21,6 +21,7 @@ from homeassistant.helpers.event import (
|
||||
TrackTemplate,
|
||||
TrackTemplateResult,
|
||||
async_call_later,
|
||||
async_track_entity_registry_updated_event,
|
||||
async_track_point_in_time,
|
||||
async_track_point_in_utc_time,
|
||||
async_track_same_state,
|
||||
@ -4230,12 +4231,10 @@ async def test_track_point_in_utc_time_cancel(hass):
|
||||
with pytest.raises(TypeError):
|
||||
track_point_in_utc_time("nothass", run_callback, utc_now)
|
||||
|
||||
unsub1 = hass.helpers.event.track_point_in_utc_time(
|
||||
run_callback, utc_now + timedelta(seconds=0.1)
|
||||
)
|
||||
hass.helpers.event.track_point_in_utc_time(
|
||||
run_callback, utc_now + timedelta(seconds=0.1)
|
||||
unsub1 = track_point_in_utc_time(
|
||||
hass, run_callback, utc_now + timedelta(seconds=0.1)
|
||||
)
|
||||
track_point_in_utc_time(hass, run_callback, utc_now + timedelta(seconds=0.1))
|
||||
|
||||
unsub1()
|
||||
|
||||
@ -4262,12 +4261,10 @@ async def test_async_track_point_in_time_cancel(hass):
|
||||
utc_now = dt_util.utcnow()
|
||||
hst_now = utc_now.astimezone(hst_tz)
|
||||
|
||||
unsub1 = hass.helpers.event.async_track_point_in_time(
|
||||
run_callback, hst_now + timedelta(seconds=0.1)
|
||||
)
|
||||
hass.helpers.event.async_track_point_in_time(
|
||||
run_callback, hst_now + timedelta(seconds=0.1)
|
||||
unsub1 = async_track_point_in_time(
|
||||
hass, run_callback, hst_now + timedelta(seconds=0.1)
|
||||
)
|
||||
async_track_point_in_time(hass, run_callback, hst_now + timedelta(seconds=0.1))
|
||||
|
||||
unsub1()
|
||||
|
||||
@ -4292,11 +4289,9 @@ async def test_async_track_entity_registry_updated_event(hass):
|
||||
def run_callback(event):
|
||||
event_data.append(event.data)
|
||||
|
||||
unsub1 = hass.helpers.event.async_track_entity_registry_updated_event(
|
||||
entity_id, run_callback
|
||||
)
|
||||
unsub2 = hass.helpers.event.async_track_entity_registry_updated_event(
|
||||
new_entity_id, run_callback
|
||||
unsub1 = async_track_entity_registry_updated_event(hass, entity_id, run_callback)
|
||||
unsub2 = async_track_entity_registry_updated_event(
|
||||
hass, new_entity_id, run_callback
|
||||
)
|
||||
hass.bus.async_fire(
|
||||
EVENT_ENTITY_REGISTRY_UPDATED, {"action": "create", "entity_id": entity_id}
|
||||
@ -4362,12 +4357,10 @@ async def test_async_track_entity_registry_updated_event_with_a_callback_that_th
|
||||
def failing_callback(event):
|
||||
raise ValueError
|
||||
|
||||
unsub1 = hass.helpers.event.async_track_entity_registry_updated_event(
|
||||
entity_id, failing_callback
|
||||
)
|
||||
unsub2 = hass.helpers.event.async_track_entity_registry_updated_event(
|
||||
entity_id, run_callback
|
||||
unsub1 = async_track_entity_registry_updated_event(
|
||||
hass, entity_id, failing_callback
|
||||
)
|
||||
unsub2 = async_track_entity_registry_updated_event(hass, entity_id, run_callback)
|
||||
hass.bus.async_fire(
|
||||
EVENT_ENTITY_REGISTRY_UPDATED, {"action": "create", "entity_id": entity_id}
|
||||
)
|
||||
@ -4380,11 +4373,11 @@ async def test_async_track_entity_registry_updated_event_with_a_callback_that_th
|
||||
|
||||
async def test_async_track_entity_registry_updated_event_with_empty_list(hass):
|
||||
"""Test async_track_entity_registry_updated_event passing an empty list of entities."""
|
||||
unsub_single = hass.helpers.event.async_track_entity_registry_updated_event(
|
||||
[], ha.callback(lambda event: None)
|
||||
unsub_single = async_track_entity_registry_updated_event(
|
||||
hass, [], ha.callback(lambda event: None)
|
||||
)
|
||||
unsub_single2 = hass.helpers.event.async_track_entity_registry_updated_event(
|
||||
[], ha.callback(lambda event: None)
|
||||
unsub_single2 = async_track_entity_registry_updated_event(
|
||||
hass, [], ha.callback(lambda event: None)
|
||||
)
|
||||
|
||||
unsub_single2()
|
||||
|
Loading…
x
Reference in New Issue
Block a user