/Komodo-RPC-Library-Python

RPC API-Library for Komodo-based asset chains, for Python Developers.

Primary LanguagePythonMIT LicenseMIT

Komodo_Logo

RPC API-Library for Komodo-based asset chains, for Python Developers.

===============================================================================

Description:

  • Komodo-RPC library helps you integrate your Python Apps with Komodo asset-chains without having to setup/implement required RPC functions. Install this Python library and call Komodo-API RPCs as easily as calling a local function. Komodo-RPC library acts as a wrapper between your Python app and the Komodo-daemon running on a server.

Installation:

Install 'komodorpc' Python Module:

  • pip install komodorpc

Or Download pre-built-distribution:

Usage:

  • For Python 3:
>>> from komodo_rpc import KomodoRPC
>>> import komodo.wallet as wallet
>>> komodo_rpc = KomodoRPC(node_addr='127.0.0.1', rpc_port=98102, req_method='POST', rpc_username='user71631186',
...                         rpc_password='pass725b1d10ae0c2217a8ffbgh30e5ca13367afvdl937bf1cbq11bd16f8a1e36d30')
>>> result = wallet.getwalletinfo()
>>> result
'{"result":{"walletversion":60000,"balance":2000000.16063408,"unconfirmed_balance":0.00000000,"immature_balance":0.00000000,"txcount":15,"keypoololdest":1561025064,"keypoolsize":101,"paytxfee":0.00000000,"seedfp":"7bd4d97c90d68f5921fee04e63168bd956d63346bf011c80d46e75b134385c"},"error":null,"id":"curltest"}\n'
>>> 
  • For Python 2.7:
>>> from komodo_rpc import KomodoRPC
>>> import komodo.wallet as wallet
>>> KomodoRPC.node_addr='127.0.0.1'
>>> KomodoRPC.rpc_port = 98102
>>> KomodoRPC.rpc_username='user71631186'
>>> KomodoRPC.rpc_password='pass725b1d10ae0c2217a8ffbgh30e5ca13367afvdl937bf1cbq11bd16f8a1e36d30'
>>> result = wallet.getwalletinfo()
>>> result
'{"result":{"walletversion":60000,"balance":2000000.16063408,"unconfirmed_balance":0.00000000,"immature_balance":0.00000000,"txcount":15,"keypoololdest":1561025064,"keypoolsize":101,"paytxfee":0.00000000,"seedfp":"7bd4d97c90d68f5921fee04e63168bd956d63346bf011c80d46e75b134385c"},"error":null,"id":"curltest"}\n'
>>> 
  • For Python 3: Create an object of KomodoRPC class with following parameters to populate RPC options and authentication parameters.

Argument Description
node_addr IP address of the node where the Komodo-daemon is running; Default: '127.0.0.1'
rpc_port Port number where the Komodo-daemon is listening for RPCs
rpc_username Username for RPC authentication
rpc_password Password for RPC authentication
req_method Request Method for RPCs; Default: 'POST'
jsonrpc_ver Default:'1.0'
rpc_req_id ID for RPC requests Default:'curltest'
>>> from komodo_rpc import KomodoRPC
>>> komodo_rpc = KomodoRPC( node_addr='127.0.0.1',
                        rpc_port='4524', 
                        req_method='POST', 
                        rpc_username='user32703390897', 
                        rpc_password='pass885b1d876131e0c2217a848ffbf5fe5ca34367af529a6d519abf8cbb5bd16f8a1e36d30'
              )
  • API commands are segregated into different modules:

Module Description
komodo.address Includes all address-related commands.
Example:
import komodo.address as address
result = address.getaddressbalance(addresses=["RMTTgkYk6r5kCYiWGmoihdts61XZ"])
komodo.blockchain Includes all blockchain-related commands.
Example:
import komodo.blockchain as blockchain
result = blockchain.getbestblockhash()
komodo.control Includes all Control commands.
Example:
import komodo.control as control
result = control.help(command='getwalletinfo')
komodo.disclosure Includes all disclosure-related commands.
Example:
import komodo.disclosure as disclosure
result = disclosure.z_validatepaymentdisclosure(paymentdisclosure='zpd:76462047b6c204')
komodo.generate Includes all Generation commands.
Example:
import komodo.generate as generate
result = generate.setgenerate(generate=False, genproclimit=2)
komodo.jumblr Includes all Jumblr commands.
Example:
import komodo.jumblr as jumblr
result = jumblr.jumblr_deposit(depositaddress='RT4SUjG3QeGcedfpHtP5MhDeEGTA')
komodo.mining Includes all mining-related commands.
Example:
import komodo.mining as mining
result = mining.getmininginfo()
komodo.network Includes all network-related commands.
Example:
import komodo.network as network
result = network.getnetworkinfo()
komodo.raw_transactions Includes all raw_transactions commands.
Example:
import komodo.raw_transactions as raw_transactions
result = raw_transactions.createrawtransaction(transactions={'ff2c4c0c0d55310c9e1b7f193d7f69d7a5b662fc610':0},amounts={'R9fZXs2M6YiTNCQKqgPC4mR4cE3VQkAGzW':0.001})
komodo.util Includes all utility-related commands.
Example:
import komodo.util as util
result = util.estimatepriority(num_blocks=2)
komodo.wallet Includes all wallet-related commands.
Example:
import komodo.wallet as wallet
result = wallet.getwalletinfo()

Documentation:

PyPi package listing: