mirror of
https://github.com/wahyd4/links.git
synced 2026-08-08 21:04:53 +10:00
26 lines
761 B
Python
26 lines
761 B
Python
import logging
|
|
from apscheduler.triggers.interval import IntervalTrigger
|
|
from core.scheduler import scheduler
|
|
from netscan.scanner import run_scan
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
def schedule_profile(profile):
|
|
job_id = f'netscan_profile_{profile.pk}'
|
|
scheduler.add_job(
|
|
run_scan,
|
|
trigger=IntervalTrigger(days=profile.schedule_interval),
|
|
id=job_id,
|
|
args=[profile.pk, 'scheduler'],
|
|
replace_existing=True,
|
|
)
|
|
logger.info(f'Scheduled netscan job {job_id} every {profile.schedule_interval} day(s)')
|
|
|
|
|
|
def unschedule_profile(profile):
|
|
job_id = f'netscan_profile_{profile.pk}'
|
|
if scheduler.get_job(job_id):
|
|
scheduler.remove_job(job_id)
|
|
logger.info(f'Removed netscan job {job_id}')
|