From 6d8c475afb3f9c29c4e749b6038dd6731484285e265e94b243844ec431e1b250 Mon Sep 17 00:00:00 2001
From: Philipp Schweizer <Philipp.Schw@directbox.com>
Date: Mon, 30 Dec 2024 23:37:51 +0100
Subject: [PATCH] feat: added support for latitude and longitude messages

---
 server/src/controller/ttnController.ts | 17 ++++++-----------
 server/src/models/ttnMessage.ts        | 14 ++++++++++++++
 2 files changed, 20 insertions(+), 11 deletions(-)

diff --git a/server/src/controller/ttnController.ts b/server/src/controller/ttnController.ts
index c96c9a7..daabf42 100644
--- a/server/src/controller/ttnController.ts
+++ b/server/src/controller/ttnController.ts
@@ -40,17 +40,12 @@ router.post(
           battery: message.uplink_message.decoded_payload?.messages[0].find(
             (e) => e.type === "Battery"
           )?.measurementValue,
-          latitude: 0 /*
-        message.uplink_message.decoded_payload.messages[0].find(
-          (e) => e.type === "Latitude"
-        )?.measurementValue
-        */,
-          longitude: 0,
-          /*
-        message.uplink_message.decoded_payload.messages[0].find(
-          (e) => e.type === "Longitude"
-        )?.measurementValue
-        */
+          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,
         });
 
       const wifiScans =
diff --git a/server/src/models/ttnMessage.ts b/server/src/models/ttnMessage.ts
index 3360cfc..aa3a93d 100644
--- a/server/src/models/ttnMessage.ts
+++ b/server/src/models/ttnMessage.ts
@@ -42,6 +42,20 @@ export interface TtnMessage {
             motionId: number;
             timestamp: number;
             type: "Battery";
+          },
+          {
+            measurementId: "4197";
+            measurementValue: number;
+            motionId: number;
+            timestamp: number;
+            type: "Longitude";
+          },
+          {
+            measurementId: "4198";
+            measurementValue: number;
+            motionId: number;
+            timestamp: number;
+            type: "Latitude";
           }
         ]
       >;