WebSocket client structure.

This structure holds the state and configuration of a WebSocket client, including socket descriptors, connection state, and callback functions.

Note

Public Attributes#

int

BSD socket file descriptor.

char

WebSocket server host (for example, "example.com").

char

WebSocket resource path (for example, "/chat").

char

WebSocket subprotocol (for example, "mqtt").

uint16_t

WebSocket server port number.

uint16_t

Local client port number.

sl_ip_address_t

WebSocket server IP address.

uint8_t

Masking key for client-to-server frames (used in hosted mode).

WebSocket connection state.

sl_si91x_socket_receive_data_callback_t

Data receive callback function.

sl_si91x_socket_remote_termination_callback_t

Callback function for remote termination event.

bool

Enable SSL for WebSocket connection.

Configured TLS version for SSL connections.

void *

User-defined context (for future reference).

Advanced TCP/TLS configuration options.

bool

Flag indicating if advanced TCP/TLS options have been set.

Public Attribute Documentation#

socket_fd#

int sl_websocket_client_s::socket_fd

BSD socket file descriptor.


host#

char sl_websocket_client_s::host[SL_SI91X_WEBSOCKET_MAX_HOST_LENGTH]

WebSocket server host (for example, "example.com").


resource#

char sl_websocket_client_s::resource[SL_SI91X_WEBSOCKET_MAX_RESOURCE_LENGTH]

WebSocket resource path (for example, "/chat").


subprotocol#

char sl_websocket_client_s::subprotocol[SLI_WEBS_MAX_SUBPROTOCOL_LENGTH]

WebSocket subprotocol (for example, "mqtt").


server_port#

uint16_t sl_websocket_client_s::server_port

WebSocket server port number.


client_port#

uint16_t sl_websocket_client_s::client_port

Local client port number.


ip_address#

sl_ip_address_t sl_websocket_client_s::ip_address

WebSocket server IP address.


mask_key#

uint8_t sl_websocket_client_s::mask_key[4]

Masking key for client-to-server frames (used in hosted mode).


state#

sl_websocket_state_t sl_websocket_client_s::state

WebSocket connection state.


data_cb#

sl_si91x_socket_receive_data_callback_t sl_websocket_client_s::data_cb

Data receive callback function.


remote_terminate_cb#

sl_si91x_socket_remote_termination_callback_t sl_websocket_client_s::remote_terminate_cb

Callback function for remote termination event.


enable_ssl#

bool sl_websocket_client_s::enable_ssl

Enable SSL for WebSocket connection.


tls_version#

sl_websocket_tls_version_t sl_websocket_client_s::tls_version

Configured TLS version for SSL connections.


user_context#

void* sl_websocket_client_s::user_context

User-defined context (for future reference).


tcp_options#

sl_websocket_tcp_tls_advanced_options_t sl_websocket_client_s::tcp_options

Advanced TCP/TLS configuration options.


tcp_options_configured#

bool sl_websocket_client_s::tcp_options_configured

Flag indicating if advanced TCP/TLS options have been set.