1
0
Fork 0

Exposes norad_follow_id in Satellite/Transmitter

Signed-off-by: Michał Drzał michal.drzal@gmail.com
spacecruft
Michał Drzał 2022-11-02 22:32:07 +00:00 committed by xmichaelx
parent aafb7a4c5e
commit a94d14ba71
1 changed files with 21 additions and 5 deletions

View File

@ -82,6 +82,7 @@ class SatelliteSerializer(serializers.ModelSerializer):
sat_id = serializers.SerializerMethodField()
norad_cat_id = serializers.SerializerMethodField()
norad_follow_id = serializers.SerializerMethodField()
name = serializers.SerializerMethodField()
names = serializers.SerializerMethodField()
image = serializers.SerializerMethodField()
@ -102,9 +103,9 @@ class SatelliteSerializer(serializers.ModelSerializer):
class Meta:
model = Satellite
fields = (
'sat_id', 'norad_cat_id', 'name', 'names', 'image', 'status', 'decayed', 'launched',
'deployed', 'website', 'operator', 'countries', 'telemetries', 'updated', 'citation',
'is_frequency_violator', 'associated_satellites'
'sat_id', 'norad_cat_id', 'norad_follow_id', 'name', 'names', 'image', 'status',
'decayed', 'launched', 'deployed', 'website', 'operator', 'countries', 'telemetries',
'updated', 'citation', 'is_frequency_violator', 'associated_satellites'
)
@extend_schema_field(OpenApiTypes.STR)
@ -117,6 +118,11 @@ class SatelliteSerializer(serializers.ModelSerializer):
"""Returns Satellite norad_cat_id"""
return obj.satellite_entry.norad_cat_id
@extend_schema_field(OpenApiTypes.INT64)
def get_norad_follow_id(self, obj):
"""Returns Satellite norad_follow_id"""
return obj.satellite_entry.norad_follow_id
@extend_schema_field(OpenApiTypes.STR)
def get_name(self, obj):
"""Returns Satellite name"""
@ -247,6 +253,7 @@ class TransmitterSerializer(serializers.ModelSerializer):
"""SatNOGS DB Transmitter API Serializer"""
sat_id = serializers.SerializerMethodField()
norad_cat_id = serializers.SerializerMethodField()
norad_follow_id = serializers.SerializerMethodField()
mode = serializers.SerializerMethodField()
mode_id = serializers.SerializerMethodField()
uplink_mode = serializers.SerializerMethodField()
@ -259,8 +266,9 @@ class TransmitterSerializer(serializers.ModelSerializer):
fields = (
'uuid', 'description', 'alive', 'type', 'uplink_low', 'uplink_high', 'uplink_drift',
'downlink_low', 'downlink_high', 'downlink_drift', 'mode', 'mode_id', 'uplink_mode',
'invert', 'baud', 'sat_id', 'norad_cat_id', 'status', 'updated', 'citation', 'service',
'iaru_coordination', 'iaru_coordination_url', 'itu_notification', 'frequency_violation'
'invert', 'baud', 'sat_id', 'norad_cat_id', 'norad_follow_id', 'status', 'updated',
'citation', 'service', 'iaru_coordination', 'iaru_coordination_url',
'itu_notification', 'frequency_violation'
)
# Keeping alive field for compatibility issues
@ -301,6 +309,14 @@ class TransmitterSerializer(serializers.ModelSerializer):
except AttributeError:
return None
@extend_schema_field(OpenApiTypes.INT64)
def get_norad_follow_id(self, obj):
"""Returns Satellite NORAD ID following initial determination"""
try:
return obj.satellite.satellite_entry.norad_follow_id
except AttributeError:
return None
@extend_schema_field(OpenApiTypes.STR)
def get_sat_id(self, obj):
"""Returns Satellite NORAD ID"""