aboutsummaryrefslogtreecommitdiffstats
path: root/lib/payments.ts
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-02-10 19:31:36 +0000
committerAdam Soltys <[email protected]>2026-02-25 20:06:04 +0000
commit0d76a676e8dba58b42f52d6b8b990bf9954db784 (patch)
treeaa6c764c4e3cf47946162bb1421ebd9d7d8a9b62 /lib/payments.ts
parentb65425e4910167c1b3c04141a4df7e000d74ef11 (diff)
downloadcoinos-server-0d76a676e8dba58b42f52d6b8b990bf9954db784.tar.gz
coinos-server-0d76a676e8dba58b42f52d6b8b990bf9954db784.zip
handle socket errors
Diffstat (limited to 'lib/payments.ts')
-rw-r--r--lib/payments.ts36
1 files changed, 20 insertions, 16 deletions
diff --git a/lib/payments.ts b/lib/payments.ts
index b0140f52..eed9b4c5 100644
--- a/lib/payments.ts
+++ b/lib/payments.ts
@@ -851,26 +851,30 @@ const reverse = async (p) => {
};
const freezeCheck = async () => {
- const funds = await ln.listfunds();
- const lnbalance = Math.round(
- funds.channels.reduce((a, b) => a + b.our_amount_msat, 0) / 1000,
- );
+ try {
+ const funds = await ln.listfunds();
+ const lnbalance = Math.round(
+ funds.channels.reduce((a, b) => a + b.our_amount_msat, 0) / 1000,
+ );
- const bcbalance = Math.round((await bc.getBalance()) * SATS);
- const { bitcoin } = await lq.getBalance();
- const lqbalance = Math.round(bitcoin * SATS);
+ const bcbalance = Math.round((await bc.getBalance()) * SATS);
+ const { bitcoin } = await lq.getBalance();
+ const lqbalance = Math.round(bitcoin * SATS);
- const lnthreshold = await g("lightning:threshold");
- const bcthreshold = await g("bitcoin:threshold");
- const lqthreshold = await g("liquid:threshold");
+ const lnthreshold = await g("lightning:threshold");
+ const bcthreshold = await g("bitcoin:threshold");
+ const lqthreshold = await g("liquid:threshold");
- await s("lightning:limit", Math.max(lnbalance - lnthreshold, 0));
- await s("bitcoin:limit", Math.max(bcbalance - bcthreshold, 0));
- await s("liquid:limit", Math.max(lqbalance - lqthreshold, 0));
+ await s("lightning:limit", Math.max(lnbalance - lnthreshold, 0));
+ await s("bitcoin:limit", Math.max(bcbalance - bcthreshold, 0));
+ await s("liquid:limit", Math.max(lqbalance - lqthreshold, 0));
- await s("fund:limit", Math.max(lnbalance - lnthreshold, 0));
- await s("ecash:limit", Math.max(lnbalance - lnthreshold, 0));
- await s("bolt12:limit", Math.max(lnbalance - lnthreshold, 0));
+ await s("fund:limit", Math.max(lnbalance - lnthreshold, 0));
+ await s("ecash:limit", Math.max(lnbalance - lnthreshold, 0));
+ await s("bolt12:limit", Math.max(lnbalance - lnthreshold, 0));
+ } catch (e: any) {
+ warn("freezeCheck failed:", e.message);
+ }
setTimeout(freezeCheck, 10000);
};