This commit is contained in:
Josh Harvey 2016-12-02 16:37:55 +02:00
parent 1fe550fe1e
commit eea230de60
10 changed files with 42 additions and 47 deletions

View file

@ -49,10 +49,10 @@ let lastAlertTime = null
function buildRates (deviceId, tickers) {
const settings = settingsLoader.settings()
const config = configManager.machineScoped(deviceId, settings.config)
const cryptoCodes = config.currencies.cryptoCurrencies
const cryptoCodes = config.cryptoCurrencies
const cashInCommission = new BigNumber(config.commissions.cashInCommission).div(100).plus(1)
const cashOutCommission = new BigNumber(config.commissions.cashOutCommission).div(100).plus(1)
const cashInCommission = new BigNumber(config.cashInCommission).div(100).plus(1)
const cashOutCommission = new BigNumber(config.cashOutCommission).div(100).plus(1)
const rates = {}
@ -72,7 +72,7 @@ function buildRates (deviceId, tickers) {
function buildBalances (deviceId, balanceRecs) {
const settings = settingsLoader.settings()
const config = configManager.machineScoped(deviceId, settings.config)
const cryptoCodes = config.currencies.cryptoCurrencies
const cryptoCodes = config.cryptoCurrencies
const balances = {}
@ -106,11 +106,11 @@ function buildCartridges (cartridges, virtualCartridges, rec) {
function pollQueries (deviceTime, deviceId, deviceRec) {
const settings = settingsLoader.settings()
const config = configManager.machineScoped(deviceId, settings.config)
const fiatCode = config.currencies.fiatCurrency
const cryptoCodes = config.currencies.cryptoCurrencies
const cartridges = [ config.currencies.topCashOutDenomination,
config.currencies.bottomCashOutDenomination ]
const virtualCartridges = [config.currencies.virtualCashOutDenomination]
const fiatCode = config.fiatCurrency
const cryptoCodes = config.cryptoCurrencies
const cartridges = [ config.topCashOutDenomination,
config.bottomCashOutDenomination ]
const virtualCartridges = [config.virtualCashOutDenomination]
const tickerPromises = cryptoCodes.map(c => ticker.getRates(fiatCode, c))
const balancePromises = cryptoCodes.map(wallet.balance)
@ -226,8 +226,8 @@ function cashOut (deviceId, tx) {
function dispenseAck (deviceId, tx) {
const settings = settingsLoader.settings()
const config = configManager.machineScoped(deviceId, settings.config)
const cartridges = [ config.currencies.topCashOutDenomination,
config.currencies.bottomCashOutDenomination ]
const cartridges = [ config.topCashOutDenomination,
config.bottomCashOutDenomination ]
return dbm.addDispense(deviceId, tx, cartridges)
}
@ -239,7 +239,7 @@ function fiatBalance (fiatCode, cryptoCode, deviceId) {
return Promise.all([ticker.getRates(fiatCode, cryptoCode), wallet.balance(cryptoCode)])
.then(([rates, balanceRec]) => {
const rawRate = rates.rates.ask
const commission = (new BigNumber(config.commissions.cashInCommission).div(100)).plus(1)
const commission = (new BigNumber(config.cashInCommission).div(100)).plus(1)
const balance = balanceRec.balance
if (!rawRate || !balance) return null
@ -249,7 +249,7 @@ function fiatBalance (fiatCode, cryptoCode, deviceId) {
// `lowBalanceMargin` is our safety net. It's a number > 1, and we divide
// all our balances by it to provide a safety margin.
const lowBalanceMargin = (new BigNumber(config.commissions.lowBalanceMargin).div(100)).plus(1)
const lowBalanceMargin = (new BigNumber(config.lowBalanceMargin).div(100)).plus(1)
const unitScale = new BigNumber(10).pow(coins[cryptoCode].unitScale)
const fiatTransferBalance = balance.div(unitScale).times(rate).div(lowBalanceMargin)
@ -387,15 +387,14 @@ function consolidateTrades (cryptoCode, fiatCode) {
function executeTrades () {
const settings = settingsLoader.settings()
const config = settings.config
return dbm.devices()
.then(devices => {
const deviceIds = devices.map(device => device.device_id)
const lists = deviceIds.map(deviceId => {
const currencies = configManager.machineScoped(deviceId, config).currencies
const fiatCode = currencies.fiatCurrency
const cryptoCodes = currencies.cryptoCurrencies
const config = configManager.machineScoped(deviceId, settings.config)
const fiatCode = config.fiatCurrency
const cryptoCodes = config.cryptoCurrencies
return cryptoCodes.map(cryptoCode => ({fiatCode, cryptoCode}))
})
@ -432,11 +431,11 @@ function executeTradesForMarket (settings, fiatCode, cryptoCode) {
function sendMessage (rec) {
const settings = settingsLoader.settings()
const notifications = configManager.unscoped(settings.config).notifications
const config = configManager.unscoped(settings.config)
let promises = []
if (notifications.notificationsEmailEnabled) promises.push(email.sendMessage(rec))
if (notifications.notificationsSMSEnabled) promises.push(sms.sendMessage(rec))
if (config.notificationsEmailEnabled) promises.push(email.sendMessage(rec))
if (config.notificationsSMSEnabled) promises.push(sms.sendMessage(rec))
return Promise.all(promises)
}
@ -496,8 +495,8 @@ function checkNotification () {
function checkDeviceBalances (deviceId) {
const settings = settingsLoader.settings()
const config = configManager.machineScoped(deviceId, settings.config)
const cryptoCodes = config.currencies.cryptoCurrencies
const fiatCode = config.currencies.fiatCurrency
const cryptoCodes = config.cryptoCurrencies
const fiatCode = config.fiatCurrency
const fiatBalancePromises = cryptoCodes.map(c => fiatBalance(fiatCode, c, deviceId))
return Promise.all(fiatBalancePromises)