diff --git a/extensions/bluebubbles/src/monitor.ts b/extensions/bluebubbles/src/monitor.ts index ffdb14f81d8..ce0ca8d42f4 100644 --- a/extensions/bluebubbles/src/monitor.ts +++ b/extensions/bluebubbles/src/monitor.ts @@ -335,7 +335,13 @@ export async function handleBlueBubblesWebhookRequest( const body = await readJsonBody(req, 1024 * 1024); if (!body.ok) { - res.statusCode = body.error === "payload too large" ? 413 : 400; + if (body.error === "payload too large") { + res.statusCode = 413; + } else if (body.error === "request body timeout") { + res.statusCode = 408; + } else { + res.statusCode = 400; + } res.end(body.error ?? "invalid payload"); console.warn(`[bluebubbles] webhook rejected: ${body.error ?? "invalid payload"}`); return true; diff --git a/src/discord/monitor/provider.ts b/src/discord/monitor/provider.ts index 10ecb563a8a..b8233f18f41 100644 --- a/src/discord/monitor/provider.ts +++ b/src/discord/monitor/provider.ts @@ -79,19 +79,16 @@ function createDiscordGatewayPlugin(params: { params.runtime.log?.("discord: gateway proxy enabled"); class ProxyGatewayPlugin extends GatewayPlugin { - #proxyAgent: HttpsProxyAgent; - - constructor(proxyAgent: HttpsProxyAgent) { + constructor() { super(options); - this.#proxyAgent = proxyAgent; } createWebSocket(url: string) { - return new WebSocket(url, { agent: this.#proxyAgent }); + return new WebSocket(url, { agent }); } } - return new ProxyGatewayPlugin(agent); + return new ProxyGatewayPlugin(); } catch (err) { params.runtime.error?.(danger(`discord: invalid gateway proxy: ${String(err)}`)); return new GatewayPlugin(options);