Как мне ответить только на последний встроенный пользовательский запрос с python-telegram-bot? - PullRequest
0 голосов
/ 26 ноября 2018

Я использую python-telegram-bot для создания бота, который отвечает на встроенные запросы.Результат запроса довольно сложен для обработки.Я использую @run_async.

Когда пользователь вводит встроенный запрос, клиент создает несколько запросов, каждый из которых порождает на моем боте обработчик, для обработки которого требуется время.

Из всех этих запросов только последний действительно важен.Например, если я запрашиваю «Пляжный волейбол», бот будет получать последовательные запросы для:

  • Bea
  • Пляж
  • Пляж Vo
  • Beach Voley

, когда я печатаю, приостанавливаю и продолжаю печатать.

Затем мой бот задерживает обработку неполных запросов перед обработкой действительно важного, и телеграмма выдает мне неверные ошибки идентификатора.для устаревших и тайм-аут для действительно важного запроса.

Я хотел бы, при получении запроса, отменить любые другие встроенные запросы, обрабатываемые для этого пользователя со старой отметкой времени, уничтожая их потоки или что-то в этом роде.

Telepot, еще одна библиотека ботов-телеграмм для python, которую я использовал, включил ее в качестве функции .Исходя из того, что я мог понять из исходного кода, он поддерживает внутреннюю очередь выполняемых задач.

Как я могу имитировать это поведение в python-telegram-bot?Это та особенность, которую я просто не нахожу?

...