diff --git a/server/src/controller/ttnController.ts b/server/src/controller/ttnController.ts index e517d74..b0570d4 100644 --- a/server/src/controller/ttnController.ts +++ b/server/src/controller/ttnController.ts @@ -42,21 +42,22 @@ router.post( )?.measurementValue, }); + const messageData = message.uplink_message.decoded_payload?.messages[0]; + + const latitudeData = messageData?.find((e) => e.type === "Latitude"); + const longitudeData = messageData?.find((e) => e.type === "Longitude"); + const gnnsLocation = { - latitude: message.uplink_message.decoded_payload?.messages[0].find( - (e) => e.type === "Latitude" - )?.measurementValue, - longitude: message.uplink_message.decoded_payload?.messages[0].find( - (e) => e.type === "Longitude" - )?.measurementValue, + latitude: latitudeData?.measurementValue, + longitude: longitudeData?.measurementValue, }; - const gnssMetadata = message.uplink_message.decoded_payload?.messages[0].find( - (e) => e.type === "Latitude" - ); - const gnssTimestamp = { - timestamp: gnssMetadata?.timestamp ? new Date(gnssMetadata.timestamp) : undefined + timestamp: latitudeData?.timestamp + ? new Date(latitudeData.timestamp) + : longitudeData?.timestamp + ? new Date(longitudeData.timestamp) + : undefined, }; const wifiScans = @@ -102,10 +103,9 @@ router.post( gnss: gnnsLocation.latitude && gnnsLocation.longitude ? { - latitude: gnnsLocation.latitude, - longitude: gnnsLocation.longitude, - - } + latitude: gnnsLocation.latitude, + longitude: gnnsLocation.longitude, + } : undefined, gnss_timestamp: gnssTimestamp.timestamp, });