def get_jobs(): """Query SatNOGS Network API to GET jobs.""" url = urljoin(settings.NETWORK_API_URL, 'jobs/') params = {'ground_station': settings.GROUND_STATION_ID} headers = {'Authorization': 'Token {0}'.format(settings.API_TOKEN)} logger.debug('URL: {0}'.format(url)) logger.debug('Params: {0}'.format(params)) logger.debug('Headers: {0}'.format(headers)) logger.info('Trying to GET observation jobs from the network') response = requests.get(url, params=params, headers=headers, verify=settings.VERIFY_SSL) if not response.status_code == 200: raise Exception('Status code: {0} on request: {1}'.format(response.status_code, url)) for job in scheduler.get_jobs(): if job.name in [spawn_observer.__name__, spawn_receiver.__name__]: job.remove() for obj in response.json(): start = parser.parse(obj['start']) job_id = str(obj['id']) kwargs = {'obj': obj} receiver_start = start - timedelta(seconds=settings.DEMODULATOR_INIT_TIME) logger.info('Adding new job: {0}'.format(job_id)) logger.debug('Observation obj: {0}'.format(obj)) scheduler.add_job(spawn_observer, 'date', run_date=start, id='observer_{0}'.format(job_id), kwargs=kwargs) scheduler.add_job(spawn_receiver, 'date', run_date=receiver_start, id='receiver_{0}'.format(job_id), kwargs=kwargs)
def get_jobs(): logger.info('Get jobs started') """Query SatNOGS Network API to GET jobs.""" url = urljoin(settings.SATNOGS_NETWORK_API_URL, 'jobs/') params = {'ground_station': settings.SATNOGS_STATION_ID} headers = {'Authorization': 'Token {0}'.format(settings.SATNOGS_API_TOKEN)} logger.debug('URL: {0}'.format(url)) logger.debug('Params: {0}'.format(params)) logger.debug('Headers: {0}'.format(headers)) logger.info('Trying to GET observation jobs from the network') response = requests.get(url, params=params, headers=headers, verify=settings.SATNOGS_VERIFY_SSL) if not response.status_code == 200: raise Exception('Status code: {0} on request: {1}'.format( response.status_code, url)) for job in scheduler.get_jobs(): if job.name in [spawn_observer.__name__]: job.remove() sock = Commsocket('127.0.0.1', settings.TASK_FEEDER_TCP_PORT) tasks = [] for obj in response.json(): tasks.append(obj) start = parser.parse(obj['start']) job_id = str(obj['id']) kwargs = {'obj': obj} logger.info('Adding new job: {0}'.format(job_id)) logger.debug('Observation obj: {0}'.format(obj)) scheduler.add_job(spawn_observer, 'date', run_date=start, id='observer_{0}'.format(job_id), kwargs=kwargs) tasks.reverse() while sys.getsizeof(json.dumps(tasks)) > sock.tasks_buffer_size: tasks.pop() b = sock.connect() if b: sock.send_not_recv(json.dumps(tasks)) else: logger.info('Task listener thread not online')
def get_jobs(): logger.info('Get jobs started') """Query SatNOGS Network API to GET jobs.""" url = urljoin(settings.NETWORK_API_URL, 'jobs/') params = {'ground_station': settings.GROUND_STATION_ID} headers = {'Authorization': 'Token {0}'.format(settings.API_TOKEN)} logger.debug('URL: {0}'.format(url)) logger.debug('Params: {0}'.format(params)) logger.debug('Headers: {0}'.format(headers)) logger.info('Trying to GET observation jobs from the network') response = requests.get(url, params=params, headers=headers, verify=settings.VERIFY_SSL) if not response.status_code == 200: raise Exception('Status code: {0} on request: {1}'.format(response.status_code, url)) for job in scheduler.get_jobs(): if job.name in [spawn_observer.__name__]: job.remove() sock = Commsocket('127.0.0.1', settings.TASK_FEEDER_TCP_PORT) tasks = [] for obj in response.json(): tasks.append(obj) start = parser.parse(obj['start']) job_id = str(obj['id']) kwargs = {'obj': obj} logger.info('Adding new job: {0}'.format(job_id)) logger.debug('Observation obj: {0}'.format(obj)) scheduler.add_job(spawn_observer, 'date', run_date=start, id='observer_{0}'.format(job_id), kwargs=kwargs) tasks.reverse() while sys.getsizeof(json.dumps(tasks)) > sock.tasks_buffer_size: tasks.pop() b = sock.connect() if b: sock.send_not_recv(json.dumps(tasks)) else: logger.info('Task listener thread not online')
def get_jobs(): """Query SatNOGS Network API to GET jobs.""" logger.info('Get jobs started') url = urljoin(settings.SATNOGS_NETWORK_API_URL, 'jobs/') params = {'ground_station': settings.SATNOGS_STATION_ID} headers = {'Authorization': 'Token {0}'.format(settings.SATNOGS_API_TOKEN)} logger.debug('URL: {0}'.format(url)) logger.debug('Params: {0}'.format(params)) logger.debug('Headers: {0}'.format(headers)) logger.info('Trying to GET observation jobs from the network') response = requests.get(url, params=params, headers=headers, verify=settings.SATNOGS_VERIFY_SSL, timeout=45) if not response.status_code == 200: raise Exception('Status code: {0} on request: {1}'.format( response.status_code, url)) for job in scheduler.get_jobs(): if job.name in [spawn_observer.__name__]: job.remove() tasks = [] for obj in response.json(): tasks.append(obj) start = parser.parse(obj['start']) job_id = str(obj['id']) obj['origin'] = 'network' kwargs = {'obj': obj} logger.info('Adding new job: {0}'.format(job_id)) logger.debug('Observation obj: {0}'.format(obj)) scheduler.add_job(spawn_observer, 'date', run_date=start, id='observer_{0}'.format(job_id), kwargs=kwargs) tasks.reverse()
def get_observation_list(): obs_list = scheduler.get_jobs() return obs_list