fix: Maximum number of connections reached, closes #5446
The opposite of onDisconnect is connected, not onConnect. smh.
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
import {
|
import {
|
||||||
Extension,
|
Extension,
|
||||||
onConnectPayload,
|
connectedPayload,
|
||||||
onDisconnectPayload,
|
onDisconnectPayload,
|
||||||
} from "@hocuspocus/server";
|
} from "@hocuspocus/server";
|
||||||
import env from "@server/env";
|
import env from "@server/env";
|
||||||
@@ -41,10 +41,10 @@ export class ConnectionLimitExtension implements Extension {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* onConnect hook
|
* connected hook
|
||||||
* @param data The connect payload
|
* @param data The connected payload
|
||||||
*/
|
*/
|
||||||
onConnect({ documentName, socketId }: withContext<onConnectPayload>) {
|
connected({ documentName, socketId }: withContext<connectedPayload>) {
|
||||||
const connections =
|
const connections =
|
||||||
this.connectionsByDocument.get(documentName) || new Set();
|
this.connectionsByDocument.get(documentName) || new Set();
|
||||||
if (connections?.size >= env.COLLABORATION_MAX_CLIENTS_PER_DOCUMENT) {
|
if (connections?.size >= env.COLLABORATION_MAX_CLIENTS_PER_DOCUMENT) {
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
import {
|
import {
|
||||||
onConnectPayload,
|
|
||||||
onDisconnectPayload,
|
onDisconnectPayload,
|
||||||
onLoadDocumentPayload,
|
onLoadDocumentPayload,
|
||||||
Extension,
|
Extension,
|
||||||
|
connectedPayload,
|
||||||
|
onConnectPayload,
|
||||||
} from "@hocuspocus/server";
|
} from "@hocuspocus/server";
|
||||||
import Logger from "@server/logging/Logger";
|
import Logger from "@server/logging/Logger";
|
||||||
import { withContext } from "./types";
|
import { withContext } from "./types";
|
||||||
@@ -18,6 +19,13 @@ export default class LoggerExtension implements Extension {
|
|||||||
Logger.info("multiplayer", `New connection to "${data.documentName}"`);
|
Logger.info("multiplayer", `New connection to "${data.documentName}"`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async connected(data: withContext<connectedPayload>) {
|
||||||
|
Logger.info(
|
||||||
|
"multiplayer",
|
||||||
|
`Authenticated connection to "${data.documentName}"`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
async onDisconnect(data: withContext<onDisconnectPayload>) {
|
async onDisconnect(data: withContext<onDisconnectPayload>) {
|
||||||
Logger.info("multiplayer", `Closed connection to "${data.documentName}"`, {
|
Logger.info("multiplayer", `Closed connection to "${data.documentName}"`, {
|
||||||
userId: data.context.user?.id,
|
userId: data.context.user?.id,
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
import {
|
import {
|
||||||
onChangePayload,
|
onChangePayload,
|
||||||
onConnectPayload,
|
|
||||||
onDisconnectPayload,
|
onDisconnectPayload,
|
||||||
onLoadDocumentPayload,
|
onLoadDocumentPayload,
|
||||||
Extension,
|
Extension,
|
||||||
|
connectedPayload,
|
||||||
} from "@hocuspocus/server";
|
} from "@hocuspocus/server";
|
||||||
import Metrics from "@server/logging/Metrics";
|
import Metrics from "@server/logging/Metrics";
|
||||||
import { withContext } from "./types";
|
import { withContext } from "./types";
|
||||||
@@ -28,7 +28,7 @@ export default class MetricsExtension implements Extension {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async onConnect({ documentName, instance }: withContext<onConnectPayload>) {
|
async connected({ documentName, instance }: withContext<connectedPayload>) {
|
||||||
Metrics.increment("collaboration.connect", {
|
Metrics.increment("collaboration.connect", {
|
||||||
documentName,
|
documentName,
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user