itszubariel commited on
Commit
13f4295
·
1 Parent(s): 9937153

use ws and some discord connectivity checks

Browse files
Files changed (3) hide show
  1. package-lock.json +247 -241
  2. package.json +2 -1
  3. server.js +7 -0
package-lock.json CHANGED
@@ -9,44 +9,51 @@
9
  "version": "1.0.0",
10
  "license": "ISC",
11
  "dependencies": {
12
- "express": "^5.2.1"
 
13
  }
14
  },
15
  "node_modules/accepts": {
16
- "version": "2.0.0",
17
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
18
- "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==",
19
  "license": "MIT",
20
  "dependencies": {
21
- "mime-types": "^3.0.0",
22
- "negotiator": "^1.0.0"
23
  },
24
  "engines": {
25
  "node": ">= 0.6"
26
  }
27
  },
 
 
 
 
 
 
28
  "node_modules/body-parser": {
29
- "version": "2.2.2",
30
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.2.2.tgz",
31
- "integrity": "sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA==",
32
  "license": "MIT",
33
  "dependencies": {
34
- "bytes": "^3.1.2",
35
- "content-type": "^1.0.5",
36
- "debug": "^4.4.3",
37
- "http-errors": "^2.0.0",
38
- "iconv-lite": "^0.7.0",
39
- "on-finished": "^2.4.1",
40
- "qs": "^6.14.1",
41
- "raw-body": "^3.0.1",
42
- "type-is": "^2.0.1"
 
 
 
43
  },
44
  "engines": {
45
- "node": ">=18"
46
- },
47
- "funding": {
48
- "type": "opencollective",
49
- "url": "https://opencollective.com/express"
50
  }
51
  },
52
  "node_modules/bytes": {
@@ -88,16 +95,15 @@
88
  }
89
  },
90
  "node_modules/content-disposition": {
91
- "version": "1.1.0",
92
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz",
93
- "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==",
94
  "license": "MIT",
95
- "engines": {
96
- "node": ">=18"
97
  },
98
- "funding": {
99
- "type": "opencollective",
100
- "url": "https://opencollective.com/express"
101
  }
102
  },
103
  "node_modules/content-type": {
@@ -119,29 +125,18 @@
119
  }
120
  },
121
  "node_modules/cookie-signature": {
122
- "version": "1.2.2",
123
- "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz",
124
- "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==",
125
- "license": "MIT",
126
- "engines": {
127
- "node": ">=6.6.0"
128
- }
129
  },
130
  "node_modules/debug": {
131
- "version": "4.4.3",
132
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
133
- "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
134
  "license": "MIT",
135
  "dependencies": {
136
- "ms": "^2.1.3"
137
- },
138
- "engines": {
139
- "node": ">=6.0"
140
- },
141
- "peerDependenciesMeta": {
142
- "supports-color": {
143
- "optional": true
144
- }
145
  }
146
  },
147
  "node_modules/depd": {
@@ -153,6 +148,16 @@
153
  "node": ">= 0.8"
154
  }
155
  },
 
 
 
 
 
 
 
 
 
 
156
  "node_modules/dunder-proto": {
157
  "version": "1.0.1",
158
  "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
@@ -228,42 +233,45 @@
228
  }
229
  },
230
  "node_modules/express": {
231
- "version": "5.2.1",
232
- "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz",
233
- "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==",
234
  "license": "MIT",
235
  "dependencies": {
236
- "accepts": "^2.0.0",
237
- "body-parser": "^2.2.1",
238
- "content-disposition": "^1.0.0",
239
- "content-type": "^1.0.5",
240
- "cookie": "^0.7.1",
241
- "cookie-signature": "^1.2.1",
242
- "debug": "^4.4.0",
243
- "depd": "^2.0.0",
244
- "encodeurl": "^2.0.0",
245
- "escape-html": "^1.0.3",
246
- "etag": "^1.8.1",
247
- "finalhandler": "^2.1.0",
248
- "fresh": "^2.0.0",
249
- "http-errors": "^2.0.0",
250
- "merge-descriptors": "^2.0.0",
251
- "mime-types": "^3.0.0",
252
- "on-finished": "^2.4.1",
253
- "once": "^1.4.0",
254
- "parseurl": "^1.3.3",
255
- "proxy-addr": "^2.0.7",
256
- "qs": "^6.14.0",
257
- "range-parser": "^1.2.1",
258
- "router": "^2.2.0",
259
- "send": "^1.1.0",
260
- "serve-static": "^2.2.0",
261
- "statuses": "^2.0.1",
262
- "type-is": "^2.0.1",
263
- "vary": "^1.1.2"
264
- },
265
- "engines": {
266
- "node": ">= 18"
 
 
 
267
  },
268
  "funding": {
269
  "type": "opencollective",
@@ -271,24 +279,21 @@
271
  }
272
  },
