Как сделать задержку сообщения Telegram Бот?
Я еще совсем новичок в этой области. Я типо системный администратор и просто дурачок.Решил сделать бота для авто-приема заявочек. Подскажите как сделать, чтобы он принимал сразу, а отправлял сообщение спустя 24 часа.
import logging
import os
import sys
from aiogram import Bot, Dispatcher, executor, types
from aiogram import Bot, types
from aiogram.contrib.middlewares.logging import LoggingMiddleware
from aiogram.dispatcher import Dispatcher
from aiogram.utils import executor
from aiogram.types import ReplyKeyboardRemove, \
ReplyKeyboardMarkup, KeyboardButton, \
InlineKeyboardMarkup, InlineKeyboardButton
#Создание бота
bot = Bot(token='тут токен бота')
dp = Dispatcher(bot)
dp.middleware.setup(LoggingMiddleware())
#сообщения
@dp.chat_join_request_handler()
async def join_request(update: types.ChatJoinRequest):
user_id=update.from_user.id
#вот тут по идее он пишет
but_markup = InlineKeyboardMarkup(row_width=1)
but_sbor = InlineKeyboardButton(text=' Каталог ', url='https://t.me/')
but = InlineKeyboardButton(text=' Наш сайт ', url='https://t.me/')
but_markup.add(but_sbor,but)
await bot.send_message(user_id, 'В жопе ', reply_markup=but_markup)
#тут можно добавить пользователя в бд для дальнейших рассылок
#вроде тут прием)
await update.approve() #.decline() если отклоняем
try:
# Запуск бота
if __name__ == '__main__':
executor.start_polling(dp)
except:
print('Ошибка запуска бота!')
UPD:Чтобы при этом не возникло:
Ю - юзерЮ1 - подает заявку*прошло 5 секунд*
Ю2 - Подает заявку*Прошло 23 часа 59 минут 45 секунд*
Ю1 - ничего не получает
Ю2 - Получает сообщение
Обязательна ли бд для описанного выше?
Также, если кто подскажет, я так и не понял как создать БД и записывать туда ID для последующей рассылки командой /send (планы)
Комментарий недоступен
Прикол в том, что:
1) я пока-что полный дуб в питоне
2) Бот подключён к 10 каналам, и на каждый его должно принимать и писать
Добавляй в бд сообщение которое надо отправить конкретному пользователю с датой отправки и вытаскивай по таймеру
Спасибо. Но я тупой.
Как вариант использовать cronjob
Посмотрю что такое, но я тупой :)