Я делаю бота с помощью python-telegram-bot, который отправляет вам несколько сообщений в строке в ответ на одну команду. Когда все сообщения поступают сразу, это неудобно для пользователя. Я хочу добавить паузу между отправкой и отправкой action=ChatAction.TYPING
между ними. Есть ли удобный способ сделать это, не используя что-то вроде time.sleep()
?
Я считаю, что рамки JobQueue решают вашу проблему. Это позволяет вам планировать отправку сообщений в определенный момент в будущем.
Цитата:
Вы также можете добавить задание, которое будет выполняться только один раз, с задержкой:
>>> def callback_30(bot, job):
... bot.send_message(chat_id='@examplechannel',
... text='A single message with 30s delay')
...
>>> j.run_once(callback_30, 30)
Через тридцать секунд вы должны получить сообщение от callback_30.