273
  "node_modules/finalhandler": {
274
- "version": "2.1.1",
275
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz",
276
- "integrity": "sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==",
277
  "license": "MIT",
278
  "dependencies": {
279
- "debug": "^4.4.0",
280
- "encodeurl": "^2.0.0",
281
- "escape-html": "^1.0.3",
282
- "on-finished": "^2.4.1",
283
- "parseurl": "^1.3.3",
284
- "statuses": "^2.0.1"
 
285
  },
286
  "engines": {
287
- "node": ">= 18.0.0"
288
- },
289
- "funding": {
290
- "type": "opencollective",
291
- "url": "https://opencollective.com/express"
292
  }
293
  },
294
  "node_modules/forwarded": {
@@ -301,12 +306,12 @@
301
  }
302
  },
303
  "node_modules/fresh": {
304
- "version": "2.0.0",
305
- "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz",
306
- "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==",
307
  "license": "MIT",
308
  "engines": {
309
- "node": ">= 0.8"
310
  }
311
  },
312
  "node_modules/function-bind": {
@@ -412,19 +417,15 @@
412
  }
413
  },
414
  "node_modules/iconv-lite": {
415
- "version": "0.7.2",
416
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.2.tgz",
417
- "integrity": "sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw==",
418
  "license": "MIT",
419
  "dependencies": {
420
- "safer-buffer": ">= 2.1.2 < 3.0.0"
421
  },
422
  "engines": {
423
  "node": ">=0.10.0"
424
- },
425
- "funding": {
426
- "type": "opencollective",
427
- "url": "https://opencollective.com/express"
428
  }
429
  },
430
  "node_modules/inherits": {
@@ -442,12 +443,6 @@
442
  "node": ">= 0.10"
443
  }
444
  },
445
- "node_modules/is-promise": {
446
- "version": "4.0.0",
447
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz",
448
- "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==",
449
- "license": "MIT"
450
- },
451
  "node_modules/math-intrinsics": {
452
  "version": "1.1.0",
453
  "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
@@ -458,61 +453,75 @@
458
  }
459
  },
460
  "node_modules/media-typer": {
461
- "version": "1.1.0",
462
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz",
463
- "integrity": "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==",
464
  "license": "MIT",
465
  "engines": {
466
- "node": ">= 0.8"
467
  }
468
  },
469
  "node_modules/merge-descriptors": {
470
- "version": "2.0.0",
471
- "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz",
472
- "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==",
473
  "license": "MIT",
474
- "engines": {
475
- "node": ">=18"
476
- },
477
  "funding": {
478
  "url": "https://github.com/sponsors/sindresorhus"
479
  }
480
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
481
  "node_modules/mime-db": {
482
- "version": "1.54.0",
483
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz",
484
- "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==",
485
  "license": "MIT",
486
  "engines": {
487
  "node": ">= 0.6"
488
  }
489
  },
490
  "node_modules/mime-types": {
491
- "version": "3.0.2",
492
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz",
493
- "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==",
494
  "license": "MIT",
495
  "dependencies": {
496
- "mime-db": "^1.54.0"
497
  },
498
  "engines": {
499
- "node": ">=18"
500
- },
501
- "funding": {
502
- "type": "opencollective",
503
- "url": "https://opencollective.com/express"
504
  }
505
  },
506
  "node_modules/ms": {
507
- "version": "2.1.3",
508
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
509
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
510
  "license": "MIT"
511
  },
512
  "node_modules/negotiator": {
513
- "version": "1.0.0",
514
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.0.0.tgz",
515
- "integrity": "sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==",
516
  "license": "MIT",
517
  "engines": {
518
  "node": ">= 0.6"
@@ -542,15 +551,6 @@
542
  "node": ">= 0.8"
543
  }
544
  },
545
- "node_modules/once": {
546
- "version": "1.4.0",
547
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
548
- "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
549
- "license": "ISC",
550
- "dependencies": {
551
- "wrappy": "1"
552
- }
553
- },
554
  "node_modules/parseurl": {
555
  "version": "1.3.3",
556
  "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
@@ -561,14 +561,10 @@
561
  }
562
  },
