updates for purging calls periodically

This commit is contained in:
Dave Horton
2020-02-07 11:51:38 -05:00
parent 89cb61b188
commit f9c9aa8079
2 changed files with 22 additions and 4 deletions

22
app.js
View File

@@ -9,7 +9,12 @@ const cors = require('cors');
const passport = require('passport');
const authStrategy = require('./lib/auth')(logger);
const routes = require('./lib/routes');
const {retrieveCall, deleteCall, listCalls} = require('jambonz-realtimedb-helpers')(config.get('redis'), logger);
const {
retrieveCall,
deleteCall,
listCalls,
purgeCalls
} = require('jambonz-realtimedb-helpers')(config.get('redis'), logger);
const PORT = process.env.HTTP_PORT || 3000;
passport.use(authStrategy);
@@ -19,7 +24,8 @@ Object.assign(app.locals, {
logger,
retrieveCall,
deleteCall,
listCalls
listCalls,
purgeCalls
});
app.use(cors());
@@ -34,4 +40,16 @@ app.use((err, req, res, next) => {
logger.info(`listening for HTTP traffic on port ${PORT}`);
app.listen(PORT);
// purge old calls from active call set every 10 mins
async function purge() {
try {
const count = await purgeCalls();
logger.info(`purged ${count} calls from realtimedb`);
} catch (err) {
logger.error(err, 'Error purging calls');
}
setTimeout(purge, 10 * 60 * 1000);
}
purge();
module.exports = app;

View File

@@ -1,6 +1,6 @@
{
"name": "jambonz-api-server",
"version": "1.1.1",
"version": "1.1.2",
"description": "",
"main": "app.js",
"scripts": {
@@ -19,7 +19,7 @@
"cors": "^2.8.5",
"express": "^4.17.1",
"jambonz-db-helpers": "^0.2.0",
"jambonz-realtimedb-helpers": "0.1.3",
"jambonz-realtimedb-helpers": "0.1.5",
"mysql2": "^2.0.2",
"passport": "^0.4.0",
"passport-http-bearer": "^1.0.1",