An rpc client for LL Pool (Rent Channels)
Project description
pool-grpc-client
A python grpc client for Lightning Pool (Lightning Network Daemon) ⚡⚡⚡
This is a wrapper around the default grpc interface that handles setting up credentials (including macaroons.
Dependencies
- Python 3.6+
- Working LND lightning node, take note of its ip address.
- Copy your pool.macaroon and tls.cert files from
~/.pool/mainnet
to a directoy on your machine.
Installation
pip install pool-grpc-client
Basic Usage
The api mirrors the underlying lnd grpc api (http://api.lightning.community/) but methods will be in pep8 style. ie. .GetInfo()
becomes .get_info()
.
from pathlib import Path
import json
from poolgrpc.client import PoolClient
credential_path = Path("/home/skorn/.pool/mainnet/")
mac = str(credential_path.joinpath("pool.macaroon").absolute())
tls = str(credential_path.joinpath("tls.cert").absolute())
pool = PoolClient(
macaroon_filepath=mac,
cert_filepath=tls
)
pool.get_info()
pool.get_lsat_tokens()
Specifying Macaroon/Cert files
By default the client will attempt to lookup the readonly.macaron
and tls.cert
files in the mainnet directory.
However if you want to specify a different macaroon or different path you can pass in the filepath explicitly.
lnd = LNDClient(
macaroon_filepath='~/.lnd/invoice.macaroon',
cert_filepath='path/to/tls.cert'
)
Compiling Proto Files
mkvirtualenv gen_rpc_protos
# or
workon gen_rpc_protos
# then
pip install grpcio grpcio-tools googleapis-common-protos sh
cd poolgrpc
git clone --depth 1 https://github.com/googleapis/googleapis.git
cd ..
Set environment variables
export APP_DIR=$HOME/Documents/lightning/pool
export CLIENT_DIR=$HOME/Documents/lightning/pool-grpc-client
python3 rebuild_protos.py
Deploy to Test-PyPi
poetry build
twine check dist/*
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pool-grpc-client-0.1.1.tar.gz
(54.8 kB
view hashes)
Built Distribution
Close
Hashes for pool_grpc_client-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d46c48501cdff22d759f034bb64e3403e4653d62bbe10dbc90ee6a484570601c |
|
MD5 | a70b9951179725e6b39decc02b632128 |
|
BLAKE2b-256 | 37bae6b689da102cbefe1b3383224476f822ebdab32d0c0059a5716ecd31b291 |