563
  "node_modules/path-to-regexp": {
564
- "version": "8.4.2",
565
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz",
566
- "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==",
567
- "license": "MIT",
568
- "funding": {
569
- "type": "opencollective",
570
- "url": "https://opencollective.com/express"
571
- }
572
  },
573
  "node_modules/proxy-addr": {
574
  "version": "2.0.7",
@@ -608,35 +604,39 @@
608
  }
609
  },
610
  "node_modules/raw-body": {
611
- "version": "3.0.2",
612
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz",
613
- "integrity": "sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==",
614
  "license": "MIT",
615
  "dependencies": {
616
  "bytes": "~3.1.2",
617
  "http-errors": "~2.0.1",
618
- "iconv-lite": "~0.7.0",
619
  "unpipe": "~1.0.0"
620
  },
621
  "engines": {
622
- "node": ">= 0.10"
623
  }
624
  },
625
- "node_modules/router": {
626
- "version": "2.2.0",
627
- "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz",
628
- "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==",
629
- "license": "MIT",
630
- "dependencies": {
631
- "debug": "^4.4.0",
632
- "depd": "^2.0.0",
633
- "is-promise": "^4.0.0",
634
- "parseurl": "^1.3.3",
635
- "path-to-regexp": "^8.0.0"
636
- },
637
- "engines": {
638
- "node": ">= 18"
639
- }
 
 
 
 
640
  },
641
  "node_modules/safer-buffer": {
642
  "version": "2.1.2",
@@ -645,48 +645,48 @@
645
  "license": "MIT"
646
  },
647
  "node_modules/send": {
648
- "version": "1.2.1",
649
- "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz",
650
- "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==",
651
  "license": "MIT",
652
  "dependencies": {
653
- "debug": "^4.4.3",
654
- "encodeurl": "^2.0.0",
655
- "escape-html": "^1.0.3",
656
- "etag": "^1.8.1",
657
- "fresh": "^2.0.0",
658
- "http-errors": "^2.0.1",
659
- "mime-types": "^3.0.2",
660
- "ms": "^2.1.3",
661
- "on-finished": "^2.4.1",
662
- "range-parser": "^1.2.1",
663
- "statuses": "^2.0.2"
 
 
664
  },
665
  "engines": {
666
- "node": ">= 18"
667
- },
668
- "funding": {
669
- "type": "opencollective",
670
- "url": "https://opencollective.com/express"
671
  }
672
  },
 
 
 
 
 
 
673
  "node_modules/serve-static": {
674
- "version": "2.2.1",
675
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz",
676
- "integrity": "sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==",
677
  "license": "MIT",
678
  "dependencies": {
679
- "encodeurl": "^2.0.0",
680
- "escape-html": "^1.0.3",
681
- "parseurl": "^1.3.3",
682
- "send": "^1.2.0"
683
  },
684
  "engines": {
685
- "node": ">= 18"
686
- },
687
- "funding": {
688
- "type": "opencollective",
689
- "url": "https://opencollective.com/express"
690
  }
691
  },
692
  "node_modules/setprototypeof": {
@@ -786,34 +786,16 @@
786
  }
787
  },
788
  "node_modules/type-is": {
789
- "version": "2.1.0",
790
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.1.0.tgz",
791
- "integrity": "sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==",
792
  "license": "MIT",
793
  "dependencies": {
794
- "content-type": "^2.0.0",
795
- "media-typer": "^1.1.0",
796
- "mime-types": "^3.0.0"
797
- },
798
- "engines": {
799
- "node": ">= 18"
800
  },
801
- "funding": {
802
- "type": "opencollective",
803
- "url": "https://opencollective.com/express"
804
- }
805
- },
806
- "node_modules/type-is/node_modules/content-type": {
807
- "version": "2.0.0",
808
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.0.0.tgz",
809
- "integrity": "sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==",
810
- "license": "MIT",
811
  "engines": {
812
- "node": ">=18"
813
- },
814
- "funding": {
815
- "type": "opencollective",
816
- "url": "https://opencollective.com/express"
817
  }
818
  },
