From ab190454f4c86aaaa2fe1acf2ee25d875a7a0ac5 Mon Sep 17 00:00:00 2001 From: Eneko Illarramendi Date: Sat, 25 Apr 2020 20:13:49 +0200 Subject: [PATCH] fix: LNbits backend wallet --- lnbits/wallets/lnbits.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/lnbits/wallets/lnbits.py b/lnbits/wallets/lnbits.py index 7ee5d989..8f62a10a 100644 --- a/lnbits/wallets/lnbits.py +++ b/lnbits/wallets/lnbits.py @@ -1,7 +1,9 @@ -from requests import get, post from os import getenv +from requests import get, post + from .base import InvoiceResponse, PaymentResponse, PaymentStatus, Wallet + class LnbitsWallet(Wallet): def __init__(self): @@ -22,6 +24,7 @@ class LnbitsWallet(Wallet): checking_id, payment_request = data["checking_id"], data["payment_request"] else: error_message = r.json()["message"] + return InvoiceResponse(ok, checking_id, payment_request, error_message) def pay_invoice(self, bolt11: str) -> PaymentResponse: @@ -37,12 +40,21 @@ class LnbitsWallet(Wallet): checking_id = data["checking_id"] else: error_message = r.json()["message"] - return InvoiceResponse(ok, checking_id, fee_msat, error_message) + + return PaymentResponse(ok, checking_id, fee_msat, error_message) def get_invoice_status(self, checking_id: str) -> PaymentStatus: r = get(url=f"{self.endpoint}/api/v1/payments/{checking_id}", headers=self.auth_invoice) - return PaymentStatus(r['paid']) + + if not r.ok: + return PaymentStatus(None) + + return PaymentStatus(r.json()['paid']) def get_payment_status(self, checking_id: str) -> PaymentStatus: r = get(url=f"{self.endpoint}/api/v1/payments/{checking_id}", headers=self.auth_invoice) - return PaymentStatus(r['paid']) + + if not r.ok: + return PaymentStatus(None) + + return PaymentStatus(r.json()['paid'])