DirectMessageRelay

@Serializable
data class DirectMessageRelay(val messageId: String, val sourceServerName: String, val senderId: String, val senderName: String, val targetServerName: String, val targetName: String, val message: String, val timestamp: Long = System.currentTimeMillis()) : PluginMessage(source)

Cross-server direct message relay (Paper → Velocity → target Paper)

Routed to a single target server instead of broadcast. Romaji conversion is applied on the sending side, so message carries the already-converted text.

Constructors

Link copied to clipboard
constructor(messageId: String, sourceServerName: String, senderId: String, senderName: String, targetServerName: String, targetName: String, message: String, timestamp: Long = System.currentTimeMillis())

Properties

Link copied to clipboard

Message content (romaji-converted if applicable)

Link copied to clipboard

UUID for deduplication

Link copied to clipboard

Sender UUID as string

Link copied to clipboard

Sender name

Link copied to clipboard

Sender's server identifier (used for reply routing)

Link copied to clipboard

Target player name

Link copied to clipboard

Target server identifier (routing key)

Link copied to clipboard

Message timestamp (milliseconds since epoch)