From b1fe6af04d1c2bf4bdd292eec596128b38260df9 Mon Sep 17 00:00:00 2001 From: Dmitry Borisenko <49808844+DmitryBorisenko33@users.noreply.github.com> Date: Thu, 22 Sep 2022 22:55:04 +0200 Subject: [PATCH] =?UTF-8?q?=D0=B1=D0=BE=D0=BB=D0=B5=D0=B5=20=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D0=BD=D0=B4=D0=B0=D1=80=D1=82=D0=BD=D1=8B=D0=B5=20=D0=B8?= =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D0=B0=20=D0=BC=D0=B5=D1=82=D0=BE=D0=B4=D0=BE?= =?UTF-8?q?=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/classes/IoTItem.h | 12 +++++++----- src/MqttClient.cpp | 4 ++-- src/WsServer.cpp | 4 ++-- src/classes/IoTItem.cpp | 8 ++++---- src/modules/virtual/Logging/Loging.cpp | 16 ++++++++-------- src/utils/FileUtils.cpp | 2 +- 6 files changed, 24 insertions(+), 22 deletions(-) diff --git a/include/classes/IoTItem.h b/include/classes/IoTItem.h index 285505f7..b61d582b 100644 --- a/include/classes/IoTItem.h +++ b/include/classes/IoTItem.h @@ -24,11 +24,6 @@ class IoTItem { virtual void regEvent(float value, String consoleInfo); String getSubtype(); - virtual void sendChart(); - virtual void cleanChart(); - virtual void setPublishType(int type, int num); - virtual void cleanData(); - virtual void setTodayDate(); String getID(); virtual String getValue(); @@ -53,6 +48,13 @@ class IoTItem { virtual void setValue(IoTValue Value); virtual void setValue(String valStr); + //методы для графиков + virtual void publishValue(); + virtual void clearValue(); + virtual void setPublishDestination(int type, int num); + virtual void clearHistory(); + virtual void setTodayDate(); + protected: String _subtype; String _id; diff --git a/src/MqttClient.cpp b/src/MqttClient.cpp index 7c81a68c..5677124f 100644 --- a/src/MqttClient.cpp +++ b/src/MqttClient.cpp @@ -137,8 +137,8 @@ void mqttCallback(char* topic, uint8_t* payload, size_t length) { //отправка данных графиков for (std::list::iterator it = IoTItems.begin(); it != IoTItems.end(); ++it) { if ((*it)->getSubtype() == "Loging") { - (*it)->setPublishType(1, -1); - (*it)->sendChart(); + (*it)->setPublishDestination(1, -1); + (*it)->publishValue(); } } diff --git a/src/WsServer.cpp b/src/WsServer.cpp index 08f1d1c4..7210c358 100644 --- a/src/WsServer.cpp +++ b/src/WsServer.cpp @@ -78,8 +78,8 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length) // (*it)->setTodayDate(); //} if ((*it)->getSubtype() == "Loging") { - (*it)->setPublishType(2, num); - (*it)->sendChart(); + (*it)->setPublishDestination(2, num); + (*it)->publishValue(); } } } diff --git a/src/classes/IoTItem.cpp b/src/classes/IoTItem.cpp index 919468f6..ebd32fd2 100644 --- a/src/classes/IoTItem.cpp +++ b/src/classes/IoTItem.cpp @@ -128,13 +128,13 @@ String IoTItem::getSubtype() { return _subtype; } -void IoTItem::sendChart() {} +void IoTItem::publishValue() {} -void IoTItem::cleanChart() {} +void IoTItem::clearValue() {} -void IoTItem::setPublishType(int publishType, int wsNum){}; +void IoTItem::setPublishDestination(int publishType, int wsNum){}; -void IoTItem::cleanData() {} +void IoTItem::clearHistory() {} void IoTItem::setTodayDate() {} diff --git a/src/modules/virtual/Logging/Loging.cpp b/src/modules/virtual/Logging/Loging.cpp index f90b6569..95aed9a3 100644 --- a/src/modules/virtual/Logging/Loging.cpp +++ b/src/modules/virtual/Logging/Loging.cpp @@ -147,7 +147,7 @@ class Loging : public IoTItem { return changed; } - void sendChart() { + void publishValue() { String dir = "/lg/" + id; filesList = getFilesList(dir); @@ -183,17 +183,17 @@ class Loging : public IoTItem { } //если данных нет отправляем пустой грфик if (noData) { - cleanChart(); + clearValue(); } } - void cleanChart() { + void clearValue() { SerialPrint("i", F("Loging"), "clear chart"); String cleanJson = createEmtyJson(); publishJson(cleanJson); } - void cleanData() { + void clearHistory() { String dir = "/lg/" + id; cleanDirectory(dir); } @@ -243,7 +243,7 @@ class Loging : public IoTItem { } // publishType 1 - в mqtt, 2 - в ws, 3 - mqtt и ws, wsNum = -1 => broadcast - void setPublishType(int publishType, int wsNum) { + void setPublishDestination(int publishType, int wsNum) { _publishType = publishType; _wsNum = wsNum; } @@ -342,9 +342,9 @@ class Date : public IoTItem { if ((*it)->getSubtype() == "Loging") { //отправляем только свои данные if ((*it)->getID() == selectToMarker(id, "-")) { - (*it)->setPublishType(3, -1); - (*it)->cleanChart(); - (*it)->sendChart(); + (*it)->setPublishDestination(3, -1); + (*it)->clearValue(); + (*it)->publishValue(); } } } diff --git a/src/utils/FileUtils.cpp b/src/utils/FileUtils.cpp index 317429f0..f9698874 100644 --- a/src/utils/FileUtils.cpp +++ b/src/utils/FileUtils.cpp @@ -217,7 +217,7 @@ void cleanLogs() { //очистка данных всех экземпляров графиков for (std::list::iterator it = IoTItems.begin(); it != IoTItems.end(); ++it) { if ((*it)->getSubtype() == "Loging") { - (*it)->cleanData(); + (*it)->clearHistory(); } } }