feat: add node-cron daily summary job at 10:00
This commit is contained in:
parent
f7bc98eaed
commit
2dabcf0a8e
3 changed files with 33 additions and 3 deletions
21
src/index.js
21
src/index.js
|
|
@ -1,7 +1,10 @@
|
|||
require('dotenv').config()
|
||||
const cron = require('node-cron')
|
||||
const express = require('express')
|
||||
const { handleWebhook } = require('./messageHandler')
|
||||
const { loadDiensten } = require('./dienstService')
|
||||
const { resetDay, getYesterdayTotal } = require('./dailyStats')
|
||||
const { sendTextMessage } = require('./whatsappApi')
|
||||
|
||||
const app = express()
|
||||
app.use(express.json({ limit: '10mb' }))
|
||||
|
|
@ -24,8 +27,24 @@ const PORT = process.env.WEBHOOK_PORT || 3002
|
|||
|
||||
loadDiensten()
|
||||
|
||||
cron.schedule('0 10 * * *', () => {
|
||||
const adminNumber = process.env.ADMIN_NUMBER
|
||||
if (!adminNumber) {
|
||||
console.error('ADMIN_NUMBER not configured, skipping daily summary')
|
||||
return
|
||||
}
|
||||
|
||||
resetDay()
|
||||
const total = getYesterdayTotal()
|
||||
|
||||
sendTextMessage(adminNumber, `Aantal dienstaanvragen gisteren: ${total}`)
|
||||
.then(() => console.log(`Daily summary sent: ${total} requests`))
|
||||
.catch(err => console.error('Failed to send daily summary:', err.message))
|
||||
})
|
||||
|
||||
app.listen(PORT, () => {
|
||||
console.log(`dienst-bot listening on port ${PORT}`)
|
||||
console.log(`Allowed group: ${process.env.ALLOWED_GROUP}`)
|
||||
console.log(`Bot name: ${process.env.BOT_NAME}`)
|
||||
})
|
||||
console.log('Daily summary cron job scheduled for 10:00')
|
||||
})
|
||||
Loading…
Reference in a new issue