4个版本
0.3.0-beta.4 | 2023年6月13日 |
---|---|
0.3.0-beta.3 | 2022年11月17日 |
0.3.0-beta.2 | 2022年7月29日 |
0.3.0-beta.1 | 2022年5月23日 |
#105 in #lightning
656 每月下载量
在 3 个Crate中使用(通过 clightningrpc-plugin)
14KB
188 代码行
该Crate通过RPC提供对 核心闪电 守护进程的通用接口。
从clightningrpc 库中可以找到以下引用
请注意,API(rust-clighting-rpc的API,以及c-lightning自身的API)尚未最终确定。这意味着它可能会在不同版本之间发生变化,并可能导致您的编译失败,对此表示歉意!
该Crate通过提供具有通用接口的强类型库来解决与核心闪电的版本兼容性问题,例如
extern crate clightningrpc_common;
use serde::{Deserialize, Serialize};
use std::env;
use clightningrpc_common::client;
use clightningrpc_common::types::Response;
/// Example of type definition
#[derive(Debug, Clone, Deserialize, Serialize)]
struct GetInfoResponse {
pub id: String,
}
/// Example of type definition
#[derive(Debug, Clone, Deserialize, Serialize)]
struct GetInfoRequest {}
fn main() {
let sock = env::home_dir().unwrap().join(".lightning/lightning-rpc");
println!("Using socket {}", sock.display());
let client = client::Client::new(&sock);
let method = "getinfo";
let params = GetInfoRequest {};
match client
.send_request(method, params)
.and_then(|res: Response<GetInfoResponse>| res.into_result())
{
Ok(d) => {
println!("Ok! {:?}", d);
}
Err(e) => {
println!("Error! {}", e);
}
}
}
贡献指南
- 四个空格
- 提交前请调用
make fmt
- 如果您能,在提交PR时至少为您的顶级提交GPG签名
支持
如果您想支持此库,请考虑以下方式捐赠
- 闪电地址: [email protected]
- GitHub捐赠
致谢
此库基于Andrew Poelstra的 rust-jsonrpc。
依赖项
~0.6–1.4MB
~32K SLoC