diff --git a/admin/__init__.py b/admin/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/admin/__main__.py b/admin/__main__.py new file mode 100644 index 0000000..6094b77 --- /dev/null +++ b/admin/__main__.py @@ -0,0 +1,59 @@ +import click +from tipbot import db +from tipbot import wownero +from tipbot import commands + + +@click.group() +def cli(): + pass + +@click.command() +def debug(): + pass + +@click.command() +def get_users(): + users = db.User.select() + wallet = wownero.Wallet() + for u in users: + click.echo(f'{u.telegram_user} ({u.telegram_id}) - wallet {u.account_index}') + +@click.command() +@click.argument('account_index') +def get_address(account_index): + address = wownero.Wallet().addresses(account=int(account_index))[0] + click.echo(address) + +@click.command() +def get_balances(): + wallet = wownero.Wallet() + accounts = wallet.accounts() + for acc in accounts: + balances = wallet.balances(account=acc) + click.echo(f'wallet {acc} - {float(balances[0])} locked, {float(balances[1])} unlocked') + +@click.command() +def generate_bot_help(): + for cmd in commands.all_commands: + c = commands.all_commands[cmd] + if not 'admin' in c: + click.echo(f'{cmd} - {commands.all_commands[cmd]["help"]}') + +@click.command() +def db_init(): + try: + db.db.create_tables([db.User]) + click.echo('Success') + except: + click.echo('Fail') + +cli.add_command(debug) +cli.add_command(get_users) +cli.add_command(get_address) +cli.add_command(generate_bot_help) +cli.add_command(get_balances) +cli.add_command(db_init) + +if __name__ == '__main__': + cli()