Yonote OnPrem

Планировщик задач (cron)

Что работает по расписанию и как это включить

Часть функций Yonote выполняется по расписанию. Само приложение расписание не запускает: его нужно запускать снаружи, вызывая два адреса приложения. Без этого шага не будут приходить уведомления календаря (начало и окончание событий), не будет работать плановая очистка и напоминания о приглашениях.

Что делаетАдресКак часто
Уведомления календаря: срабатывание событий в начале и конце/api/cron.calendar_eventsкаждую минуту
Плановые задачи: очистка удалённых документов, просроченных файловых операций и журналов вебхуков, напоминания о приглашениях/api/cron.scheduleраз в час

Каждый запрос — POST с JSON, где в поле token передаётся значение UTILS_SECRET из вашего .env. Без верного токена приложение ответит ошибкой.

Настройка через cron на сервере

Откройте расписание:

crontab -e

И добавьте две строки. Замените domain.ru на свой домен (с https, если настроен HTTPS) и ВАШ_UTILS_SECRET на значение из .env:

* * * * * curl -fsS -X POST http://domain.ru/api/cron.calendar_events -H 'Content-Type: application/json' -d '{"token":"ВАШ_UTILS_SECRET"}' > /dev/null
0 * * * * curl -fsS -X POST http://domain.ru/api/cron.schedule -H 'Content-Type: application/json' -d '{"token":"ВАШ_UTILS_SECRET","limit":200}' > /dev/null

Проверка

Выполните запрос вручную:

curl -X POST http://domain.ru/api/cron.calendar_events -H 'Content-Type: application/json' -d '{"token":"ВАШ_UTILS_SECRET"}'

Ответ {"success":true} значит, что планировщик подключён верно. Ошибка авторизации значит, что токен не совпадает с UTILS_SECRET.

Для Kubernetes сделайте то же самое через CronJob с curl, вызывая эти же адреса.