Skip to content

Sender

veltix.network.sender.Sender

Sends messages over TCP in CLIENT or SERVER mode.

CLIENT: single server connection. SERVER: sends to individual clients or broadcasts.

__init__

__init__(
    mode: Union[Mode, str],
    conn: Optional[BaseSocket] = None,
    bus: Optional[VeltixBus] = None,
    get_all_clients: Optional[
        Callable[[], Sequence[_ClientLike]]
    ] = None,
    id_allocator: Optional[IDAllocator] = None,
) -> None

Initialize the sender with a mode and an optional connection.

Parameters:

Name Type Description Default
mode Union[Mode, str]

CLIENT or SERVER mode.

required
conn Optional[BaseSocket]

Connection socket (required in CLIENT mode).

None
bus Optional[VeltixBus]

Event bus instance.

None
get_all_clients Optional[Callable[[], Sequence[_ClientLike]]]

Callable returning all connected client sockets (SERVER mode).

None
id_allocator Optional[IDAllocator]

ID allocator for auto-assigning request IDs.

None

send

send(
    data: Request, client: Optional[BaseSocket] = None
) -> bool

Send a request over the network.

In CLIENT mode, uses the internal connection. In SERVER mode, uses the provided client socket.

Parameters:

Name Type Description Default
data Request

Request to send.

required
client Optional[BaseSocket]

Target client socket (required in SERVER mode).

None

Returns:

Type Description
bool

True if the send succeeded, False otherwise.

broadcast

broadcast(
    data: Request,
    list_of_client: Optional[Sequence[_ClientLike]] = None,
    except_clients: Optional[Sequence[_ClientLike]] = None,
) -> bool

Send a request to multiple clients (SERVER mode only).

Parameters:

Name Type Description Default
data Request

Request to broadcast.

required
list_of_client Optional[Sequence[_ClientLike]]

Target clients. Accepts BaseSocket or ClientInfo. Defaults to all connected clients.

None
except_clients Optional[Sequence[_ClientLike]]

Clients to exclude. Accepts BaseSocket or ClientInfo.

None

Returns:

Type Description
bool

True if all sends succeeded, False otherwise.