async def paid_invoices_stream(self) -> AsyncGenerator[str, None]: async with purerpc.secure_channel( self.endpoint, self.port, get_ssl_context(self.cert_path), ) as channel: client = purerpc.Client("lnrpc.Lightning", channel) subscribe_invoices = client.get_method_stub( "SubscribeInvoices", purerpc.RPCSignature( purerpc.Cardinality.UNARY_STREAM, ln.InvoiceSubscription, ln.Invoice, ), ) macaroon = load_macaroon(self.macaroon_path) async for inv in subscribe_invoices( ln.InvoiceSubscription(), metadata=[("macaroon", macaroon)], ): if not inv.settled: continue checking_id = stringify_checking_id(inv.r_hash) yield checking_id print("lost connection to lnd InvoiceSubscription, please restart lnbits.")
async def subscribe_invoices(self): await self._ln_stub.SubscribeInvoices(ln.InvoiceSubscription())
async def subscribe_invoices(self): async for invoice in self._ln_stub.SubscribeInvoices( ln.InvoiceSubscription()): yield invoice