lts-stats-api/app/routes/ivao.js
2023-01-06 19:12:43 +01:00

59 lines
1.5 KiB
JavaScript

const express = require('express');
const { getList, getWhitelist } = require('../controllers/sessionsController');
const { insertSessions, getSessions } = require('../db/mongo/mongoSessions');
const { getHistoricalSessions } = require('../requests/ivao/session');
const router = express.Router();
const { getIvaoWazzup } = require('../requests/ivao/wazzup');
router.get('/wazzup', async(req, res) => {
try {
const data = await getIvaoWazzup();
res.status(200).json(data);
} catch (err) {
console.log(err);
}
});
router.get('/sessions', async(req, res) => {
try {
const data = await getSessions(req.query);
res.status(200).json(data);
} catch (err) {
console.log(err);
}
});
router.get('/list/today', async(req, res) => {
try {
const data = await getList('LTS');
res.status(200).json(data);
} catch (err) {
console.log(err);
}
})
router.get('/whitelist', async(req, res) => {
try {
const data = await getWhitelist();
res.status(200).json(data);
} catch (err) {
console.log(err);
}
})
router.get('/init-sessions', async(req, res) => {
try {
const data = await getHistoricalSessions(req.query);
await insertSessions(data);
console.log(`${data.length} sessions inserted.`);
res.status(200);
} catch (err) {
console.log(err);
}
});
module.exports = router;
// http://localhost:3001/api/v1/ivao/sessions?callsign=LTS&from=2022-01-01T00:00:00&to=2022-12-31T23:59:59
// http://localhost:3001/api/v1/ivao/sessions?start=2023-01-05&to=2023-01-05