Задать вопрос
@mutras

Почему функция ImportAuthorizationRequest не авторизует клиента, хотя не вызывает ошибку?

json_file = json_file_path

if not json_file:
    logger.error(error_msg)
    return False, error_msg
account_data = load_account_data(json_file)
if not account_data:
    error_msg = f"Failed to load account data from {json_file}"
    logger.error(error_msg)
    return False, error_msg
api_id = account_data.get('app_id')
api_hash = account_data.get('app_hash')
if not api_id or not api_hash:
    error_msg = f"Missing app_id or app_hash in {json_file}"
    logger.error(error_msg)
    return False, error_msg
logger.info(f"Using API ID: {api_id}")
logger.debug(f"Using API Hash: {api_hash[:10]}...")

logger.info("Connecting to original session...")
original_client = client
await original_client.connect()
aut = await original_client.is_user_authorized()
if not aut:
    error_msg = "Original session is not authorized"
    logger.error(error_msg)
    await original_client.disconnect()
    return False, error_msg
logger.info("Original session connected successfully")
me = await original_client.get_me()
if not me:
    error_msg = "Original session is not authorized"
    logger.error(error_msg)
    await original_client.disconnect()
    return False, error_msg
logger.info(f"Original session user: {me.first_name} (@{me.username})")
logger.info("Creating new session using invisible login method...")
config = await original_client(functions.help.GetConfigRequest())
dc_id = config.dc_options[0].id  # Выберите подходящий DC
logger.info(f"Using DC: {dc_id}")
auth_data = await original_client(functions.auth.ExportAuthorizationRequest(dc_id=2))
logger.info("Token created!")
new_client = TelegramClient(f'cloned\\{me.phone}', api_id, api_hash, proxy=None, 
        device_model='Edge 117.0.2045.47',
        system_version='Windows',
        app_version='10.9.56 A',
        system_lang_code='en-us',
        lang_code='en'
        )
await new_client.connect()
await new_client(functions.auth.ImportAuthorizationRequest(id=auth_data.id, bytes=auth_data.bytes))
logger.info("Authorization imported successfully")
me = await new_client.get_me()
print(me)
print(me)
print(me)
print(me)


return True, None


этот код в конце возвращает None в конце, хотя должен вернуть User(...) почему сессия не становится авторизованной, если ImportAuthorizationRequest работает без ошибок

new_client.session.set_dc(
dc_id=target_dc_id,  
server_address=new_client.session.server_address,
port=new_client.session.port                     
)

Я пытался записать dc_id в конце
  • Вопрос задан
  • 16 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Everything_is_bad
В чем проблема почитать доки и узнать что можно проверить вызов этой функции https://tl.telethon.dev/methods/auth/import_author...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы