if len(my_accounts) is 0:
        brain_key = rpc.suggest_brain_key()
        account_registered, account_registration_response = register_account_faucet(config.account, brain_key['pub_key'])
        if account_registered:
            rpc.import_key(config.account, brain_key['wif_priv_key'])

            print("Account: %s succesfully registered" % config.account)
            print(rpc.list_my_accounts())

            print("Brain key: %s" % brain_key['brain_priv_key'])
            print("Write it down/back it up ^")

            print("Send funds to %s and start the bot again" % config.account)
        else:
            print("Account creation failed")
            print(brain_key)
            print(config.faucet + " response: ", account_registration_response)

    else:
        print(my_accounts)
        print(config.account)
        print(rpc.list_account_balances(config.account))
        print("Bot config: " + str(config.bots["MakerRexp"]))
        
        bot.init(config)
 
        run_bot() # running the bot before the scheduler, otherwise it will run for the first time after config.interval
        scheduler = BlockingScheduler()
        scheduler.add_job(run_bot, 'interval', hours=config.interval)
        scheduler.start()
        if account_registered:
            rpc.import_key(config.account, brain_key['wif_priv_key'])

            print("Account: %s successfully registered" % config.account)
            print(rpc.list_my_accounts())

            print("Brain key: %s" % brain_key['brain_priv_key'])
            print("Write it down/back it up ^")

            print("Send funds to %s and start the bot again" % config.account)
        else:
            print("Account creation failed")
            print(brain_key)
            print(config.faucet + " response: ", account_registration_response)
    else:
        account_balances = rpc.list_account_balances(config.account)
        bot_configs = {}
        for bot_config in config.bots:
            bot_configs[bot_config] = {
                key: config.bots[bot_config][key]
                for key in config.bots[bot_config] if key != 'bot'
            }

        print("%s | Account name: %s" % (datetime.now(), config.account))
        print("%s | Account balances: %s" %
              (datetime.now(),
               json.dumps(account_balances, indent=4, sort_keys=True)))
        print("%s | Bot config: %s" %
              (datetime.now(), json.dumps(
                  bot_configs, indent=4, sort_keys=True)))
Beispiel #3
0
import json
from grapheneapi import GrapheneAPI
import config

if __name__ == '__main__':

    client = GrapheneAPI(config.wallet_host, config.wallet_port, config.wallet_user, config.wallet_password)
    proposer = client.get_account(config.proposer_account)
    from_account = client.get_account(config.transfer_from)
    to_account   = client.get_account(config.transfer_to)

    ops = []
    assetsavailable = client.list_account_balances("committee-account")
    for balance in assetsavailable:
        asset    = client.get_asset(balance["asset_id"])
        if asset["id"] == "1.3.0":
            continue
        transfer_amount = int(balance["amount"] * config.transfer_percentage / 100.0)
        op = client.get_prototype_operation("transfer_operation")
        op[1]["amount"]["amount"] = transfer_amount
        op[1]["amount"]["asset_id"] = asset["id"]
        op[1]["from"] = from_account["id"]
        op[1]["to"] = to_account["id"]
        ops.append(op)

    buildHandle = client.begin_builder_transaction()
    for op in ops:
        client.add_operation_to_builder_transaction(buildHandle, op)
    client.set_fees_on_builder_transaction(buildHandle, "1.3.0")

    params = client.get_object("2.0.0")[0]
        account_registered, account_registration_response = register_account_faucet(
            config.account, brain_key['pub_key'])
        if account_registered:
            rpc.import_key(config.account, brain_key['wif_priv_key'])

            print("Account: %s succesfully registered" % config.account)
            print(rpc.list_my_accounts())

            print("Brain key: %s" % brain_key['brain_priv_key'])
            print("Write it down/back it up ^")

            print("Send funds to %s and start the bot again" % config.account)
        else:
            print("Account creation failed")
            print(brain_key)
            print(config.faucet + " response: ", account_registration_response)

    else:
        print(my_accounts)
        print(config.account)
        print(rpc.list_account_balances(config.account))
        print("Bot config: " + str(config.bots["MakerRexp"]))

        bot.init(config)

        run_bot(
        )  # running the bot before the scheduler, otherwise it will run for the first time after config.interval
        scheduler = BlockingScheduler()
        scheduler.add_job(run_bot, 'interval', hours=config.interval)
        scheduler.start()