Что такое tdata и session в Telegram и в чём разница
Если вы покупали или продавали Telegram-аккаунты, то наверняка видели два формата файлов: tdata и session. Они решают одну задачу (не вводить код из SMS каждый раз), но устроены по-разному и подходят для разных инструментов.
Формат tdata
tdata - это папка с файлами, которые создаёт официальное desktop-приложение Telegram при входе в аккаунт. Внутри хранится ключ авторизации, привязанный к конкретной установке десктоп-клиента. Чтобы использовать tdata, нужен сам десктоп-клиент Telegram или программа, которая умеет читать именно этот формат.
Формат session
session (обычно файл с расширением .session) - это формат, в котором ключ авторизации хранят библиотеки для работы с Telegram API напрямую, например Telethon. Такой файл компактнее одной папки tdata и его проще передать между программами и серверами.
Рядом с .session почти всегда идёт .json с техническими параметрами устройства (app_id, app_hash, device model и похожие поля). Без этого json часть программ не сможет корректно подключиться, даже если сам .session-файл рабочий.
Когда какой формат нужен
- Если аккаунт входит в десктоп-клиент Telegram напрямую, скорее всего это tdata.
- Если аккаунт работает через автоматизацию (боты-помощники, массовые действия, в том числе модули TG Multitool), нужен именно session + json.
- tdata в session конвертируют специальными конвертерами, обратная конвертация тоже возможна, но не все поля при этом сохраняются одинаково надёжно.
Как получить session, если его нет
Если у вас есть доступ к номеру телефона, но готового session-файла нет, не обязательно разбираться с конвертерами. Модуль Создание сессии заводит session + json за три шага прямо в мини-приложении: вводите номер, код из Telegram, при необходимости пароль 2FA - готовый файл сразу попадает в базу аккаунтов.
Частые вопросы
Можно ли просто переименовать tdata в session?
Нет, это разные структуры данных, простое переименование файла не сработает. Нужна конвертация специальной программой, которая разбирает формат tdata и собирает из него корректный .session.
Session-файл без json будет работать?
Иногда подключится, но часто программа не сможет определить параметры устройства и либо откажется работать, либо Telegram заметит нестандартное поведение. Json нужно хранить и передавать вместе с session.