Documentation
¶
Index ¶
- Constants
- Variables
- func DisableLog()
- func GetMissionControlConfig(cfg *Config) *routing.MissionControlConfig
- func RegisterRouterServer(s *grpc.Server, srv RouterServer)
- func UnmarshallKnownPubkeyHop(hop *lnrpc.Hop) (*route.Hop, error)
- func UseLogger(logger btclog.Logger)
- func ValidatePayReqExpiry(payReq *zpay32.Invoice) error
- type ChannelHistory
- func (*ChannelHistory) Descriptor() ([]byte, []int)
- func (m *ChannelHistory) GetChannelId() uint64
- func (m *ChannelHistory) GetLastFailTime() int64
- func (m *ChannelHistory) GetMinPenalizeAmtSat() int64
- func (m *ChannelHistory) GetSuccessProb() float32
- func (*ChannelHistory) ProtoMessage()
- func (m *ChannelHistory) Reset()
- func (m *ChannelHistory) String() string
- func (m *ChannelHistory) XXX_DiscardUnknown()
- func (m *ChannelHistory) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ChannelHistory) XXX_Merge(src proto.Message)
- func (m *ChannelHistory) XXX_Size() int
- func (m *ChannelHistory) XXX_Unmarshal(b []byte) error
- type ChannelUpdate
- func (*ChannelUpdate) Descriptor() ([]byte, []int)
- func (m *ChannelUpdate) GetBaseFee() uint32
- func (m *ChannelUpdate) GetChainHash() []byte
- func (m *ChannelUpdate) GetChanId() uint64
- func (m *ChannelUpdate) GetChannelFlags() uint32
- func (m *ChannelUpdate) GetExtraOpaqueData() []byte
- func (m *ChannelUpdate) GetFeeRate() uint32
- func (m *ChannelUpdate) GetHtlcMaximumMsat() uint64
- func (m *ChannelUpdate) GetHtlcMinimumMsat() uint64
- func (m *ChannelUpdate) GetMessageFlags() uint32
- func (m *ChannelUpdate) GetSignature() []byte
- func (m *ChannelUpdate) GetTimeLockDelta() uint32
- func (m *ChannelUpdate) GetTimestamp() uint32
- func (*ChannelUpdate) ProtoMessage()
- func (m *ChannelUpdate) Reset()
- func (m *ChannelUpdate) String() string
- func (m *ChannelUpdate) XXX_DiscardUnknown()
- func (m *ChannelUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ChannelUpdate) XXX_Merge(src proto.Message)
- func (m *ChannelUpdate) XXX_Size() int
- func (m *ChannelUpdate) XXX_Unmarshal(b []byte) error
- type Config
- type Failure
- func (*Failure) Descriptor() ([]byte, []int)
- func (m *Failure) GetChannelUpdate() *ChannelUpdate
- func (m *Failure) GetCltvExpiry() uint32
- func (m *Failure) GetCode() Failure_FailureCode
- func (m *Failure) GetFailureSourcePubkey() []byte
- func (m *Failure) GetFlags() uint32
- func (m *Failure) GetHtlcMsat() uint64
- func (m *Failure) GetOnionSha_256() []byte
- func (*Failure) ProtoMessage()
- func (m *Failure) Reset()
- func (m *Failure) String() string
- func (m *Failure) XXX_DiscardUnknown()
- func (m *Failure) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Failure) XXX_Merge(src proto.Message)
- func (m *Failure) XXX_Size() int
- func (m *Failure) XXX_Unmarshal(b []byte) error
- type Failure_FailureCode
- type NodeHistory
- func (*NodeHistory) Descriptor() ([]byte, []int)
- func (m *NodeHistory) GetChannels() []*ChannelHistory
- func (m *NodeHistory) GetLastFailTime() int64
- func (m *NodeHistory) GetOtherChanSuccessProb() float32
- func (m *NodeHistory) GetPubkey() []byte
- func (*NodeHistory) ProtoMessage()
- func (m *NodeHistory) Reset()
- func (m *NodeHistory) String() string
- func (m *NodeHistory) XXX_DiscardUnknown()
- func (m *NodeHistory) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *NodeHistory) XXX_Merge(src proto.Message)
- func (m *NodeHistory) XXX_Size() int
- func (m *NodeHistory) XXX_Unmarshal(b []byte) error
- type PaymentState
- type PaymentStatus
- func (*PaymentStatus) Descriptor() ([]byte, []int)
- func (m *PaymentStatus) GetPreimage() []byte
- func (m *PaymentStatus) GetRoute() *lnrpc.Route
- func (m *PaymentStatus) GetState() PaymentState
- func (*PaymentStatus) ProtoMessage()
- func (m *PaymentStatus) Reset()
- func (m *PaymentStatus) String() string
- func (m *PaymentStatus) XXX_DiscardUnknown()
- func (m *PaymentStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *PaymentStatus) XXX_Merge(src proto.Message)
- func (m *PaymentStatus) XXX_Size() int
- func (m *PaymentStatus) XXX_Unmarshal(b []byte) error
- type QueryMissionControlRequest
- func (*QueryMissionControlRequest) Descriptor() ([]byte, []int)
- func (*QueryMissionControlRequest) ProtoMessage()
- func (m *QueryMissionControlRequest) Reset()
- func (m *QueryMissionControlRequest) String() string
- func (m *QueryMissionControlRequest) XXX_DiscardUnknown()
- func (m *QueryMissionControlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *QueryMissionControlRequest) XXX_Merge(src proto.Message)
- func (m *QueryMissionControlRequest) XXX_Size() int
- func (m *QueryMissionControlRequest) XXX_Unmarshal(b []byte) error
- type QueryMissionControlResponse
- func (*QueryMissionControlResponse) Descriptor() ([]byte, []int)
- func (m *QueryMissionControlResponse) GetNodes() []*NodeHistory
- func (*QueryMissionControlResponse) ProtoMessage()
- func (m *QueryMissionControlResponse) Reset()
- func (m *QueryMissionControlResponse) String() string
- func (m *QueryMissionControlResponse) XXX_DiscardUnknown()
- func (m *QueryMissionControlResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *QueryMissionControlResponse) XXX_Merge(src proto.Message)
- func (m *QueryMissionControlResponse) XXX_Size() int
- func (m *QueryMissionControlResponse) XXX_Unmarshal(b []byte) error
- type ResetMissionControlRequest
- func (*ResetMissionControlRequest) Descriptor() ([]byte, []int)
- func (*ResetMissionControlRequest) ProtoMessage()
- func (m *ResetMissionControlRequest) Reset()
- func (m *ResetMissionControlRequest) String() string
- func (m *ResetMissionControlRequest) XXX_DiscardUnknown()
- func (m *ResetMissionControlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ResetMissionControlRequest) XXX_Merge(src proto.Message)
- func (m *ResetMissionControlRequest) XXX_Size() int
- func (m *ResetMissionControlRequest) XXX_Unmarshal(b []byte) error
- type ResetMissionControlResponse
- func (*ResetMissionControlResponse) Descriptor() ([]byte, []int)
- func (*ResetMissionControlResponse) ProtoMessage()
- func (m *ResetMissionControlResponse) Reset()
- func (m *ResetMissionControlResponse) String() string
- func (m *ResetMissionControlResponse) XXX_DiscardUnknown()
- func (m *ResetMissionControlResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ResetMissionControlResponse) XXX_Merge(src proto.Message)
- func (m *ResetMissionControlResponse) XXX_Size() int
- func (m *ResetMissionControlResponse) XXX_Unmarshal(b []byte) error
- type RouteFeeRequest
- func (*RouteFeeRequest) Descriptor() ([]byte, []int)
- func (m *RouteFeeRequest) GetAmtSat() int64
- func (m *RouteFeeRequest) GetDest() []byte
- func (*RouteFeeRequest) ProtoMessage()
- func (m *RouteFeeRequest) Reset()
- func (m *RouteFeeRequest) String() string
- func (m *RouteFeeRequest) XXX_DiscardUnknown()
- func (m *RouteFeeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *RouteFeeRequest) XXX_Merge(src proto.Message)
- func (m *RouteFeeRequest) XXX_Size() int
- func (m *RouteFeeRequest) XXX_Unmarshal(b []byte) error
- type RouteFeeResponse
- func (*RouteFeeResponse) Descriptor() ([]byte, []int)
- func (m *RouteFeeResponse) GetRoutingFeeMsat() int64
- func (m *RouteFeeResponse) GetTimeLockDelay() int64
- func (*RouteFeeResponse) ProtoMessage()
- func (m *RouteFeeResponse) Reset()
- func (m *RouteFeeResponse) String() string
- func (m *RouteFeeResponse) XXX_DiscardUnknown()
- func (m *RouteFeeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *RouteFeeResponse) XXX_Merge(src proto.Message)
- func (m *RouteFeeResponse) XXX_Size() int
- func (m *RouteFeeResponse) XXX_Unmarshal(b []byte) error
- type RouterBackend
- func (r *RouterBackend) MarshallRoute(route *route.Route) *lnrpc.Route
- func (r *RouterBackend) QueryRoutes(ctx context.Context, in *lnrpc.QueryRoutesRequest) (*lnrpc.QueryRoutesResponse, error)
- func (r *RouterBackend) UnmarshallHop(hop *lnrpc.Hop, prevNodePubKey [33]byte) (*route.Hop, error)
- func (r *RouterBackend) UnmarshallHopByChannelLookup(hop *lnrpc.Hop, prevPubKeyBytes [33]byte) (*route.Hop, error)
- func (r *RouterBackend) UnmarshallRoute(rpcroute *lnrpc.Route) (*route.Route, error)
- type RouterClient
- type RouterServer
- type Router_SendPaymentClient
- type Router_SendPaymentServer
- type Router_TrackPaymentClient
- type Router_TrackPaymentServer
- type SendPaymentRequest
- func (*SendPaymentRequest) Descriptor() ([]byte, []int)
- func (m *SendPaymentRequest) GetAmt() int64
- func (m *SendPaymentRequest) GetCltvLimit() int32
- func (m *SendPaymentRequest) GetDest() []byte
- func (m *SendPaymentRequest) GetFeeLimitSat() int64
- func (m *SendPaymentRequest) GetFinalCltvDelta() int32
- func (m *SendPaymentRequest) GetOutgoingChanId() uint64
- func (m *SendPaymentRequest) GetPaymentHash() []byte
- func (m *SendPaymentRequest) GetPaymentRequest() string
- func (m *SendPaymentRequest) GetTimeoutSeconds() int32
- func (*SendPaymentRequest) ProtoMessage()
- func (m *SendPaymentRequest) Reset()
- func (m *SendPaymentRequest) String() string
- func (m *SendPaymentRequest) XXX_DiscardUnknown()
- func (m *SendPaymentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *SendPaymentRequest) XXX_Merge(src proto.Message)
- func (m *SendPaymentRequest) XXX_Size() int
- func (m *SendPaymentRequest) XXX_Unmarshal(b []byte) error
- type SendToRouteRequest
- func (*SendToRouteRequest) Descriptor() ([]byte, []int)
- func (m *SendToRouteRequest) GetPaymentHash() []byte
- func (m *SendToRouteRequest) GetRoute() *lnrpc.Route
- func (*SendToRouteRequest) ProtoMessage()
- func (m *SendToRouteRequest) Reset()
- func (m *SendToRouteRequest) String() string
- func (m *SendToRouteRequest) XXX_DiscardUnknown()
- func (m *SendToRouteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *SendToRouteRequest) XXX_Merge(src proto.Message)
- func (m *SendToRouteRequest) XXX_Size() int
- func (m *SendToRouteRequest) XXX_Unmarshal(b []byte) error
- type SendToRouteResponse
- func (*SendToRouteResponse) Descriptor() ([]byte, []int)
- func (m *SendToRouteResponse) GetFailure() *Failure
- func (m *SendToRouteResponse) GetPreimage() []byte
- func (*SendToRouteResponse) ProtoMessage()
- func (m *SendToRouteResponse) Reset()
- func (m *SendToRouteResponse) String() string
- func (m *SendToRouteResponse) XXX_DiscardUnknown()
- func (m *SendToRouteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *SendToRouteResponse) XXX_Merge(src proto.Message)
- func (m *SendToRouteResponse) XXX_Size() int
- func (m *SendToRouteResponse) XXX_Unmarshal(b []byte) error
- type TrackPaymentRequest
- func (*TrackPaymentRequest) Descriptor() ([]byte, []int)
- func (m *TrackPaymentRequest) GetPaymentHash() []byte
- func (*TrackPaymentRequest) ProtoMessage()
- func (m *TrackPaymentRequest) Reset()
- func (m *TrackPaymentRequest) String() string
- func (m *TrackPaymentRequest) XXX_DiscardUnknown()
- func (m *TrackPaymentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *TrackPaymentRequest) XXX_Merge(src proto.Message)
- func (m *TrackPaymentRequest) XXX_Size() int
- func (m *TrackPaymentRequest) XXX_Unmarshal(b []byte) error
Constants ¶
const Subsystem = "RRPC"
Subsystem defines the logging code for this subsystem.
Variables ¶
var Failure_FailureCode_name = map[int32]string{
0: "RESERVED",
1: "UNKNOWN_PAYMENT_HASH",
2: "INCORRECT_PAYMENT_AMOUNT",
3: "FINAL_INCORRECT_CLTV_EXPIRY",
4: "FINAL_INCORRECT_HTLC_AMOUNT",
5: "FINAL_EXPIRY_TOO_SOON",
6: "INVALID_REALM",
7: "EXPIRY_TOO_SOON",
8: "INVALID_ONION_VERSION",
9: "INVALID_ONION_HMAC",
10: "INVALID_ONION_KEY",
11: "AMOUNT_BELOW_MINIMUM",
12: "FEE_INSUFFICIENT",
13: "INCORRECT_CLTV_EXPIRY",
14: "CHANNEL_DISABLED",
15: "TEMPORARY_CHANNEL_FAILURE",
16: "REQUIRED_NODE_FEATURE_MISSING",
17: "REQUIRED_CHANNEL_FEATURE_MISSING",
18: "UNKNOWN_NEXT_PEER",
19: "TEMPORARY_NODE_FAILURE",
20: "PERMANENT_NODE_FAILURE",
21: "PERMANENT_CHANNEL_FAILURE",
}
var Failure_FailureCode_value = map[string]int32{
"RESERVED": 0,
"UNKNOWN_PAYMENT_HASH": 1,
"INCORRECT_PAYMENT_AMOUNT": 2,
"FINAL_INCORRECT_CLTV_EXPIRY": 3,
"FINAL_INCORRECT_HTLC_AMOUNT": 4,
"FINAL_EXPIRY_TOO_SOON": 5,
"INVALID_REALM": 6,
"EXPIRY_TOO_SOON": 7,
"INVALID_ONION_VERSION": 8,
"INVALID_ONION_HMAC": 9,
"INVALID_ONION_KEY": 10,
"AMOUNT_BELOW_MINIMUM": 11,
"FEE_INSUFFICIENT": 12,
"INCORRECT_CLTV_EXPIRY": 13,
"CHANNEL_DISABLED": 14,
"TEMPORARY_CHANNEL_FAILURE": 15,
"REQUIRED_NODE_FEATURE_MISSING": 16,
"REQUIRED_CHANNEL_FEATURE_MISSING": 17,
"UNKNOWN_NEXT_PEER": 18,
"TEMPORARY_NODE_FAILURE": 19,
"PERMANENT_NODE_FAILURE": 20,
"PERMANENT_CHANNEL_FAILURE": 21,
}
var PaymentState_name = map[int32]string{
0: "IN_FLIGHT",
1: "SUCCEEDED",
2: "FAILED_TIMEOUT",
3: "FAILED_NO_ROUTE",
}
var PaymentState_value = map[string]int32{
"IN_FLIGHT": 0,
"SUCCEEDED": 1,
"FAILED_TIMEOUT": 2,
"FAILED_NO_ROUTE": 3,
}
Functions ¶
func DisableLog ¶
func DisableLog()
DisableLog disables all library log output. Logging output is disabled by default until UseLogger is called.
func GetMissionControlConfig ¶
func GetMissionControlConfig(cfg *Config) *routing.MissionControlConfig
GetMissionControlConfig returns the mission control config based on this sub server config.
func RegisterRouterServer ¶
func RegisterRouterServer(s *grpc.Server, srv RouterServer)
func UnmarshallKnownPubkeyHop ¶
UnmarshallKnownPubkeyHop unmarshalls an rpc hop that contains the hop pubkey. The channel graph doesn't need to be queried because all information required for sending the payment is present.
func UseLogger ¶
UseLogger uses a specified Logger to output package logging info. This should be used in preference to SetLogWriter if the caller is also using btclog.
func ValidatePayReqExpiry ¶
ValidatePayReqExpiry checks if the passed payment request has expired. In the case it has expired, an error will be returned.
Types ¶
type ChannelHistory ¶
type ChannelHistory struct { /// Short channel id ChannelId uint64 `protobuf:"varint,1,opt,name=channel_id,proto3" json:"channel_id,omitempty"` /// Time stamp of last failure. LastFailTime int64 `protobuf:"varint,2,opt,name=last_fail_time,proto3" json:"last_fail_time,omitempty"` /// Minimum penalization amount. MinPenalizeAmtSat int64 `protobuf:"varint,3,opt,name=min_penalize_amt_sat,proto3" json:"min_penalize_amt_sat,omitempty"` /// Estimation of success probability for this channel. SuccessProb float32 `protobuf:"fixed32,4,opt,name=success_prob,proto3" json:"success_prob,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
/ NodeHistory contains the mission control state for a particular channel.
func (*ChannelHistory) Descriptor ¶
func (*ChannelHistory) Descriptor() ([]byte, []int)
func (*ChannelHistory) GetChannelId ¶
func (m *ChannelHistory) GetChannelId() uint64
func (*ChannelHistory) GetLastFailTime ¶
func (m *ChannelHistory) GetLastFailTime() int64
func (*ChannelHistory) GetMinPenalizeAmtSat ¶
func (m *ChannelHistory) GetMinPenalizeAmtSat() int64
func (*ChannelHistory) GetSuccessProb ¶
func (m *ChannelHistory) GetSuccessProb() float32
func (*ChannelHistory) ProtoMessage ¶
func (*ChannelHistory) ProtoMessage()
func (*ChannelHistory) Reset ¶
func (m *ChannelHistory) Reset()
func (*ChannelHistory) String ¶
func (m *ChannelHistory) String() string
func (*ChannelHistory) XXX_DiscardUnknown ¶
func (m *ChannelHistory) XXX_DiscardUnknown()
func (*ChannelHistory) XXX_Marshal ¶
func (m *ChannelHistory) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ChannelHistory) XXX_Merge ¶
func (m *ChannelHistory) XXX_Merge(src proto.Message)
func (*ChannelHistory) XXX_Size ¶
func (m *ChannelHistory) XXX_Size() int
func (*ChannelHistory) XXX_Unmarshal ¶
func (m *ChannelHistory) XXX_Unmarshal(b []byte) error
type ChannelUpdate ¶
type ChannelUpdate struct { //* //The signature that validates the announced data and proves the ownership //of node id. Signature []byte `protobuf:"bytes,1,opt,name=signature,proto3" json:"signature,omitempty"` //* //The target chain that this channel was opened within. This value //should be the genesis hash of the target chain. Along with the short //channel ID, this uniquely identifies the channel globally in a //blockchain. ChainHash []byte `protobuf:"bytes,2,opt,name=chain_hash,json=chainHash,proto3" json:"chain_hash,omitempty"` //* //The unique description of the funding transaction. ChanId uint64 `protobuf:"varint,3,opt,name=chan_id,json=chanId,proto3" json:"chan_id,omitempty"` //* //A timestamp that allows ordering in the case of multiple announcements. //We should ignore the message if timestamp is not greater than the //last-received. Timestamp uint32 `protobuf:"varint,4,opt,name=timestamp,proto3" json:"timestamp,omitempty"` //* //The bitfield that describes whether optional fields are present in this //update. Currently, the least-significant bit must be set to 1 if the //optional field MaxHtlc is present. MessageFlags uint32 `protobuf:"varint,10,opt,name=message_flags,json=messageFlags,proto3" json:"message_flags,omitempty"` //* //The bitfield that describes additional meta-data concerning how the //update is to be interpreted. Currently, the least-significant bit must be //set to 0 if the creating node corresponds to the first node in the //previously sent channel announcement and 1 otherwise. If the second bit //is set, then the channel is set to be disabled. ChannelFlags uint32 `protobuf:"varint,5,opt,name=channel_flags,json=channelFlags,proto3" json:"channel_flags,omitempty"` //* //The minimum number of blocks this node requires to be added to the expiry //of HTLCs. This is a security parameter determined by the node operator. //This value represents the required gap between the time locks of the //incoming and outgoing HTLC's set to this node. TimeLockDelta uint32 `protobuf:"varint,6,opt,name=time_lock_delta,json=timeLockDelta,proto3" json:"time_lock_delta,omitempty"` //* //The minimum HTLC value which will be accepted. HtlcMinimumMsat uint64 `protobuf:"varint,7,opt,name=htlc_minimum_msat,json=htlcMinimumMsat,proto3" json:"htlc_minimum_msat,omitempty"` //* //The base fee that must be used for incoming HTLC's to this particular //channel. This value will be tacked onto the required for a payment //independent of the size of the payment. BaseFee uint32 `protobuf:"varint,8,opt,name=base_fee,json=baseFee,proto3" json:"base_fee,omitempty"` //* //The fee rate that will be charged per millionth of a satoshi. FeeRate uint32 `protobuf:"varint,9,opt,name=fee_rate,json=feeRate,proto3" json:"fee_rate,omitempty"` //* //The maximum HTLC value which will be accepted. HtlcMaximumMsat uint64 `protobuf:"varint,11,opt,name=htlc_maximum_msat,json=htlcMaximumMsat,proto3" json:"htlc_maximum_msat,omitempty"` //* //The set of data that was appended to this message, some of which we may //not actually know how to iterate or parse. By holding onto this data, we //ensure that we're able to properly validate the set of signatures that //cover these new fields, and ensure we're able to make upgrades to the //network in a forwards compatible manner. ExtraOpaqueData []byte `protobuf:"bytes,12,opt,name=extra_opaque_data,json=extraOpaqueData,proto3" json:"extra_opaque_data,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*ChannelUpdate) Descriptor ¶
func (*ChannelUpdate) Descriptor() ([]byte, []int)
func (*ChannelUpdate) GetBaseFee ¶
func (m *ChannelUpdate) GetBaseFee() uint32
func (*ChannelUpdate) GetChainHash ¶
func (m *ChannelUpdate) GetChainHash() []byte
func (*ChannelUpdate) GetChanId ¶
func (m *ChannelUpdate) GetChanId() uint64
func (*ChannelUpdate) GetChannelFlags ¶
func (m *ChannelUpdate) GetChannelFlags() uint32
func (*ChannelUpdate) GetExtraOpaqueData ¶
func (m *ChannelUpdate) GetExtraOpaqueData() []byte
func (*ChannelUpdate) GetFeeRate ¶
func (m *ChannelUpdate) GetFeeRate() uint32
func (*ChannelUpdate) GetHtlcMaximumMsat ¶
func (m *ChannelUpdate) GetHtlcMaximumMsat() uint64
func (*ChannelUpdate) GetHtlcMinimumMsat ¶
func (m *ChannelUpdate) GetHtlcMinimumMsat() uint64
func (*ChannelUpdate) GetMessageFlags ¶
func (m *ChannelUpdate) GetMessageFlags() uint32
func (*ChannelUpdate) GetSignature ¶
func (m *ChannelUpdate) GetSignature() []byte
func (*ChannelUpdate) GetTimeLockDelta ¶
func (m *ChannelUpdate) GetTimeLockDelta() uint32
func (*ChannelUpdate) GetTimestamp ¶
func (m *ChannelUpdate) GetTimestamp() uint32
func (*ChannelUpdate) ProtoMessage ¶
func (*ChannelUpdate) ProtoMessage()
func (*ChannelUpdate) Reset ¶
func (m *ChannelUpdate) Reset()
func (*ChannelUpdate) String ¶
func (m *ChannelUpdate) String() string
func (*ChannelUpdate) XXX_DiscardUnknown ¶
func (m *ChannelUpdate) XXX_DiscardUnknown()
func (*ChannelUpdate) XXX_Marshal ¶
func (m *ChannelUpdate) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ChannelUpdate) XXX_Merge ¶
func (m *ChannelUpdate) XXX_Merge(src proto.Message)
func (*ChannelUpdate) XXX_Size ¶
func (m *ChannelUpdate) XXX_Size() int
func (*ChannelUpdate) XXX_Unmarshal ¶
func (m *ChannelUpdate) XXX_Unmarshal(b []byte) error
type Config ¶
type Config struct{}
Config is the default config struct for the package. When the build tag isn't specified, then we output a blank config.
func DefaultConfig ¶
func DefaultConfig() *Config
DefaultConfig defines the config defaults. Without the sub server enabled, there are no defaults to set.
type Failure ¶
type Failure struct { /// Failure code as defined in the Lightning spec Code Failure_FailureCode `protobuf:"varint,1,opt,name=code,proto3,enum=routerrpc.Failure_FailureCode" json:"code,omitempty"` //* //The node pubkey of the intermediate or final node that generated the failure //message. FailureSourcePubkey []byte `protobuf:"bytes,2,opt,name=failure_source_pubkey,json=failureSourcePubkey,proto3" json:"failure_source_pubkey,omitempty"` /// An optional channel update message. ChannelUpdate *ChannelUpdate `protobuf:"bytes,3,opt,name=channel_update,json=channelUpdate,proto3" json:"channel_update,omitempty"` /// A failure type-dependent htlc value. HtlcMsat uint64 `protobuf:"varint,4,opt,name=htlc_msat,json=htlcMsat,proto3" json:"htlc_msat,omitempty"` /// The sha256 sum of the onion payload. OnionSha_256 []byte `protobuf:"bytes,5,opt,name=onion_sha_256,json=onionSha256,proto3" json:"onion_sha_256,omitempty"` /// A failure type-dependent cltv expiry value. CltvExpiry uint32 `protobuf:"varint,6,opt,name=cltv_expiry,json=cltvExpiry,proto3" json:"cltv_expiry,omitempty"` /// A failure type-dependent flags value. Flags uint32 `protobuf:"varint,7,opt,name=flags,proto3" json:"flags,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Failure) Descriptor ¶
func (*Failure) GetChannelUpdate ¶
func (m *Failure) GetChannelUpdate() *ChannelUpdate
func (*Failure) GetCltvExpiry ¶
func (*Failure) GetCode ¶
func (m *Failure) GetCode() Failure_FailureCode
func (*Failure) GetFailureSourcePubkey ¶
func (*Failure) GetHtlcMsat ¶
func (*Failure) GetOnionSha_256 ¶
func (*Failure) ProtoMessage ¶
func (*Failure) ProtoMessage()
func (*Failure) XXX_DiscardUnknown ¶
func (m *Failure) XXX_DiscardUnknown()
func (*Failure) XXX_Marshal ¶
func (*Failure) XXX_Unmarshal ¶
type Failure_FailureCode ¶
type Failure_FailureCode int32
const ( //* //The numbers assigned in this enumeration match the failure codes as //defined in BOLT #4. Because protobuf 3 requires enums to start with 0, //a RESERVED value is added. Failure_RESERVED Failure_FailureCode = 0 Failure_UNKNOWN_PAYMENT_HASH Failure_FailureCode = 1 Failure_INCORRECT_PAYMENT_AMOUNT Failure_FailureCode = 2 Failure_FINAL_INCORRECT_CLTV_EXPIRY Failure_FailureCode = 3 Failure_FINAL_INCORRECT_HTLC_AMOUNT Failure_FailureCode = 4 Failure_FINAL_EXPIRY_TOO_SOON Failure_FailureCode = 5 Failure_INVALID_REALM Failure_FailureCode = 6 Failure_EXPIRY_TOO_SOON Failure_FailureCode = 7 Failure_INVALID_ONION_VERSION Failure_FailureCode = 8 Failure_INVALID_ONION_HMAC Failure_FailureCode = 9 Failure_INVALID_ONION_KEY Failure_FailureCode = 10 Failure_AMOUNT_BELOW_MINIMUM Failure_FailureCode = 11 Failure_FEE_INSUFFICIENT Failure_FailureCode = 12 Failure_INCORRECT_CLTV_EXPIRY Failure_FailureCode = 13 Failure_CHANNEL_DISABLED Failure_FailureCode = 14 Failure_TEMPORARY_CHANNEL_FAILURE Failure_FailureCode = 15 Failure_REQUIRED_NODE_FEATURE_MISSING Failure_FailureCode = 16 Failure_REQUIRED_CHANNEL_FEATURE_MISSING Failure_FailureCode = 17 Failure_UNKNOWN_NEXT_PEER Failure_FailureCode = 18 Failure_TEMPORARY_NODE_FAILURE Failure_FailureCode = 19 Failure_PERMANENT_NODE_FAILURE Failure_FailureCode = 20 Failure_PERMANENT_CHANNEL_FAILURE Failure_FailureCode = 21 )
func (Failure_FailureCode) EnumDescriptor ¶
func (Failure_FailureCode) EnumDescriptor() ([]byte, []int)
func (Failure_FailureCode) String ¶
func (x Failure_FailureCode) String() string
type NodeHistory ¶
type NodeHistory struct { /// Node pubkey Pubkey []byte `protobuf:"bytes,1,opt,name=pubkey,proto3" json:"pubkey,omitempty"` /// Time stamp of last failure. Set to zero if no failure happened yet. LastFailTime int64 `protobuf:"varint,2,opt,name=last_fail_time,proto3" json:"last_fail_time,omitempty"` /// Estimation of success probability for channels not in the channel array. OtherChanSuccessProb float32 `protobuf:"fixed32,3,opt,name=other_chan_success_prob,proto3" json:"other_chan_success_prob,omitempty"` /// Historical information of particular channels. Channels []*ChannelHistory `protobuf:"bytes,4,rep,name=channels,proto3" json:"channels,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
/ NodeHistory contains the mission control state for a particular node.
func (*NodeHistory) Descriptor ¶
func (*NodeHistory) Descriptor() ([]byte, []int)
func (*NodeHistory) GetChannels ¶
func (m *NodeHistory) GetChannels() []*ChannelHistory
func (*NodeHistory) GetLastFailTime ¶
func (m *NodeHistory) GetLastFailTime() int64
func (*NodeHistory) GetOtherChanSuccessProb ¶
func (m *NodeHistory) GetOtherChanSuccessProb() float32
func (*NodeHistory) GetPubkey ¶
func (m *NodeHistory) GetPubkey() []byte
func (*NodeHistory) ProtoMessage ¶
func (*NodeHistory) ProtoMessage()
func (*NodeHistory) Reset ¶
func (m *NodeHistory) Reset()
func (*NodeHistory) String ¶
func (m *NodeHistory) String() string
func (*NodeHistory) XXX_DiscardUnknown ¶
func (m *NodeHistory) XXX_DiscardUnknown()
func (*NodeHistory) XXX_Marshal ¶
func (m *NodeHistory) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*NodeHistory) XXX_Merge ¶
func (m *NodeHistory) XXX_Merge(src proto.Message)
func (*NodeHistory) XXX_Size ¶
func (m *NodeHistory) XXX_Size() int
func (*NodeHistory) XXX_Unmarshal ¶
func (m *NodeHistory) XXX_Unmarshal(b []byte) error
type PaymentState ¶
type PaymentState int32
const ( //* //Payment is still in flight. PaymentState_IN_FLIGHT PaymentState = 0 //* //Payment completed successfully. PaymentState_SUCCEEDED PaymentState = 1 //* //There are more routes to try, but the payment timeout was exceeded. PaymentState_FAILED_TIMEOUT PaymentState = 2 //* //All possible routes were tried and failed permanently. Or were no //routes to the destination at all. PaymentState_FAILED_NO_ROUTE PaymentState = 3 )
func (PaymentState) EnumDescriptor ¶
func (PaymentState) EnumDescriptor() ([]byte, []int)
func (PaymentState) String ¶
func (x PaymentState) String() string
type PaymentStatus ¶
type PaymentStatus struct { /// Current state the payment is in. State PaymentState `protobuf:"varint,1,opt,name=state,proto3,enum=routerrpc.PaymentState" json:"state,omitempty"` //* //The pre-image of the payment when state is SUCCEEDED. Preimage []byte `protobuf:"bytes,2,opt,name=preimage,proto3" json:"preimage,omitempty"` //* //The taken route when state is SUCCEEDED. Route *lnrpc.Route `protobuf:"bytes,3,opt,name=route,proto3" json:"route,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*PaymentStatus) Descriptor ¶
func (*PaymentStatus) Descriptor() ([]byte, []int)
func (*PaymentStatus) GetPreimage ¶
func (m *PaymentStatus) GetPreimage() []byte
func (*PaymentStatus) GetRoute ¶
func (m *PaymentStatus) GetRoute() *lnrpc.Route
func (*PaymentStatus) GetState ¶
func (m *PaymentStatus) GetState() PaymentState
func (*PaymentStatus) ProtoMessage ¶
func (*PaymentStatus) ProtoMessage()
func (*PaymentStatus) Reset ¶
func (m *PaymentStatus) Reset()
func (*PaymentStatus) String ¶
func (m *PaymentStatus) String() string
func (*PaymentStatus) XXX_DiscardUnknown ¶
func (m *PaymentStatus) XXX_DiscardUnknown()
func (*PaymentStatus) XXX_Marshal ¶
func (m *PaymentStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*PaymentStatus) XXX_Merge ¶
func (m *PaymentStatus) XXX_Merge(src proto.Message)
func (*PaymentStatus) XXX_Size ¶
func (m *PaymentStatus) XXX_Size() int
func (*PaymentStatus) XXX_Unmarshal ¶
func (m *PaymentStatus) XXX_Unmarshal(b []byte) error
type QueryMissionControlRequest ¶
type QueryMissionControlRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*QueryMissionControlRequest) Descriptor ¶
func (*QueryMissionControlRequest) Descriptor() ([]byte, []int)
func (*QueryMissionControlRequest) ProtoMessage ¶
func (*QueryMissionControlRequest) ProtoMessage()
func (*QueryMissionControlRequest) Reset ¶
func (m *QueryMissionControlRequest) Reset()
func (*QueryMissionControlRequest) String ¶
func (m *QueryMissionControlRequest) String() string
func (*QueryMissionControlRequest) XXX_DiscardUnknown ¶
func (m *QueryMissionControlRequest) XXX_DiscardUnknown()
func (*QueryMissionControlRequest) XXX_Marshal ¶
func (m *QueryMissionControlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*QueryMissionControlRequest) XXX_Merge ¶
func (m *QueryMissionControlRequest) XXX_Merge(src proto.Message)
func (*QueryMissionControlRequest) XXX_Size ¶
func (m *QueryMissionControlRequest) XXX_Size() int
func (*QueryMissionControlRequest) XXX_Unmarshal ¶
func (m *QueryMissionControlRequest) XXX_Unmarshal(b []byte) error
type QueryMissionControlResponse ¶
type QueryMissionControlResponse struct { Nodes []*NodeHistory `protobuf:"bytes,1,rep,name=nodes,proto3" json:"nodes,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
/ QueryMissionControlResponse contains mission control state per node.
func (*QueryMissionControlResponse) Descriptor ¶
func (*QueryMissionControlResponse) Descriptor() ([]byte, []int)
func (*QueryMissionControlResponse) GetNodes ¶
func (m *QueryMissionControlResponse) GetNodes() []*NodeHistory
func (*QueryMissionControlResponse) ProtoMessage ¶
func (*QueryMissionControlResponse) ProtoMessage()
func (*QueryMissionControlResponse) Reset ¶
func (m *QueryMissionControlResponse) Reset()
func (*QueryMissionControlResponse) String ¶
func (m *QueryMissionControlResponse) String() string
func (*QueryMissionControlResponse) XXX_DiscardUnknown ¶
func (m *QueryMissionControlResponse) XXX_DiscardUnknown()
func (*QueryMissionControlResponse) XXX_Marshal ¶
func (m *QueryMissionControlResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*QueryMissionControlResponse) XXX_Merge ¶
func (m *QueryMissionControlResponse) XXX_Merge(src proto.Message)
func (*QueryMissionControlResponse) XXX_Size ¶
func (m *QueryMissionControlResponse) XXX_Size() int
func (*QueryMissionControlResponse) XXX_Unmarshal ¶
func (m *QueryMissionControlResponse) XXX_Unmarshal(b []byte) error
type ResetMissionControlRequest ¶
type ResetMissionControlRequest struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*ResetMissionControlRequest) Descriptor ¶
func (*ResetMissionControlRequest) Descriptor() ([]byte, []int)
func (*ResetMissionControlRequest) ProtoMessage ¶
func (*ResetMissionControlRequest) ProtoMessage()
func (*ResetMissionControlRequest) Reset ¶
func (m *ResetMissionControlRequest) Reset()
func (*ResetMissionControlRequest) String ¶
func (m *ResetMissionControlRequest) String() string
func (*ResetMissionControlRequest) XXX_DiscardUnknown ¶
func (m *ResetMissionControlRequest) XXX_DiscardUnknown()
func (*ResetMissionControlRequest) XXX_Marshal ¶
func (m *ResetMissionControlRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ResetMissionControlRequest) XXX_Merge ¶
func (m *ResetMissionControlRequest) XXX_Merge(src proto.Message)
func (*ResetMissionControlRequest) XXX_Size ¶
func (m *ResetMissionControlRequest) XXX_Size() int
func (*ResetMissionControlRequest) XXX_Unmarshal ¶
func (m *ResetMissionControlRequest) XXX_Unmarshal(b []byte) error
type ResetMissionControlResponse ¶
type ResetMissionControlResponse struct { XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*ResetMissionControlResponse) Descriptor ¶
func (*ResetMissionControlResponse) Descriptor() ([]byte, []int)
func (*ResetMissionControlResponse) ProtoMessage ¶
func (*ResetMissionControlResponse) ProtoMessage()
func (*ResetMissionControlResponse) Reset ¶
func (m *ResetMissionControlResponse) Reset()
func (*ResetMissionControlResponse) String ¶
func (m *ResetMissionControlResponse) String() string
func (*ResetMissionControlResponse) XXX_DiscardUnknown ¶
func (m *ResetMissionControlResponse) XXX_DiscardUnknown()
func (*ResetMissionControlResponse) XXX_Marshal ¶
func (m *ResetMissionControlResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ResetMissionControlResponse) XXX_Merge ¶
func (m *ResetMissionControlResponse) XXX_Merge(src proto.Message)
func (*ResetMissionControlResponse) XXX_Size ¶
func (m *ResetMissionControlResponse) XXX_Size() int
func (*ResetMissionControlResponse) XXX_Unmarshal ¶
func (m *ResetMissionControlResponse) XXX_Unmarshal(b []byte) error
type RouteFeeRequest ¶
type RouteFeeRequest struct { //* //The destination once wishes to obtain a routing fee quote to. Dest []byte `protobuf:"bytes,1,opt,name=dest,proto3" json:"dest,omitempty"` //* //The amount one wishes to send to the target destination. AmtSat int64 `protobuf:"varint,2,opt,name=amt_sat,json=amtSat,proto3" json:"amt_sat,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*RouteFeeRequest) Descriptor ¶
func (*RouteFeeRequest) Descriptor() ([]byte, []int)
func (*RouteFeeRequest) GetAmtSat ¶
func (m *RouteFeeRequest) GetAmtSat() int64
func (*RouteFeeRequest) GetDest ¶
func (m *RouteFeeRequest) GetDest() []byte
func (*RouteFeeRequest) ProtoMessage ¶
func (*RouteFeeRequest) ProtoMessage()
func (*RouteFeeRequest) Reset ¶
func (m *RouteFeeRequest) Reset()
func (*RouteFeeRequest) String ¶
func (m *RouteFeeRequest) String() string
func (*RouteFeeRequest) XXX_DiscardUnknown ¶
func (m *RouteFeeRequest) XXX_DiscardUnknown()
func (*RouteFeeRequest) XXX_Marshal ¶
func (m *RouteFeeRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*RouteFeeRequest) XXX_Merge ¶
func (m *RouteFeeRequest) XXX_Merge(src proto.Message)
func (*RouteFeeRequest) XXX_Size ¶
func (m *RouteFeeRequest) XXX_Size() int
func (*RouteFeeRequest) XXX_Unmarshal ¶
func (m *RouteFeeRequest) XXX_Unmarshal(b []byte) error
type RouteFeeResponse ¶
type RouteFeeResponse struct { //* //A lower bound of the estimated fee to the target destination within the //network, expressed in milli-satoshis. RoutingFeeMsat int64 `protobuf:"varint,1,opt,name=routing_fee_msat,json=routingFeeMsat,proto3" json:"routing_fee_msat,omitempty"` //* //An estimate of the worst case time delay that can occur. Note that callers //will still need to factor in the final CLTV delta of the last hop into this //value. TimeLockDelay int64 `protobuf:"varint,2,opt,name=time_lock_delay,json=timeLockDelay,proto3" json:"time_lock_delay,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*RouteFeeResponse) Descriptor ¶
func (*RouteFeeResponse) Descriptor() ([]byte, []int)
func (*RouteFeeResponse) GetRoutingFeeMsat ¶
func (m *RouteFeeResponse) GetRoutingFeeMsat() int64
func (*RouteFeeResponse) GetTimeLockDelay ¶
func (m *RouteFeeResponse) GetTimeLockDelay() int64
func (*RouteFeeResponse) ProtoMessage ¶
func (*RouteFeeResponse) ProtoMessage()
func (*RouteFeeResponse) Reset ¶
func (m *RouteFeeResponse) Reset()
func (*RouteFeeResponse) String ¶
func (m *RouteFeeResponse) String() string
func (*RouteFeeResponse) XXX_DiscardUnknown ¶
func (m *RouteFeeResponse) XXX_DiscardUnknown()
func (*RouteFeeResponse) XXX_Marshal ¶
func (m *RouteFeeResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*RouteFeeResponse) XXX_Merge ¶
func (m *RouteFeeResponse) XXX_Merge(src proto.Message)
func (*RouteFeeResponse) XXX_Size ¶
func (m *RouteFeeResponse) XXX_Size() int
func (*RouteFeeResponse) XXX_Unmarshal ¶
func (m *RouteFeeResponse) XXX_Unmarshal(b []byte) error
type RouterBackend ¶
type RouterBackend struct { // MaxPaymentMSat is the largest payment permitted by the backend. MaxPaymentMSat lnwire.MilliSatoshi // SelfNode is the vertex of the node sending the payment. SelfNode route.Vertex // FetchChannelCapacity is a closure that we'll use the fetch the total // capacity of a channel to populate in responses. FetchChannelCapacity func(chanID uint64) (btcutil.Amount, error) // FetchChannelEndpoints returns the pubkeys of both endpoints of the // given channel id. FetchChannelEndpoints func(chanID uint64) (route.Vertex, route.Vertex, error) // FindRoutes is a closure that abstracts away how we locate/query for // routes. FindRoute func(source, target route.Vertex, amt lnwire.MilliSatoshi, restrictions *routing.RestrictParams, finalExpiry ...uint16) (*route.Route, error) MissionControl *routing.MissionControl // ActiveNetParams are the network parameters of the primary network // that the route is operating on. This is necessary so we can ensure // that we receive payment requests that send to destinations on our // network. ActiveNetParams *chaincfg.Params // Tower is the ControlTower instance that is used to track pending // payments. Tower routing.ControlTower }
RouterBackend contains the backend implementation of the router rpc sub server calls.
func (*RouterBackend) MarshallRoute ¶
func (r *RouterBackend) MarshallRoute(route *route.Route) *lnrpc.Route
MarshallRoute marshalls an internal route to an rpc route struct.
func (*RouterBackend) QueryRoutes ¶
func (r *RouterBackend) QueryRoutes(ctx context.Context, in *lnrpc.QueryRoutesRequest) (*lnrpc.QueryRoutesResponse, error)
QueryRoutes attempts to query the daemons' Channel Router for a possible route to a target destination capable of carrying a specific amount of satoshis within the route's flow. The retuned route contains the full details required to craft and send an HTLC, also including the necessary information that should be present within the Sphinx packet encapsulated within the HTLC.
TODO(roasbeef): should return a slice of routes in reality * create separate PR to send based on well formatted route
func (*RouterBackend) UnmarshallHop ¶
UnmarshallHop unmarshalls an rpc hop that may or may not contain a node pubkey.
func (*RouterBackend) UnmarshallHopByChannelLookup ¶
func (r *RouterBackend) UnmarshallHopByChannelLookup(hop *lnrpc.Hop, prevPubKeyBytes [33]byte) (*route.Hop, error)
UnmarshallHopByChannelLookup unmarshalls an rpc hop for which the pub key is not known. This function will query the channel graph with channel id to retrieve both endpoints and determine the hop pubkey using the previous hop pubkey. If the channel is unknown, an error is returned.
func (*RouterBackend) UnmarshallRoute ¶
UnmarshallRoute unmarshalls an rpc route. For hops that don't specify a pubkey, the channel graph is queried.
type RouterClient ¶
type RouterClient interface { //* //SendPayment attempts to route a payment described by the passed //PaymentRequest to the final destination. The call returns a stream of //payment status updates. SendPayment(ctx context.Context, in *SendPaymentRequest, opts ...grpc.CallOption) (Router_SendPaymentClient, error) //* //TrackPayment returns an update stream for the payment identified by the //payment hash. TrackPayment(ctx context.Context, in *TrackPaymentRequest, opts ...grpc.CallOption) (Router_TrackPaymentClient, error) //* //EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it //may cost to send an HTLC to the target end destination. EstimateRouteFee(ctx context.Context, in *RouteFeeRequest, opts ...grpc.CallOption) (*RouteFeeResponse, error) //* //SendToRoute attempts to make a payment via the specified route. This method //differs from SendPayment in that it allows users to specify a full route //manually. This can be used for things like rebalancing, and atomic swaps. SendToRoute(ctx context.Context, in *SendToRouteRequest, opts ...grpc.CallOption) (*SendToRouteResponse, error) //* //ResetMissionControl clears all mission control state and starts with a clean //slate. ResetMissionControl(ctx context.Context, in *ResetMissionControlRequest, opts ...grpc.CallOption) (*ResetMissionControlResponse, error) //* //QueryMissionControl exposes the internal mission control state to callers. //It is a development feature. QueryMissionControl(ctx context.Context, in *QueryMissionControlRequest, opts ...grpc.CallOption) (*QueryMissionControlResponse, error) }
RouterClient is the client API for Router service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewRouterClient ¶
func NewRouterClient(cc *grpc.ClientConn) RouterClient
type RouterServer ¶
type RouterServer interface { //* //SendPayment attempts to route a payment described by the passed //PaymentRequest to the final destination. The call returns a stream of //payment status updates. SendPayment(*SendPaymentRequest, Router_SendPaymentServer) error //* //TrackPayment returns an update stream for the payment identified by the //payment hash. TrackPayment(*TrackPaymentRequest, Router_TrackPaymentServer) error //* //EstimateRouteFee allows callers to obtain a lower bound w.r.t how much it //may cost to send an HTLC to the target end destination. EstimateRouteFee(context.Context, *RouteFeeRequest) (*RouteFeeResponse, error) //* //SendToRoute attempts to make a payment via the specified route. This method //differs from SendPayment in that it allows users to specify a full route //manually. This can be used for things like rebalancing, and atomic swaps. SendToRoute(context.Context, *SendToRouteRequest) (*SendToRouteResponse, error) //* //ResetMissionControl clears all mission control state and starts with a clean //slate. ResetMissionControl(context.Context, *ResetMissionControlRequest) (*ResetMissionControlResponse, error) //* //QueryMissionControl exposes the internal mission control state to callers. //It is a development feature. QueryMissionControl(context.Context, *QueryMissionControlRequest) (*QueryMissionControlResponse, error) }
RouterServer is the server API for Router service.
type Router_SendPaymentClient ¶
type Router_SendPaymentClient interface { Recv() (*PaymentStatus, error) grpc.ClientStream }
type Router_SendPaymentServer ¶
type Router_SendPaymentServer interface { Send(*PaymentStatus) error grpc.ServerStream }
type Router_TrackPaymentClient ¶
type Router_TrackPaymentClient interface { Recv() (*PaymentStatus, error) grpc.ClientStream }
type Router_TrackPaymentServer ¶
type Router_TrackPaymentServer interface { Send(*PaymentStatus) error grpc.ServerStream }
type SendPaymentRequest ¶
type SendPaymentRequest struct { /// The identity pubkey of the payment recipient Dest []byte `protobuf:"bytes,1,opt,name=dest,proto3" json:"dest,omitempty"` /// Number of satoshis to send. Amt int64 `protobuf:"varint,2,opt,name=amt,proto3" json:"amt,omitempty"` /// The hash to use within the payment's HTLC PaymentHash []byte `protobuf:"bytes,3,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` //* //The CLTV delta from the current height that should be used to set the //timelock for the final hop. FinalCltvDelta int32 `protobuf:"varint,4,opt,name=final_cltv_delta,json=finalCltvDelta,proto3" json:"final_cltv_delta,omitempty"` //* //A bare-bones invoice for a payment within the Lightning Network. With the //details of the invoice, the sender has all the data necessary to send a //payment to the recipient. The amount in the payment request may be zero. In //that case it is required to set the amt field as well. If no payment request //is specified, the following fields are required: dest, amt and payment_hash. PaymentRequest string `protobuf:"bytes,5,opt,name=payment_request,json=paymentRequest,proto3" json:"payment_request,omitempty"` //* //An upper limit on the amount of time we should spend when attempting to //fulfill the payment. This is expressed in seconds. If we cannot make a //successful payment within this time frame, an error will be returned. //This field must be non-zero. TimeoutSeconds int32 `protobuf:"varint,6,opt,name=timeout_seconds,json=timeoutSeconds,proto3" json:"timeout_seconds,omitempty"` //* //The maximum number of satoshis that will be paid as a fee of the payment. //If this field is left to the default value of 0, only zero-fee routes will //be considered. This usually means single hop routes connecting directly to //the destination. To send the payment without a fee limit, use max int here. FeeLimitSat int64 `protobuf:"varint,7,opt,name=fee_limit_sat,json=feeLimitSat,proto3" json:"fee_limit_sat,omitempty"` //* //The channel id of the channel that must be taken to the first hop. If zero, //any channel may be used. OutgoingChanId uint64 `protobuf:"varint,8,opt,name=outgoing_chan_id,json=outgoingChanId,proto3" json:"outgoing_chan_id,omitempty"` //* //An optional maximum total time lock for the route. If zero, there is no //maximum enforced. CltvLimit int32 `protobuf:"varint,9,opt,name=cltv_limit,json=cltvLimit,proto3" json:"cltv_limit,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*SendPaymentRequest) Descriptor ¶
func (*SendPaymentRequest) Descriptor() ([]byte, []int)
func (*SendPaymentRequest) GetAmt ¶
func (m *SendPaymentRequest) GetAmt() int64
func (*SendPaymentRequest) GetCltvLimit ¶
func (m *SendPaymentRequest) GetCltvLimit() int32
func (*SendPaymentRequest) GetDest ¶
func (m *SendPaymentRequest) GetDest() []byte
func (*SendPaymentRequest) GetFeeLimitSat ¶
func (m *SendPaymentRequest) GetFeeLimitSat() int64
func (*SendPaymentRequest) GetFinalCltvDelta ¶
func (m *SendPaymentRequest) GetFinalCltvDelta() int32
func (*SendPaymentRequest) GetOutgoingChanId ¶
func (m *SendPaymentRequest) GetOutgoingChanId() uint64
func (*SendPaymentRequest) GetPaymentHash ¶
func (m *SendPaymentRequest) GetPaymentHash() []byte
func (*SendPaymentRequest) GetPaymentRequest ¶
func (m *SendPaymentRequest) GetPaymentRequest() string
func (*SendPaymentRequest) GetTimeoutSeconds ¶
func (m *SendPaymentRequest) GetTimeoutSeconds() int32
func (*SendPaymentRequest) ProtoMessage ¶
func (*SendPaymentRequest) ProtoMessage()
func (*SendPaymentRequest) Reset ¶
func (m *SendPaymentRequest) Reset()
func (*SendPaymentRequest) String ¶
func (m *SendPaymentRequest) String() string
func (*SendPaymentRequest) XXX_DiscardUnknown ¶
func (m *SendPaymentRequest) XXX_DiscardUnknown()
func (*SendPaymentRequest) XXX_Marshal ¶
func (m *SendPaymentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*SendPaymentRequest) XXX_Merge ¶
func (m *SendPaymentRequest) XXX_Merge(src proto.Message)
func (*SendPaymentRequest) XXX_Size ¶
func (m *SendPaymentRequest) XXX_Size() int
func (*SendPaymentRequest) XXX_Unmarshal ¶
func (m *SendPaymentRequest) XXX_Unmarshal(b []byte) error
type SendToRouteRequest ¶
type SendToRouteRequest struct { /// The payment hash to use for the HTLC. PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` /// Route that should be used to attempt to complete the payment. Route *lnrpc.Route `protobuf:"bytes,2,opt,name=route,proto3" json:"route,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*SendToRouteRequest) Descriptor ¶
func (*SendToRouteRequest) Descriptor() ([]byte, []int)
func (*SendToRouteRequest) GetPaymentHash ¶
func (m *SendToRouteRequest) GetPaymentHash() []byte
func (*SendToRouteRequest) GetRoute ¶
func (m *SendToRouteRequest) GetRoute() *lnrpc.Route
func (*SendToRouteRequest) ProtoMessage ¶
func (*SendToRouteRequest) ProtoMessage()
func (*SendToRouteRequest) Reset ¶
func (m *SendToRouteRequest) Reset()
func (*SendToRouteRequest) String ¶
func (m *SendToRouteRequest) String() string
func (*SendToRouteRequest) XXX_DiscardUnknown ¶
func (m *SendToRouteRequest) XXX_DiscardUnknown()
func (*SendToRouteRequest) XXX_Marshal ¶
func (m *SendToRouteRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*SendToRouteRequest) XXX_Merge ¶
func (m *SendToRouteRequest) XXX_Merge(src proto.Message)
func (*SendToRouteRequest) XXX_Size ¶
func (m *SendToRouteRequest) XXX_Size() int
func (*SendToRouteRequest) XXX_Unmarshal ¶
func (m *SendToRouteRequest) XXX_Unmarshal(b []byte) error
type SendToRouteResponse ¶
type SendToRouteResponse struct { /// The preimage obtained by making the payment. Preimage []byte `protobuf:"bytes,1,opt,name=preimage,proto3" json:"preimage,omitempty"` /// The failure message in case the payment failed. Failure *Failure `protobuf:"bytes,2,opt,name=failure,proto3" json:"failure,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*SendToRouteResponse) Descriptor ¶
func (*SendToRouteResponse) Descriptor() ([]byte, []int)
func (*SendToRouteResponse) GetFailure ¶
func (m *SendToRouteResponse) GetFailure() *Failure
func (*SendToRouteResponse) GetPreimage ¶
func (m *SendToRouteResponse) GetPreimage() []byte
func (*SendToRouteResponse) ProtoMessage ¶
func (*SendToRouteResponse) ProtoMessage()
func (*SendToRouteResponse) Reset ¶
func (m *SendToRouteResponse) Reset()
func (*SendToRouteResponse) String ¶
func (m *SendToRouteResponse) String() string
func (*SendToRouteResponse) XXX_DiscardUnknown ¶
func (m *SendToRouteResponse) XXX_DiscardUnknown()
func (*SendToRouteResponse) XXX_Marshal ¶
func (m *SendToRouteResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*SendToRouteResponse) XXX_Merge ¶
func (m *SendToRouteResponse) XXX_Merge(src proto.Message)
func (*SendToRouteResponse) XXX_Size ¶
func (m *SendToRouteResponse) XXX_Size() int
func (*SendToRouteResponse) XXX_Unmarshal ¶
func (m *SendToRouteResponse) XXX_Unmarshal(b []byte) error
type TrackPaymentRequest ¶
type TrackPaymentRequest struct { /// The hash of the payment to look up. PaymentHash []byte `protobuf:"bytes,1,opt,name=payment_hash,json=paymentHash,proto3" json:"payment_hash,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*TrackPaymentRequest) Descriptor ¶
func (*TrackPaymentRequest) Descriptor() ([]byte, []int)
func (*TrackPaymentRequest) GetPaymentHash ¶
func (m *TrackPaymentRequest) GetPaymentHash() []byte
func (*TrackPaymentRequest) ProtoMessage ¶
func (*TrackPaymentRequest) ProtoMessage()
func (*TrackPaymentRequest) Reset ¶
func (m *TrackPaymentRequest) Reset()
func (*TrackPaymentRequest) String ¶
func (m *TrackPaymentRequest) String() string
func (*TrackPaymentRequest) XXX_DiscardUnknown ¶
func (m *TrackPaymentRequest) XXX_DiscardUnknown()
func (*TrackPaymentRequest) XXX_Marshal ¶
func (m *TrackPaymentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*TrackPaymentRequest) XXX_Merge ¶
func (m *TrackPaymentRequest) XXX_Merge(src proto.Message)
func (*TrackPaymentRequest) XXX_Size ¶
func (m *TrackPaymentRequest) XXX_Size() int
func (*TrackPaymentRequest) XXX_Unmarshal ¶
func (m *TrackPaymentRequest) XXX_Unmarshal(b []byte) error