-
Notifications
You must be signed in to change notification settings - Fork 259
挖矿接口
linj edited this page Nov 23, 2022
·
1 revision
[TOC]
迁移到执行器接口
请求报文:
{
"jsonrpc":"2.0",
"id":int32,
"method":"ticket.CreateBindMiner",
"params":{
"bindAddr":"string",
"originAddr":"string",
"amount":int64,
"checkBalance":bool
}
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
bindAddr | string | 是 | 挖矿绑定地址 |
originAddr | string | 是 | 原始地址 |
amount | int64 | 是 | 用于购买ticket的bty数量 |
checkBalance | bool | 是 | 是否进行额度检查 |
响应报文:
{
"id":int32,
"result":[
{
"txhex":"string"
}
]
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
txhex | string | 交易十六进制字符串 |
请求报文:
{
"jsonrpc":"2.0",
"id":int32,
"method":"ticket.SetAutoMining",
"params":[
{
"flag":int32
}
]
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
flag | int32 | 是 | 标识符,1 为开启自动挖矿,0 为关闭自动挖矿。 |
reserve | int64 | 非 | 保留字段 |
响应报文:
{
"id":int32,
"result":[
{
"isOK":true,
"msg":""
}
],
"error":null
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
isok | bool | 在成功时,返回 true;失败时,返回 false。 |
msg | string | 在成功时,为空;失败时,返回错误信息。 |
请求报文:
{
"jsonrpc":"2.0",
"id":int32,
"method":"ticket.GetTicketCount",
"params":[]
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|
响应报文:
{
"id":int32,
"result":int64
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
result | int64 | 返回ticket的数量 |
请求报文:
{
"method":"Chain33.Query",
"params":[
{
"execer":"ticket",
"funcName":"MinerAddress",
"payload":{
"data":"1NNaYHkscJaLJ2wUrFNeh6cQXBS4TrFYeB"
}
}
]
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
execer | []byte | 是 | 执行器名称 |
funcName | string | 是 | 调用函数名:MinerAddress,获取绑定的挖矿地址 |
payload | []byte | 是 | 函数参数,data:冷钱包地址 |
响应报文:
{
"id":null,
"result":{
"data":"12HKLEn6g4FH39yUbHh4EVJWcFo5CXg22d"
},
"error":null
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
result | data | 返回挖矿地址 |
请求报文:
{
"method":"Chain33.Query",
"params":[
{
"execer":"ticket",
"funcName":"MinerSourceList",
"payload":{
"data":"12HKLEn6g4FH39yUbHh4EVJWcFo5CXg22d"
}
}
]
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
execer | []byte | 是 | 执行器名称 |
funcName | string | 是 | 调用函数名:MinerSourceList,矿工地址的对应的冷钱包地址 |
payload | []byte | 是 | 函数参数,data:矿工地址 |
响应报文:
{
"id":null,
"result":{
"datas":[
"1NNaYHkscJaLJ2wUrFNeh6cQXBS4TrFYeB"
]
},
"error":null
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
result | datas | 冷钱包地址列表 |
请求报文:可以填空参数close所有当前钱包账户绑定的ticket
{
"method":"ticket.CloseTickets",
"params":[
{
"minerAddress":"12HKLEn6g4FH39yUbHh4EVJWcFo5CXg22d",
}
]
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
minerAddress | string | 否 | 可以指定账户来只关闭与之绑定的tickets |
ticketId | []string | 否 | ticketId |
响应报文:
{
"id":null,
"result":{
"hashes":[] string
},
"error":null
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
hashes | []string | ticket地址列表 |
请求报文:
{
"jsonrpc":"2.0",
"id":int32,
"method":"Chain33.CreateTransaction",
"params":[{"execer" : "string", "actionName" : "string", "payload" : {"minerAddress" : "string", "returnAddress" : "string", "count": int32, "randSeed" : int64, "pubHashes" : ["string"]} }]
}
参数说明:
参数 | 类型 | 是否必填 | 说明 |
---|---|---|---|
execer | string | 是 | ticket |
actionName | string | 是 | Topen |
payload | 结构体 | 是 | Topen需要的参数 |
minerAddress | string | 是 | 挖矿地址 |
returnAddress | string | 是 | 收益地址,(非委托挖矿时,和挖矿地址一致) |
count | int32 | 是 | 买票数量 |
randSeed | int64 | 否 | 随机数种子 |
pubHashes | 字符串数组 | 是 | 数组长度为count, 每个pubHash 用随机的源字符串通过SHA256算法生成。 挖矿时需要公布生成pubHash的源字符串,源字符串用于生成链上随机数 |
注意:
- 实现需要保留生成的pubHash的源字符串, 一般将这个功能集成到钱包, 由钱包来管理的随机字符串
响应报文:
{
"id":int32,
"result": "string"
}
参数说明:
参数 | 类型 | 说明 |
---|---|---|
result | string | 交易的十六进制字符串 |
- 由于挖矿交易放在区块的第一个交易, 由挖矿时生成, 不需要构造接口。
hello world