diff --git a/server/src/lib/wifiDevices.js b/server/src/lib/wifiDevices.js index b4107f1..0b33bd6 100644 --- a/server/src/lib/wifiDevices.js +++ b/server/src/lib/wifiDevices.js @@ -61,7 +61,7 @@ async function forceUserDisconnect(mac) { } function mockHostName({ mac, oui }) { - const [shortOui] = oui?.split(' ') + const shortOui = oui ? oui.split(' ') : '' const clearMac = mac?.replaceAll(':', '') return `${shortOui}_${clearMac}` @@ -76,18 +76,20 @@ async function updateDB(onlineDevices) { ? { connect: { sAMAccountName: device.user } } : undefined + const hostname = device.hostname || mockHostName(device) + try { await prisma.wifiDevice.upsert({ where: { mac: device.mac }, create: { ...device, - hostname: device.hostname || '', + hostname, firstSeen: device.firstSeen || new Date(), user }, update: { ...device, - hostname: device.hostname || '', + hostname, user } })