Cisco controller listing OK

This commit is contained in:
Douglas Barone 2020-11-18 18:34:21 -04:00
parent 419d91950b
commit 0431ec1db6
3 changed files with 26 additions and 7 deletions

View File

@ -31,3 +31,8 @@ UNIFI_URL=10.7.0.6
UNIFI_PORT=8443
UNIFI_USER=unifi_admin
UNIFI_PASSWORD=senha_do_unifi_admin
# Cisco
CISCO_HOST=10.1.0.2
CISCO_USER=serti.xx
CISCO_PASSWORD=senhadacontroladoracisco

View File

@ -46,7 +46,21 @@ async function getDevices() {
}
export async function getOnlineWifiDevices() {
const onlineDevices = getDevices()
const onlineDevices = await getDevices()
return onlineDevices
const hydratedOnlineDevices = onlineDevices.map(client => ({
user: client.Name == 'unknown' ? undefined : client.Name,
oui: undefined,
mac: client.macaddr,
hostname: client.HN == 'unknown' ? undefined : client.HN,
firstSeen: undefined,
lastSeen: new Date(),
essid: client.SSID,
ip: client.IP,
uptime: client.UT.toString(),
apName: client.AP,
status: 'ONLINE'
}))
return hydratedOnlineDevices
}

View File

@ -12,15 +12,15 @@ async function updateDBWithOnlineDevices() {
onlineCiscoDevicesPromise
])
console.log(onlineCiscoDevices.length)
await prisma.wifiDevice.updateMany({
data: {
status: 'OFFLINE'
}
})
for (const onlineDevice of onlineUnifiDevices) {
const onlineDevices = [...onlineUnifiDevices, ...onlineCiscoDevices]
for (const onlineDevice of onlineDevices) {
const device = {
...onlineDevice,
user: onlineDevice.user
@ -35,12 +35,12 @@ async function updateDBWithOnlineDevices() {
update: device
})
} catch (e) {
console.log(e, device, 'Is users table up-to-date?.')
if (e.code != 'P2016') console.log('[wifiDevice upsert error]', e)
}
}
// TODO: pubsub
return onlineUnifiDevices.length
return onlineDevices.length
}
export { updateDBWithOnlineDevices }