Files
2026-03-10 07:08:59 +00:00

36 lines
1.3 KiB
Python

import appdaemon.plugins.hass.hassapi as hass
import datetime
#
# App to control main room light based on Aqara FP1 presence sensor
#
# Args:
# presence_sensor: presence sensor entity_id (default: sensor.presence_aqara_mainroom_presence_event)
# light: light entity_id (default: light.light_mainroom_pc_spotlight)
#
# Release Notes
#
# Version 1.0:
# Initial Version
class MainRoomLightControl(hass.Hass):
def initialize(self):
self.presence_sensor = self.args.get("presence_sensor", "sensor.presence_aqara_mainroom_presence_event")
self.light = self.args.get("light", "light.light_mainroom_pc_spotlight")
self.log("Initializing light control application")
self.log(f"Presence sensor: {self.presence_sensor}")
self.log(f"Light: {self.light}")
# Listen for presence events
self.listen_state(self.state_change, self.args['presence_sensor'])
self.log("Presence event handler registered")
def state_change(self, entity, attribute, old, new, kwargs):
self.log(f"entity: {entity}, attribute: {attribute}, old: {old}, new: {new}")
if new == "away":
self.log("Status 'away' - turning off light")
self.turn_off(self.light)
else:
self.log("Presence detected - turning on light")
self.turn_on(self.light)