llamapay: llamapay的ape SDK
项目描述
ape-llamapay
快速使用
您可以在ape console
或ape脚本中使用此SDK。一个简短的示例
from llamapay import Factory
factory = Factory()
factory.create_stream('banteg.eth', '1000 DAI/month', sender=accounts.load('dev'))
如果连接的网络上存在部署,它将自动被选中。
Factory
是新的池的注册和部署器。每个Pool
管理特定代币的所有流。一个Stream
存储如source
、target
、rate
等元数据,并允许对流进行操作。
您可以通过代币地址或符号找到池,这是由于ape-tokens
提供的。
factory.pools
factory.create_pool('YFI')
factory.get_pool('DAI')
您可以通过事件日志找到流,并按source
或target
进行筛选,包括它们的ENS名称,这是由于ape-ens
提供的。
pool.all_streams
pool.find_streams(source='ychad.eth')
pool.find_streams(target='wentokyo.eth')
要为您的流提供资金,您需要向池中存入资金。
pool.get_balance('ychad.eth')
# infinite approve (optional)
pool.approve(sender=dev)
# auto approves the requested amount
pool.deposit('1000 DAI', sender=dev)
# withdraw all
pool.withdraw(sender=dev)
# withdraw some
pool.withdraw(Decimal('500'), sender=dev)
代币数量可以指定为int
表示wei,Decimal
表示代币,或str
以由ape-tokens
根据其小数位数进行转换。
从Pool
实例准备流是最容易的。
stream = pool.make_stream(source=dev, target=crush, rate='1000 DAI/month')
您可以将速率指定为int
表示内部每秒1e20代币表示,或使用简单的str
格式amount symbol/duration
,如1 YFI/week
或200,000 UNI/year
。
现在您已经准备好了一个Stream
,您可以创建它。
stream.create(sender=dev)
stream.pause(sender=dev)
stream.cancel(sender=dev)
stream.replace(new_stream, sender=dev)
stream.modify(target=new_crush, sender=dev)
stream.modify(rate=stream.rate * 2, sender=dev)
# check your withdrawable balance
stream.balance
# push tokens to recipient or withdraw them if you are one (these methods are the same)
stream.send(sender=dev)
stream.withdraw(sender=dev)
依赖关系
- python3版本3.7或更高版本,python3-dev
安装
通过pip
您可以通过pip
安装最新版本
pip install llamapay
通过setuptools
您可以克隆仓库并使用setuptools
获取最新版本
git clone https://github.com/banteg/ape-llamapay.git
cd ape-llamapay
python3 setup.py install
开发
该项目处于开发阶段,应被视为测试版。有些功能可能尚未最终确定,可能会有破坏性变更。欢迎提出评论、问题、批评和拉取请求。
许可证
该项目采用Apache 2.0许可。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
本发布版本没有源代码分发文件。请参阅生成分发存档的教程。
构建分发
llamapay-0.1.0-py3-none-any.whl (13.9 kB 查看哈希值)