#!/usr/bin/env python # -*- coding: utf-8 -*- # import config from devdi import props import logging from function.modules import motion_sensor_light from function.rooms import room, room_collection from function.videv import videv_switching_motion try: from config import APP_NAME as ROOT_LOGGER_NAME except ImportError: ROOT_LOGGER_NAME = 'root' logger = logging.getLogger(ROOT_LOGGER_NAME).getChild(__name__) loc = props.LOC_STW class stairway(room_collection): def __init__(self, mqtt_client, pd, vd): super().__init__(mqtt_client, pd, vd) self.stairway = stairway_stairway(mqtt_client, pd, vd) class stairway_stairway(room): def __init__(self, mqtt_client, pd, vd): # # Device initialisation # # http://shelly1-3494546A9364 self.main_light_shelly = pd.get(props.STG_SHE, loc, props.ROO_STF, props.FUN_MAL) self.motion_sensor_ff = pd.get(props.STG_ZFE, loc, props.ROO_STF, props.FUN_MSE) self.motion_sensor_gf = pd.get(props.STG_ZGW, loc, props.ROO_STG, props.FUN_MSE) super().__init__(mqtt_client, pd, vd) # # Functionality initialisation # self.motion_sensor_light = motion_sensor_light( self.main_light_shelly, self.main_light_shelly.set_output_0, self.motion_sensor_gf, self.motion_sensor_ff, timer_value=config.USER_ON_TIME_STAIRWAYS ) # # Virtual Device Interface # self.main_light_videv = videv_switching_motion( mqtt_client, config.TOPIC_STW_STAIRWAY_MAIN_LIGHT_VIDEV, self.main_light_shelly, self.main_light_shelly.KEY_OUTPUT_0, self.motion_sensor_light )