Added accessPoints query
This commit is contained in:
parent
2e5ce3f07d
commit
ba47a68012
|
@ -22,6 +22,7 @@ CREATE TABLE "AccessPoint" (
|
|||
"controller" TEXT,
|
||||
"model" TEXT,
|
||||
"ipAddress" TEXT,
|
||||
"clients" INTEGER,
|
||||
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
"updatedAt" TIMESTAMP(3) NOT NULL,
|
||||
|
|
@ -151,6 +151,7 @@ model AccessPoint {
|
|||
controller String?
|
||||
model String?
|
||||
ipAddress String?
|
||||
clients Int?
|
||||
|
||||
createdAt DateTime @default(now())
|
||||
updatedAt DateTime @updatedAt
|
||||
|
|
|
@ -3,8 +3,13 @@ import { getAccessPoints as getCiscoAccessPoints } from './ciscoController'
|
|||
import { getAccessPoints as getUnifiAccessPoints } from './unifiController'
|
||||
|
||||
async function getAccessPoints() {
|
||||
const ciscoAccessPoints = await getCiscoAccessPoints()
|
||||
const unifiAccessPoints = await getUnifiAccessPoints()
|
||||
const ciscoAccessPointsPromise = getCiscoAccessPoints()
|
||||
const unifiAccessPointsPromise = getUnifiAccessPoints()
|
||||
|
||||
const [ciscoAccessPoints, unifiAccessPoints] = await Promise.all([
|
||||
ciscoAccessPointsPromise,
|
||||
unifiAccessPointsPromise
|
||||
])
|
||||
|
||||
return [...ciscoAccessPoints, ...unifiAccessPoints]
|
||||
}
|
||||
|
|
|
@ -127,7 +127,7 @@ export async function getAccessPoints() {
|
|||
const {
|
||||
data: { Data: accessPoints }
|
||||
} = await ciscoAxios.get(
|
||||
`https://${process.env.CISCO_HOST}/data/ap-attributes-slot0.html?columns=28157`,
|
||||
`https://${process.env.CISCO_HOST}/data/ap-attributes-slot0.html?columns=49151`,
|
||||
{
|
||||
cancelToken: source.token
|
||||
}
|
||||
|
@ -136,13 +136,14 @@ export async function getAccessPoints() {
|
|||
clearTimeout(timeout)
|
||||
|
||||
const restructuredAccessPoints = accessPoints.map(
|
||||
({ Nm, Mc, Md, Ut, A4 }) => ({
|
||||
({ Nm, Mc, Md, Ut, A4, Cl }) => ({
|
||||
mac: Mc,
|
||||
hostname: Nm,
|
||||
uptime: Ut.toString(),
|
||||
controller: 'Cisco',
|
||||
model: Md,
|
||||
ipAddress: A4
|
||||
ipAddress: A4,
|
||||
clients: Cl
|
||||
})
|
||||
)
|
||||
|
||||
|
|
|
@ -212,15 +212,17 @@ export async function getAccessPoints() {
|
|||
const accessPoints = await unifiController.getAccessDevices('default')
|
||||
|
||||
const restructuredAccessPoints = accessPoints[0].map(
|
||||
({ mac, model, ip, uptime, name }) => ({
|
||||
({ mac, model, ip, uptime, name, num_sta }) => ({
|
||||
mac,
|
||||
hostname: name,
|
||||
uptime: uptime?.toString(),
|
||||
controller: 'UniFi',
|
||||
model,
|
||||
ipAddress: ip
|
||||
ipAddress: ip,
|
||||
clients: num_sta
|
||||
})
|
||||
)
|
||||
|
||||
unifiController.logout()
|
||||
|
||||
return restructuredAccessPoints
|
||||
|
|
9
server/src/resolvers/Query/accessPoints.js
Normal file
9
server/src/resolvers/Query/accessPoints.js
Normal file
|
@ -0,0 +1,9 @@
|
|||
import prisma from '../../prisma'
|
||||
|
||||
export async function accessPoints() {
|
||||
return prisma.accessPoint.findMany({
|
||||
orderBy: {
|
||||
hostname: 'asc'
|
||||
}
|
||||
})
|
||||
}
|
|
@ -1,3 +1,4 @@
|
|||
import { accessPoints } from './accessPoints'
|
||||
import { basicUser } from './basicUser'
|
||||
import { groups } from './groups'
|
||||
import { logs } from './logs'
|
||||
|
@ -11,6 +12,7 @@ import { wifiDevices } from './wifiDevices'
|
|||
import { wifiUsers } from './wifiUsers'
|
||||
|
||||
const Query = {
|
||||
accessPoints,
|
||||
basicUser,
|
||||
groups,
|
||||
logs,
|
||||
|
|
|
@ -294,6 +294,11 @@ const typeDefs = gql`
|
|||
name: String
|
||||
local: String
|
||||
notes: String
|
||||
uptime: String
|
||||
controller: String
|
||||
model: String
|
||||
ipAddress: String
|
||||
|
||||
createdAt: String
|
||||
updatedAt: String
|
||||
WifiDevices: [WifiDevice]
|
||||
|
|
Loading…
Reference in New Issue
Block a user