Detect if AsyncWebSocketClient can send data to server and add AsyncWebServer::end() (#501)

* added AsyncWebServer::end()

* added AsyncWebServer::end()

* added bool AsyncWebSocketClient::canSend()

* Fix comparison with WS_MAX_QUEUED_MESSAGES

* Fix comparison with WS_MAX_QUEUED_MESSAGES
This commit is contained in:
dyarkovoy 2019-06-22 19:47:43 +03:00 committed by Me No Dev
parent 6dcea3f5e7
commit 5ef7ffcd41
2 changed files with 3 additions and 1 deletions

View File

@ -551,7 +551,7 @@ void AsyncWebSocketClient::_queueMessage(AsyncWebSocketMessage *dataMessage){
delete dataMessage;
return;
}
if(_messageQueue.length() > WS_MAX_QUEUED_MESSAGES){
if(_messageQueue.length() >= WS_MAX_QUEUED_MESSAGES){
ets_printf("ERROR: Too many messages queued\n");
delete dataMessage;
} else {

View File

@ -210,6 +210,8 @@ class AsyncWebSocketClient {
void binary(const __FlashStringHelper *data, size_t len);
void binary(AsyncWebSocketMessageBuffer *buffer);
bool canSend() { return _messageQueue.length() < WS_MAX_QUEUED_MESSAGES; }
//system callbacks (do not call)
void _onAck(size_t len, uint32_t time);
void _onError(int8_t);