Я пытаюсь создать несколько потоков функции Telethon, которая отслеживает события NewMessage в конкретном чате c.
Поскольку я собираюсь запускать несколько потоков одновременно, один и тот же сеанс не может использоваться для каждого. Проблема в том, что в моем приложении мне нужно создать сеанс, не передавая телефон и код, поэтому мне было интересно, есть ли возможность создания сеансов таким образом.
Мой код выглядит так:
def launchListener(chatId):
loop = asyncio.new_event_loop()
client = TelegramClient(session, api_id, api_hash, loop=loop)
@client.on(events.NewMessage(chats=chatId))
async def new_message_handler(event):
print(event.raw_text)
client.start()
client.run_until_disconnected()
Я посмотрел на это Возможно ли создать клиент для Telethon, начиная только с auth_key? , и он не работал для меня, потому что я не могу использовать ту же строку сеанса в каждая нить.