Civetweb API Reference
mg_set_websocket_handler_with_subprotocols( ctx, uri, subprotocols, connect_handler, ready_handler, data_handler, close_handler, cbdata );
Parameters
Parameter | Type | Description |
---|---|---|
ctx |
mg_context * |
The context in which to add the handlers |
uri |
const char * |
The URI for which the handlers should be activated |
subprotocols |
struct mg_websocket_subprotocols * |
A list of supported sub-protocols |
connect_handler |
mg_websocket_connect_handler |
Handler called when a connect is signaled |
ready_handler |
mg_websocket_ready_handler |
Handler called when the connection is ready |
data_handler |
mg_websocket_data_handler |
Handler called when data is received |
close_handler |
mg_websocket_close_handler |
Handler called when the connection closes |
cbdata |
void * |
User defined data |
int mg_websocket_connect_handler( const struct mg_connection *conn, void *cbdata );
int mg_websocket_ready_handler( struct mg_connection *conn, void *cbdata );
int mg_websocket_data_handler( struct mg_connection *conn, int opcode, char * buf, size_t buf_len, void *cbdata );
int mg_websocket_close_handler( const struct mg_connection *conn, void *cbdata );
Return Value
none
Description
The function mg_set_websocket_handler_with_subprotocols()
connects callback functions to a websocket URI, just like mg_set_websocket_handler();
.
In addition, it allows to specify websocket sub-protocols.
The callback functions are called when a state change is detected on the URI like an incoming connection or data received from a remote peer.