From 25701f0c9b851234635bd0a2d75bebd550d57c1f Mon Sep 17 00:00:00 2001 From: Alexander Borg Date: Sun, 7 Sep 2025 12:53:35 +0200 Subject: [PATCH] Fix jwt-token --- server/routes/detectors.js | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/server/routes/detectors.js b/server/routes/detectors.js index 53d1b64..8a6b6d5 100644 --- a/server/routes/detectors.js +++ b/server/routes/detectors.js @@ -107,14 +107,16 @@ async function handleHeartbeat(req, res) { console.log(`💓 Heartbeat received from device key: ${key}`); console.log('💗 Complete heartbeat data:', JSON.stringify(req.body, null, 2)); - // If device_id is not provided, try to find device by key - let deviceId = device_id; - if (!deviceId) { - // Try to extract device ID from key or use key as identifier - const keyMatch = key.match(/device[_-]?(\d+)/i); - deviceId = keyMatch ? parseInt(keyMatch[1]) : key.hashCode(); + // Use device_id if provided, otherwise use key as device identifier + let deviceId = device_id || key; + + // Convert to integer if it's a numeric string + if (typeof deviceId === 'string' && /^\d+$/.test(deviceId)) { + deviceId = parseInt(deviceId); } + console.log(`📌 Using device ID: ${deviceId}`); + // Check if device exists and is approved let device = await Device.findOne({ where: { id: deviceId } });