Doxygen with github
Loading...
Searching...
No Matches
ksf::misc::ksWSServer Class Reference

Wrapper around WebSocketsServerCore that adds WebSocket authentication and better message handling. More...

#include <ksWSServer.h>

+ Inheritance diagram for ksf::misc::ksWSServer:

Public Member Functions

 ksWSServer (uint16_t port)
 Prepares ksWebServer on specified port without actually starting it.
 
uint64_t getRequiredAuthToken () const
 Returns simple authentication token for WebSocket authentication process.
 
void setRequiredAuthToken (uint64_t authToken)
 Sets simple authtoken for WebSocket authentication.
 
void begin ()
 Starts the server.
 
void loop ()
 Handles WebSocket server logic.
 
void setMessageHandler (ksWsServerMessageFunc_t func)
 Installs a message handler to receive WebSocket text messages.
 
virtual ~ksWSServer ()
 Destructs the server, releasing the resources.
 

Protected Member Functions

void handleNonWebsocketConnection (WSclient_t *client) override
 Handler for non-WebSocket connections on websocket port.
 

Protected Attributes

std::unique_ptr< WEBSOCKETS_NETWORK_SERVER_CLASS > wsListener
 WS server (listener).
 
uint64_t requriedAuthToken {0}
 WS auth token.
 
ksWsServerMessageFunc_t onWebsocketTextMessage
 Callback function to receive messages.
 

Detailed Description

Wrapper around WebSocketsServerCore that adds WebSocket authentication and better message handling.

Constructor & Destructor Documentation

◆ ksWSServer()

ksf::misc::ksWSServer::ksWSServer ( uint16_t port)

Prepares ksWebServer on specified port without actually starting it.

Parameters
portPort to listen for incoming WebSocket connections.

References wsListener.

Member Function Documentation

◆ getRequiredAuthToken()

uint64_t ksf::misc::ksWSServer::getRequiredAuthToken ( ) const

Returns simple authentication token for WebSocket authentication process.

The value 0 is considered to be empty token. Authentication token is set via setRequiredAuthToken().

Generally, this token should be generated earlier, then the WebServer should use Cookie to transmit it to the browser and then the browser should pass it with WebSocket requests (via HTTP Cookie header).

Returns
Auth token for WebSocket

References requriedAuthToken.

◆ handleNonWebsocketConnection()

void ksf::misc::ksWSServer::handleNonWebsocketConnection ( WSclient_t * client)
overrideprotected

Handler for non-WebSocket connections on websocket port.

Parameters
clientSPointer to the WSclient_t object.

◆ setMessageHandler()

void ksf::misc::ksWSServer::setMessageHandler ( ksWsServerMessageFunc_t func)

Installs a message handler to receive WebSocket text messages.

Parameters
funcThe message handler function.

References onWebsocketTextMessage.

◆ setRequiredAuthToken()

void ksf::misc::ksWSServer::setRequiredAuthToken ( uint64_t authToken)

Sets simple authtoken for WebSocket authentication.

The value 0 is considered to be invalid (no auth token). Auth token is set via setRequiredAuthToken(). Generally, this token should be generated earlier, then the WebServer should use Cookie to transmit it to the browser and then the browser should pass it with WebSocket requests (via HTTP Cookie header).

Parameters
authTokenThe token to set.

References requriedAuthToken.


The documentation for this class was generated from the following files: