/* ! /servers/gateway/routers/template.router.js – */ // % import nodejs dependencies const router = require('express').Router(); // % import external dependencies const rootDir = path.resolve(__dirname, '..', '..', '..'); const { dirs } = require(path.resolve(rootDir, 'configuration', 'mapping.js')); const { gatewayEvents, sendToWs } = path.resolve(dirs.gateway, 'functions.js'); // $ template router with websocket integration router.post('/test', (req, res) => { const correlationId = ''; sendToWs({ type: 'actionName', correlationId, data: req.body }); // ~ wait for callback through central event bus gatewayEvents.once('ws_message', (msg) => { if (msg.correlationId === correlationId) res.json(msg.data); }); }); // § export routers module.exports = router;