22import random
33
44from lnbits .core .models import Payment
5- from lnbits .core .services import pay_invoice , websocket_updater
5+ from lnbits .core .services import get_pr_from_lnurl , pay_invoice , websocket_updater
66from lnbits .tasks import register_invoice_listener
7+ from loguru import logger
78
89from .crud import (
910 get_coinflip ,
1011 get_coinflip_settings_from_id ,
1112 update_coinflip ,
1213)
13- from .helpers import get_pr
1414
1515
1616async def wait_for_paid_invoices ():
@@ -53,8 +53,10 @@ async def on_invoice_paid(payment: Payment) -> None:
5353 haircut_amount = coinflip .buy_in * (coinflip_settings .haircut / 100 )
5454 # Calculate the refund amount
5555 max_sat = int (coinflip .buy_in - haircut_amount )
56- pr = await get_pr (ln_address , max_sat )
57- if not pr :
56+ try :
57+ pr = await get_pr_from_lnurl (ln_address , max_sat )
58+ except Exception as exc :
59+ logger .error (f"Error getting payment request for refund: { exc !s} " )
5860 return
5961 await pay_invoice (
6062 wallet_id = coinflip_settings .wallet_id ,
@@ -80,8 +82,10 @@ async def on_invoice_paid(payment: Payment) -> None:
8082 haircut_amount = total_amount * (coinflip_settings .haircut / 100 )
8183 # Calculate the winnings minus haircut
8284 max_sat = int (total_amount - haircut_amount )
83- pr = await get_pr (winner , max_sat )
84- if not pr :
85+ try :
86+ pr = await get_pr_from_lnurl (winner , max_sat )
87+ except Exception as exc :
88+ logger .error (f"Error getting payment request for winner: { exc !s} " )
8589 return
8690 if winner == ln_address :
8791 await websocket_updater ("coinflip" + payment .payment_hash , f"won,{ winner } " )
@@ -108,8 +112,10 @@ async def on_invoice_paid(payment: Payment) -> None:
108112async def pay_tribute (haircut_amount : int , wallet_id : str ) -> None :
109113 try :
110114 tribute = int (2 * (haircut_amount / 100 ))
111- pr = await get_pr ("lnbits@nostr.com" , tribute )
112- if not pr :
115+ try :
116+ pr = await get_pr_from_lnurl ("lnbits@nostr.com" , tribute )
117+ except Exception as exc :
118+ logger .error (f"Error getting payment request for tribute: { exc !s} " )
113119 return
114120 await pay_invoice (
115121 wallet_id = wallet_id ,
0 commit comments