UBERF-9710: Fix always on status on front (#8391)
Some checks are pending
CI / build (push) Waiting to run
CI / svelte-check (push) Blocked by required conditions
CI / formatting (push) Blocked by required conditions
CI / test (push) Blocked by required conditions
CI / uitest (push) Waiting to run
CI / uitest-pg (push) Waiting to run
CI / uitest-qms (push) Waiting to run
CI / uitest-workspaces (push) Waiting to run
CI / docker-build (push) Blocked by required conditions
CI / dist-build (push) Blocked by required conditions

Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
This commit is contained in:
Andrey Sobolev 2025-03-30 01:35:06 +07:00 committed by GitHub
parent 32d96e5dce
commit 8d2a7b541b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -801,7 +801,7 @@ export class TSessionManager implements SessionManager {
// No response // No response
}, },
ctx, ctx,
socialStringsToUsers: this.getActiveSocialStringsToUsersMap(workspaceId), socialStringsToUsers: this.getActiveSocialStringsToUsersMap(workspaceId, session),
sendError: async () => { sendError: async () => {
// Assume no error send // Assume no error send
}, },
@ -1072,19 +1072,19 @@ export class TSessionManager implements SessionManager {
} }
// TODO: cache this map and update when sessions created/closed // TODO: cache this map and update when sessions created/closed
getActiveSocialStringsToUsersMap (workspace: WorkspaceUuid): Map<PersonId, AccountUuid> { getActiveSocialStringsToUsersMap (workspace: WorkspaceUuid, ...extra: Session[]): Map<PersonId, AccountUuid> {
const ws = this.workspaces.get(workspace) const ws = this.workspaces.get(workspace)
if (ws === undefined) { if (ws === undefined) {
return new Map() return new Map()
} }
const res = new Map<PersonId, AccountUuid>() const res = new Map<PersonId, AccountUuid>()
for (const s of ws.sessions.values()) { for (const s of [...Array.from(ws.sessions.values()).map((it) => it.session), ...extra]) {
const sessionAccount = s.session.getUser() const sessionAccount = s.getUser()
if (sessionAccount === systemAccountUuid) { if (sessionAccount === systemAccountUuid) {
continue continue
} }
const userSocialIds = s.session.getUserSocialIds() const userSocialIds = s.getUserSocialIds()
for (const id of userSocialIds) { for (const id of userSocialIds) {
res.set(id, sessionAccount) res.set(id, sessionAccount)
} }
@ -1358,7 +1358,7 @@ export function startSessionManager (
opt.brandingMap, opt.brandingMap,
{ {
pingTimeout: opt.pingTimeout ?? 10000, pingTimeout: opt.pingTimeout ?? 10000,
reconnectTimeout: 500 reconnectTimeout: 5 // seconds to reconnect
}, },
opt.profiling, opt.profiling,
opt.accountsUrl, opt.accountsUrl,