21 lines
1.0 KiB
JavaScript
21 lines
1.0 KiB
JavaScript
const express = require("express");
|
|
const router = express.Router();
|
|
const twilio = require("twilio");
|
|
const { receive } = require("../sms/receive");
|
|
const { send } = require("../sms/send");
|
|
const { status, markConversationRead } = require("../sms/status");
|
|
const validateFirebaseIdTokenMiddleware = require("../middleware/validateFirebaseIdTokenMiddleware");
|
|
const { setConsent, bulkSetConsent } = require("../sms/consent");
|
|
|
|
// Twilio Webhook Middleware for production
|
|
const twilioWebhookMiddleware = twilio.webhook({ validate: process.env.NODE_ENV === "PRODUCTION" });
|
|
|
|
router.post("/receive", twilioWebhookMiddleware, receive);
|
|
router.post("/send", validateFirebaseIdTokenMiddleware, send);
|
|
router.post("/status", twilioWebhookMiddleware, status);
|
|
router.post("/markConversationRead", validateFirebaseIdTokenMiddleware, markConversationRead);
|
|
router.post("/setConsent", validateFirebaseIdTokenMiddleware, setConsent);
|
|
router.post("/bulkSetConsent", validateFirebaseIdTokenMiddleware, bulkSetConsent);
|
|
|
|
module.exports = router;
|