def _handle_logon(self, msg): CMClient._handle_logon(self, msg) result = EResult(msg.body.eresult) if result == EResult.OK: self._reconnect_backoff_c = 0 self.logged_on = True self.set_persona(EPersonaState.Online) self.emit("logged_on") return # CM kills the connection on error anyway self.disconnect() if result in ( EResult.AccountLogonDenied, EResult.InvalidLoginAuthCode, EResult.AccountLoginDeniedNeedTwoFactor, EResult.TwoFactorCodeMismatch, ): is_2fa = (result in ( EResult.AccountLoginDeniedNeedTwoFactor, EResult.TwoFactorCodeMismatch, )) if is_2fa: code_mismatch = (result == EResult.TwoFactorCodeMismatch) else: code_mismatch = (result == EResult.InvalidLoginAuthCode) self.emit("auth_code_required", is_2fa, code_mismatch)
def _handle_logon(self, msg): CMClient._handle_logon(self, msg) result = EResult(msg.body.eresult) if result == EResult.OK: self._reconnect_backoff_c = 0 self.logged_on = True self.emit(self.EVENT_LOGGED_ON) return # CM kills the connection on error anyway self.disconnect() if result == EResult.InvalidPassword: self.login_key = None if result in ( EResult.AccountLogonDenied, EResult.InvalidLoginAuthCode, EResult.AccountLoginDeniedNeedTwoFactor, EResult.TwoFactorCodeMismatch, ): is_2fa = (result in ( EResult.AccountLoginDeniedNeedTwoFactor, EResult.TwoFactorCodeMismatch, )) if is_2fa: code_mismatch = (result == EResult.TwoFactorCodeMismatch) else: code_mismatch = (result == EResult.InvalidLoginAuthCode) self.emit(self.EVENT_AUTH_CODE_REQUIRED, is_2fa, code_mismatch)
def _handle_logon(self, msg): CMClient._handle_logon(self, msg) result = EResult(msg.body.eresult) if result == EResult.OK: self._reconnect_backoff_c = 0 self.logged_on = True self.emit(self.EVENT_LOGGED_ON) return # CM kills the connection on error anyway self.disconnect() if result == EResult.InvalidPassword: self.login_key = None if result in (EResult.AccountLogonDenied, EResult.InvalidLoginAuthCode, EResult.AccountLoginDeniedNeedTwoFactor, EResult.TwoFactorCodeMismatch, ): is_2fa = (result in (EResult.AccountLoginDeniedNeedTwoFactor, EResult.TwoFactorCodeMismatch, )) if is_2fa: code_mismatch = (result == EResult.TwoFactorCodeMismatch) else: code_mismatch = (result == EResult.InvalidLoginAuthCode) self.emit(self.EVENT_AUTH_CODE_REQUIRED, is_2fa, code_mismatch)