交易对手协议参考实施

counterparty-lib的Python项目详细描述


Build Status TravisBuild Status CircleCoverage StatusLatest VersionLicenseSlack StatusDocker Pulls

说明

counterparty-libCounterparty Protocol

注意:有关counterparty-lib的命令行接口,请参见 `counterparty-cli<;https://github.com/CounterpartyXCP/counterparty-cli>;`\

安装

对于一个简单的基于Docker的对方软件栈的安装, 见this guide

手动安装

下载最新的patched Bitcoin Core并创建 bitcoin.conf具有以下选项的文件:

rpcuser=bitcoinrpc
rpcpassword=rpc
server=1
txindex=1
addrindex=1
rpctimeout=300

注意:您可以也应该替换rpc凭据。记住 在整个文档中使用更改的rpc凭据。

然后,下载并安装counterparty-lib

$ git clone https://github.com/CounterpartyXCP/counterparty-lib.git
$ cd counterparty-lib
$ sudo pip3 install --upgrade -r requirements.txt
$ sudo python3 setup.py install

后跟counterparty-cli

$ git clone https://github.com/CounterpartyXCP/counterparty-cli.git
$ cd counterparty-cli
$ sudo pip3 install --upgrade -r requirements.txt
$ sudo python3 setup.py install

关于sudo的说明:交易对手lib和交易对手服务器都可以是 由非sudoers安装。请参考外部文件 关于在没有根访问权限和其他信息的情况下使用pip的说明 与自定义安装位置相关。

然后,通过:

$ counterparty-server bootstrap
$ counterparty-server --backend-password=rpc start

基本用法

通过命令行

(需要安装counterparty-cli

  • 第一次运行服务器时,可以引导本地服务器 数据库具有:$ counterparty-server bootstrap
  • 使用$ counterparty-server start
  • 启动服务器
  • 使用以下命令检查服务器的状态: $ counterparty-client getinfo
  • 有关其他命令行参数和选项: $ counterparty-server--help$ counterparty-client--help

通过python

也可以直接使用python,而不必安装 counterparty-cli

$ python3
>>> from counterpartylib import server
>>> db = server.initialise(<options>)
>>> server.start_all(db)

配置和操作

指向配置文件、日志文件和数据库的路径 在“verbose”中启动服务器时将文件打印到屏幕上 模式:$ counterparty-server--verbose start

默认情况下,配置文件名为server.conf,并且 client.conf,位于以下目录中:

  • Linux:^{TT17}$
  • 窗口:%APPDATA%\Counterparty\

客户端和服务器日志文件命名为 counterparty.client.[testnet.]logcounterparty.server.[testnet.]log,位于以下位置 目录:

  • Linux:^{TT21}$
  • 窗口:%APPDATA%\Local\Counterparty\counterparty\Logs

交易对手api活动已登录server.[testnet.]api.log,并且 client.[testnet.]api.log

交易对手数据库文件默认命名为 counterparty.[testnet.]db,位于以下目录中:

  • Linux:^{TT26}$
  • 窗口:%APPDATA%\Roaming\Counterparty\counterparty

配置文件格式

大多数用例不需要手动配置。“后端”和 “钱包”用于访问比特币服务器rpc。

counterparty-server配置文件如下:

[Default]
backend-name = addrindex
backend-user = <user>
backend-password = <password>
rpc-host = 0.0.0.0
rpc-user = <rpcuser>
rpc-password = <rpcpassword>

force参数可以在服务器配置中使用 文件或在运行时传递以使服务器在这种情况下保持运行 失去与Internet的连接并落后于后端 数据库。这可能对非生产性交易对手服务器有用 即使在后端或 对方服务器没有互联网连接。

counterparty-client配置文件如下:

[Default]
wallet-name = bitcoincore
wallet-connect = localhost
wallet-user = <user>
wallet-password = <password>
counterparty-rpc-connect = localhost
counterparty-rpc-user = <rpcuser>
counterparty-rpc-password = <password>

开发人员注释

版本控制

  • 主要版本更改需要完全(自动)重新生成 数据库。
  • 小版本更改需要(n自动)数据库重新分析。
  • 所有协议更改在testnet上都是可追溯的。

连续积分

  • travisci设置为使用1个命令运行所有测试并生成 覆盖率报告并让python-coveralls解析并上载它。它 与--skiptestbook=all一起运行,因此它不会进行重新分析 启动文件的。
  • Circleci设置为尽可能分割测试以使其 更容易阅读错误报告。它还运行 integration_test.test_book测试,它重新分析bootstrap公司 文件夹。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Cassandra DB的javascript查询结果   java定时器任务调度   java在TLS上实现LDAP   为什么在浏览器中滚动会使java小程序闪烁?   未使用轮询器和serviceactivator提取java pubsub消息   java风暴多线程问题   java计算平均成绩   java将字符串添加到另一个类的数组列表中   文件Java路径如何转换为例如InputStream   java更改JComboBox的字体颜色   java inthttp:具有可轮询请求通道的inboundgateway   使用继承在Java中运行swing Base和扩展windows   java ivysettings。xml:添加本地maven路径   java如何将参数自定义视图传递给activity类   java延迟加载无法在Hibernate中使用一对一映射   当文件以“file:/”开头时,Java无法识别该文件   需要java正则表达式帮助,使用反斜杠   片段中的java GWT参数