Hive 开发者门户网站
正在将VESTS转换为HIVE
如何将 VESTS 转换为艾滋病毒或艾滋病毒患者
Intro
Hive’s has base unit is VESTS and usually user doesn’t know about this unit because everything is dynamically calucated and presented in HIVE form for convenience of the user. In this recipe we will talk about how converting is working behind the scenes on all Hive apps. Dynamic Global Properties are used in this recipe to fetch the current values of global blockchain properties.
Steps
- Get Dynamic Global Properties Fetch current values of global blockchain properties
- Formulate VESTS_TO_HIVE Formulate function that will convert given VESTS to HIVE.
1. Get Dynamic Global Properties
Following method can be used to fetch global values
curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_dynamic_global_properties", "params":[], "id":1}' https://api.hive.blog
Example Output
{
"id":1,
"jsonrpc":"2.0",
"result":{
"head_block_number":24238248,
"head_block_id":"0171d8a833dc369abd034b0c67d8725f96df9e5b",
"time":"2018-07-16T22:41:24",
"current_witness":"xeldal",
"total_pow":514415,
"num_pow_witnesses":172,
"virtual_supply":"283434761.199 HIVE",
"current_supply":"271729171.190 HIVE",
"confidential_supply":"0.000 HIVE",
"current_hbd_supply":"15498201.173 HBD",
"confidential_hbd_supply":"0.000 HBD",
"total_vesting_fund_hive":"192913644.627 HIVE",
"total_vesting_shares":"391296886352.617261 VESTS",
"total_reward_fund_hive":"0.000 HIVE",
"total_reward_shares2":"0",
"pending_rewarded_vesting_shares":"379159224.860656 VESTS",
"pending_rewarded_vesting_hive":"185294.019 HIVE",
"hbd_interest_rate":0,
"hbd_print_rate":2933,
"maximum_block_size":65536,
"current_aslot":24315228,
"recent_slots_filled":"340282366920938463463374607431768211400",
"participation_count":128,
"last_irreversible_block_num":24238230,
"vote_power_reserve_rate":10,
"average_block_size":10950,
"current_reserve_ratio":200000000,
"max_virtual_bandwidth":"264241152000000000000"
}
}
2. Formulate VESTS_TO_HIVE
From above results we have everything we need to calculate HIVE from given VESTS value.
Let’s say we have been given availableVESTS variable, value in VESTS and we want to convert that to HIVE. By using values from above returned object our formula would be as follows:
vestHive = ( result.total_vesting_fund_hive x availableVESTS ) / result.total_vesting_shares
That’s it!