node-transferto
Version:
transferto API Adapter
57 lines (45 loc) • 1.31 kB
JavaScript
var md5 = require('md5')
var async = require('async')
var request = require('request')
var config = require('./config.js')
var Transferto = function(){
var self = this;
this.Login = config.Login,
this.Token = config.Token,
this.baseurl = 'https://fm.transfer-to.com/cgi-bin/shop/topup?';
}
Transferto.prototype.generate_url = function(obj) {
var self = this;
var Key = new Date().getTime();
var hash = md5.digest_s(self.Login+self.Token+Key)
var auth = 'login='+self.Login+'&key='+Key+'&md5='+hash;
var query = ''
for (var prop in obj) {
query = query +'&'+prop+'='+obj[prop]
}
return (this.baseurl+auth+query)
}
Transferto.prototype.generate_obj = function(action,number,amount,id) {
var query = {}
query.action = action || 'ping';
if (action == 'topup' || action == 'simulation') {
if(number){
query.destination_msisdn = number
};
query.msisdn = 'CompanyName';
query.product = amount || 1;
if(id){
query.reserved_id = id;
};
query.send_sms = 'no';
}
return (query)
}
//var a = require('./transferto');var a = new a;var b = a.geturl()
Transferto.prototype.geturl = function(action,number,amount,id) {
var self = this;
string = self.generate_obj(action,number,amount,id);
url = self.generate_url(string);
return url
}
module.exports = Transferto;