ifms-printer-manager/src/jobs.ts
2024-01-29 08:47:11 -04:00

31 lines
766 B
TypeScript

import * as path from 'node:path'
import { fileURLToPath } from 'node:url'
import Bree from 'bree'
import { EventsController } from './controllers/EventsController.js'
export const jobs = new Bree({
root: path.join(path.dirname(fileURLToPath(import.meta.url)), 'jobs'),
defaultExtension: process.env.NODE_ENV == 'production' ? 'js' : 'ts',
logger: false,
jobs: [
{
name: 'updatePrinterStatus',
interval: process.env.UPDATE_INTERVAL || '1m',
timeout: 0
},
{
name: 'discoverPrinters',
cron: '0 */12 * * *'
}
]
})
jobs.on('worker deleted', name => {
if (name == 'updatePrinterStatus')
EventsController.sendEvent({
message: 'Printers updated',
timestamp: new Date().toLocaleString()
})
})