Как создать напоминания для пользователей телеграм бота с помощью apscheduler?

Столкнулся с проблемой реализации напоминаний юзерам. Пользователю придёт первое напоминание через 1 час как он написал любое первое сообщение, соответственно следующее через 7, а следующее через 19 часов если считать с момента отправки первого сообщения.

Я бы хотел увидеть пример как можно реализовать такую рассылку.

Если нужно, то можно использовать бд.


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

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

Чем не вариант asyncio.sleep()?

import asyncio
hour = 60*60 #  т.е минута (60 сек) умноженое на 60 (будет час)

@dp.message(Command("start"))
async def cmd_start(message: types.Message):
    await message.answer("Приветик!")

    await asyncio.sleep(1*hour)
    await message.answer("Напоминаю тебе про себя :P")

    await asyncio.sleep(6*hour)
    await message.answer("Ты же не забыл про меня?")

    await asyncio.sleep(12*hour)
    await message.answer("Ты все таки забыл...")
→ Ссылка