func TopupFAddress() { const fBalanceThreshold uint64 = 20000000 //0.2 fBalance, err := factom.GetFactoidBalance(FaucetAddress) if err != nil { panic(err) } if fBalance < int64(fBalanceThreshold) { panic(fmt.Sprintf("Balance is too low - %v vs %v", fBalance/100000000.0, fBalanceThreshold/100000000.0)) } tx, err := factom.SendFactoid(FaucetAddress, FAddressStr, fBalanceThreshold) if err != nil { panic(err) } fmt.Printf("F Topup tx - %v\n", tx) for i := 0; ; i++ { i = i % 3 time.Sleep(5 * time.Second) ack, err := factom.FactoidACK(tx, "") if err != nil { panic(err) } str, err := primitives.EncodeJSONString(ack) if err != nil { panic(err) } fmt.Printf("Topup ack - %v", str) for j := 0; j < i+1; j++ { fmt.Printf(".") } fmt.Printf(" \r") if ack.Status != "DBlockConfirmed" { continue } fmt.Printf("Topup ack - %v\n", str) break } fBalance, _, err = CheckFactomBalance() if err != nil { panic(err) } if uint64(fBalance) < fBalanceThreshold { panic("Balance was not increased!") } }
errorln(err) return } tofc = f } var amt uint64 if i, err := strconv.ParseFloat(args[2], 64); err != nil { errorln(err) } else if i < 0 { errorln("AMOUNT may not be less than 0") } else { amt = uint64(i * 1e8) } t, err := factom.SendFactoid(args[0], tofc, amt) if err != nil { errorln(err) return } fmt.Println("TxID:", t) } help.Add("sendfct", cmd) return cmd }() // buyec sends factoids between 2 addresses var buyec = func() *fctCmd { cmd := new(fctCmd) cmd.helpMsg = "factom-cli buyec FCTADDRESS ECADDRESS ECAMOUNT" cmd.description = "Buy entry credits"