819
  "node_modules/unpipe": {
@@ -825,6 +807,15 @@
825
  "node": ">= 0.8"
826
  }
827
  },
 
 
 
 
 
 
 
 
 
828
  "node_modules/vary": {
829
  "version": "1.1.2",
830
  "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
@@ -834,11 +825,26 @@
834
  "node": ">= 0.8"
835
  }
836
  },
837
- "node_modules/wrappy": {
838
- "version": "1.0.2",
839
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
840
- "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
841
- "license": "ISC"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
842
  }
843
  }
844
  }
 
9
  "version": "1.0.0",
10
  "license": "ISC",
11
  "dependencies": {
12
+ "express": "^4.21.0",
13
+ "ws": "^8.21.0"
14
  }
15
  },
16
  "node_modules/accepts": {
17
+ "version": "1.3.8",
18
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
19
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
20
  "license": "MIT",
21
  "dependencies": {
22
+ "mime-types": "~2.1.34",
23
+ "negotiator": "0.6.3"
24
  },
25
  "engines": {
26
  "node": ">= 0.6"
27
  }
28
  },
29
+ "node_modules/array-flatten": {
30
+ "version": "1.1.1",
31
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
32
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
33
+ "license": "MIT"
34
+ },
35
  "node_modules/body-parser": {
36
+ "version": "1.20.5",
37
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.5.tgz",
38
+ "integrity": "sha512-3grm+/2tUOvu2cjJkvsIxrv/wVpfXQW4PsQHYm7yk4vfpu7Ekl6nEsYBoJUL6qDwZUx8wUhQ8tR2qz+ad9c9OA==",
39
  "license": "MIT",
40
  "dependencies": {
41
+ "bytes": "~3.1.2",
42
+ "content-type": "~1.0.5",
43
+ "debug": "2.6.9",
44
+ "depd": "2.0.0",
45
+ "destroy": "~1.2.0",
46
+ "http-errors": "~2.0.1",
47
+ "iconv-lite": "~0.4.24",
48
+ "on-finished": "~2.4.1",
49
+ "qs": "~6.15.1",
50
+ "raw-body": "~2.5.3",
51
+ "type-is": "~1.6.18",
52
+ "unpipe": "~1.0.0"
53
  },
54
  "engines": {
55
+ "node": ">= 0.8",
56
+ "npm": "1.2.8000 || >= 1.4.16"
 
 
 
57
  }
58
  },
59
  "node_modules/bytes": {
 
95
  }
96
  },
97
  "node_modules/content-disposition": {
98
+ "version": "0.5.4",
99
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
100
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
101
  "license": "MIT",
102
+ "dependencies": {
103
+ "safe-buffer": "5.2.1"
104
  },
105
+ "engines": {
106
+ "node": ">= 0.6"
 
107
  }
108
  },
109
  "node_modules/content-type": {
 
125
  }
126
  },
127
  "node_modules/cookie-signature": {
128
+ "version": "1.0.7",
129
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz",
130
+ "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==",
131
+ "license": "MIT"
 
 
 
132
  },
133
  "node_modules/debug": {
134
+ "version": "2.6.9",
135
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
136
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
137
  "license": "MIT",
138
  "dependencies": {
139
+ "ms": "2.0.0"
 
 
 
 
 
 
 
 
140
  }
141
  },
142
  "node_modules/depd": {
 
148
  "node": ">= 0.8"
149
  }
150
  },
151
+ "node_modules/destroy": {
152
+ "version": "1.2.0",
153
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
154
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
155
+ "license": "MIT",
156
+ "engines": {
157
+ "node": ">= 0.8",
158
+ "npm": "1.2.8000 || >= 1.4.16"
159
+ }
160
+ },
161
  "node_modules/dunder-proto": {
162
  "version": "1.0.1",
163
  "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
 
233
  }
234
  },
