aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/payments.ts25
1 files changed, 15 insertions, 10 deletions
diff --git a/lib/payments.ts b/lib/payments.ts
index 1f67bb1f..c34a4739 100644
--- a/lib/payments.ts
+++ b/lib/payments.ts
@@ -768,21 +768,26 @@ export let reconcile = async (account, initial = false) => {
};
export let check = async () => {
- let payments = await db.sMembers("pending");
+ try {
+ let payments = await db.sMembers("pending");
- for (let pr of payments) {
- let p = await getPayment(pr);
- if (!p) continue;
- let { pays } = await ln.listpays(pr);
+ for (let pr of payments) {
+ let p = await getPayment(pr);
+ if (!p) continue;
+ let { pays } = await ln.listpays(pr);
- let failed = !pays.length || pays.every((p) => p.status === "failed");
- let completed = pays.find((p) => p.status === "complete");
+ let failed = !pays.length || pays.every((p) => p.status === "failed");
+ let completed = pays.find((p) => p.status === "complete");
- if (completed) await finalize(completed, p);
- else if (failed) await reverse(p);
+ if (completed) await finalize(completed, p);
+ else if (failed) await reverse(p);
- setTimeout(check, 2000);
+ }
+ } catch(e) {
+ console.log("payment check failed", e);
}
+
+ setTimeout(check, 2000);
};
let finalize = async (r, p) => {