tlsd 2.16.1 → 2.16.3
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/rpc_static/rpc/rpc.js +19 -3
package/package.json
CHANGED
package/rpc_static/rpc/rpc.js
CHANGED
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
|
|
96
96
|
const waiting = new WaitList()
|
|
97
97
|
|
|
98
|
-
const send = function(m, cb, fail) {
|
|
98
|
+
const send = async function(m, cb, fail) {
|
|
99
99
|
if(m.msg_id === undefined) {
|
|
100
100
|
m.msg_id = "CMID-" + next_seq(); // every message must have an id
|
|
101
101
|
}
|
|
@@ -105,8 +105,24 @@
|
|
|
105
105
|
waiting.ins( { msg: m, cb, fail }, m.msg_id );
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
|
|
109
|
-
|
|
108
|
+
const MAX_WAIT_TIME = 10000; // 10 seconds
|
|
109
|
+
const startTime = Date.now();
|
|
110
|
+
while(socket.readyState !== WebSocket.OPEN) {
|
|
111
|
+
if(Date.now() - startTime >= MAX_WAIT_TIME) {
|
|
112
|
+
if(fail) fail("WebSocket connection timeout after " + MAX_WAIT_TIME + "ms");
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
DBG("Waiting for socket to be open", socket.readyState, MAX_WAIT_TIME - (Date.now() - startTime));
|
|
116
|
+
await new Promise(resolve => setTimeout(resolve, 200));
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
try {
|
|
120
|
+
DBG(">>--->", m, socket.readyState );
|
|
121
|
+
socket.send( o2j( m ) );
|
|
122
|
+
} catch(error) {
|
|
123
|
+
DBG("Send error:", error);
|
|
124
|
+
if(fail) fail(error);
|
|
125
|
+
}
|
|
110
126
|
}
|
|
111
127
|
|
|
112
128
|
var loc = document.location
|