corebasic 1.0.78 → 1.0.79

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/libs/messaging.js +15 -0
  2. package/package.json +1 -1
package/libs/messaging.js CHANGED
@@ -13,6 +13,9 @@ let users_pool = {
13
13
  }
14
14
 
15
15
  async function disconnect(user, uid) {
16
+ if (!users_pool[user])
17
+ return
18
+
16
19
  if (users_pool[user].listeners[uid]) {
17
20
  await consumer.unsubscribe(user, users_pool[user].listeners[uid]);
18
21
  users_pool[user].listeners.count --
@@ -51,6 +54,18 @@ export async function start(app) {
51
54
  req.on("close", async () => await disconnect(req.params.user, uid)) // request closed unexpectedly
52
55
  req.on("end", async () => await disconnect(req.params.user, uid)) // request ended normally
53
56
  })
57
+ app.get('/messages/disconnects/:user', async (req, res) => {
58
+ if (users_pool[req.params.user]) {
59
+ let userRes = users_pool[req.params.user].res
60
+ for (let uid in users_pool[req.params.user].listeners) {
61
+ if (uid === "count")
62
+ continue
63
+ await disconnect(req.params.user, uid)
64
+ }
65
+ userRes.end()
66
+ }
67
+ res.json({})
68
+ })
54
69
  }
55
70
 
56
71
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "corebasic",
3
3
  "type": "module",
4
- "version": "1.0.78",
4
+ "version": "1.0.79",
5
5
  "description": "",
6
6
  "main": "index.js",
7
7
  "scripts": {