sync: all server-side fixes and features

This commit is contained in:
2026-06-29 14:24:45 -04:00
parent c189bd2d83
commit 90289fede1
+2 -6
View File
@@ -49,11 +49,11 @@ function extractServer(payload: UnknownPayload): Server | null {
return payload.server as unknown as Server; return payload.server as unknown as Server;
} }
function extractIds(payload: UnknownPayload): { channelId: string; messageId: string } | null { function extractIds(payload: UnknownPayload): { channel_id: string; message_id: string } | null {
if (typeof payload.channel_id !== 'string' || typeof payload.message_id !== 'string') { if (typeof payload.channel_id !== 'string' || typeof payload.message_id !== 'string') {
return null; return null;
} }
return { channelId: payload.channel_id, messageId: payload.message_id }; return { channel_id: payload.channel_id, message_id: payload.message_id };
} }
function extractChannelId(payload: UnknownPayload): string | null { function extractChannelId(payload: UnknownPayload): string | null {
@@ -89,8 +89,6 @@ export const useWebSocketStore = create<WebSocketState>((set, get) => ({
}; };
socket.onopen = () => { socket.onopen = () => {
// Send auth token as the first message frame instead of a URL param.
// This keeps the token out of server logs, browser history, and Referer headers.
socket.send(JSON.stringify({ token })); socket.send(JSON.stringify({ token }));
}; };
@@ -102,7 +100,6 @@ export const useWebSocketStore = create<WebSocketState>((set, get) => ({
return; return;
} }
// Server sends {"type":"ready"} after successful auth.
if (data.type === 'ready') { if (data.type === 'ready') {
set({ connected: true }); set({ connected: true });
reconnectDelay = 1000; reconnectDelay = 1000;
@@ -110,7 +107,6 @@ export const useWebSocketStore = create<WebSocketState>((set, get) => ({
} }
if (data.type === 'error') { if (data.type === 'error') {
// Auth failed or server sent an error. Close and don't reconnect.
console.error('ws error:', data); console.error('ws error:', data);
socket.close(); socket.close();
return; return;