@mixd-id/web-scaffold 0.1.230406295 → 0.1.230406296
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.
- package/package.json +1 -1
- package/src/utils/wss.js +8 -1
- package/src/utils/wss.mjs +0 -1
package/package.json
CHANGED
package/src/utils/wss.js
CHANGED
|
@@ -71,6 +71,7 @@ class WSS extends EventEmitter2{
|
|
|
71
71
|
|
|
72
72
|
_authFn = []
|
|
73
73
|
_reqFn = []
|
|
74
|
+
_retryCount = 0
|
|
74
75
|
|
|
75
76
|
async fromBinaryData(binaryData){
|
|
76
77
|
const encryptedString = Buffer.from(binaryData).toString('utf-8');
|
|
@@ -142,6 +143,7 @@ class WSS extends EventEmitter2{
|
|
|
142
143
|
|
|
143
144
|
if(pong){
|
|
144
145
|
delete socket.pinging
|
|
146
|
+
this._retryCount = 0
|
|
145
147
|
}
|
|
146
148
|
else if(ping){
|
|
147
149
|
socket.send(await this.toBinaryData({ pong: 1 }))
|
|
@@ -196,13 +198,18 @@ class WSS extends EventEmitter2{
|
|
|
196
198
|
}
|
|
197
199
|
|
|
198
200
|
if(this._opt.ping !== false){
|
|
201
|
+
|
|
199
202
|
const ping = async() => {
|
|
200
203
|
socket.send(await this.toBinaryData({ ping:1 }))
|
|
201
204
|
socket.pinging = true
|
|
202
205
|
|
|
203
206
|
setTimeout(() => {
|
|
204
207
|
if(socket.pinging){
|
|
205
|
-
|
|
208
|
+
this._retryCount++
|
|
209
|
+
|
|
210
|
+
if(this._retryCount > 10){
|
|
211
|
+
socket.close(1002, 'ping timeout')
|
|
212
|
+
}
|
|
206
213
|
}
|
|
207
214
|
else{
|
|
208
215
|
setTimeout(ping, (Math.round(Math.random() * 10) % 5) * 5000)
|
package/src/utils/wss.mjs
CHANGED
|
@@ -66,7 +66,6 @@ class WSS extends EventEmitter2{
|
|
|
66
66
|
if(typeof window !== 'undefined'){
|
|
67
67
|
window.addEventListener('visibilitychange', () => {
|
|
68
68
|
if(document.visibilityState === 'visible'){
|
|
69
|
-
console.log('visibilitychange', this._instance.readyState)
|
|
70
69
|
this.emit('visibilitychange', this._instance.readyState, [])
|
|
71
70
|
|
|
72
71
|
this.ping().catch(e => {
|