diff --git a/lib/apiserver/routers/smstools.js b/lib/apiserver/routers/smstools.js index dbacd0a..b052857 100644 --- a/lib/apiserver/routers/smstools.js +++ b/lib/apiserver/routers/smstools.js @@ -8,6 +8,7 @@ const logger = require('komodo-sdk/logger'); const smstoolsUtil = require('../../smstools-util'); const smstoolsStatus = require('../../smstools-status'); const smstoolsStatusParsed = require('../../smstools-status-parsed'); +const smstoolsConfigData = require('../../smstools-config/config-file'); const router = express.Router(); module.exports = router; @@ -28,6 +29,20 @@ async function pageRestart(req, res) { res.json(await smstoolsUtil.restart()); } +async function pageModemList(req, res) { + const modems = []; + // eslint-disable-next-line no-restricted-syntax + for (const [key, value] of Object.entries(smstoolsConfigData.modems || {})) { + modems.push({ + label: `${key}: ${value.device}, INCOMING${value.outgoing ? ' and OUTGOING' : ''}`, + value: key, + data: value, + }); + } + + res.json(modems); +} + function pageLog(req, res) { const maxLines = (Number(req.query.max) || 200); const keyword = req.query.keyword && escapeQuotes(req.query.keyword, '\'\n"&|*<>[];$ '); @@ -68,3 +83,4 @@ router.get('/status/raw', pageStatusRaw); router.get('/restart', pageRestart); router.get('/log', pageLog); router.get('/spool-count', pageSpoolCount); +router.get('/modems', pageModemList);