This crate provides an interface from rust to the c-lightning daemon through RPC.
```rust extern crate clightningrpc; use std::env; use clightningrpc::LightningRPC;
fn main() { let sock = env::home_dir().unwrap().join(".lightning/lightning-rpc"); let mut client = LightningRPC::new(&sock);
println!("getinfo result: {:?}", client.getinfo().unwrap());
} ```
See examples directory for more usage examples. To build and run an example do cargo run --example ex_1.
API documentation for the lastest version can be found on docs.rs.
Currently implemented (this covers all non-dev commands as of c-lightning v0.6.1rc1):
getinfofeerateslistnodeslistchannelshelpgetloglistconfigslistpeerslistinvoicesinvoicedelinvoicedelexpiredinvoiceautocleaninvoicewaitanyinvoicewaitinvoicepaysendpaywaitsendpaylistpaymentsdecodepaygetrouteconnectdisconnectfundchannelclosepinglistfundswithdrawnewaddrstopBe aware that the API (of rust-clighting-rpc, but also that of c-lightning itself) is not finalized. This means that it may change from version to version and break your compile, sorry!
rustfmt src/lib.rs examples/*.rs before committingThis library is based on Andrew Poelstra's rust-jsonrpc.