detect paid invoices in on_event_adb_added_tx
This commit is contained in:
@@ -489,6 +489,7 @@ class Abstract_Wallet(ABC, Logger, EventListener):
|
|||||||
if self.lnworker:
|
if self.lnworker:
|
||||||
self.lnworker.maybe_add_backup_from_tx(tx)
|
self.lnworker.maybe_add_backup_from_tx(tx)
|
||||||
self._update_request_statuses_touched_by_tx(tx_hash)
|
self._update_request_statuses_touched_by_tx(tx_hash)
|
||||||
|
self._detect_paid_invoices()
|
||||||
if notify_GUI:
|
if notify_GUI:
|
||||||
util.trigger_callback('new_transaction', self, tx)
|
util.trigger_callback('new_transaction', self, tx)
|
||||||
|
|
||||||
@@ -1050,7 +1051,10 @@ class Abstract_Wallet(ABC, Logger, EventListener):
|
|||||||
self._requests_addr_to_rhash[addr] = req.rhash
|
self._requests_addr_to_rhash[addr] = req.rhash
|
||||||
|
|
||||||
def _prepare_onchain_invoice_paid_detection(self):
|
def _prepare_onchain_invoice_paid_detection(self):
|
||||||
self._invoices_from_txid_map = defaultdict(set) # type: Dict[bytes, Set[str]]
|
self._invoices_from_txid_map = defaultdict(set) # type: Dict[str, Set[str]]
|
||||||
|
self._detect_paid_invoices()
|
||||||
|
|
||||||
|
def _detect_paid_invoices(self):
|
||||||
for invoice_key, invoice in self._invoices.items():
|
for invoice_key, invoice in self._invoices.items():
|
||||||
if invoice.is_lightning() and not invoice.get_address():
|
if invoice.is_lightning() and not invoice.get_address():
|
||||||
continue
|
continue
|
||||||
@@ -1099,10 +1103,6 @@ class Abstract_Wallet(ABC, Logger, EventListener):
|
|||||||
|
|
||||||
def is_onchain_invoice_paid(self, invoice: Invoice) -> Tuple[bool, Optional[int]]:
|
def is_onchain_invoice_paid(self, invoice: Invoice) -> Tuple[bool, Optional[int]]:
|
||||||
is_paid, conf_needed, relevant_txs = self._is_onchain_invoice_paid(invoice)
|
is_paid, conf_needed, relevant_txs = self._is_onchain_invoice_paid(invoice)
|
||||||
if is_paid:
|
|
||||||
key = self.get_key_for_outgoing_invoice(invoice)
|
|
||||||
for txid in relevant_txs:
|
|
||||||
self._invoices_from_txid_map[txid].add(key)
|
|
||||||
return is_paid, conf_needed
|
return is_paid, conf_needed
|
||||||
|
|
||||||
@profiler
|
@profiler
|
||||||
|
|||||||
Reference in New Issue
Block a user