pub struct Bolt11 { /* private fields */ }
Implementations§
source§impl Bolt11
impl Bolt11
sourcepub fn create(
&self,
amount_sat: u64,
lsp_fee_params: Option<OpeningFeeParams>,
description: String,
metadata: InvoiceCreationMetadata,
) -> Result<InvoiceDetails>
pub fn create( &self, amount_sat: u64, lsp_fee_params: Option<OpeningFeeParams>, description: String, metadata: InvoiceCreationMetadata, ) -> Result<InvoiceDetails>
Create a bolt11 invoice to receive a payment with.
Parameters:
amount_sat
- the smallest amount of sats required for the node to accept the incoming payment (sender will have to pay fees on top of that amount)lsp_fee_params
- the params that will be used to determine the lsp fee. Can be obtained fromLightning::calculate_lsp_fee_for_amount
to guarantee predicted fees are the ones charged.description
- a description to be embedded into the created invoicemetadata
- additional data about the invoice creation used for analytics purposes, used to improve the user experience
Requires network: yes
sourcepub fn pay(
&self,
invoice_details: InvoiceDetails,
metadata: PaymentMetadata,
) -> PayResult<()>
pub fn pay( &self, invoice_details: InvoiceDetails, metadata: PaymentMetadata, ) -> PayResult<()>
Start an attempt to pay an invoice. Can immediately fail, meaning that the payment couldn’t be started.
If successful, it doesn’t mean that the payment itself was successful (funds received by the payee).
After this method returns, the consumer of this library will learn about a successful/failed payment through the
callbacks EventsCallback::payment_sent
and
EventsCallback::payment_failed
.
Parameters:
invoice_details
- details of an invoice decode byLightningNode::decode_data
metadata
- additional meta information about the payment, used by analytics to improve the user experience.
Requires network: yes
sourcepub fn pay_open_amount(
&self,
invoice_details: InvoiceDetails,
amount_sat: u64,
metadata: PaymentMetadata,
) -> PayResult<()>
pub fn pay_open_amount( &self, invoice_details: InvoiceDetails, amount_sat: u64, metadata: PaymentMetadata, ) -> PayResult<()>
Similar to Bolt11::pay
with the difference that the passed in invoice
does not have any payment amount specified, and allows the caller of the method to
specify an amount instead.
Additional Parameters:
amount_sat
- amount in sats to be paid
Requires network: yes
Auto Trait Implementations§
impl Freeze for Bolt11
impl !RefUnwindSafe for Bolt11
impl Send for Bolt11
impl Sync for Bolt11
impl Unpin for Bolt11
impl !UnwindSafe for Bolt11
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere
T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
Forward to the method defined on the type
Any
.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
Forward to the method defined on the type
Any
.§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
Create a new handle for an Arc value Read more
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
Clone a handle Read more
§unsafe fn consume_handle(handle: Handle) -> Arc<T>
unsafe fn consume_handle(handle: Handle) -> Arc<T>
Consume a handle, getting back the initial
Arc<>
Read more§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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>
Wrap the input message
T
in a tonic::Request