def initialize(self, user_name, password): """ Initializes the system Initializes flow libraries and connects to server Logs in as user and tries to find the controller device, caches if found :param str user_name: flow user name :param str password: flow user password :raises ControllerNotFound, LoginFailed, FlowLibraryError """ flow_url, flow_key, flow_secret = get_server_details() try: flow_initialize(flow_url, flow_key, flow_secret) except FlowException as flow_error: if flow_error.connection_error: self.check_connection_status() LOGGER.exception(flow_error) raise FlowLibraryError("Failed to initialize flow library") try: self.__flow_user = FlowUser(user_name, password) except FlowException as flow_error: if flow_error.connection_error: self.check_connection_status() LOGGER.exception(flow_error) raise LoginFailed() except ValueError as value_error: LOGGER.exception(value_error) raise LoginFailed() try: self.__controller_device = self.__flow_user.find_device( CONTROLLER_DEVICE_TYPE) except FlowException as flow_error: if flow_error.connection_error: self.check_connection_status() LOGGER.exception(flow_error) raise ControllerNotFound() # enable message reception self.__flow_user.enable_message_reception( ClimateControlModel.message_received_callback)
def initialize(self, user_name, password): """ Initializes the system Initializes flow libraries and connects to server Logs in as user and tries to find the controller device, caches if found :param str user_name: flow user name :param str password: flow user password :raises ControllerNotFound, LoginFailed, FlowLibraryError """ flow_url, flow_key, flow_secret = get_server_details() try: flow_initialize(flow_url, flow_key, flow_secret) except FlowException as flow_error: if flow_error.connection_error: self.check_connection_status() LOGGER.exception(flow_error) raise FlowLibraryError("Failed to initialize flow library") try: self.__flow_user = FlowUser(user_name, password) except FlowException as flow_error: if flow_error.connection_error: self.check_connection_status() LOGGER.exception(flow_error) raise LoginFailed() except ValueError as value_error: LOGGER.exception(value_error) raise LoginFailed() try: self.__controller_device = self.__flow_user.find_device(CONTROLLER_DEVICE_TYPE) except FlowException as flow_error: if flow_error.connection_error: self.check_connection_status() LOGGER.exception(flow_error) raise ControllerNotFound() # enable message reception self.__flow_user.enable_message_reception(ClimateControlModel.message_received_callback)
def setUp(self): flow_initialize(flow_server_url, flow_server_key, flow_server_secret) self.user = FlowUser(username, password) self.device = self.user.find_device(device_type)
def setUp(self): flow_initialize(flow_server_url, flow_server_key, flow_server_secret) self.user = None