def login(self) -> bool: """Connect to Angel One API""" try: self.session = SmartConnect(api_key=self.api_key) get_new_totp = pyotp.TOTP(self.totp).now() data = self.session.generateSession(self.client_id, self.password, get_new_totp) if data['status']: self.feed_token = data['data']['feedToken'] self.auth_token = data['data']['jwtToken'] self.connected = True print("Successfully connected to Angel One API") return True else: print(f"Login failed: {data['message']}") return False except Exception as e: print(f"Login failed: {str(e)}") return False