diff --git a/apps/room_control b/apps/room_control index c9cc841..4513437 160000 --- a/apps/room_control +++ b/apps/room_control @@ -1 +1 @@ -Subproject commit c9cc841d58ca45dac8557576913249ed807fef2c +Subproject commit 4513437bf4e982b603c61b3e5c0136fb872d17c4 diff --git a/apps/scene_detect.py b/apps/scene_detect.py index a5e13b0..a247b52 100644 --- a/apps/scene_detect.py +++ b/apps/scene_detect.py @@ -1,5 +1,6 @@ from appdaemon.plugins.hass.hassapi import Hass + class SceneDetector(Hass): def initialize(self): self.scene_entity = self.args['scene'] if self.args['scene'].startswith('scene.') else f'scene.{self.args["scene"]}' @@ -8,17 +9,17 @@ class SceneDetector(Hass): self.listen_event(self.event_callback, event='call_service', domain='scene', service='turn_on') self.log(f'Waiting for {self.scene_entity.friendly_name} to activate') - def event_callback(self, event_name, data, cb_args): + async def event_callback(self, event_name, data, cb_args): entity_id = data['service_data']['entity_id'] if entity_id == self.scene_entity.entity_id: - self.scene_detected() + await self.scene_detected() - def scene_detected(self): + async def scene_detected(self): self.log(f'Detected scene activation: {self.scene_entity.friendly_name}') class MotionCanceller(SceneDetector): - def scene_detected(self): - super().scene_detected() - app = self.get_app(self.args['app']) + async def scene_detected(self): + await super().scene_detected() + app = await self.get_app(self.args['app']) app.cancel_motion_callback(new='off') \ No newline at end of file