diff --git a/tipbot/commands/register.py b/tipbot/commands/register.py index 674fe9c..44a3866 100644 --- a/tipbot/commands/register.py +++ b/tipbot/commands/register.py @@ -31,7 +31,7 @@ def register(update, context): return False else: try: - account_index = wallet.new_account(label=un) + account = wallet.new_account(label=un) except Exception as e: logging.error(f'Unable to create a new account in wallet RPC: {e}. Debug: {msg}') msg.reply_text('Unable to create a new account for you. Ask for help.') @@ -40,7 +40,8 @@ def register(update, context): u = User( telegram_id=uid, telegram_user=un, - account_index=account_index, + account_index=account[0], + address=account[1] ) u.save() reply_text = [ diff --git a/tipbot/db.py b/tipbot/db.py index c2fe805..2a9d88c 100644 --- a/tipbot/db.py +++ b/tipbot/db.py @@ -9,6 +9,7 @@ class BaseModel(Model): database = db class User(BaseModel): - telegram_id = IntegerField() - telegram_user = CharField() - account_index = IntegerField() + telegram_id = IntegerField(unique=True) + telegram_user = CharField(unique=True) + account_index = IntegerField(unique=True) + address = CharField(unique=True) diff --git a/tipbot/wownero.py b/tipbot/wownero.py index c6c7d40..acb49e5 100644 --- a/tipbot/wownero.py +++ b/tipbot/wownero.py @@ -51,7 +51,7 @@ class Wallet(object): def new_account(self, label=None): _account = self.make_wallet_rpc('create_account', {'label': label}) - return _account['account_index'] + return (_account['account_index'], _account['address']) def addresses(self, account, addr_indices=None): qdata = {'account_index': account}