class Lightning
-
Making Payments Via
Lightning
Public Instance Methods
create_invoice(data)
click to toggle source
Create Lightning
invoice
-
Required Function Parameters:
data: { description: string, customerEmail: string, tokens: number, expires_at: string }
# File lib/bitnob/objects/lightning.rb, line 19 def create_invoice(data) required_parameters = %w[description customerEmail tokens expires_at] check_passed_parameters(required_parameters, data) payload = data.to_json post_request("#{base_url}#{BaseEndpoints::LN}/createinvoice", payload) end
decode_payment_request(request)
click to toggle source
Decode a BOLT 11 compliant payment request
-
Required Function Parameters:
request: string
# File lib/bitnob/objects/lightning.rb, line 67 def decode_payment_request(request) body = { request: request } payload = body.to_json post_request("#{base_url}#{BaseEndpoints::LN}/decodepaymentrequest", payload) end
get_invoice(invoice_id)
click to toggle source
Getting Lightning
invoice data
-
Required Function Parameters:
invoice_id: string
# File lib/bitnob/objects/lightning.rb, line 80 def get_invoice(invoice_id) body = { id: invoice_id } payload = body.to_json post_request("#{base_url}#{BaseEndpoints::LN}/getinvoice", payload) end
initiate_payment(request)
click to toggle source
Initiate payment is advised to be run before paying an invoice to calculate fees and check if an invoice has expired.
-
Required Function Parameters:
request: string
# File lib/bitnob/objects/lightning.rb, line 54 def initiate_payment(request) body = { request: request } payload = body.to_json post_request("#{base_url}#{BaseEndpoints::LN}/initiatepayment", payload) end
ln_pay(data)
click to toggle source
-
Ln Pay
-
Required Function Parameters
data: { request: "string", reference: "string", customerEmail: "string", description: "string" }
# File lib/bitnob/objects/lightning.rb, line 97 def ln_pay(data) payload = data.to_json post_request("#{base_url}#{BaseEndpoints::LN}/pay", payload) end
pay_invoice(data)
click to toggle source
Pay Lightning
invoice
-
Required Function Parameters:
data: { description: string, customerEmail: string, request: string, }
# File lib/bitnob/objects/lightning.rb, line 39 def pay_invoice(data) required_parameters = %w[request customerEmail description] check_passed_parameters(required_parameters, data) payload = data.to_json post_request("#{base_url}#{BaseEndpoints::LN}/pay", payload) end
probe_for_route(data)
click to toggle source
-
Probe For Route
-
Required Function Parameters
data: { destination: "string", tokens: "string", total_mtokens: 0, payment: "string" }
# File lib/bitnob/objects/lightning.rb, line 112 def probe_for_route(data) payload = data.to_json post_request("#{base_url}#{BaseEndpoints::LN}/probeforroute", payload) end
probe_route()
click to toggle source
-
Probe Route
# File lib/bitnob/objects/lightning.rb, line 119 def probe_route() payload= {} post_request("#{base_url}#{BaseEndpoints::LN}/proberoute", paylod.to_json) end