process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0'; var xmlrpc = require('xmlrpc'); var url = require('url'); function topupInquiry(partner_url, requestId, msisdn, pin, destination) { var parsedUrl = url.parse(partner_url); var clientOptions = { url: partner_url }; var client; if (parsedUrl.protocol == 'https:') { client = xmlrpc.createSecureClient(clientOptions); } else { client = xmlrpc.createClient(clientOptions); } var params = { MSISDN: msisdn, REQUESTID: requestId, PIN: pin, NOHP: destination, }; console.log('Calling topUpInquiry method', params); client.methodCall('topUpInquiry', [ params ], function (error, value) { if (error) { console.log('Error', error); return; } console.log(value); }); } var fs = require('fs'); var ini = require('ini'); var config = ini.parse(fs.readFileSync(__dirname + '/config.ini', 'utf-8')); var argv = require('minimist')(process.argv.slice(2), {string: ['requestid', 'destination']}); if (!argv.destination || argv.destination === true) { console.log('Missing "destination" parameter'); process.exit(1); } if (!argv.requestid || argv.requestid === true) { console.log('Missing "requestid" parameter'); process.exit(1); } topupInquiry(config.h2h_out.partner, argv.requestid, config.h2h_out.userid, config.h2h_out.password, argv.destination);