mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-27 22:52:19 +03:00
Разделяем понятия регистрации и генерации события
регистрация подразумевает фиксацию изменений и уведомление WS и MQTT интерфейса генерация подразумевает добавление факта события в очередь сценария и отправку на другие устройства
This commit is contained in:
@@ -68,9 +68,9 @@ class ButtonIn : public IoTItem {
|
||||
_lastButtonState = _reading;
|
||||
}
|
||||
|
||||
void setValue(const IoTValue& Value, bool generateEvent = true) {
|
||||
void setValue(const IoTValue& Value, bool genEvent = true) {
|
||||
value = Value;
|
||||
if (generateEvent) regEvent((String)(int)value.valD, "ButtonIn");
|
||||
regEvent((String)(int)value.valD, "ButtonIn", false, genEvent);
|
||||
}
|
||||
|
||||
String getValue() {
|
||||
|
||||
@@ -37,10 +37,10 @@ class ButtonOut : public IoTItem {
|
||||
return {}; // команда поддерживает возвращаемое значения. Т.е. по итогу выполнения команды или общения с внешней системой, можно вернуть значение в сценарий для дальнейшей обработки
|
||||
}
|
||||
|
||||
void setValue(const IoTValue& Value, bool generateEvent = true) {
|
||||
void setValue(const IoTValue& Value, bool genEvent = true) {
|
||||
value = Value;
|
||||
IoTgpio.digitalWrite(_pin, _inv?!value.valD:value.valD);
|
||||
if (generateEvent) regEvent((String)(int)value.valD, "ButtonOut");
|
||||
regEvent((String)(int)value.valD, "ButtonOut", false, genEvent);
|
||||
}
|
||||
|
||||
String getValue() {
|
||||
|
||||
@@ -52,12 +52,12 @@ class IoTServo : public IoTItem {
|
||||
return {};
|
||||
}
|
||||
|
||||
void setValue(const IoTValue& Value, bool generateEvent = true) {
|
||||
void setValue(const IoTValue& Value, bool genEvent = true) {
|
||||
value = Value;
|
||||
if (value.isDecimal & (_oldValue != value.valD)) {
|
||||
_oldValue = value.valD;
|
||||
servObj.write(_oldValue);
|
||||
if (generateEvent) regEvent(value.valD, "IoTServo");
|
||||
regEvent(value.valD, "IoTServo", false, genEvent);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -54,10 +54,10 @@ class Pwm32 : public IoTItem {
|
||||
}
|
||||
}
|
||||
|
||||
void setValue(const IoTValue& Value, bool generateEvent = true) {
|
||||
void setValue(const IoTValue& Value, bool genEvent = true) {
|
||||
value = Value;
|
||||
ledcWrite(_ledChannel, value.valD);
|
||||
if (generateEvent) regEvent(value.valD, "Pwm32");
|
||||
regEvent(value.valD, "Pwm32", false, genEvent);
|
||||
}
|
||||
//=======================================================================================================
|
||||
|
||||
|
||||
@@ -44,10 +44,10 @@ class Pwm8266 : public IoTItem {
|
||||
}
|
||||
}
|
||||
|
||||
void setValue(const IoTValue& Value, bool generateEvent = true) {
|
||||
void setValue(const IoTValue& Value, bool genEvent = true) {
|
||||
value = Value;
|
||||
IoTgpio.analogWrite(_pin, value.valD);
|
||||
if (generateEvent) regEvent(value.valD, "Pwm8266");
|
||||
regEvent(value.valD, "Pwm8266", false, genEvent);
|
||||
}
|
||||
//=======================================================================================================
|
||||
|
||||
|
||||
Reference in New Issue
Block a user