Splitted large code into multiple modules

This commit is contained in:
0xFEEDC0DE committed 2018-05-02 20:42:52 +02:00
1 parent 6ad22dedfd
commit a524b8862d
11 files changed
+427 -274

No files matched your search

+42
View File
@@ -0,0 +1,42 @@
#include "controlclient.h"
#include "relais.h"
ControlClient::ControlClient(const char* host, const int port, const char* name, Relais &relais) :
m_host(host),
m_port(port),
m_name(name),
m_relais(relais)
{
}
void ControlClient::begin()
{
}
void ControlClient::handleClient()
{
if(!m_client.connected()) {
if (m_client.connect(m_host, m_port)) {
m_client.println(m_name);
sendStatus();
}
}
if(m_client.connected()) {
while(m_client.available()) {
switch(m_client.read()) {
case '1': m_relais.on(); break;
case '0': m_relais.off(); break;
case 't': m_relais.toggle(); break;
case 's': sendStatus(); break;
case 'r': m_client.println("rebooting"); ESP.restart(); break;
}
}
}
}
void ControlClient::sendStatus()
{
m_client.println(m_relais.status() ? "on" : "off");
}