2021-12-22 14:49:25 +01:00
|
|
|
|
#include "Main.h"
|
2021-12-22 14:09:50 +01:00
|
|
|
|
|
|
|
|
|
|
void setup() {
|
|
|
|
|
|
Serial.begin(115200);
|
|
|
|
|
|
Serial.flush();
|
|
|
|
|
|
Serial.println();
|
|
|
|
|
|
Serial.println(F("--------------started----------------"));
|
2021-12-22 21:18:27 +01:00
|
|
|
|
|
2022-01-10 23:37:21 +01:00
|
|
|
|
//создание экземпляров классов
|
|
|
|
|
|
myNotAsyncActions = new NotAsync(do_LAST);
|
|
|
|
|
|
|
2021-12-22 21:18:27 +01:00
|
|
|
|
//инициализация файловой системы
|
2021-12-22 14:09:50 +01:00
|
|
|
|
fileSystemInit();
|
|
|
|
|
|
|
2022-02-02 23:39:41 +01:00
|
|
|
|
//получение chip id
|
|
|
|
|
|
setChipId();
|
|
|
|
|
|
|
2021-12-22 23:47:35 +01:00
|
|
|
|
//синхронизация глобальных переменных с flash
|
|
|
|
|
|
globalVarsSync();
|
|
|
|
|
|
|
2021-12-24 22:49:06 +01:00
|
|
|
|
//подключаемся к роутеру
|
|
|
|
|
|
routerConnect();
|
|
|
|
|
|
|
2022-02-07 16:36:29 +01:00
|
|
|
|
//синхронизация списка устройств
|
|
|
|
|
|
addThisDeviceToList();
|
|
|
|
|
|
|
2022-02-05 02:13:56 +01:00
|
|
|
|
//запустим один раз асинхронное сканирование сетей wifi для веба
|
|
|
|
|
|
RouterFind(jsonReadStr(settingsFlashJson, F("routerssid")));
|
|
|
|
|
|
|
2021-12-23 18:18:32 +01:00
|
|
|
|
//инициализация асинхронного веб сервера и веб сокетов
|
2021-12-23 22:42:19 +01:00
|
|
|
|
#ifdef ASYNC_WEB_SERVER
|
|
|
|
|
|
asyncWebServerInit();
|
2021-12-24 22:49:06 +01:00
|
|
|
|
#endif
|
|
|
|
|
|
#ifdef ASYNC_WEB_SOCKETS
|
2021-12-23 22:42:19 +01:00
|
|
|
|
asyncWebSocketsInit();
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
2021-12-24 22:49:06 +01:00
|
|
|
|
//инициализация стандартного веб сервера и веб сокетов
|
2021-12-23 22:42:19 +01:00
|
|
|
|
#ifdef STANDARD_WEB_SERVER
|
|
|
|
|
|
standWebServerInit();
|
2021-12-23 18:18:32 +01:00
|
|
|
|
#endif
|
2021-12-23 23:47:13 +01:00
|
|
|
|
#ifdef STANDARD_WEB_SOCKETS
|
|
|
|
|
|
standWebSocketsInit();
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
2022-01-15 19:11:01 +01:00
|
|
|
|
//инициализация mqtt
|
2022-01-20 13:07:37 +01:00
|
|
|
|
mqttInit();
|
2022-01-15 19:11:01 +01:00
|
|
|
|
|
2022-01-15 02:01:22 +01:00
|
|
|
|
configure("/config.json");
|
|
|
|
|
|
|
2022-02-08 16:47:17 +01:00
|
|
|
|
//инициализация задач переодического выполнения
|
|
|
|
|
|
periodicTasksInit();
|
2021-12-22 14:09:50 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void loop() {
|
2021-12-23 17:55:46 +01:00
|
|
|
|
//обновление задач таскера
|
|
|
|
|
|
ts.update();
|
2021-12-23 22:42:19 +01:00
|
|
|
|
|
2022-01-20 13:36:00 +01:00
|
|
|
|
//отправка json
|
|
|
|
|
|
#ifdef QUEUE_FROM_STR
|
|
|
|
|
|
if (sendJsonFiles) sendJsonFiles->loop();
|
|
|
|
|
|
#endif
|
2021-12-24 00:44:11 +01:00
|
|
|
|
|
2021-12-23 22:42:19 +01:00
|
|
|
|
#ifdef STANDARD_WEB_SERVER
|
2022-01-14 15:45:02 +01:00
|
|
|
|
//обработка web сервера
|
2021-12-23 22:42:19 +01:00
|
|
|
|
HTTP.handleClient();
|
|
|
|
|
|
#endif
|
2021-12-23 23:47:13 +01:00
|
|
|
|
|
|
|
|
|
|
#ifdef STANDARD_WEB_SOCKETS
|
2022-01-14 15:45:02 +01:00
|
|
|
|
//обработка web сокетов
|
2021-12-23 23:47:13 +01:00
|
|
|
|
standWebSocket.loop();
|
|
|
|
|
|
#endif
|
2022-01-15 02:01:22 +01:00
|
|
|
|
|
2022-01-15 19:11:01 +01:00
|
|
|
|
//обновление mqtt
|
|
|
|
|
|
mqttLoop();
|
|
|
|
|
|
|
2022-02-06 09:11:07 +03:00
|
|
|
|
for (unsigned int i = 0; i < IoTItems.size(); i++) {
|
|
|
|
|
|
IoTItems[i]->loop();
|
2022-01-15 02:01:22 +01:00
|
|
|
|
}
|
2021-12-22 14:09:50 +01:00
|
|
|
|
}
|