The Python Function to Retrieve the Producer Reward for Witness
- Time:2020-09-07 13:13:13
- Class:Weblog
- Read:35
As you know, the witness is rewarded for produce a block. The TOP 20 gets to produce the blocks more frequently than the backup witnesses, but the reward for each block is different: currently 484 VESTS for TOP 20 while around 2425 VESTS for others on the steem blockchain.
How do we get the reward given a block number? Unfortunately, it is not through the `get_block` api. Instead, we need to use `get_ops_in_block` which is provided by `account_plugin_history`
1 | curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_ops_in_block", "params":[43880000,true], "id":1}' https://api.steemit.com |
curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_ops_in_block", "params":[43880000,true], "id":1}' https://api.steemit.com
This returns like:
{"jsonrpc":"2.0","result":[{"trx_id":"0000000000000000000000000000000000000000","block":43880000,"trx_in_block":4294967295,"op_in_trx":0,"virtual_op":1,"timestamp":"2020- 06-01T17:49:18","op":["producer_reward",{"producer":"hinomaru-jp","vesting_shares":"481.663694 VESTS"}]}],"id":1}
Then, we can wrap it up in a Python function (please note that we need to scan the transactions array and look for the `producer_reward` ops.
1 2 3 4 5 6 7 8 | def getReward(block): data={"jsonrpc":"2.0", "method":"condenser_api.get_ops_in_block", "params":[block, True], "id":1} result = requests.post(url="https://api.steemit.com", json = data) jsonData = result.json() for tx in jsonData: if tx['op'][0] == 'producer_reward': return tx['op'][1]['vesting_shares'] return None |
def getReward(block): data={"jsonrpc":"2.0", "method":"condenser_api.get_ops_in_block", "params":[block, True], "id":1} result = requests.post(url="https://api.steemit.com", json = data) jsonData = result.json() for tx in jsonData: if tx['op'][0] == 'producer_reward': return tx['op'][1]['vesting_shares'] return None
–EOF (The Ultimate Computing & Technology Blog) —
Recommend:Digital Business Cards App Will Change The Way You Network Forev
3 Things You Need To Know When Launching Your Startup’s Blog
Instagram Influencer Marketing Is A Billion Dollar Industry [Inf
5 Social Adverts for Driving Stellar Webinar Attendance (Infogra
5 Ways to Serve Up a Tastier Food Blog to Your Audience
Meet These Single Moms That Created Successful Blogs
Boost Your SERP Rankings with Better Marketing Automation
How to Turn Your Withering Blog Posts into Fully-Fledged Plants
The Emoji Evolution: How Your Brand Can Use Emojis
6 Tips to Get Started With Selling on Your Blog
- Comment list
-
- Comment add