235
  "node_modules/express": {
236
+ "version": "4.22.2",
237
+ "resolved": "https://registry.npmjs.org/express/-/express-4.22.2.tgz",
238
+ "integrity": "sha512-IuL+Elrou2ZvCFHs18/CIzy2Nzvo25nZ1/D2eIZlz7c+QUayAcYoiM2BthCjs+EBHVpjYjcuLDAiCWgeIX3X1Q==",
239
  "license": "MIT",
240
  "dependencies": {
241
+ "accepts": "~1.3.8",
242
+ "array-flatten": "1.1.1",
243
+ "body-parser": "~1.20.5",
244
+ "content-disposition": "~0.5.4",
245
+ "content-type": "~1.0.4",
246
+ "cookie": "~0.7.1",
247
+ "cookie-signature": "~1.0.6",
248
+ "debug": "2.6.9",
249
+ "depd": "2.0.0",
250
+ "encodeurl": "~2.0.0",
251
+ "escape-html": "~1.0.3",
252
+ "etag": "~1.8.1",
253
+ "finalhandler": "~1.3.1",
254
+ "fresh": "~0.5.2",
255
+ "http-errors": "~2.0.0",
256
+ "merge-descriptors": "1.0.3",
257
+ "methods": "~1.1.2",
258
+ "on-finished": "~2.4.1",
259
+ "parseurl": "~1.3.3",
260
+ "path-to-regexp": "~0.1.12",
261
+ "proxy-addr": "~2.0.7",
262
+ "qs": "~6.15.1",
263
+ "range-parser": "~1.2.1",
264
+ "safe-buffer": "5.2.1",
265
+ "send": "~0.19.0",
266
+ "serve-static": "~1.16.2",
267
+ "setprototypeof": "1.2.0",
268
+ "statuses": "~2.0.1",
269
+ "type-is": "~1.6.18",
270
+ "utils-merge": "1.0.1",
271
+ "vary": "~1.1.2"
272
+ },
273
+ "engines": {
274
+ "node": ">= 0.10.0"
275
  },
276
  "funding": {
277
  "type": "opencollective",
 
279
  }
280
  },
281
  "node_modules/finalhandler": {
282
+ "version": "1.3.2",
283
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.2.tgz",
284
+ "integrity": "sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==",
285
  "license": "MIT",
286
  "dependencies": {
287
+ "debug": "2.6.9",
288
+ "encodeurl": "~2.0.0",
289
+ "escape-html": "~1.0.3",
290
+ "on-finished": "~2.4.1",
291
+ "parseurl": "~1.3.3",
292
+ "statuses": "~2.0.2",
293
+ "unpipe": "~1.0.0"
294
  },
295
  "engines": {
296
+ "node": ">= 0.8"
 
 
 
 
297
  }
298
  },
299
  "node_modules/forwarded": {
 
306
  }
307
  },
308
  "node_modules/fresh": {
309
+ "version": "0.5.2",
310
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
311
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
312
  "license": "MIT",
313
  "engines": {
314
+ "node": ">= 0.6"
315
  }
316
  },
317
  "node_modules/function-bind": {
 
417
  }
418
  },
419
  "node_modules/iconv-lite": {
420
+ "version": "0.4.24",
421
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
422
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
423
  "license": "MIT",
424
  "dependencies": {
425
+ "safer-buffer": ">= 2.1.2 < 3"
426
  },
427
  "engines": {
428
  "node": ">=0.10.0"
 
 
 
 
429
  }
430
  },
431
  "node_modules/inherits": {
 
443
  "node": ">= 0.10"
444
  }
445
  },
 
 
 
 
 
 
446
  "node_modules/math-intrinsics": {
447
  "version": "1.1.0",
448
  "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
 
453
  }
454
  },
455
  "node_modules/media-typer": {
456
+ "version": "0.3.0",
457
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
458
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
459
  "license": "MIT",
460
  "engines": {
461
+ "node": ">= 0.6"
462
  }
463
  },
464
  "node_modules/merge-descriptors": {
465
+ "version": "1.0.3",
466
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
467
+ "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
468
  "license": "MIT",
 
 
 
469
  "funding": {
470
  "url": "https://github.com/sponsors/sindresorhus"
471
  }
472
  },
