def register_secret(w3, account, contract, *args): transactor = contract.functions["registerSecret"](args[0], args[1], args[2], args[3]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "SecretRevealed") return result[0]['args']['secrethash'], result[0]['args'][ 'secret'], result[0]['args']['endTime']
def open_channel(w3, account, contract, *args): transactor = contract.functions["openChannel"](args[0], args[1], args[2]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "ChannelOpened") return result[0]['args']['channel_identifier'], result[0]['args'][ 'participant1'], result[0]['args']['participant2'], result[0]['args'][ 'settle_timeout']
def settle_channel(w3, account, contract, *args): transactor = contract.functions["settleChannel"](args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7], args[8]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "ChannelSettled") return result[0]['args']['channel_identifier'], result[0]['args'][ 'participant1_amount'], result[0]['args']['participant2_amount']
def update_NonClosingBalanceProof(w3, account, contract, *args): transactor = contract.functions["updateNonClosingBalanceProof"]( args[0], args[1], args[2], args[3], args[4], args[5], args[6], args[7]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "NonClosingBalanceProofUpdated") print("test", result) return result[0]['args']['channel_identifier'], result[0]['args'][ 'closing_participant'], result[0]['args']['nonce']
def close_channel(w3, account, contract, *args): transactor = contract.functions["closeChannel"](args[0], args[1], args[2], args[3], args[4], args[5], args[6]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "ChannelClosed") return result[0]['args']['channel_identifier'], result[0]['args'][ 'closing_participant'], result[0]['args']['nonce']
def unlock(w3, account, contract, *args): transactor = contract.functions["unlock"](args[0], args[1], args[2], args[3]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "ChannelUnlocked") print("test : ", result) return result[0]['args']['channel_identifier'], result[0]['args']['participant'], result[0]['args']['partner']\ , result[0]['args']['locksroot'], result[0]['args']['unlocked_amount'], result[0]['args']['unsettled_amount']\ , result[0]['args']['unsettled_merkle_root'], result[0]['args']['unsettled_merkle_layer'], result[0]['args']['returned_tokens']
def set_deposit(w3, account, contract, n1, n2, channel_identifier, deposit): transactor = contract.functions["setTotalDeposit"](channel_identifier, n1, deposit, n2) tx_hash = transact_function(w3, account, transactor) temp = wait_event(w3, contract, tx_hash, "ChannelNewDeposit") result = temp[0]['args']['channel_identifier'], temp[0]['args'][ 'participant'], temp[0]['args']['total_deposit'] return result
def create_ERC20Token_network(w3, account, contract, *args): contract_interface = compile_contract('../contracts/TokenNetwork.sol', 'TokenNetwork') transactor = contract.functions["createERC20TokenNetwork"](args[0], args[1], args[2]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "TokenNetworkCreated") contract = get_contract(w3, result[0]['args']['token_network_address'], contract_interface['abi']) return contract
def set_initial_deposit(w3, account, contract, channel, initial_deposit): k, result = 0, [] for i in channel: for j in range(1, 3): if j == 1: k += 1 transactor = contract.functions["setTotalDeposit"]( channel[i][0], channel[i][j], initial_deposit[k], channel[i][3 - j]) tx_hash = transact_function(w3, account[k], transactor) temp = wait_event(w3, contract, tx_hash, "ChannelNewDeposit") result.append((temp[0]['args']['channel_identifier'], temp[0]['args']['participant'], temp[0]['args']['total_deposit'])) return result
def withdraw_dividends(contract, account): tx_hash = transact_function(account, contract, 'withdrawDividends') withdraw_event = wait_event(contract, tx_hash, 'WithdrawalDividends') print("SUCCESS: Withdrew Dividends: {} Event: {}".format( short_address(account), withdraw_event))
def send(w3, account, contract, receiver, amount): transactor = contract.functions["send"](receiver, amount) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "Sent") return result[0]['args']['from'], result[0]['args']['to'], result[0][ 'args']['amount']
def ERC20_transfer(w3, account, contract, *args): transactor = contract.functions["transfer"](args[0], args[1]) tx_hash = transact_function(w3, account, transactor) result = wait_event(w3, contract, tx_hash, "Transfer") return result[0]['args']['to'], result[0]['args']['value']