mos.ru power sensors
This commit is contained in:
@@ -13,14 +13,16 @@ import globals
|
||||
# Initial Version
|
||||
|
||||
class CurtainSecurity(hass.Hass):
|
||||
listen_event_handle_list = []
|
||||
def initialize(self):
|
||||
if not globals.check_args(self, ['curtain', 'door']):
|
||||
return
|
||||
self.listen_event(self.curtain_changed, event='call_service', entity_id = self.args['curtain'])
|
||||
# self.listen_event_handle_list = []
|
||||
# locks = globals.get_group_entities(self, "group.all_locks")
|
||||
# for lock in locks:
|
||||
# self.listen_event_handle_list.append(self.listen_state(self.lock_state_changed, lock))
|
||||
self.listen_event_handle_list.append(self.listen_event(self.curtain_changed, event='call_service', entity_id = self.args['curtain']))
|
||||
|
||||
def terminate(self):
|
||||
if self.listen_event_handle_list != None:
|
||||
for listen_event_handle in self.listen_event_handle_list:
|
||||
self.cancel_listen_event(listen_event_handle)
|
||||
|
||||
def curtain_changed(self, event_name, data, kwargs):
|
||||
if 'constraint' in self.args and not self.constrain_input_boolean(self.args['constraint']):
|
||||
|
||||
@@ -36,6 +36,14 @@ class SecuritySensorsReport(hass.Hass):
|
||||
alarm_panel_state = self.get_state(self.args['ha_panel'])
|
||||
if alarm_panel_state != "armed_away":
|
||||
return
|
||||
|
||||
vacuum_state = "docked"
|
||||
if "vacuum" in self.args:
|
||||
vacuum_state = self.get_state(self.args["vacuum"])
|
||||
#Если работает пылесос и сработал датчик движения
|
||||
if vacuum_state == 'cleaning' and 'binary_sensor.motion' in entity:
|
||||
self.log('Motion sensor is triggered, but vacuum is cleaning.')
|
||||
return
|
||||
self.alarm_triggered(entity, old, new)
|
||||
|
||||
def alarm_triggered(self, entity, old, new):
|
||||
|
||||
@@ -4,6 +4,7 @@ security_sensors:
|
||||
sensor: group.security_sensors
|
||||
constraint: input_boolean.security_sensors_report
|
||||
ha_panel: alarm_control_panel.ha_alarm
|
||||
vacuum: vacuum.xiaomi_vacuum_cleaner
|
||||
notify: telegram
|
||||
global_dependencies:
|
||||
- globals
|
||||
Reference in New Issue
Block a user