SEER流量众筹模块开发测试网络及使用文档发布
SEER利用区块链奖励机制,可解决传统体育赛事痛点,提高行业运转效率。比如提高赛事方收入,让观众自由选择想看的比赛,给予赛事众筹的参与者贡献影响力,使其获得由智能合约量化的激励等。此功能可广泛应用于包括但不限于演出、赛事等文体产业中的各种场景。
只有资产发行者能够创建新众筹。在SEER开发者网页钱包中,可在资产发行者的资产页,看到资产功能中有“众筹列表”按钮,进入可查看当前用户已有众筹列表或创建新的众筹。
在创建众筹时,可设置众筹开始结束时间、代理人等。代理人的设计初衷,是出于安全考虑,资产拥有者账号/DAPP官方账号不可以长期在线,众筹创建后由代理者行使后续权力,同时,代理人也可以作为水龙头,负责推广和注册账号。
创建众筹时,还需要设置各种激励的名称及每份奖励数量。例如每次助力奖励10ABC,朋友助力奖励5ABC。
创建众筹时需要添加受益人角色,例如合作媒体、明星、举办方等,在创建时为这些角色设定众筹成功后,资金池的分配比例,并且可以单独为每位角色设置线性解锁、不锁定、到期解锁等锁定方式和锁定天数。
众筹进行中时,需要配合相应的前端程序和活动程序使用,在链上解决的主要是通过智能合约进行筹得资产的增发、销毁、分配、锁定等步骤。而用户贡献流量这一步,则需要特定的活动程序向区块链提供数据,由创建人或代理人权限根据活动数据为本场众筹注入新资产。
例如,一场活动在某一周期内有10000人通过微信授权登陆进行助力,另外这些用户产生了5000人次的邀请朋友助力数据,根据每次助力奖励10ABC,朋友助力奖励5ABC的设定,该周期共计为资金池注入10000 * 10 + 5000 * 5 = 125000 ABC,同时,另有 150 位用户通过参与众筹的形式,捐赠或打赏了 50000 ABC,该周期可供受益人各方分配的资产为175000 ABC,这些资产将在活动成功后将根据预先设定的比例进行分配,若失败,捐赠部分将退回给用户。根据活动数据,发起方可根据用户的捐赠和助力贡献或排名,给与大到冠名、广告露出,小到明星签名周边之类的各种名誉奖励。
若有问题,欢迎在开发者论坛参与讨论:https://forum.seerchain.org/t/topic/610
体验流程
开发者可首先在本地下载配置命令行钱包,连接到此测试网络。导入测试账号tester的私钥,生成多个密钥对,注册多个测试账号。使用tester向自行注册的账号转账测试的SEER,之后使用自行注册的账号创建资产,随后创建众筹,开启众筹。然后使用创建的多个其它账号向自行创建的众筹捐赠资产,使用代理账号或众筹发起账号模拟流量价值进行的增发,众筹到期后输入众筹成功或失败的结果,使用创建或更新时设置的受益人账号领取收益等。
接口说明
流量众筹模块需要配合链上原有的资产发行、销毁等功能使用,主要包含六个新的接口:competition_create、competition_update、competition_participate、competition_input、competition_claim、competition_result。其中创建众筹competition_create、更新众筹competition_update参数较复杂、连同收益领取competition_claim、输入结果competition_result,一般使用网页钱包操作即可。
以下介绍参与众筹competition_participate和注入新资产competition_input接口。
competition_participate
格式:competition_participate(string account,competition_id_type competition,asset amount,bool broadcast = false);
参数:account:发起者、competition:众筹ID、amount:参与的数额(带精度)以及资产类型、broadcast:是否广播;
作用:普通用户参与众筹(向本次众筹资金池捐赠资产)。
命令行钱包示例:competition_participate 1.2.13 1.18.7 {"amount":10000000,"asset_id":"1.3.3"} true
RPC示例:{"jsonrpc": "2.0", "method": "competition_participate", "params": ["1.2.13","1.18.7",{"amount":10000000,"asset_id":"1.3.3"},true], "id": 1}
参数说明(RPC形式):
{
"jsonrpc": "2.0",
"method": "competition_participate",
"params": [
"1.2.13",//发起者
"1.18.7", {//众筹ID
"amount": 10000000,//参与的数额
"asset_id": "1.3.3"//资产类型
},
true
],
"id": 1
}
返回信息示例:
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"ref_block_num": 3404,
"ref_block_prefix": 135777280,
"expiration": "2019-10-16T15:32:36",
"operations": [
[65, {
"fee": {//手续费
"amount": 500000,
"asset_id": "1.3.0"
},
"issuer": "1.2.13",//发起者
"competition": "1.18.7",//众筹ID
"amount": {
"amount": 10000000,//参与的数额
"asset_id": "1.3.3"//资产类型
}
}]
],
"extensions": [],
"signatures": ["2071d05......2e491"]
}
}
competition_input
格式:competition_input(string account,competition_id_type competition,map<uint8_t,uint32_t> input,bool broadcast = false);
参数:account:发起者、competition:众筹ID、input:每种激励新增的数额、broadcast:是否广播;
作用:因为用户贡献了关注度,增发新的资产注入众筹资金池
命令行钱包示例:competition_input 1.2.13 1.18.7 [[0,100],[1, 200]] true
RPC示例:{"jsonrpc": "2.0", "method": "competition_input", "params": ["1.2.13","1.18.7",[[0,100],[1, 200]],true], "id": 1}
参数说明(RPC形式):
{
"jsonrpc": "2.0",
"method": "competition_input",
"params": [
"1.2.13",//发起者
"1.18.7", //众筹ID
[
[0, 100],//第一种激励新增的数额
[1, 200]//第二种激励新增的数额
],
true],
"id": 1
}
返回信息示例:
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"ref_block_num": 3370,
"ref_block_prefix": 1021658047,
"expiration": "2019-10-16T15:30:54",
"operations": [
[66, {
"fee": {//手续费
"amount": 500000,
"asset_id": "1.3.0"
},
"issuer": "1.2.13",//发起者
"competition": "1.18.7", //众筹ID
"input": [
[0, 100],//第一种激励新增的数额
[1, 200]//第二种激励新增的数额
]
}]
],
"extensions": [],
"signatures": ["2054f3......f765c15"]
}
}
SEER开发测试网络
目前,SEER流量众筹模块开发中,开发者架设了测试网络,节点API如下:ws://192.144.171.138:8003
若需使用测试网络网页钱包http://192.144.171.138 ,需要添加并切换到上面的API。
测试网络账号:tester
私钥:5HxSqrcNu6nZ5xaLK9f6RTVKghJsVGZejz8CnC8e3qnPc14LUdP
win wallet:https://cdn.jsdelivr.net/gh/akirasen/W1@master/cli_test.zip
此测试网络可能会随时销毁或重置,请勿保存重要数据。
新手指南
考虑到有的小伙伴是第一次接触SEER,所以我们从头补一下课,如何使用开发者网络钱包和命令行钱包,此处命令行钱包以windows为例。
首先,下载钱包https://cdn.jsdelivr.net/gh/akirasen/W1@master/cli_test.zip
解压后新建一个文本文档,输入cli_wallet.exe -s ws://192.144.171.138:8003 -r 127.0.0.1:9991 -H 127.0.0.1:9992
,另存为run.cmd,点击run.cmd。
成功运行后,会显示new >>
- 输入
set_password 123
设置钱包密码;
https://docs.seerchain.org/#/zh-Hans/cli?id=_1-set_password
- 输入
unlock 123
解锁钱包;
*** 记得每次看到locked>>的时候就解锁 ***
https://docs.seerchain.org/#/zh-Hans/cli?id=_2-unlock
- 输入
import_key tester 5HxSqrcNu6nZ5xaLK9f6RTVKghJsVGZejz8CnC8e3qnPc14LUdP
导入测试账号的私钥;
https://docs.seerchain.org/#/zh-Hans/cli?id=_5-import_key
- 输入
suggest_brain_key
生成几对秘钥对,复制下来;
https://docs.seerchain.org/#/zh-Hans/cli?id=_4-suggest_brain_key
- 用生成秘钥对中的公钥(SEER开头的一串数字字母字符),替换掉模板中的公钥
SEER......yVgnQ
,修改模板中的新账号用户名name
,输入register_account name SEER4xBLW....yVgnQ SEER4....yVgnQ tester tester 20 true
,注册账号,多个账号多次注册;
https://docs.seerchain.org/#/zh-Hans/cli?id=_1-register_account
- 输入
transfer tester name 1000000 SEER "" true
为你创建的账号name(需替换)转账 100万SEER 测试币,多个账号多次转账;
https://docs.seerchain.org/#/zh-Hans/cli?id=_2-transfer
输入
import_key name 5Kb1...Rci
导入你刚刚注册的测试账号的私钥,多个账号多次导入;在测试网络网页钱包http://192.144.171.138 设置-接入点中,添加 API 服务器节点 ws://192.144.171.138:8003 并切换;
设置-恢复/导入 - 导入私钥,粘贴
5HxSqrcNu6nZ5xaLK9f6RTVKghJsVGZejz8CnC8e3qnPc14LUdP
提交,可以导入测试账号 tester,当然你也可以导入自己创建的其它账号;菜单 - 资产 页 创建资产,填入资产代码,创建一个资产;
点击新创建资产后方的“众筹列表”按钮,进入列表页,创建众筹。在创建页面根据提示添加各种参;
创建好后开启众筹,开启后的众筹,可以在网页钱包中进行输入、参与操作,但因为这些操作在实际操作中需要程序控制,因此使用命令行钱包和RPC接口来模拟操作;
命令行钱包中输入
competition_participate 1.2.N 1.18.N {"amount":N,"asset_id":"1.3.N"} true
参与众筹(捐赠打赏),详细参数说明参考上面的文档;输入
competition_input 1.2.N 1.18.N [[0,100],[1, 200]] true
向本次众筹资产池输入各个激励名目的新增数量,注入新的资产,详细参数说明参考上面的文档。
用户名的object_ID可通过get_account_id name
查询。
https://docs.seerchain.org/#/zh-Hans/cli?id=_13-get_account_id
SEER流量众筹模块开发测试网络及使用文档发布的更多相关文章
- 拯救你的文档 – 【DevOps敏捷开发动手实验】开源文档发布
今天上海的天气真是不错,风和日丽.再次来到微软上海紫竹研发中心,心情很是愉快,喜欢这里的大草坪,喜欢这里的工程气氛,更喜欢今天来陪我的小伙伴们. 这次动手实验培训与以往最大的不同就是采用了开源文档的方 ...
- Taurus.MVC WebAPI 入门开发教程8:WebAPI文档与自动化测试。
系列目录 1.Taurus.MVC WebAPI 入门开发教程1:框架下载环境配置与运行. 2.Taurus.MVC WebAPI 入门开发教程2:添加控制器输出Hello World. 3.Tau ...
- 传智播客C/C++各种开发环境搭建视频工具文档免费教程
传智播客作为中国IT培训的领军品牌,一直把握技术趋势,给大家带来最新的技术分享!传智播客C/C++主流开发环境免费分享视频文档中,就有写一个helloworld程序的示范.火速前来下载吧 所谓&quo ...
- 【DevOps敏捷开发动手实验】开源文档 v2015.2 stable 版发布
Team Foundation Server 2015 Update 2版本终于在2周前的//Build 2016大会上正式发布了,借这个东风,小编也完成了[DevOps敏捷开发动手实验]开源文档的第 ...
- Java,面试题,简历,Linux,大数据,常用开发工具类,API文档,电子书,各种思维导图资源,百度网盘资源,BBS论坛系统 ERP管理系统 OA办公自动化管理系统 车辆管理系统 各种后台管理系统
Java,面试题,简历,Linux,大数据,常用开发工具类,API文档,电子书,各种思维导图资源,百度网盘资源BBS论坛系统 ERP管理系统 OA办公自动化管理系统 车辆管理系统 家庭理财系统 各种后 ...
- [资料分享]迅为iTOP4412开发板-SDIO WiFi移植文档
本文转自迅为:http://www.topeetboard.com 概述 近期需要把WiFi无线网络功能移植到iTOP-4412 开发平台,查阅了相关资料,经过一段时间的研究.调试,终于成功的将WiF ...
- jplogic v1.0案例开发之知识库管理(文档管理等)(二)
jplogic v1.0开发陆续更新,意在和广大网友分享交流.通过寻求合作伙伴,交流群.以下是jplogic的关于知识库模块的部分功能,例如以下进行功能展示: 知识库主界面: 新增知识类别: wate ...
- [.NET开发] C# 如何在PDF文档中创建表格
表格能够直观的传达数据信息,使信息显得条理化,便于阅读同时也利于管理.那在PDF类型的文档中如何来添加表格并且对表格进行格式化操作呢?使用常规方法直接在PDF中添加表格行不通,那我们可以在借助第三方组 ...
- PyRevit开发第一步:获取Revit文档Document
1.安装PythonShell插件 PythonShell 2018 插件下载 交流QQ群: 17075104 新建项目后,运行功能Python Shell, 在弹出的窗口中复制或输入以下引用代码模块 ...
随机推荐
- SQL Server2008 inner join多种方式的实践
这些天的学习,才发现自己对SQL原来是如此的不了解.之前一直以为自己轻松应对各种复杂的SQL查询,但是一旦提到效率上,可能就比较傻眼了,有时候也会埋怨客户的服务器不好使. 至于Inner Join的三 ...
- ReentrantLock分析
主要分析下ReentrantLock锁的占用和释放过程. 一.几个核心变量 AbstractOwnableSynchronizer{ /** * 表示当前占有独占锁的线程,为null时说明锁未被占用 ...
- Redis的那些最常见面试问题(转)
Redis的那些最常见面试问题 1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Reids的特点 Redis本质上是一个Key-Value类型 ...
- Could not calculate build plan :lugin org.apache.maven.plugins:maven-resources-plugin:2.6 or one of
eclipse中新建maven项目,出现 Could not calculate build plan :lugin org.apache.maven.plugins:maven-resources- ...
- thinkphp6.0 composer 安装 web-token/jwt-framework 常见出错原因分析及解决方法
composer require web-token/jwt-framework 安装JWT出现错误提示 - web-token/jwt-framework v2.0.1 requires ext-g ...
- SSO-CAS实现单点登录服务端
目录 CAS-SSO 一.单点登录-CAS 二.下载搭建CAS 1. 下载 CAS 5.3 2. 导入IDEA 3. 打包war 3. war包部署到Tomcat 4. 启动Tomcat,访问 htt ...
- DirectX12 3D 游戏开发与实战第四章内容(上)
Direct3D的初始化(上) 学习目标 了解Direct3D在3D编程中相对于硬件所扮演的角色 理解组件对象模型COM在Direct3D中的作用 掌握基础的图像学概念,例如2D图像的存储方式,页面翻 ...
- ActiveMQ+ZooKeeper搭建高可用集群
一.说明 实际的应用中,一般为了应用的高可用性,都会搭建集群环境去处理.部署多台应用,这样,即使一台有问题,其他热备应用可以立马顶上,继续提供服务. ActiveMQ的集群部署,基于zookeeper ...
- 第八届蓝桥杯java b组第五题
标题:取数位 求1个整数的第k位数字有很多种方法.以下的方法就是一种. 对于题目中的测试数据,应该打印5. 请仔细分析源码,并补充划线部分所缺少的代码. 注意:只提交缺失的代码,不要填写任何已有内容或 ...
- Ubuntu18.04直接安装python3.7或者升级自带的python3.6版本之后导致终端无法打开的解决办法
安装ptyhon3.7 sudo apt-get update sudo apt-get install python3.7 安装成后的目录在/usr/bin/python3.7,同时将其设置成默认 ...