From 46ec8a85b60b63a62e70e5c4f52bd9a5cf4b4244 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Tue, 23 Apr 2024 21:31:08 +0200 Subject: [PATCH] Pass the job type when setting up homekit state change listeners (#116038) --- homeassistant/components/homekit/accessories.py | 8 +++++++- homeassistant/components/homekit/type_cameras.py | 3 +++ homeassistant/components/homekit/type_covers.py | 9 ++++++++- homeassistant/components/homekit/type_humidifiers.py | 9 ++++++++- 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/homeassistant/components/homekit/accessories.py b/homeassistant/components/homekit/accessories.py index f2e1a26b3de..40e86efe6a9 100644 --- a/homeassistant/components/homekit/accessories.py +++ b/homeassistant/components/homekit/accessories.py @@ -46,6 +46,7 @@ from homeassistant.core import ( Context, Event, EventStateChangedData, + HassJobType, HomeAssistant, State, callback as ha_callback, @@ -436,7 +437,10 @@ class HomeAccessory(Accessory): # type: ignore[misc] self._update_available_from_state(state) self._subscriptions.append( async_track_state_change_event( - self.hass, [self.entity_id], self.async_update_event_state_callback + self.hass, + [self.entity_id], + self.async_update_event_state_callback, + job_type=HassJobType.Callback, ) ) @@ -456,6 +460,7 @@ class HomeAccessory(Accessory): # type: ignore[misc] self.hass, [self.linked_battery_sensor], self.async_update_linked_battery_callback, + job_type=HassJobType.Callback, ) ) elif state is not None: @@ -468,6 +473,7 @@ class HomeAccessory(Accessory): # type: ignore[misc] self.hass, [self.linked_battery_charging_sensor], self.async_update_linked_battery_charging_callback, + job_type=HassJobType.Callback, ) ) elif battery_charging_state is None and state is not None: diff --git a/homeassistant/components/homekit/type_cameras.py b/homeassistant/components/homekit/type_cameras.py index d14fef8eabf..4f05bfbd687 100644 --- a/homeassistant/components/homekit/type_cameras.py +++ b/homeassistant/components/homekit/type_cameras.py @@ -20,6 +20,7 @@ from homeassistant.const import STATE_ON from homeassistant.core import ( Event, EventStateChangedData, + HassJobType, HomeAssistant, State, callback, @@ -272,6 +273,7 @@ class Camera(HomeAccessory, PyhapCamera): # type: ignore[misc] self.hass, [self.linked_motion_sensor], self._async_update_motion_state_event, + job_type=HassJobType.Callback, ) ) @@ -282,6 +284,7 @@ class Camera(HomeAccessory, PyhapCamera): # type: ignore[misc] self.hass, [self.linked_doorbell_sensor], self._async_update_doorbell_state_event, + job_type=HassJobType.Callback, ) ) diff --git a/homeassistant/components/homekit/type_covers.py b/homeassistant/components/homekit/type_covers.py index d14713b5f05..29dda418665 100644 --- a/homeassistant/components/homekit/type_covers.py +++ b/homeassistant/components/homekit/type_covers.py @@ -34,7 +34,13 @@ from homeassistant.const import ( STATE_OPEN, STATE_OPENING, ) -from homeassistant.core import Event, EventStateChangedData, State, callback +from homeassistant.core import ( + Event, + EventStateChangedData, + HassJobType, + State, + callback, +) from homeassistant.helpers.event import async_track_state_change_event from .accessories import TYPES, HomeAccessory @@ -136,6 +142,7 @@ class GarageDoorOpener(HomeAccessory): self.hass, [self.linked_obstruction_sensor], self._async_update_obstruction_event, + job_type=HassJobType.Callback, ) ) diff --git a/homeassistant/components/homekit/type_humidifiers.py b/homeassistant/components/homekit/type_humidifiers.py index 1fca441e800..5bdf5950f18 100644 --- a/homeassistant/components/homekit/type_humidifiers.py +++ b/homeassistant/components/homekit/type_humidifiers.py @@ -25,7 +25,13 @@ from homeassistant.const import ( SERVICE_TURN_ON, STATE_ON, ) -from homeassistant.core import Event, EventStateChangedData, State, callback +from homeassistant.core import ( + Event, + EventStateChangedData, + HassJobType, + State, + callback, +) from homeassistant.helpers.event import async_track_state_change_event from .accessories import TYPES, HomeAccessory @@ -184,6 +190,7 @@ class HumidifierDehumidifier(HomeAccessory): self.hass, [self.linked_humidity_sensor], self.async_update_current_humidity_event, + job_type=HassJobType.Callback, ) )