Usa heartbeats reais para marcar máquina online no chat
This commit is contained in:
parent
da5a8f8380
commit
81d1a7c7f7
1 changed files with 13 additions and 1 deletions
|
|
@ -3111,7 +3111,19 @@ export const listChatMessages = query({
|
||||||
if (machine) {
|
if (machine) {
|
||||||
const fiveMinutesAgo = now - 5 * 60 * 1000
|
const fiveMinutesAgo = now - 5 * 60 * 1000
|
||||||
liveChat.hasMachine = true
|
liveChat.hasMachine = true
|
||||||
liveChat.machineOnline = Boolean(machine.lastHeartbeatAt && machine.lastHeartbeatAt > fiveMinutesAgo)
|
// Usa tabela de heartbeats (fonte de verdade) com fallback para campo legado
|
||||||
|
let lastHeartbeatAt: number | null = null
|
||||||
|
const hb = await ctx.db
|
||||||
|
.query("machineHeartbeats")
|
||||||
|
.withIndex("by_machine", (q) => q.eq("machineId", machine._id))
|
||||||
|
.first()
|
||||||
|
if (hb?.lastHeartbeatAt) {
|
||||||
|
lastHeartbeatAt = hb.lastHeartbeatAt
|
||||||
|
} else if (machine.lastHeartbeatAt) {
|
||||||
|
lastHeartbeatAt = machine.lastHeartbeatAt
|
||||||
|
}
|
||||||
|
|
||||||
|
liveChat.machineOnline = Boolean(lastHeartbeatAt && lastHeartbeatAt > fiveMinutesAgo)
|
||||||
liveChat.machineHostname = machine.hostname
|
liveChat.machineHostname = machine.hostname
|
||||||
|
|
||||||
// Verificar sessao ativa
|
// Verificar sessao ativa
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue