diff --git a/server/prisma/migrations/20221006115627_add_uplink_speed/migration.sql b/server/prisma/migrations/20221006115627_add_uplink_speed/migration.sql
new file mode 100644
index 0000000..3def35b
--- /dev/null
+++ b/server/prisma/migrations/20221006115627_add_uplink_speed/migration.sql
@@ -0,0 +1,2 @@
+-- AlterTable
+ALTER TABLE "AccessPoint" ADD COLUMN "uplinkSpeed" INTEGER;
diff --git a/server/prisma/schema.prisma b/server/prisma/schema.prisma
index 477407c..4d41b69 100644
--- a/server/prisma/schema.prisma
+++ b/server/prisma/schema.prisma
@@ -148,6 +148,7 @@ model AccessPoint {
inventoryTag String?
usage BigInt?
uptime Int?
+ uplinkSpeed Int?
stats AccessPointStats[] @relation("accesspointstats_to_ap")
wifiDevices WifiDevice[] @relation("wifidevice_to_ap")
}
diff --git a/server/src/lib/ciscoController.js b/server/src/lib/ciscoController.js
index c12971b..96fbc64 100644
--- a/server/src/lib/ciscoController.js
+++ b/server/src/lib/ciscoController.js
@@ -150,7 +150,8 @@ export function getAccessPoints() {
model: Md,
ip: A4,
clients: +Cl,
- usage: +Vm
+ usage: +Vm,
+ uplinkSpeed: null
})
)
diff --git a/server/src/lib/unifiController.js b/server/src/lib/unifiController.js
index 7790108..aec994b 100644
--- a/server/src/lib/unifiController.js
+++ b/server/src/lib/unifiController.js
@@ -205,12 +205,14 @@ export async function getOnlineWifiDevices() {
}
}
+const fs = require('fs')
+
export async function getAccessPoints() {
try {
const [accessPoints] = await unifiController.getAccessDevices('default')
const restructuredAccessPoints = accessPoints.map(
- ({ mac, model, ip, uptime, name, num_sta, bytes }) => ({
+ ({ mac, model, ip, uptime, name, num_sta, bytes, uplink }) => ({
mac,
hostname: name || mac.replaceAll(':', ''),
uptime: uptime ? +uptime : -1,
@@ -218,7 +220,8 @@ export async function getAccessPoints() {
model,
ip,
clients: num_sta,
- usage: +bytes || 0
+ usage: +bytes || 0,
+ uplinkSpeed: uplink?.speed || null
})
)
diff --git a/server/src/typeDefs.js b/server/src/typeDefs.js
index 3109970..cd8e7f6 100644
--- a/server/src/typeDefs.js
+++ b/server/src/typeDefs.js
@@ -327,6 +327,7 @@ const typeDefs = gql`
clients: Int
subnetInfo: SubnetInfo
usage: String
+ uplinkSpeed: Int
createdAt: String
updatedAt: String
diff --git a/web/src/views/AccessPoints/index.vue b/web/src/views/AccessPoints/index.vue
index 6da6908..ca80e4f 100644
--- a/web/src/views/AccessPoints/index.vue
+++ b/web/src/views/AccessPoints/index.vue
@@ -201,6 +201,20 @@
{{ item.usage | bytes }}
+
+
+ GbE
+
+
+ FE
+
+ -
+
@@ -250,6 +264,7 @@ export default {
value: 'controller'
},
{ text: 'Uso', value: 'usage' },
+ { text: 'Uplink', value: 'uplinkSpeed' },
{ text: 'Observações', value: 'notes' },
{ text: 'Última atualização', value: 'updatedAt', width: 160 }
]
@@ -381,6 +396,7 @@ export default {
ip
clients
usage
+ uplinkSpeed
createdAt
updatedAt