def _login_callback(user_tuple, conn, trans=None): if user_tuple is not None: try: cu = ConnectedUser(user_tuple, conn) except ValueError: # this user is already logged in conn.send(UserError.user_is_already_logged_in(), trans) return conn.data['authenticated'] = True conn.data['user'] = cu cu.enterRoom(conn.factory.main_room) response = UserOk.login() else: response = UserError.login_failed() conn.send(response, trans)