feature/IO-3060-Realtime-Notifications-System

- Add handlers for Job and Bill Change / Register Routers
- Add Tables / Modify Tables / Add permissions.
This commit is contained in:
Dave Richer
2025-01-09 13:28:56 -08:00
parent 7a88dd1aae
commit e2e5f3f885
14 changed files with 208 additions and 4 deletions

View File

@@ -0,0 +1,5 @@
const handleJobChange = (req, res) => {
return res.status(200).json({ message: "Job change handled." });
};
module.exports = handleJobChange;

View File

@@ -0,0 +1,5 @@
const handleBillChange = (req, res) => {
return res.status(200).json({ message: "Bill change handled." });
};
module.exports = handleBillChange;

View File

@@ -1,12 +1,19 @@
const express = require("express");
const validateFirebaseIdTokenMiddleware = require("../middleware/validateFirebaseIdTokenMiddleware");
const { subscribe, unsubscribe, sendNotification } = require("../firebase/firebase-handler");
const eventAuthorizationMiddleware = require("../middleware/eventAuthorizationMIddleware");
const handleJobChange = require("../notifications/eventHandlers/handeJobChange");
const handleBillChange = require("../notifications/eventHandlers/handleBillChange");
const router = express.Router();
router.use(validateFirebaseIdTokenMiddleware);
// These are FCM handlers
router.post("/subscribe", validateFirebaseIdTokenMiddleware, subscribe);
router.post("/unsubscribe", validateFirebaseIdTokenMiddleware, unsubscribe);
router.post("/sendtestnotification", validateFirebaseIdTokenMiddleware, sendNotification);
router.post("/subscribe", subscribe);
router.post("/unsubscribe", unsubscribe);
router.post("/sendtestnotification", sendNotification);
// Hasura Entry points for creating notifications
router.post("/events/handleJobChange", eventAuthorizationMiddleware, handleJobChange);
router.post("/events/handleBillChange", eventAuthorizationMiddleware, handleBillChange);
module.exports = router;