pub struct QueryRoutesRequest {Show 19 fields
pub pub_key: String,
pub amt: i64,
pub amt_msat: i64,
pub final_cltv_delta: i32,
pub fee_limit: Option<FeeLimit>,
pub ignored_nodes: Vec<Vec<u8>>,
pub ignored_edges: Vec<EdgeLocator>,
pub source_pub_key: String,
pub use_mission_control: bool,
pub ignored_pairs: Vec<NodePair>,
pub cltv_limit: u32,
pub dest_custom_records: HashMap<u64, Vec<u8>>,
pub outgoing_chan_id: u64,
pub last_hop_pubkey: Vec<u8>,
pub route_hints: Vec<RouteHint>,
pub blinded_payment_paths: Vec<BlindedPaymentPath>,
pub dest_features: Vec<i32>,
pub time_pref: f64,
pub outgoing_chan_ids: Vec<u64>,
}Fields§
§pub_key: StringThe 33-byte hex-encoded public key for the payment destination
amt: i64The amount to send expressed in satoshis.
The fields amt and amt_msat are mutually exclusive.
amt_msat: i64The amount to send expressed in millisatoshis.
The fields amt and amt_msat are mutually exclusive.
final_cltv_delta: i32An optional CLTV delta from the current height that should be used for the timelock of the final hop. Note that unlike SendPayment, QueryRoutes does not add any additional block padding on top of final_ctlv_delta. This padding of a few blocks needs to be added manually or otherwise failures may happen when a block comes in while the payment is in flight.
Note: must not be set if making a payment to a blinded path (delta is set by the aggregate parameters provided by blinded_payment_paths)
fee_limit: Option<FeeLimit>The maximum number of satoshis that will be paid as a fee of the payment. This value can be represented either as a percentage of the amount being sent, or as a fixed amount of the maximum fee the user is willing the pay to send the payment. If not specified, lnd will use a default value of 100% fees for small amounts (<=1k sat) or 5% fees for larger amounts.
ignored_nodes: Vec<Vec<u8>>A list of nodes to ignore during path finding. When using REST, these fields must be encoded as base64.
ignored_edges: Vec<EdgeLocator>Deprecated. A list of edges to ignore during path finding.
source_pub_key: StringThe source node where the request route should originated from. If empty, self is assumed.
use_mission_control: boolIf set to true, edge probabilities from mission control will be used to get the optimal route.
ignored_pairs: Vec<NodePair>A list of directed node pairs that will be ignored during path finding.
cltv_limit: u32An optional maximum total time lock for the route. If the source is empty or
ourselves, this should not exceed lnd’s --max-cltv-expiry setting. If
zero, then the value of --max-cltv-expiry is used as the limit.
dest_custom_records: HashMap<u64, Vec<u8>>An optional field that can be used to pass an arbitrary set of TLV records to a peer which understands the new records. This can be used to pass application specific data during the payment attempt. If the destination does not support the specified records, an error will be returned. Record types are required to be in the custom range >= 65536. When using REST, the values must be encoded as base64.
outgoing_chan_id: u64Deprecated, use outgoing_chan_ids. The channel id of the channel that must be taken to the first hop. If zero, any channel may be used.
last_hop_pubkey: Vec<u8>The pubkey of the last hop of the route. If empty, any hop may be used.
route_hints: Vec<RouteHint>Optional route hints to reach the destination through private channels.
blinded_payment_paths: Vec<BlindedPaymentPath>An optional blinded path(s) to reach the destination. Note that the introduction node must be provided as the first hop in the route.
dest_features: Vec<i32>Features assumed to be supported by the final node. All transitive feature dependencies must also be set properly. For a given feature bit pair, either optional or remote may be set, but not both. If this field is nil or empty, the router will try to load destination features from the graph as a fallback.
Note: must not be set if making a payment to a blinded route (features are provided in blinded_payment_paths).
time_pref: f64The time preference for this payment. Set to -1 to optimize for fees only, to 1 to optimize for reliability only or a value inbetween for a mix.
outgoing_chan_ids: Vec<u64>The channel ids of the channels allowed for the first hop. If empty, any channel may be used.
Implementations§
Source§impl QueryRoutesRequest
impl QueryRoutesRequest
Sourcepub fn dest_features(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(i32) -> Option<FeatureBit>>
pub fn dest_features( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(i32) -> Option<FeatureBit>>
Returns an iterator which yields the valid enum values contained in dest_features.
Sourcepub fn push_dest_features(&mut self, value: FeatureBit)
pub fn push_dest_features(&mut self, value: FeatureBit)
Appends the provided enum value to dest_features.
Trait Implementations§
Source§impl Clone for QueryRoutesRequest
impl Clone for QueryRoutesRequest
Source§fn clone(&self) -> QueryRoutesRequest
fn clone(&self) -> QueryRoutesRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for QueryRoutesRequest
impl Debug for QueryRoutesRequest
Source§impl Default for QueryRoutesRequest
impl Default for QueryRoutesRequest
Source§impl Message for QueryRoutesRequest
impl Message for QueryRoutesRequest
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for QueryRoutesRequest
impl PartialEq for QueryRoutesRequest
impl StructuralPartialEq for QueryRoutesRequest
Auto Trait Implementations§
impl Freeze for QueryRoutesRequest
impl RefUnwindSafe for QueryRoutesRequest
impl Send for QueryRoutesRequest
impl Sync for QueryRoutesRequest
impl Unpin for QueryRoutesRequest
impl UnwindSafe for QueryRoutesRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request