mirror of
https://github.com/aljazceru/lspd.git
synced 2025-12-18 14:24:21 +01:00
105 lines
3.0 KiB
Protocol Buffer
105 lines
3.0 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
option java_multiple_files = true;
|
|
option java_package = "io.grpc.lspd.service";
|
|
option java_outer_classname = "LspdProto";
|
|
option go_package = "github.com/breez/lspd";
|
|
|
|
package lspd;
|
|
|
|
service ChannelOpener {
|
|
rpc ChannelInformation(ChannelInformationRequest)
|
|
returns (ChannelInformationReply) {}
|
|
rpc RegisterPayment (RegisterPaymentRequest) returns (RegisterPaymentReply) {}
|
|
rpc CheckChannels(Encrypted) returns (Encrypted) {}
|
|
}
|
|
|
|
message ChannelInformationRequest {
|
|
/// The identity pubkey of the Lightning node
|
|
string pubkey = 1 [ json_name = "pubkey" ];
|
|
}
|
|
|
|
message ChannelInformationReply {
|
|
/// The name of of lsp
|
|
string name = 1 [ json_name = "name" ];
|
|
|
|
/// The identity pubkey of the Lightning node
|
|
string pubkey = 2 [ json_name = "pubkey" ];
|
|
/// The network location of the lightning node, e.g. `12.34.56.78:9012` or
|
|
/// `localhost:10011`
|
|
string host = 3 [ json_name = "host" ];
|
|
|
|
/// The channel capacity in satoshis
|
|
int64 channel_capacity = 4 [ json_name = "channel_capacity" ];
|
|
/// The target number of blocks that the funding transaction should be
|
|
/// confirmed by.
|
|
int32 target_conf = 5 [ json_name = "target_conf" ];
|
|
|
|
/// The base fee charged regardless of the number of milli-satoshis sent.
|
|
int64 base_fee_msat = 6 [ json_name = "base_fee_msat" ];
|
|
/// The effective fee rate in milli-satoshis. The precision of this value goes
|
|
/// up to 6 decimal places, so 1e-6.
|
|
double fee_rate = 7 [ json_name = "fee_rate" ];
|
|
/// The required timelock delta for HTLCs forwarded over the channel.
|
|
uint32 time_lock_delta = 8 [ json_name = "time_lock_delta" ];
|
|
/// The minimum value in millisatoshi we will require for incoming HTLCs on
|
|
/// the channel.
|
|
int64 min_htlc_msat = 9 [ json_name = "min_htlc_msat" ];
|
|
|
|
int64 channel_fee_permyriad = 10 [deprecated = true];
|
|
|
|
bytes lsp_pubkey = 11;
|
|
|
|
// The channel can be closed if not used this duration in seconds.
|
|
int64 max_inactive_duration = 12 [deprecated = true];
|
|
|
|
int64 channel_minimum_fee_msat = 13 [deprecated = true];
|
|
|
|
repeated OpeningFeeParams opening_fee_params_menu = 14;
|
|
}
|
|
|
|
message OpeningFeeParams {
|
|
uint64 min_msat = 1;
|
|
uint32 proportional = 2;
|
|
string valid_until = 3;
|
|
|
|
// The channel can be closed if not used this duration in blocks.
|
|
uint32 max_idle_time = 4;
|
|
uint32 max_client_to_self_delay = 5;
|
|
string promise = 6;
|
|
}
|
|
|
|
message RegisterPaymentRequest {
|
|
bytes blob = 3;
|
|
}
|
|
message RegisterPaymentReply {}
|
|
message PaymentInformation {
|
|
bytes payment_hash = 1;
|
|
bytes payment_secret = 2;
|
|
bytes destination = 3;
|
|
int64 incoming_amount_msat = 4;
|
|
int64 outgoing_amount_msat = 5;
|
|
string tag = 6;
|
|
OpeningFeeParams opening_fee_params = 7;
|
|
}
|
|
|
|
message Encrypted {
|
|
bytes data = 1;
|
|
}
|
|
|
|
message Signed {
|
|
bytes data = 1;
|
|
bytes pubkey = 2;
|
|
bytes signature = 3;
|
|
}
|
|
|
|
message CheckChannelsRequest {
|
|
bytes encrypt_pubkey = 1;
|
|
map<string, uint64> fake_channels = 2;
|
|
map<string, uint64> waiting_close_channels = 3;
|
|
}
|
|
|
|
message CheckChannelsReply {
|
|
map<string, uint64> not_fake_channels = 1;
|
|
map<string, uint64> closed_channels = 2;
|
|
} |