Here you can find the API of some of the important classes and methods of the µRaiden server framework. This documentation is auto-generated from the docstrings and type-hints in the source code, so if you have further questions please consult the source-code first.
Channel manager handles channel state changes on a low (blockchain) level.
microraiden.channel_manager.manager.ChannelManager(web3, channel_manager_contract, token_contract, private_key, state_filename=None, n_confirmations=1)[source]Manages channels from the receiver’s point of view.
channelschannels_to_dict()[source]Export all channels as a dictionary.
check_contract_version()[source]Compare version of the contract to the version of the library. Only major and minor version is used in the comparison.
close_channel(sender, open_block_number)[source]Close and settle a channel. Params:
sender (str): sender address open_block_number (int): block the channel was open in
close_pending_channels()[source]Close all channels that are in CLOSE_PENDING state. This state happens if the receiver’s eth balance is not enough to
close channel on-chain.
event_channel_close_requested(sender, open_block_number, balance, settle_timeout)[source]Notify the channel manager that a the closing of a channel has been requested. Params:
settle_timeout (int): settle timeout in blocks
event_channel_opened(sender, open_block_number, deposit)[source]Notify the channel manager of a new confirmed channel opening.
event_channel_settled(sender, open_block_number)[source]Notify the channel manager that a channel has been settled.
event_channel_topup(sender, open_block_number, txhash, added_deposit)[source]Notify the channel manager that the deposit of a channel has been topped up.
force_close_channel(sender, open_block_number)[source]Forcibly remove a channel from our channel state
get_eth_balance()[source]Get eth balance of the receiver
get_liquid_balance()[source]Get the balance of the receiver in the token contract (not locked in channels).
get_locked_balance()[source]Get the balance in all channels combined.
get_token_address()[source]node_online()[source]pending_channelsregister_payment(sender, open_block_number, balance, signature)[source]Register a payment.
Method will try to reconstruct (verify) balance update data
with a signature sent by the client.
If verification is succesfull, an internal payment state is updated.
:type sender: str
:param sender: sender of the balance proof
:type sender: str
:type open_block_number: int
:param open_block_number: block the channel was opened in
:type open_block_number: int
:type balance: int
:param balance: updated balance
:type balance: int
:type signature: str
:param signature: balance proof to verify
:type signature: str
reset_unconfirmed()[source]Forget all unconfirmed channels and topups to allow for a clean resync.
set_head(unconfirmed_head_number, unconfirmed_head_hash, confirmed_head_number, confirmed_head_hash)[source]Set the block number up to which all events have been registered.
sign_close(sender, open_block_number, balance)[source]Sign an agreement for a channel closing. :returns: a signature that can be used client-side to close
the channel by directly calling contract’s close method on-chain.
| Return type: | channel close signature (str) |
|---|
stop()[source]unconfirmed_channelsunconfirmed_channels_to_dict()[source]Export all unconfirmed channels as a dictionary.
unconfirmed_event_channel_opened(sender, open_block_number, deposit)[source]Notify the channel manager of a new channel opening that has not been confirmed yet.
unconfirmed_event_channel_topup(sender, open_block_number, txhash, added_deposit)[source]Notify the channel manager of a topup with not enough confirmations yet.
verify_balance_proof(sender, open_block_number, balance, signature)[source]Verify that a balance proof is valid and return the sender.
This method just verifies if the balance proof is valid - no state update is performed.
| Returns: | Channel, if it exists |
|---|
wait_sync()[source]microraiden.channel_manager.channel.Channel(receiver, sender, deposit, open_block_number)[source]__init__(receiver, sender, deposit, open_block_number)[source]A channel between two parties.
| Parameters: |
|
|---|
from_dict(state)[source]is_closedReturns – bool: True if channel is closed
| Return type: | bool |
|---|
to_dict()[source]| Returns: | Channel object serialized as a dict |
|---|---|
| Return type: | dict |
unconfirmed_depositReturns – int: sum of all deposits, including unconfirmed ones
microraiden.channel_manager.channel.ChannelState[source]An enumeration.
CLOSED = 1CLOSE_PENDING = 2OPEN = 0UNDEFINED = 100microraiden.proxy.paywalled_proxy.PaywalledProxy(channel_manager, flask_app=None, paywall_html_dir=None, paywall_js_dir=None)[source]add_paywalled_resource(cls, url, price=None, *args, **kwargs)[source]gevent_error_handler(context, exc_info)[source]join()[source]Block until server greenlet/Proxy stops
run(host='localhost', port=5000, debug=False, ssl_context=None)[source]Start the proxy/WSGI server
stop()[source]