Как сделать ограничение по времени на запросы для пользователя в Telegram боте?

Разрабатываю телеграм бота. Нужно сделать так, чтобы человек не смог заспамить бота командами, нужно чтобы присутствовал какой-нибудь таймер, то есть определенную команду можно вызывать раз в 30 секунд, например, как это лучше реализовать?


Ответы (1 шт):

Автор решения: Elusha

Запомните время последнего использования команды и при каждой последующей попытке её использовать проверяйте прошло 30 секунд или нет

from datetime import datetime

... здесь выполняете свою команду ...

last_time = datetime.now()

При последующем запросе команды проверяете сколько прошло секунд:

delta = datetime.now() - last_time
if delta.second > 30:
    (выполняете то, что вам нужно)
else:
    print('Извините 30 секунд ещё не прошло')
→ Ссылка