EvmJsonRPC

Класс EvmJsonRPC предоставляет следующие функции для взаимодействия с evm сетями.

class EvmJsonRPC(rpc_url: Union[str, RpcUrl])

Класс принимает урл узла RPC.

from ipnpy.rpc import EvmJsonRPC

provider_binance = EvmJsonRPC("https://bsc-dataseed.binance.org/")

Или

from ipnpy.rpc import EvmJsonRPC
from ipnpy.rpc.enums import RpcUrl

provider_binance = EvmJsonRPC(RpcUrl.BINANCE)

get_native_balance(address: str, raw: bool = True) -> Union[int, float]

Принимает:

  • address - адрес кошелька

  • raw - флаг, определяющий, возвращать необработанный баланс в wei (True) или баланс в ether (False). По умолчанию True.

Возвращает баланс указанного адреса.

>>> from ipnpy.rpc import EvmJsonRPC
>>> from ipnpy.rpc.enums import RpcUrl
>>> provider_binance = EvmJsonRPC(RpcUrl.BINANCE)
>>> provider_binance.get_native_balance('0x3e09a54e5ad60fbd91965e94f3705d190071b7381')
10000000000000000
>>> provider_binance.get_native_balance('0x3e09a54e5ad60fbd91965e94f3705d190071b738', False)
0.01

send_native_token(private_key: str, from_address: str, to_address: str, amount: int) -> str

Отправляет нативную монету с одного адреса на другой. Транзакция будет подписана приватным ключом отправителя.

Принимает:

  • private_key - приватный ключ отправителя

  • from_address - адрес отправителя

  • to_address - адрес получателя

  • amount - сумма (в wei)

Возвращает хеш транзакции, который можно использовать для отслеживания транзакции в блокчейне.

get_erc20_balance(address: str, contract_address: str, raw: bool = True) -> Union[int, float]

Принимает:

  • address - адрес кошелька

  • contract_address- адрес контракта ERC20

  • raw - флаг, определяющий, возвращать необработанный баланс в wei (True) или баланс в ether (False). По умолчанию True.

Возвращает количество ERC20 токенов, принадлежащих адресу.

send_erc20_token(private_key: str, from_address: str, to_address: str, amount: int, contract_address: str) -> str

Отправляет ERC20 токен с одного адреса на другой. Транзакция будет подписана приватным ключом отправителя.

Принимает:

  • private_key - приватный ключ отправителя

  • from_address - адрес отправителя

  • to_address - адрес получателя

  • amount - сумма (в wei)

  • contract_address- адрес контракта ERC20

Возвращает хеш транзакции, который можно использовать для отслеживания транзакции в блокчейне.

Last updated