class Katapaty::Party
Public Class Methods
address_token_balance(address:, token:, proxy: false)
click to toggle source
# File lib/katapaty/party.rb, line 12 def address_token_balance(address:, token:, proxy: false) filters_params = { "filters": [ { "field": 'address', "op": '==', "value": address }, { "field": 'asset', "op": '==', "value": token } ] } if proxy response = Katapaty::Block.proxy_to_cp(method: :get_balances, params: filters_params) else response = request('get_balances', filters_params) end return 0 if response.blank? response.first['quantity'].to_i end
btc_unconfirm_balance(address)
click to toggle source
# File lib/katapaty/party.rb, line 48 def btc_unconfirm_balance(address) (unspent_txouts(address).map { |a| a['amount'] }.sum.to_d * 1e8).to_i end
create_order(payload)
click to toggle source
# File lib/katapaty/party.rb, line 44 def create_order(payload) request('create_order', payload) end
create_send(payload)
click to toggle source
# File lib/katapaty/party.rb, line 40 def create_send(payload) request('create_send', payload) end
get_asset_info(assets)
click to toggle source
# File lib/katapaty/party.rb, line 28 def get_asset_info(assets) request('get_asset_info', { assets: assets }) end
get_blocks(block_indexes)
click to toggle source
# File lib/katapaty/party.rb, line 32 def get_blocks(block_indexes) request('get_blocks', { block_indexes: block_indexes }) end
get_running_info()
click to toggle source
# File lib/katapaty/party.rb, line 8 def get_running_info request('get_running_info') end
getrawtransaction(tx_hash)
click to toggle source
# File lib/katapaty/party.rb, line 36 def getrawtransaction(tx_hash) request('getrawtransaction', { tx_hash: tx_hash }) end
method_missing(name, *args)
click to toggle source
# File lib/katapaty/party.rb, line 67 def method_missing(name, *args) args = args.nil? ? {} : args.first request(name, args) end
request(method_name, payload={})
click to toggle source
# File lib/katapaty/party.rb, line 56 def request(method_name, payload={}) client = RestClient::Resource.new(Katapaty.configuration.counterparty_url, timeout: Katapaty.configuration.timeout) request = { method: method_name.to_s, params: payload, jsonrpc: '2.0', id: '0' }.to_json response = JSON.parse client.post(request, accept: 'json', content_type: 'json' ) raise Katapaty::JsonResponseError.new response if response.has_key? 'code' raise Katapaty::ResponseError.new response['error'] if response.has_key? 'error' response['result'] end
unspent_txouts(address)
click to toggle source
# File lib/katapaty/party.rb, line 52 def unspent_txouts(address) request(:get_unspent_txouts, { address: address, unconfirmed: true }) end