Compare commits

..

No commits in common. "67a41076dbd0fd0c76daf4168ea1b628b071139f" and "ee631b5324aba248f9bc5042a1066ff0a95a6f3c" have entirely different histories.

8 changed files with 18 additions and 34 deletions

View File

@ -18,6 +18,4 @@ RUN npm run prisma:generate
RUN npm run build
ENV NODE_TLS_REJECT_UNAUTHORIZED="0"
CMD npm run prisma:deploy && npm start

View File

@ -1,12 +1,12 @@
{
"name": "ifms-pti-svr",
"version": "3.6.2",
"version": "3.6.1",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "ifms-pti-svr",
"version": "3.6.2",
"version": "3.6.1",
"license": "ISC",
"dependencies": {
"@prisma/client": "^4.7.1",

View File

@ -1,6 +1,6 @@
{
"name": "ifms-pti-svr",
"version": "3.6.2",
"version": "3.6.1",
"description": "Servidor do Portal de TI do IFMS",
"main": "src/index.js",
"prisma": {

View File

@ -6,17 +6,16 @@ import { logError } from './logger'
const TIMEOUT_IN_MS = 120000
const REQUEST_TIMEOUT_IN_MS = 20000
const getDevicesUri = (skip = 0, page = 1, take = 50) =>
`data/client-table.html?columns=524287&take=${take}&skip=${skip}&page=${page}&pageSize=50&sort[0][field]=ST&sort[0][dir]=desc`
const getDevicesUri = (skip, page, take) =>
`https://${process.env.CISCO_HOST}/data/client-table.html?columns=524287&take=${take}&skip=${skip}&page=${page}&pageSize=50&sort[0][field]=ST&sort[0][dir]=desc`
const httpsAgent = new https.Agent({
rejectUnauthorized: false
rejectUnauthorized: false,
ciphers: 'AES256-SHA' // That's necessary to connect to a TLS 1.0 server. Run node with --tls-min-v1.0
})
const ciscoAxios = create({
withCredentials: true,
httpsAgent: httpsAgent,
baseURL: `https://${process.env.CISCO_HOST}/`,
timeout: REQUEST_TIMEOUT_IN_MS,
auth: {
username: process.env.CISCO_USER,
@ -44,21 +43,12 @@ function getDevices() {
const responsesPromises = []
try {
await ciscoAxios.get(getDevicesUri())
} catch (e) {
if (e.response?.status === 401) {
const newSessionId = e.response.headers['set-cookie'][0]
.split(';')[0]
.split('=')[1]
ciscoAxios.defaults.headers.Cookie = `sessionId=${newSessionId}`
}
}
try {
const firstResponse = await ciscoAxios.get(getDevicesUri(), {
cancelToken: source.token
})
const firstResponse = await ciscoAxios.get(
getDevicesUri(skip, page, take),
{
cancelToken: source.token
}
)
const { total, data: page1devices } = firstResponse.data

View File

@ -25,11 +25,7 @@ async function getOnlineDevices() {
wifiController.getOnlineWifiDevices()
)
const onlineDevicesArray = (await Promise.allSettled(onlineDevicesPromises))
.filter(prom => prom.status === 'fulfilled')
.map(prom => prom.value)
const onlineDevices = onlineDevicesArray.flat()
const onlineDevices = (await Promise.all(onlineDevicesPromises)).flat()
return onlineDevices
}

4
web/package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "ifms-pti",
"version": "3.6.2",
"version": "3.6.1",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "ifms-pti",
"version": "3.6.2",
"version": "3.6.1",
"dependencies": {
"@mdi/font": "^6.9.96",
"apollo-link-ws": "^1.0.20",

View File

@ -1,6 +1,6 @@
{
"name": "ifms-pti",
"version": "3.6.2",
"version": "3.6.1",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",

View File

@ -110,7 +110,7 @@
>
mdi-alert-circle
</v-icon>
APs: {{ items.filter(ap => ap.uptime > 0).length }} online /
APs: {{ items.filter(ap => ap.uptime >= 0).length }} online /
{{ items.length }} total
</v-chip>
<v-chip class="ml-1" small outlined>