Files
cod-api/routes/notifikasi-wa.route.js
2026-07-08 12:56:08 +07:00

86 lines
2.5 KiB
JavaScript

const express = require('express');
const router = express.Router();
const verifyToken = require("../middleware/verifyToken");
const verifyAccess = require("../middleware/verifyAccess");
const NotifikasiWaService = require('../services/notifikasi-wa.service');
router.post('/restart-wa', async (req, res) => {
try {
const result = await NotifikasiWaService.restartWhatsapp();
return res.status(200).json(result);
} catch (error) {
return res.status(500).json(error);
}
});
router.post('/reminder-monthly/:id', verifyToken.verifyAccessToken, verifyAccess(), async (req, res) => {
try {
const { id } = req.params;
const { reminder_at_monthly } = req.body;
const result = await NotifikasiWaService.onMonthlyReminder(id, reminder_at_monthly);
return res.status(200).json(result);
} catch (error) {
return res.status(500).json(error);
}
});
router.post('/reminder-custom/:id', verifyToken.verifyAccessToken, verifyAccess(), async (req, res) => {
try {
const { id } = req.params;
const { start_date, end_date } = req.body;
const result = await NotifikasiWaService.onCustomReminder(id, start_date, end_date);
return res.status(200).json(result);
} catch (error) {
return res.status(500).json(error);
}
});
// router.get('/cron/jobs', async (req, res) => {
// try {
// const activeJobs = NotifikasiWaService.getActiveCronJobs();
// return res.status(200).json({
// success: true,
// total: activeJobs.length,
// jobs: activeJobs
// });
// } catch (error) {
// return res.status(500).json({
// success: false,
// message: error.message
// });
// }
// });
// router.delete('/cron/jobs/:deviceId', async (req, res) => {
// try {
// const { deviceId } = req.params;
// NotifikasiWaService.stopCronJob(deviceId);
// return res.status(200).json({
// success: true,
// message: `Cron job untuk device ${deviceId} dihentikan`
// });
// } catch (error) {
// return res.status(500).json({
// success: false,
// message: error.message
// });
// }
// });
// router.delete('/cron/jobs', async (req, res) => {
// try {
// NotifikasiWaService.stopAllCronJobs();
// return res.status(200).json({
// success: true,
// message: 'Semua cron job dihentikan'
// });
// } catch (error) {
// return res.status(500).json({
// success: false,
// message: error.message
// });
// }
// });
module.exports = router;