The library can use ESPAsyncWebServer + AsyncWebSocket for bidirectional communication with web clients.
void onWsEvent(AsyncWebSocket* server,
AsyncWebSocketClient* client,
AwsEventType type,
void* arg,
uint8_t* data,
size_t len) {
// handle connect/disconnect/data...
}
server.init(onWsEvent);With init(onWsEvent) a websocket is created on /ws.
If you want to create a websocket at a different time:
server.enableWebSocket("/ws", onWsEvent);Text:
server.wsBroadcast("hello");Binary:
uint8_t payload[] = {0x01, 0x02};
server.wsBroadcastBinary(payload, sizeof(payload));AsyncWebSocket* ws = server.getWebSocket();Useful if you want to manage websocket options directly (ping, cleanup clients, etc.).