在windows环境下实现BTS2.0自动分红的一种方法

来自技术流笔记
跳转至: 导航搜索

BTS2.0系统内没有提供资产的自动分红的功能,但这个功能却是必需的,经过研究,我在JINBI资产下实现了自动分红,方法如下:


1.系统环境的搭建:安装重钱包后,同步好,再运行cli_wallet -s ws://127.0.0.1:8090 -H 127.0.0.1:8091, 这个cli_wallet是命令行钱包,并且监听8091端口,响应rpc调用。


2.在cli_wallet里导入你要使用的账号私钥,unlock 这个账号,使得这个账号可以在命令行钱包里操作。


3.获取股东明细表,这个可以从比特股区块浏览器获得,例如jinbi资产,可以查http://cryptofresh.com/a/JINBI,最下面Holders & Traders ,就是股东明细表。


4.按照明细表,通过rpc调用命令行钱包transfer函数,发放分红。


举例:


我用python做的,其中涉及rpc的就几行,不同的语言使用rpc有不同的方法,改下就可以。

import requests
import json
url = "http://127.0.0.1:8091"
payload = {"method": "transfer","params": ["bikeji",gdm[k],"%.2f"%mm,"JINBI","fenhong","true"],"jsonrpc": "2.0","id": 0,}
response = requests.post(url, data=json.dumps(payload), headers=headers).json()

其中transfer是接口函数, bikeji 是bts用于分红的账号,jinbi是分红的币种,gdm[k] 是股东表,mm是分红数量。


其中重钱包安装,命令行钱包导入账号私钥,见比特帝国相关教程。