def getAddressDetails(self): while not thread_stop_event.isSet(): publickey = 'GBCCC62LUXPDL7DLNQPYJWASA672CCJOLCJRBSIFXNIPRMQRRQ2HCWW6' target = 1000 address = Address(address=publickey) # testnet # address = Address(address=publickey, network='public') # livenet address.get() # Get the latest information from Horizon last_payment = address.payments(order='desc', limit=1) if 'transaction_successful' in last_payment['_embedded'][ 'records'][0]: success = bool(last_payment['_embedded']['records'][0] ['transaction_successful']) else: success = False if 'amount' in last_payment['_embedded']['records'][0] and success: amount = int( float(last_payment['_embedded']['records'][0]['amount'])) else: amount = '' if 'asset_code' in last_payment['_embedded']['records'][ 0] and success: asset_code = last_payment['_embedded']['records'][0][ 'asset_code'] elif 'asset_code' not in last_payment['_embedded']['records'][ 0] and success: asset_code = 'XLM' else: asset_code = '' balance = address.balances if 'balance' in balance[-1] and success: balance = int(float(balance[-1]['balance'])) else: balance = '' last_transaction = address.transactions(order='desc', limit=1) if 'memo' in last_transaction['_embedded']['records'][ 0] and success: memo = last_transaction['_embedded']['records'][0]['memo'] else: memo = '' socketio.emit('address_details', { 'publickey': publickey, 'target': target, 'balance': balance, 'memo': memo, 'amount': amount, 'asset_code': asset_code }, namespace='/test') sleep(self.delay)
def _get_transactions(self, time=True): address = Address(address=self._generate_keypair().address().decode()) address.get() # get the updated information transactions = address.transactions() if len(transactions['_embedded']['records']) < 2: return None if time: trx = [(record['created_at'], record['memo']) for record in transactions['_embedded']['records'] if record['memo_type'] == 'text'] else: trx = [ record['memo'] for record in transactions['_embedded']['records'] if record['memo_type'] == 'text' ] return trx
def get_transactions(): """Get transactions for a Stellar address. Decomposed for easier testing.""" address = Address(address=settings.STELLAR_ACCOUNT_ADDRESS, horizon_uri=settings.HORIZON_URI) return address.transactions(cursor="now", sse=True)
from stellar_base.address import Address publickey = 'GBCCC62LUXPDL7DLNQPYJWASA672CCJOLCJRBSIFXNIPRMQRRQ2HCWW6'#'GAU3DAERZWH4DC4XTUQ5IXYHJHZ67LQ5OCXU5GJJOADIPSJMGELBJAFW' address = Address(address=publickey) # See signature for additional args address.get() # Get the latest information from Horizon balance = address.balances print(address.balances) if 'balance' in balance[-1]: print('balance: {}'.format(int(float(balance[-1]['balance'])))) last_transaction = address.transactions(order='desc', limit=1) if 'memo' in last_transaction['_embedded']['records'][0]: print('memo: {}'.format(last_transaction['_embedded']['records'][0]['memo'])) last_payment = address.payments(order='desc', limit=1) if 'amount' in last_payment['_embedded']['records'][0]: print('amount: {}'.format(last_payment['_embedded']['records'][0]['amount'])) if 'asset_type' in last_payment['_embedded']['records'][0]: print('asset_type: {}'.format(last_payment['_embedded']['records'][0]['asset_type'])) if 'asset_code' in last_payment['_embedded']['records'][0]: print('asset_code: {}'.format(last_payment['_embedded']['records'][0]['asset_code'])) if 'transaction_successful' in last_payment['_embedded']['records'][0]: print('success: {}'.format(bool(last_payment['_embedded']['records'][0]['transaction_successful']))) if last_payment['_embedded']['records'][0]['from'] == publickey: print("Ignore") else: print("Valid")