v0.10.0

Class: WebSocketManager

Table of contents

Constructors

Methods

Constructors

constructor

new WebSocketManager(server, eventBus, messageRouter, gameManager, authModule?, reconnectionTimeoutMs?, lobby?, tableFactory?): WebSocketManager

Parameters

Name Type Default value
server Server<typeof IncomingMessage, typeof ServerResponse> undefined
eventBus EventBus undefined
messageRouter MessageRouter undefined
gameManager GameManager undefined
authModule? AuthModule undefined
reconnectionTimeoutMs number 0
lobby? Lobby undefined
tableFactory? TableFactory undefined

Returns

WebSocketManager

Methods

disconnectPlayer

disconnectPlayer(playerId): void

Disconnects a player by their ID without waiting for timeout. This bypasses the reconnection timeout and immediately removes the player.

Parameters

Name Type Description
playerId Object The ID of the player to disconnect.
playerId.playerId string -

Returns

void


distributePlayerUpdate

distributePlayerUpdate(«destructured»): void

Distribute player updates to relevant players. This notifies the player about their own changes and also updates any tables they’re part of.

Parameters

Name Type Default value
«destructured» Object undefined
› key string undefined
› player Player undefined
› updateTableState? boolean true
› value unknown undefined

Returns

void


distributePlayerUpdates

distributePlayerUpdates(«destructured»): void

Distribute multiple player updates to relevant players.

Parameters

Name Type Default value
«destructured» Object undefined
› attributes Record<string, unknown> undefined
› player Player undefined
› updateTableState? boolean true

Returns

void


getConnectedPlayerCount

getConnectedPlayerCount(): number

Gets the current number of connected players.

Returns

number

The number of connected players


getDisconnectedPlayers

getDisconnectedPlayers(): { disconnectedAt: number ; id: string ; reconnectionAvailableUntil: number ; timeLeftMs: number }[]

Gets information about temporarily disconnected players. This is useful for monitoring and debugging connection issues.

Returns

{ disconnectedAt: number ; id: string ; reconnectionAvailableUntil: number ; timeLeftMs: number }[]

Array of objects containing information about disconnected players


getPlayer

getPlayer(playerId): undefined | Player

Gets a player by their ID.

Parameters

Name Type Description
playerId Object The ID of the player to get.
playerId.playerId string -

Returns

undefined | Player

The player object or undefined if the player does not exist.


getReconnectionTimeout

getReconnectionTimeout(): number

Gets the current reconnection timeout in milliseconds

Returns

number


setReconnectionTimeout

setReconnectionTimeout(timeoutMs): void

Sets the reconnection timeout in milliseconds

Parameters

Name Type Description
timeoutMs Object The timeout in milliseconds (0 to disable reconnection)
timeoutMs.timeoutMs number -

Returns

void