1
0
Fork 0

Remove post_save signal for Telemetry object

Signed-off-by: Alfredos-Panagiotis Damkalis <fredy@fredy.gr>
spacecruft
Alfredos-Panagiotis Damkalis 2021-01-02 12:50:30 +02:00
parent 4b8239739a
commit 87ac2f9dc9
2 changed files with 5 additions and 16 deletions

View File

@ -17,7 +17,7 @@ from db.api.renderers import BrowserableJSONLDRenderer, JSONLDRenderer
from db.base.helpers import gridsquare
from db.base.models import SATELLITE_STATUS, SERVICE_TYPE, TRANSMITTER_STATUS, TRANSMITTER_TYPE, \
Artifact, DemodData, LatestTleSet, Mode, Satellite, Transmitter
from db.base.tasks import publish_current_frame, update_satellite
from db.base.tasks import decode_current_frame, publish_current_frame, update_satellite
ISS_EXAMPLE = OpenApiExample('25544 (ISS)', value=25544)
@ -272,6 +272,9 @@ class TelemetryViewSet( # pylint: disable=R0901
serializer.is_valid(raise_exception=True)
self.perform_create(serializer)
# Run task to decode the current frame
decode_current_frame.delay(norad_cat_id, serializer.instance.pk)
# Run task to publish the current frame via ZeroMQ
publish_current_frame.delay(norad_cat_id, timestamp, request.data.get('frame'))

View File

@ -4,8 +4,7 @@ import logging
import h5py
from django.db.models.signals import post_save
from db.base.models import Artifact, DemodData, Satellite
from db.base.tasks import decode_current_frame
from db.base.models import Artifact, Satellite
from db.base.utils import remove_latest_tle_set, update_latest_tle_sets
LOGGER = logging.getLogger('db')
@ -31,19 +30,6 @@ def _extract_network_obs_id(sender, instance, created, **kwargs): # pylint: dis
post_save.connect(_extract_network_obs_id, sender=Artifact)
def _decode(sender, instance, created, **kwargs): # pylint: disable=W0613
"""
Callback function to immediately decode a saved frame
"""
post_save.disconnect(_decode, sender=DemodData)
decode_current_frame(instance.satellite.norad_cat_id, instance.id)
post_save.connect(_decode, sender=DemodData)
post_save.connect(_remove_latest_tle_set, sender=Satellite)
post_save.connect(_decode, sender=DemodData)
post_save.connect(_extract_network_obs_id, sender=Artifact)