Skip to content

Commit

Permalink
Add files via upload
Browse files Browse the repository at this point in the history
  • Loading branch information
PyWaves authored Oct 15, 2017
1 parent 6f959e3 commit 58f28fa
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 23 deletions.
4 changes: 1 addition & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,9 +148,7 @@ __pywaves.Order(orderId, assetPair, address='')__ Creates a new Order object

`pywaves.symbols()` get list of symbol-asset mapping

`pywaves.markets()` get all traded markets with tickers and matchers info

`pywaves.matchers()` get list of matchers with traded markets
`pywaves.markets()` get all traded markets with tickers

`pywaves.{SYMBOL_NAME}` get predefined asset for the specified symbol (pywaves.WAVES, pywaves.BTC, pywaves.USD,...)

Expand Down
17 changes: 2 additions & 15 deletions __init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
NODE = 'https://nodes.wavesnodes.com'
CHAIN = 'mainnet'
CHAIN_ID = 'W'
PYWAVES_DIR='/Users/paolo/.pywaves'
MATCHER = 'https://nodes.wavesnodes.com'
MATCHER_PUBLICKEY = ''

Expand Down Expand Up @@ -102,22 +101,10 @@ def symbols():
return wrapper('/api/symbols', host=DATAFEED)

def markets():
return wrapper('/api/markets', host = DATAFEED)

def matchers():
return wrapper('/api/matchers', host = DATAFEED)

def loadSymbols():
try:
for s in symbols():
setattr(pywaves, s['symbol'], Asset(s['assetID']))
except:
pass
return wrapper('/api/markets', host=DATAFEED)

setNode()
setMatcher()
WAVES = Asset('')
t = threading.Thread(target=loadSymbols)
t.daemon = True
t.start()


24 changes: 19 additions & 5 deletions address.py
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@
'zoo']

class Address(object):
def __init__(self, address='', publicKey='', privateKey='', seed=''):
def __init__(self, address='', publicKey='', privateKey='', seed='', alias=''):
if seed:
self._generate(seed=seed)
elif privateKey:
Expand All @@ -209,8 +209,14 @@ def __init__(self, address='', publicKey='', privateKey='', seed=''):
self.publicKey = publicKey
self.privateKey = privateKey
self.seed = seed
elif alias:
self.address = pywaves.wrapper('/alias/by-alias/%s' % alias).get("address", "")
self.publicKey = ''
self.privateKey = ''
self.seed = ''
else:
self._generate()
self.aliases = self.aliases()

def __str__(self):
if self.address:
Expand Down Expand Up @@ -240,6 +246,13 @@ def assets(self):
req = pywaves.wrapper('/assets/balance/%s' % self.address)['balances']
return [r['assetId'] for r in req]

def aliases(self):
a = pywaves.wrapper('/alias/by-address/%s' % self.address)
if type(a)==list:
for i in range(len(a)):
a[i] = a[i][8:]
return a

def _generate(self, privateKey='', seed=''):
self.seed = seed
if not privateKey and not seed:
Expand All @@ -255,6 +268,7 @@ def _generate(self, privateKey='', seed=''):
words.append(wordList[w2])
words.append(wordList[w3])
self.seed = ' '.join(words)

seedHash = crypto.hashChain(('\0\0\0\0' + self.seed).encode('utf-8'))
accountSeedHash = crypto.sha256(seedHash)
if not privateKey:
Expand Down Expand Up @@ -300,7 +314,7 @@ def issueAsset(self, name, description, quantity, decimals=0, reissuable=False,
})
return pywaves.Asset(pywaves.wrapper('/assets/broadcast/issue', data)['assetId'])

def reissueAsset(self, Asset, quantity, reissuable=False, txFee=pywaves.DEFAULT_ASSET_FEE):
def reissueAsset(self, Asset, quantity, reissuable=False, txFee=pywaves.DEFAULT_TX_FEE):
timestamp = int(time.time() * 1000)
sData = b'\5' + \
base58.b58decode(self.publicKey) + \
Expand All @@ -319,9 +333,9 @@ def reissueAsset(self, Asset, quantity, reissuable=False, txFee=pywaves.DEFAULT_
"fee": txFee,
"signature": signature
})
return pywaves.Asset(pywaves.wrapper('/assets/broadcast/reissue', data)['assetId'])
return pywaves.wrapper('/assets/broadcast/reissue', data).get('id', 'ERROR')

def burnAsset(self, Asset, quantity, txFee=pywaves.DEFAULT_ASSET_FEE):
def burnAsset(self, Asset, quantity, txFee=pywaves.DEFAULT_TX_FEE):
timestamp = int(time.time() * 1000)
sData = '\6' + \
base58.b58decode(self.publicKey) + \
Expand All @@ -338,7 +352,7 @@ def burnAsset(self, Asset, quantity, txFee=pywaves.DEFAULT_ASSET_FEE):
"fee": txFee,
"signature": signature
})
return pywaves.wrapper('/assets/broadcast/burn', data)
return pywaves.wrapper('/assets/broadcast/burn', data).get('id', 'ERROR')

def sendWaves(self, recipient, amount, attachment='', txFee=pywaves.DEFAULT_TX_FEE):
if not self.privateKey:
Expand Down

0 comments on commit 58f28fa

Please sign in to comment.