Практика работы с Telegram
Ошибки сессии Telegram: database is locked и AuthKeyUnregistered
Как различать занятый файл Telethon, отозванную авторизацию и предупреждение о session ID. Для каждого случая — следующий шаг без удаления единственной копии данных.
Сначала определите, что именно не работает
Запишите название клиента, текст ошибки, время и действие перед сбоем. Файл SQLite, авторизация Telegram и сетевое соединение — разные уровни. Один общий совет «сменить прокси» не диагностирует все три.
Минимальная карточка: клиент → путь к файлу без секретов → операция → ошибка → какие процессы используют сессию. Не прикладывайте рабочий файл или ключ к публичному обсуждению.
Telethon: database is locked
В FAQ Telethon эта ошибка связана с одновременной работой клиентов с одним SQLite-файлом сессии. Проверьте другой процесс, консоль или второй экземпляр скрипта. Для двух клиентов используйте отдельные сессии. Разбор Telethon.
- Найдите, где запускается нужный клиент: рабочий скрипт, консоль, планировщик, сервис.
- Сверьте фактический путь Session у этих запусков. Одинаковые относительные имена могут указывать на одну папку.
- Завершите лишний принадлежащий вам экземпляр штатно. Не останавливайте незнакомые процессы на общем сервере.
- Повторите запуск одного клиента. Если требуется параллельная работа, создайте самостоятельную авторизацию для второго клиента.
Не удаляйте Session как первый шаг: это стирает локальные данные, но не объясняет, какой процесс держал файл.
AUTH_KEY_UNREGISTERED и SESSION_REVOKED
Эти ответы относятся к авторизации. Первый сообщает, что ключ не зарегистрирован, второй — что сессия отозвана. Увеличение задержки или перестановка столбцов в JSON не восстанавливают авторизацию. Коды приведены в документации ошибок Telegram.
- Убедитесь, что сообщение пришло от нужного клиента и относится к правильному аккаунту.
- Проверьте, не завершалась ли эта сессия владельцем на другом устройстве.
- Если доступ действительно отозван, выполните штатную повторную авторизацию владельца. При отсутствии доступа к номеру сначала решается восстановление доступа.
- После входа повторно проверьте одну разрешённую операцию; остальные задания запускайте после проверки состояния.
Wrong session ID: почему не надо отключать проверку
Telethon связывает предупреждение о неправильном session ID с защитой от повторного использования сессии. Возможные причины: одна сессия в нескольких местах, особенности прокси или нескольких соединений. Не отключайте проверку безопасности ради исчезновения сообщения. Пояснение разработчиков.
Проверьте историю запуска и сеть, затем воспроизведите сбой одним клиентом. Сообщения про слишком старый или новый ID дополнительно требуют проверки системного времени. Эти предупреждения отличаются от сообщения о блокировке аккаунта.
Где хранится Session и почему она «пропала»
Telethon по умолчанию создаёт файл имя.session в рабочей папке, если не задан абсолютный путь. Запуск из другой папки может создать другой файл. StringSession — другое представление данных; его нельзя считать обычным путём. Форматы хранения Telethon.
Зафиксируйте путь в своей конфигурации и проверьте его перед переименованием. Для переноса сохраняйте совместимый формат и независимые резервные копии. Переименование расширения не конвертирует сессию другой библиотеки.
Где посмотреть активные сеансы и завершить ненужный
Active Sessions — список подключений аккаунта. В официальном клиенте откройте Настройки → Устройства; в некоторых версиях раздел находится в настройках конфиденциальности и называется «Активные сеансы». Сверьте приложение, устройство и время активности.
- Выберите конкретный сеанс, который принадлежит вашему старому устройству или больше не нужен.
- Проверьте, что это не подключение, от которого зависит ваша текущая работа. Завершите выбранный сеанс штатной командой клиента.
- Для программы, использовавшей отозванную авторизацию, потребуется новый вход владельца. Удаление локального файла не заменяет завершение доступа на стороне Telegram.
Источники и документация
Одна платформа · разные задачи
Подписка Telecobra
Соберите инструменты для работы с Telegram в одном кабинете. Сроки доступа, цены и условия — на странице подписки.
В этой инструкции описана только часть возможностей платформы. Полный список доступен в разделе функций.