mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-30 20:09:14 +03:00
Merge pull request #170 from biveraxe/ver4dev
Добавляем свойство глобальности для айтема
This commit is contained in:
@@ -36,7 +36,7 @@ class IoTItem {
|
|||||||
IoTValue value; // хранение основного значения, которое обновляется из сценария, execute(), loop() или doByInterval()
|
IoTValue value; // хранение основного значения, которое обновляется из сценария, execute(), loop() или doByInterval()
|
||||||
|
|
||||||
bool iAmDead = false; // признак необходимости удалить объект из базы
|
bool iAmDead = false; // признак необходимости удалить объект из базы
|
||||||
bool iAmLocal = true; // признак локальной переменной
|
bool iAmLocal = true; // признак того, что айтем был создан локально
|
||||||
|
|
||||||
bool needSave = false;
|
bool needSave = false;
|
||||||
bool enableDoByInt = true;
|
bool enableDoByInt = true;
|
||||||
@@ -59,6 +59,8 @@ class IoTItem {
|
|||||||
int _map3;
|
int _map3;
|
||||||
int _map4;
|
int _map4;
|
||||||
int _round; // 1, 10, 100, 1000, 10000
|
int _round; // 1, 10, 100, 1000, 10000
|
||||||
|
|
||||||
|
bool _global = false; // характеристика айтема, что ему нужно слать и принимать события из внешнего мира
|
||||||
};
|
};
|
||||||
|
|
||||||
IoTItem* findIoTItem(String name); // поиск экземпляра элемента модуля по имени
|
IoTItem* findIoTItem(String name); // поиск экземпляра элемента модуля по имени
|
||||||
|
|||||||
@@ -16,6 +16,8 @@ IoTItem::IoTItem(String parameters) {
|
|||||||
if (!jsonRead(parameters, F("plus"), _plus, false)) _plus = 0;
|
if (!jsonRead(parameters, F("plus"), _plus, false)) _plus = 0;
|
||||||
if (!jsonRead(parameters, F("round"), _round, false)) _round = -1;
|
if (!jsonRead(parameters, F("round"), _round, false)) _round = -1;
|
||||||
|
|
||||||
|
if (!jsonRead(parameters, F("global"), _global, false)) _global = false;
|
||||||
|
|
||||||
String valAsStr;
|
String valAsStr;
|
||||||
if (jsonRead(parameters, F("val"), valAsStr, false)) // значение переменной или датчика при инициализации если есть в конфигурации
|
if (jsonRead(parameters, F("val"), valAsStr, false)) // значение переменной или датчика при инициализации если есть в конфигурации
|
||||||
if (value.isDecimal = isDigitDotCommaStr(valAsStr)) {
|
if (value.isDecimal = isDigitDotCommaStr(valAsStr)) {
|
||||||
@@ -83,6 +85,12 @@ void IoTItem::setValue(IoTValue Value) {
|
|||||||
void IoTItem::regEvent(String value, String consoleInfo = "") {
|
void IoTItem::regEvent(String value, String consoleInfo = "") {
|
||||||
generateEvent(_id, value);
|
generateEvent(_id, value);
|
||||||
publishStatusMqtt(_id, value);
|
publishStatusMqtt(_id, value);
|
||||||
|
|
||||||
|
// проверка если global установлен то шлем всем о событии
|
||||||
|
if (_global) {
|
||||||
|
SerialPrint("i", F("=>ALLMQTT"), "Broadcast event: ");
|
||||||
|
}
|
||||||
|
|
||||||
//отправка события другим устройствам в сети==============================
|
//отправка события другим устройствам в сети==============================
|
||||||
// if (jsonReadBool(settingsFlashJson, "mqttin")) {
|
// if (jsonReadBool(settingsFlashJson, "mqttin")) {
|
||||||
// String json = "{}";
|
// String json = "{}";
|
||||||
|
|||||||
Reference in New Issue
Block a user