mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-27 06:32:19 +03:00
Корректируем работу сетевых сценариев
отключаем скрытое создание элементов при приеме событий Входящие события будут регистрироваться только при наличии одноименного элемента в списке
This commit is contained in:
@@ -98,7 +98,7 @@ void IoTItem::regEvent(const String& value, const String& consoleInfo, bool erro
|
||||
String json = "{}";
|
||||
jsonWriteStr_(json, "id", _id);
|
||||
jsonWriteStr_(json, "val", value);
|
||||
jsonWriteInt_(json, "int", _interval/1000 + 5); // 5 секунд про запас
|
||||
jsonWriteInt_(json, "int", _interval/1000);
|
||||
publishEvent(_id, json);
|
||||
SerialPrint("i", F("<=MQTT"), "Broadcast event: " + json);
|
||||
}
|
||||
@@ -137,6 +137,23 @@ String IoTItem::getSubtype() {
|
||||
return _subtype;
|
||||
}
|
||||
|
||||
int IoTItem::getIntFromNet() {
|
||||
return _intFromNet;
|
||||
}
|
||||
|
||||
void IoTItem::setIntFromNet(int interval) {
|
||||
_intFromNet = interval;
|
||||
}
|
||||
|
||||
void IoTItem::checkIntFromNet() {
|
||||
if (_intFromNet >= 0) {
|
||||
if (_intFromNet == 0) {
|
||||
SerialPrint("E", "SYS", "The new data did not come from the network. The level of trust is low.", _id);
|
||||
}
|
||||
_intFromNet--;
|
||||
}
|
||||
}
|
||||
|
||||
void IoTItem::publishValue() {}
|
||||
|
||||
void IoTItem::clearValue() {}
|
||||
|
||||
@@ -286,6 +286,12 @@ class CallExprAST : public ExprAST {
|
||||
if (!ItemIsLocal) Item = findIoTItem(Callee); // пробуем найти переменную если она не локальная (могла придти по сети в процессе)
|
||||
if (!Item) return nullptr; // ret = zeroIotVal; // если все же не пришла, то либо опечатка, либо уже стерлась - выходим
|
||||
|
||||
if (Cmd == "getIntFromNet") {
|
||||
ret.valD = Item->getIntFromNet();
|
||||
ret.isDecimal = true;
|
||||
return &ret;
|
||||
}
|
||||
|
||||
// если все же все ок, то готовим параметры для передачи в модуль
|
||||
std::vector<IoTValue> ArgsAsIoTValue;
|
||||
for (unsigned int i = 0; i < Args.size(); i++) {
|
||||
|
||||
Reference in New Issue
Block a user