python await asyncio.sleep(3600) Как отменить asyncio.sleep
ЭТО ТЕЛЕГРАМ БОТ.
В данный момент это работает так:
Нажал на /start бот удаляет /start и присылает сообщения текст. через час. бот удаляет присланное сообщение и присылает его повторно.
Если отправить еще раз /start , то бот будет присылать в час уже 2 сообщения. еще раз на /start 3 сообщения будет в час присылать.
ЗАДАЧА. При нажатии на /start второй раз - Нужно отменять предыдущее await asyncio.sleep(3600) и запускать await asyncio.sleep(3600) заново.
например: нажал на /start пошел отчет 3600 сек. через 600сек нажал еще раз и отчет начинается заново 3600сек.
async def start(message, state):
try:
await bot.delete_message(message.chat.id, message.message_id)
except:
pass
if message.text=='/start':
await start_command(message, state)
await asyncio.sleep(3600)
await start(message, state)