Да, я посмотрю как это будет лучше оформить)
У меня просто в голове была достаточно простая ментальная модель:
1. Взять текущее время
2. Отфильтровать всех юзеров на основе текущего времени и их настроек и выбрать только подходящих. (Если пользователей много, то можно запустить н потоков, типа ты бери с 1-100, ты бери 101-20 итд)
3. Запустить джобы на отправку нотификаций. По сути, отправка это вызов апи и запись результата в базу
насчет отфильтровать тут есть такой момент - запускаешься ведь ты не ровно тик в тик с обозначенным временем, есть какой-то временной гап судя по всему, то есть при отборе будет некий промежуток, а если запустишься два раза в этот промежуток, то начнешь спамить клиента.
Тут надо понять - это нормально или нет?