Нужен таймер для телеграм-бота. Суть такова, что если пользователь не отправляет сообщение 1 час, то бот должен написать ему, в противном случае прервать цикл Код выглядит примерно так:
Проблема в том, что message.text не изменяется, даже если написать что-то в бота. Поэтому я без понятия как выйти из этого цикла. Помогите кто-нибудь python telegram-bot
Отслеживать
задан 12 апр 2022 в 10:19
Vladragone Vladragone
122 3 3 серебряных знака 12 12 бронзовых знаков
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Я бы предложил следующий подход для решения данной задачи.
Можно использовать библиотеку schedule . Документация находится здесь. После того как бот получает сообщение от пользователя нужно создать job примерно так:
Где CHAT-ID — ид чата с пользователем. В функции send_warning нужно реализовать отправку сообщения с текстом предупреждения.
Если сообщение от пользователя все же пришло, то нужно отменить job по тегу так: schedule.clear(‘CHAT-ID’)
TELEGRAM BOT ТАЙМЕР | Python 3, Питон 3
Ну и нужно создать фоновый поток для schedule.
UPD: У меня получился такой код:
Думаю, дальше можно адаптировать этот пример под Вашу задачу.
Источник: ru.stackoverflow.com
Как отправить отложенное сообщение в Telegram
Начиная с обновления 5.11 в Telegram появилась возможность отправлять отложенные сообщения в личные чаты, группы и каналы.
Чтобы запланировать доставку сообщения на будущее, удерживайте кнопку «Отправить» и нажмите «Отправить позже».
Затем выберите нужную дату и время и подтвердите действие.
Для управления отложенными постами нажмите на иконку календаря в поле ввода. Там вы сможете просмотреть свои сообщения, удалить их или создать новые.
Кроме того, отложенные сообщения работают в «Избранном» (Сохраненные сообщения), выполняя функцию напоминания. Отправляйте себе важные сообщения и Telegram напомнит о них в заданное время.
В материале используются стикеры из набора «Назад в будущее».
Подписывайтесь на канал Вам Телеграм — актуальные новости, полезные статьи и советы по работе с Telegram.
Источник: www.vamtlgrm.com