Задать вопрос
@Lsn123

Как запустить прослушивание сообщений telethon без блокировки действий?

Пока только изучаю telethon и asyncio. Появилась нужда делать несколько вещей одновременно, а именно:
1) Запустить прослушивание чата.
2) Неважно, есть ли в чате сообщения или нет, отправить сообщение.

Запускаю прослушивание сообщений по обычной схеме:
# ...
# ...
@client.on(events.NewMessage(chats=[chat]))
async def parse_event(event):
    if not isinstance(event.message, Message):
        return

    text = event.message.message

    print(text)

client.run_until_disconnect()


Всё работает, но метод run_until_disconnect всё блокирует и ничего другого делать не получается.

И вот теперь некоторые вопросы:
1) Как client.run_until_disconnect() понимает, что ему запускать? Например, через asyncio в качестве аргумента надо передать входную функцию. А тут - вообще не понимаю
2) Как запустить прослушивание сообщений без блокировки других действий? Я даже не особо пойму, каким образом модуль вообще запускает функцию прослушивания. Вроде понимаю, что оборачивает ее в декоратор, всё такое. Но а в подробностях вообще никак.
3) Если запустить без блокировки нельзя, то можно как-то при запуске прослушивания, сразу же передать ему какой-то объект, который мелькнет функции, что нужно, к примеру, отправить сообщение?
  • Вопрос задан
  • 338 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
от 200 000 до 300 000 ₽
Greenway Global Новосибирск
от 150 000 ₽
Akronix Санкт-Петербург
от 150 000 до 200 000 ₽
31 янв. 2025, в 06:03
9999999 руб./за проект
31 янв. 2025, в 06:02
9999999 руб./за проект
31 янв. 2025, в 06:02
9999999 руб./за проект