betfair-sports-api
Version:
Betfair Sports API for Node
56 lines (48 loc) • 1.89 kB
JavaScript
var util = require('util');
var async = require('async')
var betfair = require('../index.js');
var common = require('./common.js');
// Betfair account data
var login = process.env['BF_LOGIN'] || "nobody";
var password = process.env['BF_PASSWORD'] || "password";
// Optional XML logging, used for debug purposes
// betfair.setXmlLoggingEnabled(true);
// betfair.addDesirableMarketName('Match Odds');
// Create session to Betfair
var session = betfair.newSession(login, password);
common.session = session;
// invoke getMarketProfitAndLoss on the single market
function getMarketProfitAndLoss(data, cb) {
var market = data.market;
console.log('===== Call getMarketProfitAndLoss for marketId="%s" =====',
market.marketId);
var inv = session.getMarketProfitAndLoss(market.marketId, false);
inv.execute(function(err, res) {
console.log('action:', res.action, 'error:', err, 'duration:',
res.duration() / 1000);
if (err) {
cb(err);
return
}
// console.log(util.inspect(res.result, false, 10));
for ( var playerIndex in res.result.annotations) {
var playerInfo = res.result.annotations[playerIndex];
console.log("Player %s", playerIndex);
console.log('\tName:%s', playerInfo.selectionName);
console.log('\tId:%s', playerInfo.selectionId);
console.log('\tIfWin:%s', playerInfo.ifWin);
console.log('\tIfLoss:%s', playerInfo.ifLoss);
}
cb(null);
});
}
// Run the test
var testSteps = [ common.login, common.getAllMarkets, common.selectMarket,
getMarketProfitAndLoss, common.logout ];
async.waterfall(testSteps, function(err, res) {
if (err)
console.log("===== TEST FAILED, error=%j =====", err);
else
console.log("===== TEST OK =====");
process.exit(0);
});