mirror of
https://github.com/Links2004/arduinoWebSockets.git
synced 2025-07-12 15:06:30 +02:00
add disconnect functions
void disconnect(void); void disconnect(uint8_t num);
This commit is contained in:
@ -37,7 +37,7 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//#define DEBUG_WEBSOCKETS(...) Serial1.printf( __VA_ARGS__ );
|
#define DEBUG_WEBSOCKETS(...) Serial1.printf( __VA_ARGS__ );
|
||||||
|
|
||||||
#ifndef DEBUG_WEBSOCKETS
|
#ifndef DEBUG_WEBSOCKETS
|
||||||
#define DEBUG_WEBSOCKETS(...)
|
#define DEBUG_WEBSOCKETS(...)
|
||||||
|
@ -63,12 +63,12 @@ void WebSocketsServer::begin(void) {
|
|||||||
_server->begin();
|
_server->begin();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* called in arduino loop
|
||||||
|
*/
|
||||||
void WebSocketsServer::loop(void) {
|
void WebSocketsServer::loop(void) {
|
||||||
|
|
||||||
handleNewClients();
|
handleNewClients();
|
||||||
|
|
||||||
handleClientData();
|
handleClientData();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -187,6 +187,33 @@ void WebSocketsServer::broadcastBIN(const uint8_t * payload, size_t length) {
|
|||||||
broadcastBIN((uint8_t *) payload, length);
|
broadcastBIN((uint8_t *) payload, length);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* disconnect all clients
|
||||||
|
*/
|
||||||
|
void WebSocketsServer::disconnect(void) {
|
||||||
|
WSclient_t * client;
|
||||||
|
for(uint8_t i = 0; i < WEBSOCKETS_SERVER_CLIENT_MAX; i++) {
|
||||||
|
client = &_clients[i];
|
||||||
|
if(clientIsConnected(client)) {
|
||||||
|
WebSockets::clientDisconnect(client, 1000);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* disconnect one client
|
||||||
|
* @param num
|
||||||
|
*/
|
||||||
|
void WebSocketsServer::disconnect(uint8_t num) {
|
||||||
|
if(num >= WEBSOCKETS_SERVER_CLIENT_MAX) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
WSclient_t * client = &_clients[num];
|
||||||
|
if(clientIsConnected(client)) {
|
||||||
|
WebSockets::clientDisconnect(client, 1000);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//#################################################################################
|
//#################################################################################
|
||||||
//#################################################################################
|
//#################################################################################
|
||||||
//#################################################################################
|
//#################################################################################
|
||||||
|
@ -83,6 +83,9 @@ public:
|
|||||||
void broadcastBIN(uint8_t * payload, size_t length);
|
void broadcastBIN(uint8_t * payload, size_t length);
|
||||||
void broadcastBIN(const uint8_t * payload, size_t length);
|
void broadcastBIN(const uint8_t * payload, size_t length);
|
||||||
|
|
||||||
|
void disconnect(void);
|
||||||
|
void disconnect(uint8_t num);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
uint16_t _port;
|
uint16_t _port;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user