一、说明
Ton链上jetton wallet和minter合约部署完成后需要与jetton minter合约进行交互才能mint jetton代币到指定地址,或者需要燃烧burn jetton、transfer,changeOwner时也需要通过脚本进行交互才能发送指令到jetton合约。
Ton不提供类似etherscan区块链浏览器,直接通过public接口与合约进行交互修改动态参数。因为,TON链上的合约中函数接口一般都是internal impure,非public类型的公共接口。当需要与合约进行交互时,需要发送相关的操作码op_code执行相关的功能。并且输出参数是需要包含在发送指令中的。
二、使用python与jetton合约进行交互
1. 调用Ton链jetton minter合约 mint操作,铸造代币到指定钱包地址
构造如下消息体并发送到ton链上:
body = JettonMaster.build_mint_body(
destination=wallet.address,
jetton_amount=int(JETTON_AMOUNT * (10 ** JETTON_DECIMALS)),
)
tx_hash = await wallet.transfer(
destination=JETTON_MASTER_ADDRESS,
amount=0.05,
body=body,
)
2. 燃烧钱包地址里的jetton代币。构造如下消息体并发送指令到ton链上
body = JettonWallet.build_burn_body(
jetton_amount=int(JETTON_AMOUNT * (10 ** JETTON_DECIMALS)),
response_address=wallet.address,
)
tx_hash = await wallet.transfer(
destination=jetton_wallet_address,
amount=0.05,
body=body,
)
3. 修改jetton合约的管理员权限,通过如下交互消息指令完成
body = JettonMaster.build_change_admin_body(
new_admin_address=Address(NEW_ADMIN_ADDRESS),
)
tx_hash = await wallet.transfer(
destination=JETTON_MASTER_ADDRESS,
amount=0.05,
body=body,
)
至此,完成TON链上怎样与jetton合约进行交互mint transfer changeOwner burn等操作所有操作流程。
添加VX或者telegram获取全程线上免费指导
评论前必须登录!
注册