API Telegram предоставляет метод auth.resetAuthorizations для закрытия всех сессий кроме текущей. И как минимум названная вами библиотека TelegramApi его поддерживает, так как данный метод прописан в схеме поддерживаемых ей запросов.
Отслеживать
ответ дан 2 авг 2021 в 7:24
Eoan Ermine Eoan Ermine
708 3 3 серебряных знака 9 9 бронзовых знаков
- api
- telegram
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Источник: ru.stackoverflow.com
Как завершить все активные сеансы в Telegram
Telethon рвет все сессии telegram.
Имеется скрипт копирующий посты в одном паблике в другой. используется pyhon 3.8 и бибилиотека telethon. Когда по запросу телетона ввожу номер и код из аккаунта — сразу рвет все сессии. логинюсь снова и работает какое-то время, но потом выбросит порвав сессию
P.S. Думаю это защита телеграма от фишинговых рассылок с аккаунтов людей, которые любят свои данные вводить в левых ботах. Мне пришла идея попробовать запустить сессию телетона так, чтобы она была единственной на аккаунте (как бы вдруг защита настроена примерно так: «если есть сессии кроме telethon — убивать их, вместе с телетоновской, чтобы в случае воровства аккаунта хозяин пеерполошился, и фишер не сделал рассылку)
Exited3n
Green Team
10.05.2022 428 123
Имеется скрипт копирующий посты в одном паблике в другой. используется pyhon 3.8 и бибилиотека telethon. Когда по запросу телетона ввожу номер и код из аккаунта — сразу рвет все сессии. логинюсь снова и работает какое-то время, но потом выбросит порвав сессию
P.S. Думаю это защита телеграма от фишинговых рассылок с аккаунтов людей, которые любят свои данные вводить в левых ботах. Мне пришла идея попробовать запустить сессию телетона так, чтобы она была единственной на аккаунте (как бы вдруг защита настроена примерно так: «если есть сессии кроме telethon — убивать их, вместе с телетоновской, чтобы в случае воровства аккаунта хозяин пеерполошился, и фишер не сделал рассылку)
Спасибо за инфу. Держи в курсе!
Юрий Стариков
New member
22.03.2023 1 0
Имеется скрипт копирующий посты в одном паблике в другой. используется pyhon 3.8 и бибилиотека telethon. Когда по запросу телетона ввожу номер и код из аккаунта — сразу рвет все сессии. логинюсь снова и работает какое-то время, но потом выбросит порвав сессию
Как удалить синхронизированные контакты в Telegamm
P.S. Думаю это защита телеграма от фишинговых рассылок с аккаунтов людей, которые любят свои данные вводить в левых ботах. Мне пришла идея попробовать запустить сессию телетона так, чтобы она была единственной на аккаунте (как бы вдруг защита настроена примерно так: «если есть сессии кроме telethon — убивать их, вместе с телетоновской, чтобы в случае воровства аккаунта хозяин пеерполошился, и фишер не сделал рассылку)
Добрый день! Подскажите, пожалуйста, получилось решить проблему? Столкнулся с такой же проблемой. Пробовал 3 разных аккаунта и IP на всех секунда и вылет.
Источник: codeby.net
Почему при запуске скрипта telethon завершаются все сессии?
Я написал скрипт на telethon, но после авторизации и создания файла сессии почему-то все сессии в телеграме завершаются, то есть происходит выход аккаунта телеграм со всех устройств. По итогу на всех устройствах приходиться заново входить в аккаунт, а скрипт не работает, потому что телеграм завершает сессию клиента telethon. Я пробовал разные скрипты, свои и чужие, но все дают один и тот же результат. В чём может быть проблема?
- Вопрос задан 17 дек. 2022
- 1779 просмотров
3 комментария
Сложный 3 комментария
Тэг python тут ни при чем.
Как присоединится к вопросу?, получаю тоже самое:
У меня есть небольшое свое приложение на python, которое мониторит определенные группы и пересылает в мою группу определенные сообщения
До поза вчерашнего дня все работало отлично.
Я не менял приложение и ни чего не менял.
НО!
Со вчера при авторизации сессии в своем API приложении и старте приложение
закрываются вообще все активные сессии у меня на телефоне и компьютере, хотя ни я и ни кто либо не завершал сеансы. И так же сам Апи не работает,
я получаю такую ошибку и приложение не работает:
«The authorization has been invalidated, because of the user terminating all sessions»
(Перевод: Авторизация была признана недействительной, так как пользователь завершил все сеансы)
Spam info bot пишет, что нету ни каких ограничении
«Ваш аккаунт свободен от каких-либо ограничений.»
Можете уточнить, такая проблема только у меня?
Может это какое то заувалированное ограничение от телеграма? Или это какой то баг?
Пробовал запускать и на другом компьютере в другой сети. И даже другое приложение под другим аккаунтом. Тоже самое теперь получаю.
Так же с этим приложением работает аккаунт моего товарища, и у него нет таких проблем.
И я не могу понять, что не так.
Какие пути решения данной проблемы.
Спасибо большое. Очень жду вашего ответа и любую дополнительную информацию. Так как не понимаю что происходит.
Поиски в интернете не дают результаты. Поддержка телеграм не отвечает. Написал им на 4 разные почты)
Скрипт на котором валятся все сеансы на всех устройствах:
from telethon import TelegramClient, functions
api_id = 1111111111
api_hash = ‘fааааааааааааааааааааааааааааааf’
# Создаем клиента Telethon
client = TelegramClient(‘session_name’, api_id, api_hash)
# Асинхронная функция для выполнения операций
async def main():
# Получаем информацию о статусе аккаунта
status = await client(functions.account.GetAccountTTLRequest())
# Печатаем статус аккаунта
print(status)
client.start()
# Запускаем асинхронную функцию
client.loop.run_until_complete(main())
Такая же история. Любой(!) вызываемый метод API отрабатывает разово, после чего происходит дисконнект на всех устройствах.
Достаточно уже такого примитивного кода, чтобы произошел log_out на всех устройствах.
И более того, похоже что не на всех пользователей эта политика изначально распространялась. На старых! симках у меня всё нормально работало, на новых — выкидывало. НО! Недавно «они» добрались и до старых номеров.
from telethon import TelegramClient
client = TelegramClient(‘my_session’, 11111111, ’34rf3frwetg4554ftr’)
await client.start()
await client.send_message(‘me’, ‘Hello to myself!’)
Гуглёж дал такое:
Решения вопроса 0
Ответы на вопрос 2
Передайте конструктору класса TelegramClient параметр system_version=»4.16.30-vxCUSTOM». Можно так же передать какие-нибудь device_model и app_version. Сервера телеги по какой-то причине (видимо абьюза со стороны спамеров) начинает ограничивать стандартный «юзер агент», генерируемый telethon.
Ответ написан 25 апр.
Нравится 3 3 комментария
Спасибо за ответ! Мне помогло: теперь не вылетает тг при запуске скрипта
Параметры решили проблему.
Примечательно, что на рабочей машине проект работает на старой сессии.
Спасибо большое! Проблема вылета сессии решена, путем указания этих параметров при вызове TelegramClient.
Совершенствуюсь каждый день
Проблема может быть в том, что вы неправильно используете файл сессии. Сессия хранится в файле на компьютере, а не в телеграме. При каждом запуске скрипта вы должны указывать файл сессии с помощью аргумента session_name. Если вы хотите использовать тот же файл сессии, что и в предыдущем запуске, укажите тот же самый аргумент. Если вы хотите создать новый файл сессии, укажите новое имя файла.
Ответ написан 22 дек. 2022
Как присоединится к вопросу?, получаю тоже самое:
У меня есть небольшое свое приложение на python, которое мониторит определенные группы и пересылает в мою группу определенные сообщения
До поза вчерашнего дня все работало отлично.
Я не менял приложение и ни чего не менял.
НО!
С позавчера при авторизации сессии в своем API приложении и старте приложение
закрываются вообще все активные сессии у меня на телефоне и компьютере, хотя ни я и ни кто либо не завершал сеансы. И так же сам Апи не работает,
я получаю такую ошибку и приложение не работает:
«The authorization has been invalidated, because of the user terminating all sessions»
(Перевод: Авторизация была признана недействительной, так как пользователь завершил все сеансы)
Spam info bot пишет, что нету ни каких ограничении
«Ваш аккаунт свободен от каких-либо ограничений.»
Можете уточнить, такая проблема только у меня?
Может это какое то заувалированное ограничение от телеграма? Или это какой то баг?
Пробовал запускать и на другом компьютере в другой сети. И даже другое приложение под другим аккаунтом. Тоже самое теперь получаю.
Так же с этим приложением работает аккаунт моего товарища, и у него нет таких проблем.
И я не могу понять, что не так.
Какие пути решения данной проблемы.
Спасибо большое. Очень жду вашего ответа и любую дополнительную информацию. Так как не понимаю что происходит.
Поиски в интернете не дают результаты. Поддержка телеграм не отвечает. Написал им на 4 разные почты)
Скрипт на котором валятся все сеансы на всех устройствах:
from telethon import TelegramClient, functions
api_id = 1111111111
api_hash = ‘fааааааааааааааааааааааааааааааf’
# Создаем клиента Telethon
client = TelegramClient(‘session_name’, api_id, api_hash)
# Асинхронная функция для выполнения операций
async def main():
# Получаем информацию о статусе аккаунта
status = await client(functions.account.GetAccountTTLRequest())
# Печатаем статус аккаунта
print(status)
client.start()
# Запускаем асинхронную функцию
client.loop.run_until_complete(main())
Источник: qna.habr.com