Commit af2522550cfc04463110f7c0fc343c64724aea3b
1 parent
761e213ec4
Exists in
master
JSDOC router-ussd
Showing 1 changed file with 9 additions and 3 deletions Inline Diff
lib/http-command-server/router-ussd.js
1 | 'use strict'; | 1 | 'use strict'; |
2 | 2 | ||
3 | const express = require('express'); | 3 | const express = require('express'); |
4 | 4 | ||
5 | const modem = require('../modem'); | 5 | const modem = require('../modem'); |
6 | 6 | ||
7 | const router = express.Router(); | 7 | const router = express.Router(); |
8 | module.exports = router; | 8 | module.exports = router; |
9 | 9 | ||
10 | 10 | /** | |
11 | * Eksekusi kode USSD | ||
12 | * @param {object} req - Objek request Express | ||
13 | * @param {object} req.query - Objek query string request Express | ||
14 | * @param {string} req.query.code - Kode USSD yang ingin dieksekusi | ||
15 | * @param {number} [req.query.include_cusd2=0] - Apakah ingin mengeksekusi CUSD=2 secara otomatis. 0: tidak (DEFAULT), 1: sesudah eksekusi ussd, -1: sebelum ekseksi ussd. | ||
16 | * @param {object} res - Objek respon Express | ||
17 | */ | ||
11 | async function handlerIndex(req, res) { | 18 | async function handlerIndex(req, res) { |
12 | if (!req.query || !req.query.code || typeof req.query.code !== 'string') { | 19 | if (!req.query || !req.query.code || typeof req.query.code !== 'string') { |
13 | res.json({ | 20 | res.json({ |
14 | status: 'NOT-OK', | 21 | status: 'NOT-OK', |
15 | error: 'INVALID-PARAMETER', | 22 | error: 'INVALID-PARAMETER', |
16 | message: 'Undefined parameter: code', | 23 | message: 'Undefined parameter: code', |
17 | }); | 24 | }); |
18 | 25 | ||
19 | return; | 26 | return; |
20 | } | 27 | } |
21 | 28 | ||
22 | const reply = await modem.executeUSSD(req.query.code, req.query.include_cusd2); | 29 | const reply = await modem.executeUSSD(req.query.code, req.query.include_cusd2); |
23 | res.json({ | 30 | res.json({ |
24 | status: 'OK', | 31 | status: 'OK', |
25 | error: false, | 32 | error: false, |
26 | code: req.query.code, | 33 | code: req.query.code, |
27 | include_cusd2: req.query.include_cusd2, | 34 | include_cusd2: req.query.include_cusd2, |
28 | result: reply, | 35 | message: reply, |
29 | message: 'USSD executed', | ||
30 | }); | 36 | }); |
31 | } | 37 | } |
32 | 38 | ||
33 | router.get('/', handlerIndex); | 39 | router.get('/', handlerIndex); |