Для линукс-серверов crontab запускает периодически любую команду (хоть каждую минуту, хоть в указанное время раз в неделю/месяц) - любые конфигурации, любые команды.
Можно реализовать так, но есть варианты проще.
Пользователь отправляет сообщение по типу: Свадьба 10.10.2019 10:10
Далее записываем это куда вам будет удобно и делаем проверки, хороший вариант, который сам использовал это shedule.