openclaw-vchat-plugin 0.0.12 → 0.0.15
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/dist/index.js +41 -5
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +40 -5
package/dist/index.js
CHANGED
|
@@ -131,6 +131,9 @@ function getInstallationId() {
|
|
|
131
131
|
}
|
|
132
132
|
// ===== 反向 WS 隧道 =====
|
|
133
133
|
let tunnelWs = null;
|
|
134
|
+
let reconnectAttempt = 0;
|
|
135
|
+
const RECONNECT_BASE_MS = 1000;
|
|
136
|
+
const RECONNECT_MAX_MS = 30000;
|
|
134
137
|
let gateway;
|
|
135
138
|
let relayServer = null;
|
|
136
139
|
let tunnelMessageHandler = null;
|
|
@@ -160,15 +163,40 @@ function connectTunnel(deviceToken) {
|
|
|
160
163
|
+ `/ws/plugin?deviceToken=${encodeURIComponent(deviceToken)}`;
|
|
161
164
|
console.log('[隧道] 正在连接后端...');
|
|
162
165
|
tunnelWs = new ws_1.default(wsUrl);
|
|
166
|
+
// 插件侧心跳: 检测半开 TCP
|
|
167
|
+
let pongReceived = true;
|
|
168
|
+
let heartbeatTimer = null;
|
|
163
169
|
tunnelWs.on('open', () => {
|
|
170
|
+
reconnectAttempt = 0; // 连接成功,重置退避
|
|
164
171
|
console.log('[隧道] ✅ 已连接到后端,等待小程序消息');
|
|
172
|
+
heartbeatTimer = setInterval(() => {
|
|
173
|
+
if (!tunnelWs || tunnelWs.readyState !== ws_1.default.OPEN) {
|
|
174
|
+
if (heartbeatTimer)
|
|
175
|
+
clearInterval(heartbeatTimer);
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
if (!pongReceived) {
|
|
179
|
+
console.log('[隧道] 心跳超时,强制断开');
|
|
180
|
+
if (heartbeatTimer)
|
|
181
|
+
clearInterval(heartbeatTimer);
|
|
182
|
+
tunnelWs.terminate(); // 强制关闭 → 触发 close → 重连
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
pongReceived = false;
|
|
186
|
+
tunnelWs.ping();
|
|
187
|
+
}, 25000);
|
|
165
188
|
});
|
|
189
|
+
tunnelWs.on('pong', () => { pongReceived = true; });
|
|
166
190
|
tunnelWs.on('message', (data) => {
|
|
167
191
|
// 后端转发的小程序消息 → 处理并回复
|
|
168
192
|
handleClientMessage(data.toString());
|
|
169
193
|
});
|
|
170
194
|
tunnelWs.on('close', (code, reason) => {
|
|
171
195
|
console.log(`[隧道] 断开 (${code}): ${reason}`);
|
|
196
|
+
if (heartbeatTimer) {
|
|
197
|
+
clearInterval(heartbeatTimer);
|
|
198
|
+
heartbeatTimer = null;
|
|
199
|
+
}
|
|
172
200
|
for (const abort of tunnelAbortByUser.values()) {
|
|
173
201
|
try {
|
|
174
202
|
abort();
|
|
@@ -177,11 +205,19 @@ function connectTunnel(deviceToken) {
|
|
|
177
205
|
}
|
|
178
206
|
tunnelAbortByUser.clear();
|
|
179
207
|
tunnelWs = null;
|
|
180
|
-
//
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
208
|
+
// 指数退避 + jitter; code 1012 = 服务器重启,快速重连
|
|
209
|
+
let delayMs;
|
|
210
|
+
if (code === 1012) {
|
|
211
|
+
delayMs = 1000 + Math.random() * 2000;
|
|
212
|
+
reconnectAttempt = 0;
|
|
213
|
+
}
|
|
214
|
+
else {
|
|
215
|
+
delayMs = Math.min(RECONNECT_BASE_MS * Math.pow(2, reconnectAttempt), RECONNECT_MAX_MS);
|
|
216
|
+
delayMs *= (0.7 + Math.random() * 0.6); // jitter ±30%
|
|
217
|
+
reconnectAttempt++;
|
|
218
|
+
}
|
|
219
|
+
console.log(`[隧道] ${(delayMs / 1000).toFixed(1)}秒后重连 (attempt=${reconnectAttempt})...`);
|
|
220
|
+
setTimeout(() => connectTunnel(deviceToken), delayMs);
|
|
185
221
|
});
|
|
186
222
|
tunnelWs.on('error', (err) => {
|
|
187
223
|
console.error('[隧道] 连接错误:', err.message);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -140,6 +140,9 @@ function getInstallationId(): string {
|
|
|
140
140
|
// ===== 反向 WS 隧道 =====
|
|
141
141
|
|
|
142
142
|
let tunnelWs: WebSocket | null = null;
|
|
143
|
+
let reconnectAttempt = 0;
|
|
144
|
+
const RECONNECT_BASE_MS = 1000;
|
|
145
|
+
const RECONNECT_MAX_MS = 30000;
|
|
143
146
|
let gateway: GatewayClient;
|
|
144
147
|
let relayServer: ReturnType<typeof createRelayServer> | null = null;
|
|
145
148
|
let tunnelMessageHandler: MessageHandler | null = null;
|
|
@@ -185,10 +188,32 @@ function connectTunnel(deviceToken: string): void {
|
|
|
185
188
|
console.log('[隧道] 正在连接后端...');
|
|
186
189
|
tunnelWs = new WebSocket(wsUrl);
|
|
187
190
|
|
|
191
|
+
// 插件侧心跳: 检测半开 TCP
|
|
192
|
+
let pongReceived = true;
|
|
193
|
+
let heartbeatTimer: ReturnType<typeof setInterval> | null = null;
|
|
194
|
+
|
|
188
195
|
tunnelWs.on('open', () => {
|
|
196
|
+
reconnectAttempt = 0; // 连接成功,重置退避
|
|
189
197
|
console.log('[隧道] ✅ 已连接到后端,等待小程序消息');
|
|
198
|
+
|
|
199
|
+
heartbeatTimer = setInterval(() => {
|
|
200
|
+
if (!tunnelWs || tunnelWs.readyState !== WebSocket.OPEN) {
|
|
201
|
+
if (heartbeatTimer) clearInterval(heartbeatTimer);
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
if (!pongReceived) {
|
|
205
|
+
console.log('[隧道] 心跳超时,强制断开');
|
|
206
|
+
if (heartbeatTimer) clearInterval(heartbeatTimer);
|
|
207
|
+
tunnelWs.terminate(); // 强制关闭 → 触发 close → 重连
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
pongReceived = false;
|
|
211
|
+
tunnelWs.ping();
|
|
212
|
+
}, 25000);
|
|
190
213
|
});
|
|
191
214
|
|
|
215
|
+
tunnelWs.on('pong', () => { pongReceived = true; });
|
|
216
|
+
|
|
192
217
|
tunnelWs.on('message', (data) => {
|
|
193
218
|
// 后端转发的小程序消息 → 处理并回复
|
|
194
219
|
handleClientMessage(data.toString());
|
|
@@ -196,16 +221,26 @@ function connectTunnel(deviceToken: string): void {
|
|
|
196
221
|
|
|
197
222
|
tunnelWs.on('close', (code, reason) => {
|
|
198
223
|
console.log(`[隧道] 断开 (${code}): ${reason}`);
|
|
224
|
+
if (heartbeatTimer) { clearInterval(heartbeatTimer); heartbeatTimer = null; }
|
|
199
225
|
for (const abort of tunnelAbortByUser.values()) {
|
|
200
226
|
try { abort(); } catch { /* ignore */ }
|
|
201
227
|
}
|
|
202
228
|
tunnelAbortByUser.clear();
|
|
203
229
|
tunnelWs = null;
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
230
|
+
|
|
231
|
+
// 指数退避 + jitter; code 1012 = 服务器重启,快速重连
|
|
232
|
+
let delayMs: number;
|
|
233
|
+
if (code === 1012) {
|
|
234
|
+
delayMs = 1000 + Math.random() * 2000;
|
|
235
|
+
reconnectAttempt = 0;
|
|
236
|
+
} else {
|
|
237
|
+
delayMs = Math.min(RECONNECT_BASE_MS * Math.pow(2, reconnectAttempt), RECONNECT_MAX_MS);
|
|
238
|
+
delayMs *= (0.7 + Math.random() * 0.6); // jitter ±30%
|
|
239
|
+
reconnectAttempt++;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
console.log(`[隧道] ${(delayMs / 1000).toFixed(1)}秒后重连 (attempt=${reconnectAttempt})...`);
|
|
243
|
+
setTimeout(() => connectTunnel(deviceToken), delayMs);
|
|
209
244
|
});
|
|
210
245
|
|
|
211
246
|
tunnelWs.on('error', (err) => {
|