mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-24 11:46:34 +00:00
Speedup loop
This commit is contained in:
parent
8755f78b4a
commit
55961c5b4f
@ -342,7 +342,8 @@ void mqttSetup()
|
||||
|
||||
IRAM_ATTR void mqttLoop(void)
|
||||
{
|
||||
if(mqttEnabled) mqttClient.loop();
|
||||
// if(mqttEnabled)
|
||||
mqttClient.loop();
|
||||
}
|
||||
|
||||
void mqttEvery5Seconds(bool networkIsConnected)
|
||||
|
@ -44,8 +44,8 @@ void telnetClientDisconnect()
|
||||
LOG_TRACE(TAG_TELN, F(D_TELNET_CLOSING_CONNECTION), telnetClient.remoteIP().toString().c_str());
|
||||
telnetLoginState = TELNET_UNAUTHENTICATED;
|
||||
telnetLoginAttempt = 0; // Initial attempt
|
||||
// delete telnetConsole;
|
||||
// telnetConsole = NULL;
|
||||
delete telnetConsole;
|
||||
telnetConsole = NULL;
|
||||
telnetClient.stop();
|
||||
}
|
||||
|
||||
@ -215,11 +215,16 @@ static void telnetProcessLine(const char* input)
|
||||
break;
|
||||
}
|
||||
default:
|
||||
if(strcasecmp_P(input, PSTR("exit")) == 0) {
|
||||
if(strcasecmp_P(input, PSTR("exit")) == 0 || strcasecmp_P(input, PSTR("quit")) == 0 ||
|
||||
strcasecmp_P(input, PSTR("bye")) == 0) {
|
||||
telnetClientDisconnect();
|
||||
} else if(strcasecmp_P(input, PSTR("logoff")) == 0) {
|
||||
telnetClient.println(F("\r\n" D_USERNAME " "));
|
||||
telnetLoginState = TELNET_UNAUTHENTICATED;
|
||||
if(strcmp(input, http_config.password) == 0) {
|
||||
telnetClient.println(F("\r\n" D_USERNAME " "));
|
||||
telnetLoginState = TELNET_UNAUTHENTICATED;
|
||||
} else {
|
||||
telnetClientDisconnect();
|
||||
}
|
||||
} else {
|
||||
dispatch_text_line(input);
|
||||
}
|
||||
@ -245,15 +250,16 @@ void telnetSetup()
|
||||
telnetServer->setNoDelay(true);
|
||||
telnetServer->begin();
|
||||
|
||||
telnetConsole = new ConsoleInput(&telnetClient, HASP_CONSOLE_BUFFER);
|
||||
if(telnetConsole != NULL) {
|
||||
telnetConsole->setLineCallback(telnetProcessLine);
|
||||
LOG_INFO(TAG_TELN, F(D_TELNET_STARTED));
|
||||
return;
|
||||
}
|
||||
// telnetConsole = new ConsoleInput(&telnetClient, HASP_CONSOLE_BUFFER);
|
||||
// if(telnetConsole != NULL) {
|
||||
// telnetConsole->setLineCallback(telnetProcessLine);
|
||||
// LOG_INFO(TAG_TELN, F(D_TELNET_STARTED));
|
||||
// return;
|
||||
// }
|
||||
LOG_INFO(TAG_TELN, F(D_TELNET_STARTED));
|
||||
} else {
|
||||
LOG_ERROR(TAG_TELN, F(D_TELNET_FAILED));
|
||||
}
|
||||
|
||||
LOG_ERROR(TAG_TELN, F(D_TELNET_FAILED));
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@ -290,6 +296,31 @@ IRAM_ATTR void telnetLoop()
|
||||
}
|
||||
}
|
||||
#else
|
||||
|
||||
/* Active Client: Process user input */
|
||||
if(telnetClient.connected()) {
|
||||
if(telnetConsole) {
|
||||
int16_t keypress = telnetConsole->readKey();
|
||||
} else {
|
||||
telnetConsole = new ConsoleInput(&telnetClient, HASP_CONSOLE_BUFFER);
|
||||
if(telnetConsole) {
|
||||
telnetConsole->setLineCallback(telnetProcessLine);
|
||||
} else {
|
||||
telnetClientDisconnect();
|
||||
LOG_ERROR(TAG_TELN, F(D_TELNET_FAILED));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
void telnetEverySecond(void)
|
||||
{
|
||||
if(!telnetClient.connected() && telnetLoginState != TELNET_UNAUTHENTICATED) {
|
||||
telnetClientDisconnect(); // active client disconnected
|
||||
}
|
||||
|
||||
if(telnetServer && telnetServer->hasClient()) { // a new client has connected
|
||||
if(!telnetClient.connected()) { // nobody is already connected
|
||||
telnetAcceptClient(); // allow the new client
|
||||
@ -297,22 +328,7 @@ IRAM_ATTR void telnetLoop()
|
||||
LOG_WARNING(TAG_TELN, F(D_TELNET_CLIENT_REJECTED));
|
||||
telnetServer->available().stop(); // already have a client, block new connections
|
||||
}
|
||||
} else {
|
||||
if(!telnetClient.connected() && telnetLoginState != TELNET_UNAUTHENTICATED) {
|
||||
telnetClientDisconnect(); // active client disconnected
|
||||
} else {
|
||||
|
||||
/* Active Client: Process user input */
|
||||
if(telnetConsole && telnetClient.connected()) {
|
||||
int16_t keypress = telnetConsole->readKey();
|
||||
switch(keypress) {
|
||||
case ConsoleInput::KEY_PAUSE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#if HASP_USE_CONFIG > 0
|
||||
|
Loading…
x
Reference in New Issue
Block a user