473
+ "node_modules/methods": {
474
+ "version": "1.1.2",
475
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
476
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
477
+ "license": "MIT",
478
+ "engines": {
479
+ "node": ">= 0.6"
480
+ }
481
+ },
482
+ "node_modules/mime": {
483
+ "version": "1.6.0",
484
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
485
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
486
+ "license": "MIT",
487
+ "bin": {
488
+ "mime": "cli.js"
489
+ },
490
+ "engines": {
491
+ "node": ">=4"
492
+ }
493
+ },
494
  "node_modules/mime-db": {
495
+ "version": "1.52.0",
496
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
497
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
498
  "license": "MIT",
499
  "engines": {
500
  "node": ">= 0.6"
501
  }
502
  },
503
  "node_modules/mime-types": {
504
+ "version": "2.1.35",
505
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
506
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
507
  "license": "MIT",
508
  "dependencies": {
509
+ "mime-db": "1.52.0"
510
  },
511
  "engines": {
512
+ "node": ">= 0.6"
 
 
 
 
513
  }
514
  },
515
  "node_modules/ms": {
516
+ "version": "2.0.0",
517
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
518
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
519
  "license": "MIT"
520
  },
521
  "node_modules/negotiator": {
522
+ "version": "0.6.3",
523
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
524
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
525
  "license": "MIT",
526
  "engines": {
527
  "node": ">= 0.6"
 
551
  "node": ">= 0.8"
552
  }
553
  },
 
 
 
 
 
 
 
 
 
554
  "node_modules/parseurl": {
555
  "version": "1.3.3",
556
  "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
 
561
  }
562
  },
563
  "node_modules/path-to-regexp": {
564
+ "version": "0.1.13",
565
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.13.tgz",
566
+ "integrity": "sha512-A/AGNMFN3c8bOlvV9RreMdrv7jsmF9XIfDeCd87+I8RNg6s78BhJxMu69NEMHBSJFxKidViTEdruRwEk/WIKqA==",
567
+ "license": "MIT"
 
 
 
 
568
  },
569
  "node_modules/proxy-addr": {
570
  "version": "2.0.7",
 
604
  }
605
  },
606
  "node_modules/raw-body": {
607
+ "version": "2.5.3",
608
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.3.tgz",
609
+ "integrity": "sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA==",
610
  "license": "MIT",
611
  "dependencies": {
612
  "bytes": "~3.1.2",
613
  "http-errors": "~2.0.1",
614
+ "iconv-lite": "~0.4.24",
615
  "unpipe": "~1.0.0"
616
  },
617
  "engines": {
618
+ "node": ">= 0.8"
619
  }
620
  },
621
+ "node_modules/safe-buffer": {
622
+ "version": "5.2.1",
623
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
624
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
625
+ "funding": [
626
+ {
627
+ "type": "github",
628
+ "url": "https://github.com/sponsors/feross"
629
+ },
630
+ {
631
+ "type": "patreon",
632
+ "url": "https://www.patreon.com/feross"
633
+ },
634
+ {
635
+ "type": "consulting",
636
+ "url": "https://feross.org/support"
637
+ }
638
+ ],
639
+ "license": "MIT"
640
  },
641
  "node_modules/safer-buffer": {
642
  "version": "2.1.2",
 
645
  "license": "MIT"
646
  },
647
  "node_modules/send": {
648
+ "version": "0.19.2",
649
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.2.tgz",
650
+ "integrity": "sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg==",
651
  "license": "MIT",
652
  "dependencies": {
653
+ "debug": "2.6.9",
654
+ "depd": "2.0.0",
655
+ "destroy": "1.2.0",
656
+ "encodeurl": "~2.0.0",
657
+ "escape-html": "~1.0.3",
658
+ "etag": "~1.8.1",
659
+ "fresh": "~0.5.2",
660
+ "http-errors": "~2.0.1",
661
+ "mime": "1.6.0",
662
+ "ms": "2.1.3",
663
+ "on-finished": "~2.4.1",
664
+ "range-parser": "~1.2.1",
665
+ "statuses": "~2.0.2"
666
  },
667
  "engines": {
668
+ "node": ">= 0.8.0"
 
 
 
 
669
  }
670
  },
