Commit d23d98061b4e86274110f2847fa0fa789cd3d25f
1 parent
3f3d02d281
Exists in
master
router-modems
Showing 3 changed files with 39 additions and 1 deletions Side-by-side Diff
lib/apiserver/index.js
... | ... | @@ -18,6 +18,8 @@ const partnerLastSeen = require('../partner-last-seen'); |
18 | 18 | const history = require('../history'); |
19 | 19 | const modems = require('../modems2'); |
20 | 20 | |
21 | +const routerModems = require('./router-modems'); | |
22 | + | |
21 | 23 | const app = express(); |
22 | 24 | messagingService.setTransport(transport); |
23 | 25 | |
... | ... | @@ -87,6 +89,7 @@ app.get('/apikey/:apikey/on-sms', onIncomingSms); |
87 | 89 | app.get('/apikey/:apikey/inbox', onIncomingSms); |
88 | 90 | app.get('/apikey/:apikey/on-sms/inbox', onIncomingSms); |
89 | 91 | app.get('/apikey/:apikey/history', pageHistory); |
92 | +app.use('/modems', routerModems); | |
90 | 93 | |
91 | 94 | const listenPort = config && config.handler_callback_server ? config.handler_callback_server.listen_port : null; |
92 | 95 | listenPort && app.listen(listenPort, () => { |
lib/apiserver/router-modems.js
... | ... | @@ -0,0 +1,30 @@ |
1 | +'use strict'; | |
2 | + | |
3 | +const express = require('express'); | |
4 | +const modems = require('../modems2'); | |
5 | + | |
6 | +const router = express.Router(); | |
7 | +module.exports = router; | |
8 | + | |
9 | +function pageIndex(req, res) { | |
10 | + res.json(modems.dump()); | |
11 | +} | |
12 | + | |
13 | +function pageSet(req, res) { | |
14 | + res.end('OK'); | |
15 | + | |
16 | + modems.set({ | |
17 | + name: req.query.modem, | |
18 | + imsi: req.query.modem_imsi, | |
19 | + msisdn: req.query.modem_msisdn, | |
20 | + device: req.query.modem_device, | |
21 | + uptime: req.query.uptime, | |
22 | + reportIp: req.query.report_ip || req.ip, | |
23 | + reportPort: req.query.report_port, | |
24 | + reportApikey: req.query.report_apikey, | |
25 | + reportPathSms: req.query.report_path_sms || '/sms', | |
26 | + }); | |
27 | +} | |
28 | + | |
29 | +router.get('/', pageIndex); | |
30 | +router.get('/set', pageSet); | |
0 | 31 | \ No newline at end of file |
lib/modems2.js
... | ... | @@ -91,6 +91,11 @@ function get(selector, keyword) { |
91 | 91 | return modemList[`by_${selector}`] ? modemList[`by_${selector}`][keyword] : null; |
92 | 92 | } |
93 | 93 | |
94 | +function dump() { | |
95 | + return modemList; | |
96 | +} | |
97 | + | |
94 | 98 | exports.touch = touch; |
95 | 99 | exports.set = touch; |
96 | -exports.get = get; | |
97 | 100 | \ No newline at end of file |
101 | +exports.get = get; | |
102 | +exports.dump = dump; | |
98 | 103 | \ No newline at end of file |