sTRX 合约开发者文档
sTRX 接入
查询接口
兑换率
方法描述: 查询 sTRX 与 TRX 的兑换率
参数说明:
无参数
返回值:
兑换率, 1 sTRX / 1 TRX 精度为 1e18 的兑换率
总 TRX 资产
方法描述: 查询合约管理的 TRX 总资产
参数说明:
无参数
返回值:
合约管理的 TRX 总资产,最小单位
用户余额对应 TRX
方法描述: 查询用户持有的 sTRX 对应的 TRX 数量
参数说明:
_account
address
用户地址
返回值:
用户持有的 sTRX 对应的 TRX 数量,最小单位
写接口
存入 TRX
方法描述: 调用此方法存入 TRX 资产并且收到 sTRX
参数说明:
msg.value
存入TRX的数量
返回值:
用户兑换收到的 sTRX 数量,最小单位
退出 sTRX
方法描述: 调用此方法指定要退出的 sTRX 数量,最小单位
参数说明:
tokenAmount
uint256
退出sTRX的数量
返回值:
用户退出待解冻的 TRX 数量,最小单位
退出 sTRX (指定 TRX 数量)
方法描述: 调用此方法指定退出希望获得的 TRX 数量,最小单位
参数说明:
trxAmount
uint256
退出 TRX 的数量
返回值:
用户退出的 sTRX 数量,最小单位
提取 TRX
方法描述:
调用此方法提取一个最早的已到期解冻轮次的 TRX
参数说明:
无参数
返回值:
用户提取的最早解冻轮次的 TRX 数量,最小单位
提取全部已解冻 TRX
方法描述: 调用此方法提取所有已到期解冻轮次的 TRX
参数说明:
无参数
返回值:
用户提取的所有已到期解冻轮次的 TRX 数量,最小单位
关键事件
Deposit(address user, uint256 trxAmount, uint256 strx, uint256 userHoldStrx)
用户存入 TRX 时发出
trxAmount:存入TRX 的数量
strx:得到 sTRX 的数量
userHoldStrx:之后总共持有的 sTRX 数量
Withdraw(address user, uint256 strx, uint256 trxAmount, uint256 userHoldStrx)
用户退出 sTRX 时发出
strx:退出 sTRX 的数量
trxAmount:得到 TRX 的数量
userHoldStrx:之后总共持有的 sTRX 数量
Claim(address user, uint256 trxAmount)
用户提取 TRX 时发出
trxAmount:提取 TRX 的数量
Market 接入
查询接口
租赁订单信息
方法描述: 查看一笔订单的信息
参数说明:
renter
address
租金支付者
receiver
address
资源接收者
resourceType
uint256
资源类型,0: 带宽; 1: 能量
返回值:
amount
uint256
订单资源对应 TRX 数量
securityDeposit
uint256
订单保证金(押金),未更新到当前
rentIndex
uint256
订单上次更新的全局 index
查询当前订单信息(更新到当前)
方法描述: 查看一笔订单的信息,返回数据已更新到当前
参数说明:
renter
address
租金支付者
receiver
address
资源接收者
resourceType
uint256
资源类型,0: 带宽; 1: 能量
返回值:
[0]
securityDeposit
uint256 订单保证金(押金),更新到当前
[1]
rentIndex uint256
订单更新的全局 index
写接口
租赁资源
方法描述: 调用此方法租赁资源,允许 amount = 0 (仅延期) 或 msg.value = 0 (不新增押金),不允许两者均为 0
参数说明:
msg.sender
本次租赁的支付者
receiver
address
本次租赁的资源接收者,不允许是合约或未激活账户
amount
uint256
租赁的资源对应 TRX 数量,最小单位,若 amount 非 0 (仅续期) 则必须大于 1 TRX
resourceType
uint256
资源类型,0: 带宽; 1: 能量
msg.value
本次新增的押金
返回值:
无,失败将会 revert
归还资源(支付者)
方法描述: 调用此方法归还资源,归还订单 (msg.sender, receiver, resourceType) 中的资源,当剩余押金不足时将会强制清空所有资源,并退还剩余押金给订单支付者
参数说明:
msg.sender
订单支付者
receiver
address
资源接收者
amount
uint256
本次归还的资源对应 TRX 数量,最小单位
resourceType
uint256
资源类型,0: 带宽; 1: 能量
返回值:
本次归还操作退还的押金数量,部分归还时为 0
归还资源(接收者)
方法描述: 资源接收者可以调用此方法归还资源,归还订单 (renter, msg.sender, resourceType) 中的资源,当剩余押金不足时将会强制清空所有资源,并退还剩余押金给订单支付者
参数说明:
msg.sender
资源接收者
renter
address
订单支付者
amount
uint256
本次归还的资源对应 TRX 数量,最小单位
resourceType
uint256
资源类型,0: 带宽; 1: 能量
返回值:
本次归还操作退还的押金数量,部分归还时为 0
清算
方法描述: 当订单押金不足时清算者可以清算订单,清算者获得清算奖励,若有剩余押金将退还给订单支付者
参数说明:
msg.sender
清算者
renter
address
订单支付者
receiver
address
资源接收者
resourceType
uint256
资源类型,0: 带宽; 1: 能量
返回值:
本次清算的清算奖励
关键事件
RentResource( address indexed renter, address indexed receiver, uint256 addedAmount, uint256 resourceType, uint256 addedSecurityDeposit, uint256 amount)
当发生租赁时发出
addedAmount:新租用资源的 TRX 数量(最小单位)
addedSecurityDeposit:增加的押金数量
amount:租赁后订单的总租用资源数量
ReturnResource( address indexed renter, address indexed receiver, uint256 subedAmount, uint256 resourceType, uint256 usageRental, uint256 subedSecurityDeposit, uint256 amount)
当归还资源时发出
subedAmount:归还资源的 TRX 数量(最小单位)
usageRental:归还资源使用量恢复时长的费用
subedSecurityDeposit:退还的押金数量(部分归还时为0)
amount:归还资源后的剩余租用资源数量
Liquidate( address indexed liquidator, address indexed renter, address indexed receiver, uint256 amount, uint256 resourceType, uint256 usageRental, uint256 liquidateFee, uint256 sendBack)
在清算时发出
amount:订单资源的 TRX 数量(最小单位)
usageRental:订单资源使用量恢复时长的费用
liquidateFee:清算者得到的清算奖励
sendBack:支付者收到的剩余押金
Last updated