mpesa
Version:
Mpesa npm module for listening to requests
98 lines (67 loc) • 2.25 kB
JavaScript
express = require('express'),
bodyParser = require('body-parser'),
app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
/*
B2C ResultURL
URL: /api/v1/b2c/result
*/
exports.b2clistener = function () {app.post('/b2c/result', function(req, res) {
console.log('-----------B2C CALLBACK------------');
console.log(JSON.stringify(req.body));
console.log('-----------------------');
var message = {
"ResponseCode": "0",
"ResponseDesc": "success"
};
res.json(message);
});}
/*
C2B ValidationURL
URL: /api/v1/c2b/validation
*/
exports.c2bvalidation = function () { app.post('/validation', function(req, res) {
console.log('-----------C2B VALIDATION REQUEST-----------');
console.log(JSON.stringify(req.body));
console.log('-----------------------');
var message = {
"ResultCode": 0,
"ResultDesc": "Success"
};
res.json(message);
var ip;
if (req.headers['x-forwarded-for']) {
ip = req.headers['x-forwarded-for'].split(",")[0];
} else if (req.connection && req.connection.remoteAddress) {
ip = req.connection.remoteAddress;
} else {
ip = req.ip;
}console.log("client IP is *********************" + ip);
});}
exports.c2bconfirmation = function () { app.post('/confirmation', function(req, res) {
console.log('-----------C2B CONFIRMATION REQUEST------------');
console.log(JSON.stringify(req.body));
console.log('-----------------------');
var message = {
"ResultCode": 0,
"ResultDesc": "Success"
};
res.json(message);
});}
exports.b2blistener = function () {app.post('/b2b/result', function(req, res) {
console.log('-----------B2B CALLBACK------------');
console.log(JSON.stringify(req.body));
console.log('-----------------------');
var message = {
"ResponseCode": "00000000",
"ResponseDesc": "success"
};
res.json(message);
});}
console.log("paths:");
console.log("b2b url = http://yourip:8310/b2b/result");
console.log("b2c url = http://yourip:8310/b2c/result");
console.log("validation url = http://yourip:8310/validation");
console.log("confirmation url = http://yourip:8310/confirmation");
app.listen(8310);