feat: expose autoAcceptPeering in admin settings and add rejectedPeerOrigins to ready payload
This commit is contained in:
@@ -192,6 +192,7 @@ export async function settingsRoutes(app: FastifyInstance): Promise<void> {
|
|||||||
federationRelayEnabled: row.federationRelayEnabled === 1,
|
federationRelayEnabled: row.federationRelayEnabled === 1,
|
||||||
federationRelayTtlDays: row.federationRelayTtlDays,
|
federationRelayTtlDays: row.federationRelayTtlDays,
|
||||||
defaultAutoRotateIntervalDays: row.defaultAutoRotateIntervalDays,
|
defaultAutoRotateIntervalDays: row.defaultAutoRotateIntervalDays,
|
||||||
|
autoAcceptPeering: row.autoAcceptPeering === 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
return reply.code(200).send(response);
|
return reply.code(200).send(response);
|
||||||
@@ -258,6 +259,10 @@ export async function settingsRoutes(app: FastifyInstance): Promise<void> {
|
|||||||
updateData.defaultAutoRotateIntervalDays = interval;
|
updateData.defaultAutoRotateIntervalDays = interval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (body.autoAcceptPeering !== undefined) {
|
||||||
|
updateData.autoAcceptPeering = body.autoAcceptPeering ? 1 : 0;
|
||||||
|
}
|
||||||
|
|
||||||
db.update(schema.instanceSettings).set(updateData).where(eq(schema.instanceSettings.id, 1)).run();
|
db.update(schema.instanceSettings).set(updateData).where(eq(schema.instanceSettings.id, 1)).run();
|
||||||
|
|
||||||
const updatedRow = db.select().from(schema.instanceSettings).where(eq(schema.instanceSettings.id, 1)).get();
|
const updatedRow = db.select().from(schema.instanceSettings).where(eq(schema.instanceSettings.id, 1)).get();
|
||||||
@@ -277,6 +282,7 @@ export async function settingsRoutes(app: FastifyInstance): Promise<void> {
|
|||||||
federationRelayEnabled: updatedRow.federationRelayEnabled === 1,
|
federationRelayEnabled: updatedRow.federationRelayEnabled === 1,
|
||||||
federationRelayTtlDays: updatedRow.federationRelayTtlDays,
|
federationRelayTtlDays: updatedRow.federationRelayTtlDays,
|
||||||
defaultAutoRotateIntervalDays: updatedRow.defaultAutoRotateIntervalDays,
|
defaultAutoRotateIntervalDays: updatedRow.defaultAutoRotateIntervalDays,
|
||||||
|
autoAcceptPeering: updatedRow.autoAcceptPeering === 1,
|
||||||
};
|
};
|
||||||
|
|
||||||
return reply.code(200).send(response);
|
return reply.code(200).send(response);
|
||||||
|
|||||||
@@ -935,6 +935,7 @@ function buildReadyPayload(userId: string): {
|
|||||||
readStates: ReadState[];
|
readStates: ReadState[];
|
||||||
activeCalls: ActiveCallInfo[];
|
activeCalls: ActiveCallInfo[];
|
||||||
userActivities: Record<string, Activity[]>;
|
userActivities: Record<string, Activity[]>;
|
||||||
|
rejectedPeerOrigins: string[];
|
||||||
} {
|
} {
|
||||||
const db = getDb();
|
const db = getDb();
|
||||||
|
|
||||||
@@ -1463,7 +1464,15 @@ function buildReadyPayload(userId: string): {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return { user, spaces, dmChannels, folders, spaceLayout, layoutUpdatedAt, voiceStates, voiceUserStates, spaceVoiceStates, readStates, activeCalls, userActivities };
|
// Rejected peer origins for unreachable member indicators
|
||||||
|
const rejectedPeers = db
|
||||||
|
.select({ origin: schema.federationPeers.origin })
|
||||||
|
.from(schema.federationPeers)
|
||||||
|
.where(eq(schema.federationPeers.status, 'rejected'))
|
||||||
|
.all();
|
||||||
|
const rejectedPeerOrigins = rejectedPeers.map(p => p.origin);
|
||||||
|
|
||||||
|
return { user, spaces, dmChannels, folders, spaceLayout, layoutUpdatedAt, voiceStates, voiceUserStates, spaceVoiceStates, readStates, activeCalls, userActivities, rejectedPeerOrigins };
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function registerWebSocket(app: FastifyInstance): Promise<void> {
|
export async function registerWebSocket(app: FastifyInstance): Promise<void> {
|
||||||
|
|||||||
Reference in New Issue
Block a user