Commit 68c4947a41d0c34b1e92e2db0ce42294908eaa40
1 parent
76889f7ac5
Exists in
master
callbackReportWrapper
Showing 1 changed file with 19 additions and 5 deletions Side-by-side Diff
partner-masterpulsa-voucher.js
... | ... | @@ -13,6 +13,20 @@ var redisClient; |
13 | 13 | |
14 | 14 | var adviceDelay = 30000; |
15 | 15 | |
16 | +function callbackReportWrapper(requestId, rc, message) { | |
17 | + try { | |
18 | + message = message.replace(/:/g, ' ').replace(/#/g, ' '); | |
19 | + message = message.replace(/\s+/g, ' '); | |
20 | + } | |
21 | + catch(err) { | |
22 | + if (logger) { | |
23 | + logger.warn('Exception on callbackReportWrapper: ' + err); | |
24 | + } | |
25 | + } | |
26 | + | |
27 | + callbackReport(requestId, rc, message); | |
28 | +} | |
29 | + | |
16 | 30 | function createRedisClient() { |
17 | 31 | redisClient = redis.createClient(config.globals.redis_port, config.globals.redis_host); |
18 | 32 | } |
... | ... | @@ -46,7 +60,7 @@ function topupRequest(task, retry) { |
46 | 60 | var key = 'DUPCHECK.gw:' + config.globals.gateway_name + '.prod:' + task.remoteProduct + '.dest:' + task.destination + '.date:' + strftime('%Y%m%d', new Date); |
47 | 61 | redisClient.get(key, function(err, data) { |
48 | 62 | if (err) { |
49 | - callbackReport(task.requestId, '40', 'Gagal cek anti transaksi duplikat (redis error)'); | |
63 | + callbackReportWrapper(task.requestId, '40', 'Gagal cek anti transaksi duplikat (redis error)'); | |
50 | 64 | return; |
51 | 65 | } |
52 | 66 | |
... | ... | @@ -67,11 +81,11 @@ function topupRequest(task, retry) { |
67 | 81 | advice(task, retry); |
68 | 82 | } else { |
69 | 83 | logger.verbose('Sudah ada trx dengan tujuan dan denom yg sama, requestId tidak sama. Batalkan.') |
70 | - callbackReport(task.requestId, '55', 'Transaksi duplikat') | |
84 | + callbackReportWrapper(task.requestId, '55', 'Transaksi duplikat') | |
71 | 85 | } |
72 | 86 | } |
73 | 87 | catch(errJSONParse) { |
74 | - callbackReport(task.requestId, '68', "error parsing json"); | |
88 | + callbackReportWrapper(task.requestId, '68', "error parsing json"); | |
75 | 89 | } |
76 | 90 | } |
77 | 91 | }); |
... | ... | @@ -131,7 +145,7 @@ function reportPaymentSuccess(task, response) { |
131 | 145 | |
132 | 146 | logger.info('Report payment success to ST24', {task: task, response: response}); |
133 | 147 | |
134 | - callbackReport(task.requestId, '00', message); | |
148 | + callbackReportWrapper(task.requestId, '00', message); | |
135 | 149 | } |
136 | 150 | |
137 | 151 | function reportPaymentError(task, response) { |
... | ... | @@ -145,7 +159,7 @@ function reportPaymentError(task, response) { |
145 | 159 | |
146 | 160 | logger.info('Report payment error/pending to ST24', {supplier_rc: errorCode, st24_rc: st24rc, task: task, response: response}); |
147 | 161 | |
148 | - callbackReport( | |
162 | + callbackReportWrapper( | |
149 | 163 | task.requestId, |
150 | 164 | getST24ResponseCode(errorCode), |
151 | 165 | response.raw |