Fix WS debug: console.debug → console.log, log slug/token values
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -22,7 +22,11 @@ export function useHotelSocket({ slug, token, onMessage }: Options) {
|
|||||||
const [connected, setConnected] = useState(false)
|
const [connected, setConnected] = useState(false)
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!slug || !token) return
|
console.log('[WS] init — slug:', slug || '(empty)', 'token:', token ? 'present' : 'null')
|
||||||
|
if (!slug || !token) {
|
||||||
|
console.warn('[WS] skipped — missing slug or token')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
let destroyed = false
|
let destroyed = false
|
||||||
let reconnectTimer: ReturnType<typeof setTimeout> | null = null
|
let reconnectTimer: ReturnType<typeof setTimeout> | null = null
|
||||||
@@ -34,6 +38,7 @@ export function useHotelSocket({ slug, token, onMessage }: Options) {
|
|||||||
const base = (import.meta.env.VITE_API_URL as string | undefined) ?? 'https://api.hotelsync.ru'
|
const base = (import.meta.env.VITE_API_URL as string | undefined) ?? 'https://api.hotelsync.ru'
|
||||||
const wsBase = base.replace(/^https/, 'wss').replace(/^http(?!s)/, 'ws')
|
const wsBase = base.replace(/^https/, 'wss').replace(/^http(?!s)/, 'ws')
|
||||||
const url = `${wsBase}/ws?hotel=${encodeURIComponent(slug)}&token=${encodeURIComponent(token!)}`
|
const url = `${wsBase}/ws?hotel=${encodeURIComponent(slug)}&token=${encodeURIComponent(token!)}`
|
||||||
|
console.log('[WS] connecting to', url.replace(/token=[^&]+/, 'token=***'))
|
||||||
|
|
||||||
const ws = new WebSocket(url)
|
const ws = new WebSocket(url)
|
||||||
wsRef.current = ws
|
wsRef.current = ws
|
||||||
@@ -42,7 +47,7 @@ export function useHotelSocket({ slug, token, onMessage }: Options) {
|
|||||||
if (destroyed) { ws.close(); return }
|
if (destroyed) { ws.close(); return }
|
||||||
setConnected(true)
|
setConnected(true)
|
||||||
attempts = 0
|
attempts = 0
|
||||||
console.debug('[WS] connected', slug)
|
console.log('[WS] connected ✓ hotel:', slug)
|
||||||
}
|
}
|
||||||
|
|
||||||
ws.onmessage = (e) => {
|
ws.onmessage = (e) => {
|
||||||
@@ -59,7 +64,7 @@ export function useHotelSocket({ slug, token, onMessage }: Options) {
|
|||||||
if (destroyed) return
|
if (destroyed) return
|
||||||
const delay = Math.min(1000 * 2 ** attempts, 30_000)
|
const delay = Math.min(1000 * 2 ** attempts, 30_000)
|
||||||
attempts++
|
attempts++
|
||||||
console.debug(`[WS] closed (${ev.code}), reconnecting in ${delay}ms (attempt ${attempts})`)
|
console.log(`[WS] closed (code ${ev.code}), retry in ${delay}ms`)
|
||||||
reconnectTimer = setTimeout(connect, delay)
|
reconnectTimer = setTimeout(connect, delay)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user