diegosouzapw/OmniRoute · error
upgrade_required
upgrade_required
Error message
Use WebSocket.
What it means
Error "Use WebSocket." thrown in diegosouzapw/OmniRoute.
Source
Thrown at src/lib/services/embedWsProxy.ts:251
* permanently "disconnected" in headless deployments (#5110). Defaults to
* loopback for safety when neither is set.
*/
export function resolveEmbedWsHost(): string {
return process.env.EMBED_WS_PROXY_HOST ?? process.env.LIVE_WS_HOST ?? DEFAULT_HOST;
}
/**
* Start the embed WebSocket proxy server.
* Idempotent — safe to call multiple times.
*/
export function initEmbedWsProxy(): void {
if (globalThis.__omnirouteEmbedWsStarted) return;
const host = resolveEmbedWsHost();
const port = parseInt(process.env.EMBED_WS_PROXY_PORT ?? String(DEFAULT_PORT), 10);
const server = http.createServer((_req, res) => {
res.writeHead(426, "Upgrade Required", { "content-type": "application/json" });
res.end(JSON.stringify({ error: "upgrade_required", message: "Use WebSocket." }));
});
server.on("upgrade", (req: IncomingMessage, socket: net.Socket, head: Buffer) => {
proxyUpgrade(req, socket, head).catch((err: unknown) => {
const msg = err instanceof Error ? err.message : String(err);
writeError(socket, 500, `Internal proxy error: ${msg}`);
});
});
server.on("error", (err: NodeJS.ErrnoException) => {
if (err.code === "EADDRINUSE") {
console.warn(`[EmbedWsProxy] Port ${port} is already in use — embed WS proxy disabled.`);
return;
}
console.warn("[EmbedWsProxy] Failed to start:", err.message);
});
View on GitHub (pinned to a179ffed5b)
When it happens
Trigger: Thrown at src/lib/services/embedWsProxy.ts:251 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of diegosouzapw/OmniRoute@a179ffed5b (2026-08-25).
Data as JSON: /api/errors/fff86535174df833.
Report an issue: GitHub.