Есть упрощенный код для понимания проблемы:
from telethon import TelegramClient, events
api_id = 2*****9
api_hash = 'ee****************74'
client = TelegramClient("Resend", api_id, api_hash)
@client.on(events.NewMessage(chats=-10*********2))
async def normal_handler(event):
await client.send_message(-10********3, event.message)
client.start()
client.run_until_disconnected()
После его запуска, я авторизуюсь, пишет что успешно зареган. И как только код отлавливает сообщение - из всех устройств у меня выходит из аккаунта(соответственно и код тоже перестает работать).
Пробовал также строковые сеансы. Все делаю по инструкции:
string = '1aaNk8EX-YRfwoRsebUkugFvht6DUPi_Q25UOCzOAqzc...'
with TelegramClient(StringSession(string), api_id, api_hash) as client:
client.loop.run_until_complete(client.send_message('me', 'Hi'))
Но когда я запускаю скрипт, то снова просит меня вести телефон для отправки кода. А по факту так не должно быть, ключ в string для этого и нужен, чтобы не вводить код. P.s. rак его получил, тоже по инструкции:
from telethon.sync import TelegramClient
from telethon.sessions import StringSession
with TelegramClient(StringSession(), api_id, api_hash) as client:
print(client.session.save())
Как можно сделать так, чтобы telethon повторно не просил код подтверждения? Не пойму в чем проблема