671
+ "node_modules/send/node_modules/ms": {
672
+ "version": "2.1.3",
673
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
674
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
675
+ "license": "MIT"
676
+ },
677
  "node_modules/serve-static": {
678
+ "version": "1.16.3",
679
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.3.tgz",
680
+ "integrity": "sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA==",
681
  "license": "MIT",
682
  "dependencies": {
683
+ "encodeurl": "~2.0.0",
684
+ "escape-html": "~1.0.3",
685
+ "parseurl": "~1.3.3",
686
+ "send": "~0.19.1"
687
  },
688
  "engines": {
689
+ "node": ">= 0.8.0"
 
 
 
 
690
  }
691
  },
692
  "node_modules/setprototypeof": {
 
786
  }
787
  },
788
  "node_modules/type-is": {
789
+ "version": "1.6.18",
790
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
791
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
792
  "license": "MIT",
793
  "dependencies": {
794
+ "media-typer": "0.3.0",
795
+ "mime-types": "~2.1.24"
 
 
 
 
796
  },
 
 
 
 
 
 
 
 
 
 
797
  "engines": {
798
+ "node": ">= 0.6"
 
 
 
 
799
  }
800
  },
801
  "node_modules/unpipe": {
 
807
  "node": ">= 0.8"
808
  }
809
  },
810
+ "node_modules/utils-merge": {
811
+ "version": "1.0.1",
812
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
813
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
814
+ "license": "MIT",
815
+ "engines": {
816
+ "node": ">= 0.4.0"
817
+ }
818
+ },
819
  "node_modules/vary": {
820
  "version": "1.1.2",
821
  "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
 
825
  "node": ">= 0.8"
826
  }
827
  },
828
+ "node_modules/ws": {
829
+ "version": "8.21.0",
830
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz",
831
+ "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==",
832
+ "license": "MIT",
833
+ "engines": {
834
+ "node": ">=10.0.0"
835
+ },
836
+ "peerDependencies": {
837
+ "bufferutil": "^4.0.1",
838
+ "utf-8-validate": ">=5.0.2"
839
+ },
840
+ "peerDependenciesMeta": {
841
+ "bufferutil": {
842
+ "optional": true
843
+ },
844
+ "utf-8-validate": {
845
+ "optional": true
846
+ }
847
+ }
848
  }
849
  }
850
  }
package.json CHANGED
@@ -12,6 +12,7 @@
12
  "license": "ISC",
13
  "type": "commonjs",
14
  "dependencies": {
15
- "express": "^4.21.0"
 
16
  }
17
  }
 
12
  "license": "ISC",
13
  "type": "commonjs",
14
  "dependencies": {
15
+ "express": "^4.21.0",
16
+ "ws": "^8.21.0"
17
  }
18
  }
server.js CHANGED
@@ -2,6 +2,7 @@ const express = require('express');
2
  const { spawn, execSync } = require('child_process');
3
  const fs = require('fs');
4
  const path = require('path');
 
5
 
6
  const app = express();
7
  app.use(express.json({ limit: '10mb' }));
@@ -9,6 +10,12 @@ app.use(express.json({ limit: '10mb' }));
9
  const ZBR_SECRET = process.env.ZBR_SECRET;
10
  const processes = new Map();
11
 
 
 
 
 
 
 
12
  try {
13
  const version = execSync('/usr/local/bin/zbr --version').toString();
14
  console.log("ZBR binary version:", version);
 
2
  const { spawn, execSync } = require('child_process');
3
  const fs = require('fs');
4
  const path = require('path');
5
+ const WebSocket = require('ws');
6
 
7
  const app = express();
8
  app.use(express.json({ limit: '10mb' }));
 
10
  const ZBR_SECRET = process.env.ZBR_SECRET;
11
  const processes = new Map();
12
 
13
+ // Discord Gateway Connectivity Test
14
+ const ws = new WebSocket('wss://gateway.discord.gg/?v=10&encoding=json');
15
+ ws.on('open', () => console.log('Discord WebSocket: REACHABLE'));
16
+ ws.on('error', (e) => console.log('Discord WebSocket: BLOCKED -', e.message));
17
+ ws.on('close', () => console.log('Discord WebSocket: closed'));
18
+
19
  try {
20
  const version = execSync('/usr/local/bin/zbr --version').toString();
21
  console.log("ZBR binary version:", version);