Commit a6fbe088d9cd9ae1a5fee54e44d84b6b6487f849
1 parent
d98766cab4
Exists in
master
claimbonus
Showing 3 changed files with 43 additions and 0 deletions Inline Diff
lib/command-handler/claimbonus.js
File was created | 1 | const coreEndpoint = '/rebate/claim-store'; | |
2 | |||
3 | const commandError = require('./error'); | ||
4 | const coreapi = require('../coreapi'); | ||
5 | |||
6 | function help(keyword) { | ||
7 | return `Untuk menarik bonus ke saldo, ketik perintah dengan format:\n${ keyword.toUpperCase() }.<PIN>`; | ||
8 | } | ||
9 | |||
10 | function execute(tokens, params, cb) { | ||
11 | |||
12 | if (!tokens || tokens.length < 2) { | ||
13 | const responseParams = { | ||
14 | body: `${ commandError.ERR_INVALID_FORMAT }. ${ help(tokens[0]) }` | ||
15 | } | ||
16 | |||
17 | cb(null, null, responseParams); | ||
18 | return; | ||
19 | } | ||
20 | |||
21 | const coreParams = { | ||
22 | asker_terminal_name: params.from, | ||
23 | asker_terminal_password: tokens[1], | ||
24 | }; | ||
25 | |||
26 | coreapi(coreEndpoint, coreParams, 'GET', cb); | ||
27 | } | ||
28 | |||
29 | module.exports = execute; |
lib/command-handler/index.js
1 | "use strict"; | 1 | "use strict"; |
2 | 2 | ||
3 | const logger = require('komodo-sdk/logger'); | 3 | const logger = require('komodo-sdk/logger'); |
4 | 4 | ||
5 | const commandParser = require('../command-parser'); | 5 | const commandParser = require('../command-parser'); |
6 | 6 | ||
7 | const commandError = require('./error'); | 7 | const commandError = require('./error'); |
8 | 8 | ||
9 | const handlerAddBalance = require('./addbalance'); | 9 | const handlerAddBalance = require('./addbalance'); |
10 | const handlerAddDownline = require('./adddownline'); | 10 | const handlerAddDownline = require('./adddownline'); |
11 | const handlerAddTerminal = require('./addterminal'); | 11 | const handlerAddTerminal = require('./addterminal'); |
12 | const handlerBalance = require('./balance'); | 12 | const handlerBalance = require('./balance'); |
13 | const handlerBuy = require('./buy'); | 13 | const handlerBuy = require('./buy'); |
14 | const handlerChangePin = require('./changepin'); | 14 | const handlerChangePin = require('./changepin'); |
15 | const handlerClaimBonus = require('./claimbonus'); | ||
15 | const handlerDaySummary = require('./daysummary'); | 16 | const handlerDaySummary = require('./daysummary'); |
16 | const handlerDepositTicket = require('./depositticket'); | 17 | const handlerDepositTicket = require('./depositticket'); |
17 | const handlerDisableDownline = require('./disabledownline'); | 18 | const handlerDisableDownline = require('./disabledownline'); |
18 | const handlerDownlineInfo = require('./downlineinfo'); | 19 | const handlerDownlineInfo = require('./downlineinfo'); |
19 | const handlerEnableDownline = require('./enabledownline'); | 20 | const handlerEnableDownline = require('./enabledownline'); |
20 | const handlerHelp = require('./help'); | 21 | const handlerHelp = require('./help'); |
21 | const handlerListDeposit = require('./listdeposit'); | 22 | const handlerListDeposit = require('./listdeposit'); |
22 | const handlerListDownline = require('./listdownline'); | 23 | const handlerListDownline = require('./listdownline'); |
23 | const handlerListTerminal = require('./listterminal'); | 24 | const handlerListTerminal = require('./listterminal'); |
24 | const handlerListTrx = require('./listtrx'); | 25 | const handlerListTrx = require('./listtrx'); |
25 | const handlerPrice = require('./price'); | 26 | const handlerPrice = require('./price'); |
26 | const handlerSupplierBalances = require('./supplierbalances'); | 27 | const handlerSupplierBalances = require('./supplierbalances'); |
27 | const handlerTemporaryBonus = require('./temporarybonus'); | 28 | const handlerTemporaryBonus = require('./temporarybonus'); |
28 | const handlerTransferBalance = require('./transferbalance'); | 29 | const handlerTransferBalance = require('./transferbalance'); |
29 | 30 | ||
30 | function execute(msg, params, cb) { | 31 | function execute(msg, params, cb) { |
31 | 32 | ||
32 | if ( typeof msg !== 'string' || !msg.trim() ) { | 33 | if ( typeof msg !== 'string' || !msg.trim() ) { |
33 | cb(commandError.ERR_EMPTY_MESSAGE); | 34 | cb(commandError.ERR_EMPTY_MESSAGE); |
34 | return; | 35 | return; |
35 | } | 36 | } |
36 | 37 | ||
37 | const tokens = commandParser.splitToken(msg); | 38 | const tokens = commandParser.splitToken(msg); |
38 | const commandGroup = commandParser.extractCommandGroup(tokens); | 39 | const commandGroup = commandParser.extractCommandGroup(tokens); |
39 | params.commandGroup = commandGroup; | 40 | params.commandGroup = commandGroup; |
40 | logger.info('Processing message from partner', { msg, params, tokens, commandGroup }); | 41 | logger.info('Processing message from partner', { msg, params, tokens, commandGroup }); |
41 | 42 | ||
42 | if (!commandGroup || commandGroup === 'buy') { | 43 | if (!commandGroup || commandGroup === 'buy') { |
43 | handlerBuy(tokens, params, cb); | 44 | handlerBuy(tokens, params, cb); |
44 | } | 45 | } |
45 | else if (commandGroup === 'balance') { | 46 | else if (commandGroup === 'balance') { |
46 | handlerBalance(tokens, params, cb); | 47 | handlerBalance(tokens, params, cb); |
47 | } | 48 | } |
48 | else if (commandGroup === 'addbalance') { | 49 | else if (commandGroup === 'addbalance') { |
49 | handlerAddBalance(tokens, params, cb); | 50 | handlerAddBalance(tokens, params, cb); |
50 | } | 51 | } |
51 | else if (commandGroup === 'transferbalance') { | 52 | else if (commandGroup === 'transferbalance') { |
52 | handlerTransferBalance(tokens, params, cb); | 53 | handlerTransferBalance(tokens, params, cb); |
53 | } | 54 | } |
54 | else if (commandGroup === 'price') { | 55 | else if (commandGroup === 'price') { |
55 | handlerPrice(tokens, params, cb); | 56 | handlerPrice(tokens, params, cb); |
56 | } | 57 | } |
57 | else if (commandGroup === 'listdownline') { | 58 | else if (commandGroup === 'listdownline') { |
58 | handlerListDownline(tokens, params, cb); | 59 | handlerListDownline(tokens, params, cb); |
59 | } | 60 | } |
60 | else if (commandGroup === 'downlineinfo') { | 61 | else if (commandGroup === 'downlineinfo') { |
61 | handlerDownlineInfo(tokens, params, cb); | 62 | handlerDownlineInfo(tokens, params, cb); |
62 | } | 63 | } |
63 | else if (commandGroup === 'adddownline') { | 64 | else if (commandGroup === 'adddownline') { |
64 | handlerAddDownline(tokens, params, cb); | 65 | handlerAddDownline(tokens, params, cb); |
65 | } | 66 | } |
66 | else if (commandGroup === 'listterminal') { | 67 | else if (commandGroup === 'listterminal') { |
67 | handlerListTerminal(tokens, params, cb); | 68 | handlerListTerminal(tokens, params, cb); |
68 | } | 69 | } |
69 | else if (commandGroup === 'listtrx' || commandGroup === 'listtrxall') { | 70 | else if (commandGroup === 'listtrx' || commandGroup === 'listtrxall') { |
70 | handlerListTrx(tokens, params, cb); | 71 | handlerListTrx(tokens, params, cb); |
71 | } | 72 | } |
72 | else if (commandGroup === 'listdeposit') { | 73 | else if (commandGroup === 'listdeposit') { |
73 | handlerListDeposit(tokens, params, cb); | 74 | handlerListDeposit(tokens, params, cb); |
74 | } | 75 | } |
75 | else if (commandGroup === 'addterminal') { | 76 | else if (commandGroup === 'addterminal') { |
76 | handlerAddTerminal(tokens, params, cb); | 77 | handlerAddTerminal(tokens, params, cb); |
77 | } | 78 | } |
78 | else if (commandGroup === 'changepin') { | 79 | else if (commandGroup === 'changepin') { |
79 | handlerChangePin(tokens, params, cb); | 80 | handlerChangePin(tokens, params, cb); |
80 | } | 81 | } |
81 | else if (commandGroup === 'enabledownline') { | 82 | else if (commandGroup === 'enabledownline') { |
82 | handlerEnableDownline(tokens, params, cb); | 83 | handlerEnableDownline(tokens, params, cb); |
83 | } | 84 | } |
84 | else if (commandGroup === 'daysummary' || commandGroup === 'daysummaryall') { | 85 | else if (commandGroup === 'daysummary' || commandGroup === 'daysummaryall') { |
85 | handlerDaySummary(tokens, params, cb); | 86 | handlerDaySummary(tokens, params, cb); |
86 | } | 87 | } |
87 | else if (commandGroup === 'depositticket') { | 88 | else if (commandGroup === 'depositticket') { |
88 | handlerDepositTicket(tokens, params, cb); | 89 | handlerDepositTicket(tokens, params, cb); |
89 | } | 90 | } |
90 | else if (commandGroup === 'disabledownline') { | 91 | else if (commandGroup === 'disabledownline') { |
91 | handlerDisableDownline(tokens, params, cb); | 92 | handlerDisableDownline(tokens, params, cb); |
92 | } | 93 | } |
93 | else if (commandGroup === 'supplierbalances') { | 94 | else if (commandGroup === 'supplierbalances') { |
94 | handlerSupplierBalances(tokens, params, cb); | 95 | handlerSupplierBalances(tokens, params, cb); |
95 | } | 96 | } |
97 | else if (commandGroup === 'claimbonus') { | ||
98 | handlerClaimBonus(tokens, params, cb); | ||
99 | } | ||
96 | else if (commandGroup === 'temporarybonus') { | 100 | else if (commandGroup === 'temporarybonus') { |
97 | handlerTemporaryBonus(tokens, params, cb); | 101 | handlerTemporaryBonus(tokens, params, cb); |
98 | } | 102 | } |
99 | else if (commandGroup === 'help') { | 103 | else if (commandGroup === 'help') { |
100 | handlerHelp(tokens, params, cb) | 104 | handlerHelp(tokens, params, cb) |
101 | } | 105 | } |
102 | else { | 106 | else { |
103 | cb(commandError.ERR_NOT_IMPLEMENTED); | 107 | cb(commandError.ERR_NOT_IMPLEMENTED); |
104 | } | 108 | } |
105 | } | 109 | } |
106 | 110 | ||
107 | module.exports = execute; | 111 | module.exports = execute; |
lib/default-command.js
1 | module.exports = { | 1 | module.exports = { |
2 | help: [ | 2 | help: [ |
3 | "bantu", | 3 | "bantu", |
4 | "bantuan", | 4 | "bantuan", |
5 | "format", | 5 | "format", |
6 | "help", | 6 | "help", |
7 | "tolong", | 7 | "tolong", |
8 | ], | 8 | ], |
9 | buy: [ | 9 | buy: [ |
10 | "beli", | 10 | "beli", |
11 | "buy", | 11 | "buy", |
12 | "i", | 12 | "i", |
13 | "isi", | 13 | "isi", |
14 | ], | 14 | ], |
15 | _statuscheck: [ | 15 | _statuscheck: [ |
16 | "cekstatus", | 16 | "cekstatus", |
17 | "checkstatus", | 17 | "checkstatus", |
18 | "status", | 18 | "status", |
19 | ], | 19 | ], |
20 | balance: [ | 20 | balance: [ |
21 | "bal", | 21 | "bal", |
22 | "balance", | 22 | "balance", |
23 | "ceksaldo", | 23 | "ceksaldo", |
24 | "checksaldo", | 24 | "checksaldo", |
25 | "s", | 25 | "s", |
26 | "sal", | 26 | "sal", |
27 | "saldo", | 27 | "saldo", |
28 | ], | 28 | ], |
29 | transferbalance: [ | 29 | transferbalance: [ |
30 | "transfer", | 30 | "transfer", |
31 | "trf", | 31 | "trf", |
32 | ], | 32 | ], |
33 | addbalance: [ | 33 | addbalance: [ |
34 | "addbalance", | 34 | "addbalance", |
35 | "addbal", | 35 | "addbal", |
36 | "tambahsaldo", | 36 | "tambahsaldo", |
37 | ], | 37 | ], |
38 | listdownline: [ | 38 | listdownline: [ |
39 | "dllist", | 39 | "dllist", |
40 | "dlls", | 40 | "dlls", |
41 | "downlinelist", | 41 | "downlinelist", |
42 | "downlinels", | 42 | "downlinels", |
43 | "ldl", | 43 | "ldl", |
44 | "listdl", | 44 | "listdl", |
45 | "listdownline", | 45 | "listdownline", |
46 | "listmitra", | 46 | "listmitra", |
47 | "lsdl", | 47 | "lsdl", |
48 | "lsdownline", | 48 | "lsdownline", |
49 | "lsmitra", | 49 | "lsmitra", |
50 | "mitrals", | 50 | "mitrals", |
51 | ], | 51 | ], |
52 | adddownline: [ | 52 | adddownline: [ |
53 | "adddl", | 53 | "adddl", |
54 | "adddownline", | 54 | "adddownline", |
55 | "addmitra", | 55 | "addmitra", |
56 | "buatdl", | 56 | "buatdl", |
57 | "buatdownline", | 57 | "buatdownline", |
58 | "createdl", | 58 | "createdl", |
59 | "createdownlne", | 59 | "createdownlne", |
60 | "createmitra", | 60 | "createmitra", |
61 | "regdl", | 61 | "regdl", |
62 | "regdownline", | 62 | "regdownline", |
63 | "registerdl", | 63 | "registerdl", |
64 | "registerdownline", | 64 | "registerdownline", |
65 | "registermitra", | 65 | "registermitra", |
66 | "regmitra", | 66 | "regmitra", |
67 | "tambahdl", | 67 | "tambahdl", |
68 | "tambahdownline", | 68 | "tambahdownline", |
69 | "tambahmitra", | 69 | "tambahmitra", |
70 | ], | 70 | ], |
71 | downlineinfo: [ | 71 | downlineinfo: [ |
72 | "dl", | 72 | "dl", |
73 | "downline", | 73 | "downline", |
74 | "mitra", | 74 | "mitra", |
75 | "saldodownline", | 75 | "saldodownline", |
76 | "saldomitra", | 76 | "saldomitra", |
77 | "sd", | 77 | "sd", |
78 | "sdl", | 78 | "sdl", |
79 | ], | 79 | ], |
80 | disabledownline: [ | 80 | disabledownline: [ |
81 | "disabledl", | 81 | "disabledl", |
82 | "disabledownline", | 82 | "disabledownline", |
83 | "disablemitra", | 83 | "disablemitra", |
84 | "nonaktifdl", | 84 | "nonaktifdl", |
85 | "nonaktifdownline", | 85 | "nonaktifdownline", |
86 | "nonaktifkandl", | 86 | "nonaktifkandl", |
87 | "nonaktifkandownline", | 87 | "nonaktifkandownline", |
88 | "nonaktifkanmitra", | 88 | "nonaktifkanmitra", |
89 | "nonaktifmitra", | 89 | "nonaktifmitra", |
90 | ], | 90 | ], |
91 | enabledownline: [ | 91 | enabledownline: [ |
92 | "aktifkandl", | 92 | "aktifkandl", |
93 | "aktifkandownline", | 93 | "aktifkandownline", |
94 | "aktifkanmitra", | 94 | "aktifkanmitra", |
95 | "aktivasidl", | 95 | "aktivasidl", |
96 | "aktivasidownline", | 96 | "aktivasidownline", |
97 | "aktivasimitra", | 97 | "aktivasimitra", |
98 | "enabledl", | 98 | "enabledl", |
99 | "enabledownline", | 99 | "enabledownline", |
100 | "enablemitra", | 100 | "enablemitra", |
101 | ], | 101 | ], |
102 | daysummary: [ | 102 | daysummary: [ |
103 | "lap", | 103 | "lap", |
104 | "laporan", | 104 | "laporan", |
105 | "rekap", | 105 | "rekap", |
106 | ], | 106 | ], |
107 | daysummaryall: [ | 107 | daysummaryall: [ |
108 | "lapall", | 108 | "lapall", |
109 | "laporanall", | 109 | "laporanall", |
110 | "rekapall", | 110 | "rekapall", |
111 | ], | 111 | ], |
112 | _daysummarydownline: [ | 112 | _daysummarydownline: [ |
113 | "lapdl", | 113 | "lapdl", |
114 | "lapdownline", | 114 | "lapdownline", |
115 | "lapmitra", | 115 | "lapmitra", |
116 | "laporandl", | 116 | "laporandl", |
117 | "laporandownline", | 117 | "laporandownline", |
118 | "laporanmitra", | 118 | "laporanmitra", |
119 | "rekapalldl", | 119 | "rekapalldl", |
120 | "rekapalldownline", | 120 | "rekapalldownline", |
121 | "rekapallmitra", | 121 | "rekapallmitra", |
122 | ], | 122 | ], |
123 | _maintenanceactivate: [ | 123 | _maintenanceactivate: [ |
124 | "activatemaintenance", | 124 | "activatemaintenance", |
125 | "maintenanceactivate" | 125 | "maintenanceactivate" |
126 | ], | 126 | ], |
127 | _maintenancedeactivate: [ | 127 | _maintenancedeactivate: [ |
128 | "deactivatemaintenance", | 128 | "deactivatemaintenance", |
129 | "maintenancedeactivate" | 129 | "maintenancedeactivate" |
130 | ], | 130 | ], |
131 | price: [ | 131 | price: [ |
132 | "cekharga", | 132 | "cekharga", |
133 | "ch", | 133 | "ch", |
134 | "checkharga", | 134 | "checkharga", |
135 | "h", | 135 | "h", |
136 | "harga", | 136 | "harga", |
137 | "hargaproduct", | 137 | "hargaproduct", |
138 | "hargaproduk", | 138 | "hargaproduk", |
139 | "price", | 139 | "price", |
140 | ], | 140 | ], |
141 | changepin: [ | 141 | changepin: [ |
142 | "changepin", | 142 | "changepin", |
143 | "gantipin", | 143 | "gantipin", |
144 | "pin", | 144 | "pin", |
145 | "setpin", | 145 | "setpin", |
146 | "ubahpin", | 146 | "ubahpin", |
147 | ], | 147 | ], |
148 | depositticket: [ | 148 | depositticket: [ |
149 | 'depo', | 149 | 'depo', |
150 | 'depositticket', | 150 | 'depositticket', |
151 | 'depoticket', | 151 | 'depoticket', |
152 | 'tiket', | 152 | 'tiket', |
153 | 'tiketdeposit', | 153 | 'tiketdeposit', |
154 | ], | 154 | ], |
155 | listdeposit: [ | 155 | listdeposit: [ |
156 | 'depolist', | 156 | 'depolist', |
157 | 'depositlist', | 157 | 'depositlist', |
158 | 'listdepo', | 158 | 'listdepo', |
159 | 'listdeposit', | 159 | 'listdeposit', |
160 | 'listtransfer', | 160 | 'listtransfer', |
161 | 'listtrf', | 161 | 'listtrf', |
162 | 'rekapdepo', | 162 | 'rekapdepo', |
163 | 'rekapdeposit', | 163 | 'rekapdeposit', |
164 | 'rekaptransfer', | 164 | 'rekaptransfer', |
165 | 'rekaptrf', | 165 | 'rekaptrf', |
166 | 'transferlist', | 166 | 'transferlist', |
167 | 'trflist', | 167 | 'trflist', |
168 | ], | 168 | ], |
169 | listterminal: [ | 169 | listterminal: [ |
170 | 'listmsisdn', | 170 | 'listmsisdn', |
171 | 'listterminal', | 171 | 'listterminal', |
172 | 'listterm', | 172 | 'listterm', |
173 | 'lsmsisdn', | 173 | 'lsmsisdn', |
174 | 'lsterminal', | 174 | 'lsterminal', |
175 | 'lsterm', | 175 | 'lsterm', |
176 | 'msisdn', | 176 | 'msisdn', |
177 | 'msisdnlist', | 177 | 'msisdnlist', |
178 | 'msisdnls', | 178 | 'msisdnls', |
179 | 'terminal', | 179 | 'terminal', |
180 | 'terminallist', | 180 | 'terminallist', |
181 | 'terminalls', | 181 | 'terminalls', |
182 | 'terminalterdaftar', | 182 | 'terminalterdaftar', |
183 | ], | 183 | ], |
184 | addterminal: [ | 184 | addterminal: [ |
185 | 'addmsisdn', | 185 | 'addmsisdn', |
186 | 'addterminal', | 186 | 'addterminal', |
187 | 'createmsisdn', | 187 | 'createmsisdn', |
188 | 'createterminal', | 188 | 'createterminal', |
189 | 'msisdnadd', | 189 | 'msisdnadd', |
190 | 'newmsisdn', | 190 | 'newmsisdn', |
191 | 'newterminal', | 191 | 'newterminal', |
192 | 'registerterminal', | 192 | 'registerterminal', |
193 | 'regmsisdn', | 193 | 'regmsisdn', |
194 | 'regterminal', | 194 | 'regterminal', |
195 | 'tambahmsisdn', | 195 | 'tambahmsisdn', |
196 | 'tambahterminal', | 196 | 'tambahterminal', |
197 | 'terminaladd', | 197 | 'terminaladd', |
198 | ], | 198 | ], |
199 | supplierbalances: [ | 199 | supplierbalances: [ |
200 | 'supbal', | 200 | 'supbal', |
201 | 'supplier', | 201 | 'supplier', |
202 | 'supplierbal', | 202 | 'supplierbal', |
203 | 'supplierbalance', | 203 | 'supplierbalance', |
204 | 'supplierbalances', | 204 | 'supplierbalances', |
205 | 'suppliers', | 205 | 'suppliers', |
206 | 'suppliersbal', | 206 | 'suppliersbal', |
207 | 'suppliersbalance', | 207 | 'suppliersbalance', |
208 | 'suppliersbalances', | 208 | 'suppliersbalances', |
209 | ], | 209 | ], |
210 | listtrx: [ | 210 | listtrx: [ |
211 | 'listtrx', | 211 | 'listtrx', |
212 | 'listtransaksi', | 212 | 'listtransaksi', |
213 | ], | 213 | ], |
214 | listtrxall: [ | 214 | listtrxall: [ |
215 | 'listtrxall', | 215 | 'listtrxall', |
216 | 'listtransaksiall', | 216 | 'listtransaksiall', |
217 | ], | 217 | ], |
218 | temporarybonus: [ | 218 | temporarybonus: [ |
219 | 'bonus', | 219 | 'bonus', |
220 | 'bonustemp', | 220 | 'bonustemp', |
221 | 'bonustemporary', | 221 | 'bonustemporary', |
222 | 'tempbonus', | 222 | 'tempbonus', |
223 | 'temporarybonus' | 223 | 'temporarybonus' |
224 | ], | 224 | ], |
225 | claimbonus: [ | ||
226 | 'ambilbonus', | ||
227 | 'ambilrebate', | ||
228 | 'bonusclaim', | ||
229 | 'claimbonus', | ||
230 | 'claimrebate', | ||
231 | 'rebateclaim', | ||
232 | 'tarikbonus', | ||
233 | 'tarikrebate', | ||
234 | ], | ||
225 | _setmarkup: [ | 235 | _setmarkup: [ |
226 | 'markup' | 236 | 'markup' |
227 | ], | 237 | ], |
228 | _news: [ | 238 | _news: [ |
229 | 'berita', | 239 | 'berita', |
230 | 'news', | 240 | 'news', |
231 | 'promo', | 241 | 'promo', |
232 | ] | 242 | ] |
233 | } | 243 | } |
234 | 244 |