Commit 173d32db77da6430bc9f50042b12962bbbf1fd84

Authored by Adhidarma Hadiwinoto
1 parent bb7f31eacc
Exists in master

tambah info dan harga dari data sebelumnya

Showing 1 changed file with 31 additions and 0 deletions Side-by-side Diff

... ... @@ -13,6 +13,9 @@ var callbackReport;
13 13 var max_retry = 2;
14 14 var sleep_before_retry = 2000;
15 15  
  16 +var trx_balances = {};
  17 +var trx_prices = {};
  18 +
16 19 function calculateSignature(userid, password, msisdn, timestamp) {
17 20 var a = msisdn.substr(msisdn.length - 4) + timestamp;
18 21 var b = userid.substr(0, 4) + password;
... ... @@ -149,11 +152,39 @@ function topupResponseHandler(body, request_id) {
149 152 response_code = '68';
150 153 }
151 154 }
  155 +
  156 + if (response_code == '00') {
  157 + var price = priceFromMessage(message);
  158 + if (price != null) {
  159 + trx_prices[request_id] = price;
  160 + setTimeout(deleteTrxPrice, 3 * 24 * 3600 * 1000, request_id);
  161 + } else if (trx_prices[request_id] !== undefined) {
  162 + price = trx_prices[request_id];
  163 + message = message + ' -- Harga: ' + price;
  164 + }
  165 +
  166 + var balance = balanceFromMessage(message);
  167 + if (balance != null) {
  168 + trx_balances[request_id] = balances;
  169 + setTimeout(deleteTrxBalance, 3 * 24 * 3600 * 1000, request_id);
  170 + } else if (trx_balances[request_id] !== undefined) {
  171 + balance = trx_balances[request_id];
  172 + message = message + ' -- Saldo: ' + balance;
  173 + }
  174 + }
152 175  
153 176 callbackReport(request_id, response_code, message);
154 177 });
155 178 }
156 179  
  180 +function deleteTrxPrice(request_id) {
  181 + delete trx_prices[request_id];
  182 +}
  183 +
  184 +function deleteTrxBalance(request_id) {
  185 + delete trx_balances[request_id];
  186 +}
  187 +
157 188 function parseSN(message) {
158 189 var results = message.match(/SN Operator: .+ SN Kami/);
159 190 if (!results || results.length <= 0) {