Skip to content

MessageType

veltix.network.types.MessageType

Defines a message type in the Veltix protocol.

Code ranges: - 0-199: System messages (reserved) - 200-9999: User application messages (auto-allocatable) - 10000+: Plugin/extension messages - Max: 65535 (uint16 protocol limit)

Usage

MessageType(200, "chat") # explicit code MessageType("chat") # auto-allocate code MessageType(name="chat") # auto-allocate code

veltix.network.types.MessageTypeRegistry

Registry mapping message codes to MessageType instances.

allocate classmethod

allocate(msg_type: MessageType) -> int

Reserve and register msg_type under the next free user code.

Allocation and registration happen under a single lock acquisition so concurrent auto-allocating constructors never race for the same code.

Parameters:

Name Type Description Default
msg_type MessageType

MessageType instance to allocate a code for.

required

Returns:

Type Description
int

The allocated user code.

Raises:

Type Description
MessageTypeError

If no user code is free in the range.