diff --git a/partner-sc.js b/partner-sc.js index 1ab9a74..ffa5348 100644 --- a/partner-sc.js +++ b/partner-sc.js @@ -23,6 +23,7 @@ var tasks = LRU(10000); process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; var sleep_before_retry = 30000; +var pendingResultCode = ['0005', '0012', '0068', '0090', '0063', '0018', '0096']; var logTag = __filename.split('/').reverse()[0]; @@ -291,7 +292,6 @@ function topupRequest(task) { logger.info('New response message: ' + responseMessage); } - var pendingResultCode = ['0005', '0012', '0068', '0090', '0063', '0018', '0096']; if (pendingResultCode.indexOf(resultCode) != -1) { callbackReport(task['requestId'], '68', responseMessage); @@ -515,6 +515,18 @@ function createHttpReportServer() { logger.info('Got reverse report from partner', {path: path, qs: qs}); response.end('OK'); + var requestId = qs.reffid; + var resultCode = qs.rescode; + + if (requestId && resultCode && resulCode != '0') { + if (pendingResultCode.indexOf(resultCode) >= 0) { + callbackReport(requestId, '68', 'Got reverse report: ' + qs.msg); + } else { + callbackReport(requestId, '40', 'Got reverse report: ' + qs.msg); + } + return; + } + var trxid; try { trxid = qs.transid;