Interface ChannelMessage

All Known Implementing Classes:
BroadcastMessage, ChatMessage, HeartbeatMessage, PlayerCountMessage, PluginMessage, TransferMessage

public interface ChannelMessage
Base interface for all cross-proxy messages.

Messages are serialized to JSON for transport over Redis pub/sub. Each message includes metadata about the source proxy and timestamp.

Message Types

All message types are in the me.internalizable.numdrassl.api.messaging.message package:

Immutability

All implementations are immutable records for thread safety.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    Get the message type identifier for serialization.
    Get the ID of the proxy that sent this message.
    Get the timestamp when this message was created.
  • Method Details

    • sourceProxyId

      @Nonnull String sourceProxyId()
      Get the ID of the proxy that sent this message.
      Returns:
      the source proxy ID
    • timestamp

      @Nonnull Instant timestamp()
      Get the timestamp when this message was created.
      Returns:
      the message timestamp
    • messageType

      @Nonnull String messageType()
      Get the message type identifier for serialization.
      Returns:
      the message type (e.g., "heartbeat", "chat", "plugin")