Короче есть такая тема как переавториз (создание новой сессии с этим же аккаунтом, но в новом .session файле) Я ЕБАЛСЯ с этими токенами неделю, 5 кодеров (3 мидла, 2 джуниара) НЕ СМОГЛИ НИХУЯ (1 все еще старается легенда) Короче, получить токен не проблема, в телетоне это функция .qr_login(), преобразуя ее в куар можно спокойно авторизовать эту сессию с телефона, НО СУКА как только я пытаюсь принять злоебучий токен, пишет что он просрочен (какого хуя?) я его создал только что, еще были ошибки то что токен уже использован (каким хуем?) либо ваще 400 то что его нет Хорошо, я забил хуй на это и перешел на очередной ЗЛОЕБУЧИЙ MTPROTO api нахуй у него проблема в том, что он блять не создает токен, а когда пытается принять то происходит 400 СУУКА 40000000000000 ПОМОГИТЕ ПРОШУ Я ЗАПЛАТИТЬ ГОТОВ ТОЛЬКО ПОМОГИТЕ БЛЯТЬ ПРОШУ МАОЛЮ НЕ ПРОЙДИТЕ МИМО И ЛОГИЧНО ЧТО ЭТО РЕАЛЕЗУЕМО ТАК КАК API СОЗДАНО ДЛЯ ПРИЛОЖЕНИЙ ТАКИХ КАК AUGRAM TG PLUS И ТАК ДАЛЕЕ
KILOSTER, try: if attempt > 0: logger.info(" Reconnecting new client for fresh QR code...") disconnect_start = time.time() await new_client.disconnect() disconnect_time = time.time() - disconnect_start logger.debug(f" Client disconnected in {disconnect_time:.2f}s") # Удаляем файлы сессии чтобы начать с чистого листа session_files_to_remove = [ f"{new_session}.session", f"{new_session}.session-journal" ] for session_file in session_files_to_remove: session_path = Path(session_file) if session_path.exists(): file_size = session_path.stat().st_size logger.info(f" Removing old session file: {session_path} (size: {file_size} bytes)") session_path.unlink() logger.debug("Waiting 1 second before reconnection...") await asyncio.sleep(1) reconnect_start = time.time() new_client = TelegramClient(new_session, api_id, api_hash, proxy=proxy) await new_client.connect() reconnect_time = time.time() - reconnect_start logger.info(f" New client reconnected in {reconnect_time:.2f}s: {new_client.is_connected()}") logger.info(" Requesting new QR login...") qr_request_start = time.time() qr_login = await new_client.qr_login() qr_request_time = time.time() - qr_request_start accept_start = time.time() try: result = await original_client( functions.auth.AcceptLoginTokenRequest(token=qr_login.token) ) accept_time = time.time() - accept_start logger.info(f"Token accepted in {accept_time:.2f}s! Result: {result}") except Exception as accept_error: accept_time = time.time() - accept_start logger.error(f" Token acceptance failed in {accept_time:.2f}s: {accept_error}") raise\ wait_start = time.time() try: await asyncio.wait_for(qr_login.wait(), timeout=30.0) wait_time = time.time() - wait_start logger.info(f"QR authorization completed in {wait_time:.2f}s!") break except asyncio.TimeoutError: wait_time = time.time() - wait_start logger.warning(f"QR authorization timeout after {wait_time:.2f}s") logger.debug(f"Timeout details: expected=30s, actual={wait_time:.2f}s") raise Exception("QR authorization timeout - QR code was not scanned in time")