mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-28 07:02:17 +03:00
добавил класс стрима массива в сокеты
This commit is contained in:
@@ -205,6 +205,16 @@ void webSocketEvent(uint8_t num, WStype_t type, uint8_t* payload, size_t length)
|
||||
case WStype_TEXT: {
|
||||
Serial.printf("[%u] get Text: %s\n", num, payload);
|
||||
|
||||
String payloadStr;
|
||||
payloadStr.reserve(length + 1);
|
||||
for (size_t i = 0; i < length; i++) {
|
||||
payloadStr += (char)payload[i];
|
||||
}
|
||||
|
||||
if (payloadStr.startsWith("/config")) {
|
||||
if (myStreamJsonArray) myStreamJsonArray->sendFile("/config.json", num);
|
||||
}
|
||||
|
||||
// send message to client
|
||||
// standWebSocket.sendTXT(num, "message here");
|
||||
|
||||
|
||||
25
src/Web.cpp
Normal file
25
src/Web.cpp
Normal file
@@ -0,0 +1,25 @@
|
||||
#include "Web.h"
|
||||
|
||||
StreamJsonArray::StreamJsonArray() {}
|
||||
|
||||
StreamJsonArray::~StreamJsonArray() {}
|
||||
|
||||
void StreamJsonArray::sendFile(String path, uint8_t num) {
|
||||
_path = path;
|
||||
_num = num;
|
||||
file = seekFile(path);
|
||||
// file.find("[");
|
||||
}
|
||||
|
||||
void StreamJsonArray::loop() {
|
||||
// if (ws.availableForWriteAll()) {
|
||||
if (file.available()) {
|
||||
String jsonArrayElement = file.readStringUntil('}') + "}";
|
||||
// Serial.println(jsonArrayElement);
|
||||
standWebSocket.sendTXT(_num, jsonArrayElement);
|
||||
// ws.textAll(jsonArrayElement);
|
||||
}
|
||||
//}
|
||||
}
|
||||
|
||||
StreamJsonArray* myStreamJsonArray;
|
||||
@@ -31,6 +31,8 @@ void setup() {
|
||||
//подключаемся к роутеру
|
||||
routerConnect();
|
||||
|
||||
myStreamJsonArray = new StreamJsonArray;
|
||||
|
||||
//выводим остаток оперативной памяти после старта
|
||||
// 22.12.21 пустой код без wifi остаток = 50.28 kB
|
||||
// 22.12.21 запустил wifi остаток = 48.59 kB
|
||||
@@ -49,6 +51,8 @@ void loop() {
|
||||
//обновление задач таскера
|
||||
ts.update();
|
||||
|
||||
if (myStreamJsonArray) myStreamJsonArray->loop();
|
||||
|
||||
#ifdef STANDARD_WEB_SERVER
|
||||
HTTP.handleClient();
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user