diff --git a/engine/calldesc.go b/engine/calldesc.go index ecc46bc25..82df6fb61 100644 --- a/engine/calldesc.go +++ b/engine/calldesc.go @@ -492,11 +492,19 @@ func (cd *CallDescriptor) Debit() (cc *CallCost, err error) { } else if userBalance == nil { // Logger.Debug(fmt.Sprintf(" No user balance defined: %v", cd.GetUserBalanceKey())) } else { - // Logger.Debug(fmt.Sprintf(" Attempting to debit from %v, value: %v", cd.GetUserBalanceKey(), cc.Cost+cc.ConnectFee)) + Logger.Debug(fmt.Sprintf(" Attempting to debit from %v, value: %v", cd.GetUserBalanceKey(), cc.Cost+cc.ConnectFee)) defer storageGetter.SetUserBalance(userBalance) + Logger.Debug(fmt.Sprintf(" Balance before debit: %v", userBalance)) + for _, blnc := range userBalance.BalanceMap["*monetary*out"] { + Logger.Debug(fmt.Sprintf("Balance: %v", blnc)) + } if cc.Cost != 0 || cc.ConnectFee != 0 { userBalance.debitCreditBalance(cc, true) } + Logger.Debug(fmt.Sprintf(" Balance after debit: %v", userBalance)) + for _, blnc := range userBalance.BalanceMap["*monetary*out"] { + Logger.Debug(fmt.Sprintf("Balance: %v", blnc)) + } } return } diff --git a/engine/loader_csv.go b/engine/loader_csv.go index f6d76432f..93cc553f1 100644 --- a/engine/loader_csv.go +++ b/engine/loader_csv.go @@ -392,13 +392,23 @@ func (csvr *CSVReader) LoadActions() (err error) { } for record, err := csvReader.Read(); err == nil; record, err = csvReader.Read() { tag := record[0] - units, err := strconv.ParseFloat(record[4], 64) - if err != nil { - return errors.New(fmt.Sprintf("Could not parse action units: %v", err)) + var units float64 + if len(record[4]) == 0 { // Not defined + units = 0.0 + } else { + units, err = strconv.ParseFloat(record[4], 64) + if err != nil { + return errors.New(fmt.Sprintf("Could not parse action units: %v", err)) + } } - balanceWeight, err := strconv.ParseFloat(record[8], 64) - if err != nil { - return errors.New(fmt.Sprintf("Could not parse action balance weight: %v", err)) + var balanceWeight float64 + if len(record[8]) == 0 { // Not defined + balanceWeight = 0.0 + } else { + balanceWeight, err = strconv.ParseFloat(record[8], 64) + if err != nil { + return errors.New(fmt.Sprintf("Could not parse action balance weight: %v", err)) + } } weight, err := strconv.ParseFloat(record[10], 64) if err != nil {