WIP
This commit is contained in:
parent
9f31b31af8
commit
fd4e5b5f34
1 changed files with 5 additions and 34 deletions
|
|
@ -12,10 +12,12 @@ module.exports = {
|
||||||
getFingerprint: getFingerprint
|
getFingerprint: getFingerprint
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
// Make sure these are higher than polling interval
|
// Make sure these are higher than polling interval
|
||||||
// or there will be a lot of errors
|
// or there will be a lot of errors
|
||||||
var STALE_TICKER = 180000
|
var STALE_TICKER = 180000
|
||||||
var STALE_BALANCE = 180000
|
var STALE_BALANCE = 180000
|
||||||
|
*/
|
||||||
|
|
||||||
var pids = {}
|
var pids = {}
|
||||||
var reboots = {}
|
var reboots = {}
|
||||||
|
|
@ -60,43 +62,12 @@ function poll (req, res) {
|
||||||
|
|
||||||
logger.debug('poll request from: %s', fingerprint)
|
logger.debug('poll request from: %s', fingerprint)
|
||||||
|
|
||||||
var rateRec = plugins.getDeviceRate()
|
|
||||||
var balanceRec = plugins.getBalance()
|
|
||||||
|
|
||||||
var rates = buildRates()
|
var rates = buildRates()
|
||||||
var balances = buildBalances()
|
var balances = buildBalances()
|
||||||
|
|
||||||
// `rateRec` and `balanceRec` are both objects, so there's no danger
|
|
||||||
// of misinterpreting rate or balance === 0 as 'Server initializing'.
|
|
||||||
if (!rateRec || !balanceRec) {
|
|
||||||
return res.json({err: 'Server initializing'})
|
|
||||||
}
|
|
||||||
|
|
||||||
var now = Date.now()
|
|
||||||
if (now - rateRec.timestamp > STALE_TICKER) {
|
|
||||||
return res.json({err: 'Stale ticker'})
|
|
||||||
}
|
|
||||||
|
|
||||||
if (now - balanceRec.timestamp > STALE_BALANCE) {
|
|
||||||
return res.json({err: 'Stale balance'})
|
|
||||||
}
|
|
||||||
|
|
||||||
var rate = rateRec.rates.ask
|
|
||||||
var fiatRate = rateRec.rates.bid || rate
|
|
||||||
|
|
||||||
if (rate === null) return res.json({err: 'No rate available'})
|
|
||||||
if (!fiatRate) logger.warn('No bid rate, using ask rate')
|
|
||||||
|
|
||||||
var fiatBalance = plugins.fiatBalance()
|
|
||||||
if (fiatBalance === null) {
|
|
||||||
logger.warn('No balance available.')
|
|
||||||
return res.json({err: 'No balance available'})
|
|
||||||
}
|
|
||||||
|
|
||||||
var config = plugins.getConfig()
|
var config = plugins.getConfig()
|
||||||
var settings = config.exchanges.settings
|
var settings = config.exchanges.settings
|
||||||
var complianceSettings = settings.compliance
|
var complianceSettings = settings.compliance
|
||||||
var fiatCommission = settings.fiatCommission || settings.commission
|
|
||||||
|
|
||||||
plugins.pollQueries(session(req), function (err, results) {
|
plugins.pollQueries(session(req), function (err, results) {
|
||||||
if (err) return logger.error(err)
|
if (err) return logger.error(err)
|
||||||
|
|
@ -106,9 +77,9 @@ function poll (req, res) {
|
||||||
|
|
||||||
var response = {
|
var response = {
|
||||||
err: null,
|
err: null,
|
||||||
rate: rate * settings.commission,
|
rate: rates.BTC.cashIn,
|
||||||
fiatRate: fiatRate / fiatCommission,
|
fiatRate: rates.BTC.cashOut,
|
||||||
fiat: fiatBalance,
|
fiat: balances.BTC,
|
||||||
locale: config.brain.locale,
|
locale: config.brain.locale,
|
||||||
txLimit: parseInt(complianceSettings.maximum.limit, 10),
|
txLimit: parseInt(complianceSettings.maximum.limit, 10),
|
||||||
idVerificationEnabled: complianceSettings.idVerificationEnabled,
|
idVerificationEnabled: complianceSettings.idVerificationEnabled,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue