CrossServerDirectMessageManager

class CrossServerDirectMessageManager(plugin: Plugin, logger: Logger, configuration: LunaticChatConfiguration, directMessageHandler: DirectMessageHandler, languageManager: LanguageManager, cacheSize: Int = 100)(source)

Manages cross-server direct messages.

Handles:

  • Sending direct messages to a player on another server via Velocity

  • Processing incoming relayed direct messages from Velocity

  • Surfacing delivery errors returned by Velocity

  • Message deduplication using an LRU-style cache

Constructors

Link copied to clipboard
constructor(plugin: Plugin, logger: Logger, configuration: LunaticChatConfiguration, directMessageHandler: DirectMessageHandler, languageManager: LanguageManager, cacheSize: Int = 100)

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard

Handles a delivery error returned by Velocity and notifies the sender.

Link copied to clipboard

Handles a relayed direct message arriving from Velocity for a local recipient.

Link copied to clipboard
fun sendCrossServerMessage(sender: Player, targetName: String, targetServerName: String, message: String)

Sends a direct message to a player on another server through Velocity.