Исходный код soniks_client.jobs.resending
"""Повторная отправка наблюдений, осевших в директории ``incomplete``."""
from datetime import UTC, datetime
from apscheduler.schedulers.base import BaseScheduler
from core.configs import logger, settings
from soniks_client.jobs.sending_data import send_observation_data_again
[документация]
def resending_jobs(scheduler: BaseScheduler) -> None:
"""Поставить задание повторной отправки на каждое наблюдение в ``incomplete``."""
for directory_path in settings.paths.incomplete_path.iterdir():
if not directory_path.is_dir():
continue
scheduler.add_job(
func=send_observation_data_again,
trigger="date",
next_run_time=datetime.now(UTC),
id=f"resending_{directory_path.name}",
replace_existing=True,
args=[directory_path],
)
logger.debug(
"Добавлено задание повторной отправки данных наблюдения: %s",
directory_path.name,
)