diff --git a/package.json b/package.json index 50a45ca..96afb90 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,7 @@ "ini": "^1.3.4", "sate24": "git+http://gitlab.kodesumber.com/reload97/node-sate24.git", "sate24-expresso": "git+http://gitlab.kodesumber.com/reload97/sate24-expresso.git", + "soap": "^0.15.0", "winston": "^2.2.0" } } diff --git a/partner-kospinjasa.js b/partner-kospinjasa.js new file mode 100644 index 0000000..0c35784 --- /dev/null +++ b/partner-kospinjasa.js @@ -0,0 +1,51 @@ +var winston = require('winston'); +var soap = require('soap'); + +var max_retry = 10; +var sleep_before_retry = 5000; + +var config; +var callbackReport; +var aaa; +var logger; +var options; + +function start(_config, _callbackReport, options) { + config = _config; + callbackReport = _callbackReport + + if (options && options.aaa) { + aaa = options.aaa; + } + + if (options && options.logger) { + logger = options.logger; + } else { + logger = new winston.Logger({ + transports: [ + new (winston.transports.Console)() + ] + }); + } +} + +function topupRequest(task, retry) { + if (retry === undefined) { + retry = max_retry; + } + + soap.createClient(url, function(err, client) { + client.MyFunction(args, function(err, result) { + console.log(result); + }); + }); +} + +function createSoapClient(url, callback) { + soap.createClient(url, function(err, client) { + callback(err, client); + }); +} + +exports.start = start; +exports.topupRequest = topupRequest;