The Smartcontract Caller is a standalone node-webkit app, that enables users to call a contract method on an EVM-compatible blockchain by uploading input configuration files in JSON
format.
Disclaimer : This is a badly and quickly written project, with uneccesary machinery, and a very client-heavy distribution.
- Binance Smart Chain - Mainnet
- Binance Smart Chain - Testnet
- Download the latest release. Choose version accordingly.
- Unzip the downloaded app folder.
- Download the configuration template files (Release > config-template.zip).
- Edit the configuration templates. References for parameter format are given below.
- Launch the .exe in the app folder.
- Upload the edited configuration files in the launched app.
- Execute and wait for your call result or transaction hash.
All files should be in JSON
format.
PRIVATE_KEY
: the private key that you wish to sign transactions with.
This parameter is of type
string
.
BLOCKCHAIN
: Choose the blockchain you wish to connect to. For now the only options are: bsc-mainnet or bsc-testnet.PUBLIC_ADDRESS
: Your public address, associated with your private key.CONTRACT_ADDRESS
: The address of the contract you wish to call.METHOD_NAME
: Name of method you wish to call. You should include it's solidity parameter types, e.g. transfer(address,uint256).METHOD_TYPE
: Either read or write . Read methods do not alter contract state (don't need to sign anything or pay fee) whereas write methods do.METHOD_PARAMETERS
: All the parameters that are needed to call the fucntion. They should be placed in an array. All parameters of solidity typeaddress
should be a placed in the array as astring
, all number types should be written asint
orfloat
and be in ethers (the program will multiply by 10^18 to convert it in wei).
e.g. for the method transfer(address,uint256) parameters could be ["0x437C2AD9E62e3f9Ef8d76Dd6Bb1A5deF35B37Cc7", 123].
Except for
METHOD_PARAMETERS
which is anArray
, all other parameters are of typestring
.
- Copy-paste the ABI of the contract you wish to call from a blockscanner (e.g. Etherscan, BSCScan, ...). in the templateABI.json file.