From f8b0e547e6cf055636f765833e430cf06549fcbe Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Tue, 11 Apr 2023 19:22:10 +0000 Subject: upgrade websocket lib --- lib/sockets.js | 13 ++++++++----- package.json | 2 +- pnpm-lock.yaml | 14 +++++++------- watcher.sh | 2 +- 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/lib/sockets.js b/lib/sockets.js index 458c77a9..7be4936b 100644 --- a/lib/sockets.js +++ b/lib/sockets.js @@ -41,7 +41,7 @@ export const broadcast = (type, data) => { } } - Object.values(all).map(ws => { + Object.values(all).map((ws) => { if (!sent.includes(ws.id)) ws.send(JSON.stringify({ type, data })); }); }; @@ -49,14 +49,17 @@ export const broadcast = (type, data) => { export async function socketServer(app) { let seconds = (n, d = new Date()) => d.setSeconds(d.getSeconds() - n) && d; - app.get("/ws", { websocket: true }, ({ socket: ws }, req) => { + app.get("/ws", { websocket: true }, (connection, req) => { + let { socket: ws } = connection; + connection.on("error", console.log); + const id = v4(); ws.id = id; ws.beats = 0; ws.send(JSON.stringify({ type: "connected", data: id })); all[id] = ws; - ws.on("message", async message => { + ws.on("message", async (message) => { let type, data; try { ({ type, data } = JSON.parse(message)); @@ -87,7 +90,7 @@ export async function socketServer(app) { if (!store.sockets[uid]) store.sockets[uid] = {}; const existing = Object.keys(store.sockets[uid]); if (existing.length > 4) { - const p = existing.find(sid => sid !== uid); + const p = existing.find((sid) => sid !== uid); store.sockets[uid][p].send(JSON.stringify({ type: "logout" })); setTimeout(() => { if (store.sockets[uid][p]) @@ -132,7 +135,7 @@ export async function socketServer(app) { ws.on("error", console.log); - ws.on("close", function(code, reason) { + ws.on("close", function (code, reason) { try { const uid = users[id]; if (store.sockets[uid] && store.sockets[uid][id]) { diff --git a/package.json b/package.json index 554f0220..2e69bae5 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@fastify/passport": "^2.2.0", "@fastify/secure-session": "^5.2.0", "@fastify/static": "^6.5.0", - "@fastify/websocket": "^7.0.1", + "@fastify/websocket": "^7.2.0", "bcrypt": "^5.0.0", "bech32": "^2.0.0", "clightning-client": "github:SimonVrouwe/lightning-client-js#2022-11-04_improve_doc", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e82ffa6d..0485e84b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,7 +6,7 @@ specifiers: '@fastify/passport': ^2.2.0 '@fastify/secure-session': ^5.2.0 '@fastify/static': ^6.5.0 - '@fastify/websocket': ^7.0.1 + '@fastify/websocket': ^7.2.0 bcrypt: ^5.0.0 bech32: ^2.0.0 clightning-client: github:SimonVrouwe/lightning-client-js#2022-11-04_improve_doc @@ -39,7 +39,7 @@ dependencies: '@fastify/passport': 2.2.0 '@fastify/secure-session': 5.2.0 '@fastify/static': 6.5.0 - '@fastify/websocket': 7.1.0 + '@fastify/websocket': 7.2.0 bcrypt: 5.1.0 bech32: 2.0.0 clightning-client: github.com/SimonVrouwe/lightning-client-js/946642bafca572fb5d9ce2dc1316d415fa950a05 @@ -893,8 +893,8 @@ packages: - supports-color dev: false - /@fastify/websocket/7.1.0: - resolution: {integrity: sha512-aEHlymGnMOCY5pTSI6gOlLBX/5pIhQ485zyEx/m2+kITSa9vWtL08jbtAzbsaQBcqOz+bbVvxzerbHZdqQp2qQ==} + /@fastify/websocket/7.2.0: + resolution: {integrity: sha512-vhWQCT0I5a1JIKc34LXHQ2earW7kViYvhGn5x+lZr8TIOJKmx6NJk0Bw9zGWakulXhMsu/0y89QnsUnHiII9ag==} dependencies: fastify-plugin: 4.3.0 ws: 8.9.0 @@ -1979,7 +1979,7 @@ packages: source-map: 0.6.1 wordwrap: 1.0.0 optionalDependencies: - uglify-js: 3.17.3 + uglify-js: 3.17.4 dev: false /has-flag/3.0.0: @@ -3300,8 +3300,8 @@ packages: resolution: {integrity: sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==} dev: false - /uglify-js/3.17.3: - resolution: {integrity: sha512-JmMFDME3iufZnBpyKL+uS78LRiC+mK55zWfM5f/pWBJfpOttXAqYfdDGRukYhJuyRinvPVAtUhvy7rlDybNtFg==} + /uglify-js/3.17.4: + resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} engines: {node: '>=0.8.0'} hasBin: true requiresBuild: true diff --git a/watcher.sh b/watcher.sh index 5afe3a5a..405aecfb 100755 --- a/watcher.sh +++ b/watcher.sh @@ -6,7 +6,7 @@ while true do f=/home/adam/coinos-server/data/funds/$(date +"%m-%d-%y-%T").json docker exec -it cl lightning-cli listfunds > $f - lnc=$(cat $f | jr '[.channels[] | .channel_sat] | add') + lnc=$(cat $f | jr '[.channels[] | select(.state == "CHANNELD_NORMAL") | .channel_sat] | add') lnw=$(cat $f | jr '[.outputs[] | .value] | add') ln=$(node -pe "$lnc + $lnw") bc=$(docker exec -it bc bitcoin-cli getbalance | jr) -- cgit v1.2.3