mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-27 06:32:19 +03:00
Changes
This commit is contained in:
71
src/BufferExecute.cpp
Normal file
71
src/BufferExecute.cpp
Normal file
@@ -0,0 +1,71 @@
|
||||
#include "BufferExecute.h"
|
||||
#include "Global.h"
|
||||
#include "Module/Terminal.h"
|
||||
#include "Errors.h"
|
||||
|
||||
static const char *MODULE = "Cmd";
|
||||
|
||||
void loopCmdAdd(const String &cmdStr) {
|
||||
orderBuf += cmdStr;
|
||||
if (!cmdStr.endsWith(",")) {
|
||||
orderBuf += ",";
|
||||
}
|
||||
}
|
||||
|
||||
void fileCmdExecute(const String &filename) {
|
||||
String cmdStr = readFile(filename, 2048);
|
||||
csvCmdExecute(cmdStr);
|
||||
}
|
||||
|
||||
void csvCmdExecute(String &cmdStr) {
|
||||
cmdStr.replace(";", " ");
|
||||
cmdStr += "\r\n";
|
||||
cmdStr.replace("\r\n", "\n");
|
||||
cmdStr.replace("\r", "\n");
|
||||
int count = 0;
|
||||
while (cmdStr.length()) {
|
||||
String buf = selectToMarker(cmdStr, "\n");
|
||||
count++;
|
||||
if (count > 1) sCmd.readStr(buf);
|
||||
cmdStr = deleteBeforeDelimiter(cmdStr, "\n");
|
||||
}
|
||||
}
|
||||
|
||||
void spaceCmdExecute(String &cmdStr) {
|
||||
cmdStr += "\r\n";
|
||||
cmdStr.replace("\r\n", "\n");
|
||||
cmdStr.replace("\r", "\n");
|
||||
while (cmdStr.length()) {
|
||||
String buf = selectToMarker(cmdStr, "\n");
|
||||
sCmd.readStr(buf);
|
||||
cmdStr = deleteBeforeDelimiter(cmdStr, "\n");
|
||||
}
|
||||
}
|
||||
|
||||
void loopCmdExecute() {
|
||||
if (orderBuf.length()) {
|
||||
String tmp = selectToMarker(orderBuf, ","); //выделяем первую команду rel 5 1,
|
||||
pm.info("do: " + tmp);
|
||||
sCmd.readStr(tmp); //выполняем
|
||||
orderBuf = deleteBeforeDelimiter(orderBuf, ","); //осекаем
|
||||
}
|
||||
}
|
||||
|
||||
void sensorsInit() {
|
||||
ts.add(
|
||||
SENSORS, 10000, [&](void *) {
|
||||
String buf = sensorReadingMap;
|
||||
while (buf.length()) {
|
||||
String tmp = selectToMarker(buf, ",");
|
||||
sCmd.readStr(tmp);
|
||||
buf = deleteBeforeDelimiter(buf, ",");
|
||||
}
|
||||
},
|
||||
nullptr, true);
|
||||
}
|
||||
|
||||
//void loopSerial() {
|
||||
// if (term) {
|
||||
// term->loop();
|
||||
// }
|
||||
//}
|
||||
Reference in New Issue
Block a user