From 2d18212f62f7f6ed0ce01d77e72bdd1ad7de354a Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Mon, 15 Sep 2025 20:49:46 +0200 Subject: [PATCH] Fix jwt-token --- README.md | 5 +---- SETUP.md | 5 +---- drone_simulator.py | 8 +------- server/models/Heartbeat.js | 15 --------------- server/routes/dashboard.js | 5 +---- server/routes/debug.js | 3 +-- server/routes/detectors.js | 3 --- server/routes/device.js | 2 +- server/scripts/setup-database.js | 6 ------ server/tests/models/models.test.js | 16 +++++----------- server/tests/routes/detectors.test.js | 15 +++++---------- server/tests/routes/healthcheck.test.js | 9 +++------ 12 files changed, 19 insertions(+), 73 deletions(-) diff --git a/README.md b/README.md index d637948..d90db9d 100644 --- a/README.md +++ b/README.md @@ -265,10 +265,7 @@ Content-Type: application/json { "type": "heartbeat", - "key": "device_1941875381_key", - "battery_level": 85, - "signal_strength": -50, - "temperature": 22.5 + "key": "device_1941875381_key" } ``` diff --git a/SETUP.md b/SETUP.md index 5054b86..2778820 100644 --- a/SETUP.md +++ b/SETUP.md @@ -127,10 +127,7 @@ curl -X POST http://localhost:3001/api/heartbeat \ -H "Content-Type: application/json" \ -d '{ "type": "heartbeat", - "key": "device_1941875381_key", - "battery_level": 85, - "signal_strength": -50, - "temperature": 22.5 + "key": "device_1941875381_key" }' ``` diff --git a/drone_simulator.py b/drone_simulator.py index bad74f5..0125ea4 100644 --- a/drone_simulator.py +++ b/drone_simulator.py @@ -67,9 +67,6 @@ class DroneDevice: lon: float category: str last_heartbeat: float = 0 - battery_level: int = 100 - signal_strength: int = -45 - temperature: float = 20.0 status: str = "active" @dataclass @@ -118,10 +115,7 @@ class SwedishDroneSimulator: location=location["name"], lat=location["lat"], lon=location["lon"], - category=category, - battery_level=random.randint(75, 100), - signal_strength=random.randint(-60, -30), - temperature=random.uniform(15, 30) + category=category ) devices.append(device) diff --git a/server/models/Heartbeat.js b/server/models/Heartbeat.js index c46d179..9f06529 100644 --- a/server/models/Heartbeat.js +++ b/server/models/Heartbeat.js @@ -22,21 +22,6 @@ module.exports = (sequelize) => { defaultValue: 'test-device-key', comment: 'Unique key of the sensor from heartbeat message' }, - signal_strength: { - type: DataTypes.INTEGER, - allowNull: true, - comment: 'Signal strength at time of heartbeat' - }, - battery_level: { - type: DataTypes.INTEGER, - allowNull: true, - comment: 'Battery level percentage (0-100)' - }, - temperature: { - type: DataTypes.DECIMAL(4, 1), - allowNull: true, - comment: 'Device temperature in Celsius' - }, uptime: { type: DataTypes.BIGINT, allowNull: true, diff --git a/server/routes/dashboard.js b/server/routes/dashboard.js index a26e536..289ac36 100644 --- a/server/routes/dashboard.js +++ b/server/routes/dashboard.js @@ -224,10 +224,7 @@ router.get('/activity', authenticateToken, async (req, res) => { timestamp: heartbeat.received_at, data: { device_id: heartbeat.device_id, - device_name: heartbeat.device.name || `Device ${heartbeat.device_id}`, - battery_level: heartbeat.battery_level, - signal_strength: heartbeat.signal_strength, - temperature: heartbeat.temperature + device_name: heartbeat.device.name || `Device ${heartbeat.device_id}` } })) ]; diff --git a/server/routes/debug.js b/server/routes/debug.js index 5738bcb..bb01e49 100644 --- a/server/routes/debug.js +++ b/server/routes/debug.js @@ -89,8 +89,7 @@ router.get('/heartbeat-payloads', authenticateToken, async (req, res) => { limit: parseInt(limit), offset: parseInt(offset), attributes: [ - 'id', 'device_id', 'device_key', 'signal_strength', 'battery_level', - 'temperature', 'received_at', 'raw_payload' + 'id', 'device_id', 'device_key', 'received_at', 'raw_payload' ] }); diff --git a/server/routes/detectors.js b/server/routes/detectors.js index 5df9627..e194bd2 100644 --- a/server/routes/detectors.js +++ b/server/routes/detectors.js @@ -50,9 +50,6 @@ const detectorSchema = Joi.alternatives().try( geo_lat: Joi.number().min(-90).max(90).optional(), geo_lon: Joi.number().min(-180).max(180).optional(), location_description: Joi.string().optional(), - signal_strength: Joi.number().integer().optional(), - battery_level: Joi.number().integer().min(0).max(100).optional(), - temperature: Joi.number().optional(), uptime: Joi.number().integer().min(0).optional(), memory_usage: Joi.number().integer().min(0).max(100).optional(), firmware_version: Joi.string().optional() diff --git a/server/routes/device.js b/server/routes/device.js index 0685e97..fffadb1 100644 --- a/server/routes/device.js +++ b/server/routes/device.js @@ -77,7 +77,7 @@ router.get('/', authenticateToken, async (req, res) => { limit: 1, order: [['received_at', 'DESC']], required: false, - attributes: ['received_at', 'battery_level', 'signal_strength', 'temperature'] + attributes: ['received_at'] }); } diff --git a/server/scripts/setup-database.js b/server/scripts/setup-database.js index 62e52fa..67596d8 100644 --- a/server/scripts/setup-database.js +++ b/server/scripts/setup-database.js @@ -134,17 +134,11 @@ const setupDatabase = async () => { const heartbeats = await Heartbeat.bulkCreate([ { device_id: 1941875381, - battery_level: 85, - signal_strength: -45, - temperature: 22.5, status: 'active', timestamp: new Date() }, { device_id: 1941875382, - battery_level: 72, - signal_strength: -38, - temperature: 24.1, status: 'active', timestamp: new Date() } diff --git a/server/tests/models/models.test.js b/server/tests/models/models.test.js index 8c59151..019f395 100644 --- a/server/tests/models/models.test.js +++ b/server/tests/models/models.test.js @@ -552,10 +552,7 @@ describe('Models', () => { const heartbeatData = { device_key: 'device_123_key', - device_id: device.id, - signal_strength: -50, - battery_level: 85, - temperature: 22.5 + device_id: device.id }; console.log('DEBUG Creating heartbeat with data:', heartbeatData); @@ -566,7 +563,6 @@ describe('Models', () => { id: heartbeat.id, device_key: heartbeat.device_key, device_id: heartbeat.device_id, - battery_level: heartbeat.battery_level, allFields: Object.keys(heartbeat.dataValues) }); @@ -593,7 +589,7 @@ describe('Models', () => { expect(heartbeat.created_at).to.be.a('date'); }); - it('should validate battery level range', async () => { + it('should validate device_key field', async () => { const tenant = await createTestTenant(); const device = await models.Device.create({ id: 123, @@ -601,14 +597,12 @@ describe('Models', () => { tenant_id: tenant.id }); - // SQLite doesn't enforce range validation, so test valid creation const heartbeat = await models.Heartbeat.create({ - device_key: 'device_123_key', - device_id: device.id, - battery_level: 85 // Valid range + device_key: 'test-device-key-123', + device_id: device.id }); - expect(heartbeat.battery_level).to.equal(85); + expect(heartbeat.device_key).to.equal('test-device-key-123'); }); }); diff --git a/server/tests/routes/detectors.test.js b/server/tests/routes/detectors.test.js index 18ca344..5919645 100644 --- a/server/tests/routes/detectors.test.js +++ b/server/tests/routes/detectors.test.js @@ -258,10 +258,7 @@ describe('Detectors Routes', () => { key: 'device_123_key', device_id: 123, geo_lat: 59.3293, - geo_lon: 18.0686, - signal_strength: -50, - battery_level: 85, - temperature: 22.5 + geo_lon: 18.0686 }; const response = await request(app) @@ -302,11 +299,10 @@ describe('Detectors Routes', () => { expect(response.body.success).to.be.true; }); - it('should validate battery level range', async () => { + it('should validate required fields', async () => { const heartbeatData = { - type: 'heartbeat', - key: 'device_123_key', - battery_level: 150 // Invalid range + type: 'heartbeat' + // Missing required key field }; const response = await request(app) @@ -323,8 +319,7 @@ describe('Detectors Routes', () => { const heartbeatData = { type: 'heartbeat', key: 'device_123_key', - device_id: 123, - battery_level: 85 + device_id: 123 }; const response = await request(app) diff --git a/server/tests/routes/healthcheck.test.js b/server/tests/routes/healthcheck.test.js index 16d9536..5a6ebde 100644 --- a/server/tests/routes/healthcheck.test.js +++ b/server/tests/routes/healthcheck.test.js @@ -234,8 +234,7 @@ describe('Healthcheck Routes', () => { status: 'online', cpu_usage: 15.5, memory_usage: 40.2, - disk_usage: 25.0, - temperature: 42.5 + disk_usage: 25.0 }); const response = await request(app) @@ -307,9 +306,7 @@ describe('Healthcheck Routes', () => { status: 'online', cpu_usage: 25.5, memory_usage: 60.2, - disk_usage: 45.0, - temperature: 38.5, - signal_strength: -65 + disk_usage: 45.0 }; const response = await request(app) @@ -382,7 +379,7 @@ describe('Healthcheck Routes', () => { { timestamp: new Date().toISOString(), status: 'online', - temperature: -50 // Unrealistic temperature + invalid_field: 'test' // Invalid field } ];